Using Little Computers to control Big Computers

August 21st, 2012

Here’s my latest Raspberry Pi-based experiment: the CloudSwitch.

I don’t discuss the software in the video, but the fun thing is that the Pi isn’t dependent on some intermediate server – it’s using the boto module for Python to manage the AWS resources directly.

I decided to build the app slightly differently from the way I would normally approach a little project like this. I knew that, even for this very simple system, I would have several inputs and outputs of various kinds, some of them with big delays, and I wanted to make sure that timing hiccups or race conditions didn’t ever leave the lights displaying something that didn’t represent reality.

So this is only a single python file, but it runs several threads – one that looks for button presses, one that monitors and controls the Amazon server, and one that handles the lights – including flashing them in various patterns. They interact with the main thread using ZeroMQ messages, which is a lovely way to do inter-thread communications without all that nasty messing about with semaphores and mutexes.

Update: Here’s the very simple circuit diagram. The illuminated buttons I used have LEDs which take a little more power than the Raspberry Pi can really drive, so I put a couple of NPN transistors in there. It really doesn’t matter too much what they are – I used the 2N3904.

Posted on Tuesday, August 21st, 2012 at 11:22 pm and filed under Gadgets & Toys, Internet, Linux, Telemarq, Videos.

3 Responses to “Using Little Computers to control Big Computers”

  1. Steve Holden Says:

    Great little experiment. Show us the code!

  2. Michal J. Says:

    Wow, that’s impressive! I admire it’s very close to finished product… highly polished and all that. ;)

    And I agree with Steve Holden… would you please be so kind as to show us the source (and perhaps more detailed build instructions)?

    Although I have a hunch how to go about replicating your setup I’d love to have a working project to draw inspiration from.

  3. Geoff Says:

    Time to go into production :-) Wonder if @cammakespace allows commercial use of their space :-)

Leave a Reply