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.

What is the status of Q?

April 13th, 2012

Anyone who’s starting to tire of my holiday snaps will be pleased to know that I’m back in the UK, and, while I may yet post the odd picture over the next few days, they should decline to a respectable level before long! On Monday, I need to get back to work.

Various friends have been asking just what ‘back to work’ entails for me at present, since my situation has been decidedly vague for a while. So here’s a quick personal update for those interested…

After leaving Camvine in the autumn, I had a bit of a break, and then started a new company, Telemarq Ltd. (Hans Rosling once told me that he had worked out my model: whenever I run out of money, I start a new company! That’s not the intention, but it does sometimes look like that…)

Telemarq was initially formed as a vehicle for the exploration of a new invention. I think I have a good and viable idea, but I don’t have the resources to get it very far on my own (and I haven’t yet filed the patent, which is why I’m not broadcasting the details!)

Anyway, as I was debating whether to go out looking for investors for another startup, I was approached by several different companies who wanted some consultancy work, and I thought they would all would be rather interesting/enjoyable clients. Besides which, my bank account had dwindled to a level where it needed some topping-up!

So, for the moment, Telemarq is a consultancy business through which Rose and I do our work (which means it already has a rather broad remit, since our fields are very different). I’m delighted that Richard Morrison is going to be working part-time under the Telemarq banner too, since he’s one of the nicest and smartest chaps I’ve run into in a long time.

A big part of Telemarq will be software development, but there’s some teaching, some publishing, some intellectual property stuff in the mix already, and we’re only just starting.

May need some more people soon, or some more days in the week…!

To the extent I’ve formulated a coherent plan, it’s this:

To do really good work, on interesting projects, for, and with, people we like.

Not exactly a conventional business mission statement, but I’ve seen a lot worse. It’ll do as a placeholder!