Here at Climb we always like to stay up to date with everything we do, whether its our coding techniques, the software we use, our brand or even the hardware we use. We wanted to make sure our hosting solutions lived up to this mantra too so we built Stratus. We now have a great set of cloud based hosting packages that are super reliable and crazy fast. They’re even clustered so if a machine fails it can swap over to a different node to ensure your site stays online. Great. What if the unfortunate does happen though? We want to know right away.
The software side is easy but we wanted a really cool visual way to see what’s going on. A 55” TV on the wall was a good start but needed something a bit more in-yer-face when things have gone a bit wrong. The basic 3 things we needed to know: All is well in server land, things are looking a bit slow, and we’ve got a bit of a Charlie Foxtrot on our hands. We joked that a traffic light would be great, after all it has 3 modes that can show you all that! It seemed a bit crazy at the time, but why not? A quick search on eBay revealed that you can actually buy a full-on disused London traffic light with working bulbs and all. Well, better get that ordered then.
So it arrived and it lit up but it’s no good all those lights being on all at once. We needed a piece of hardware to interface with our software and control the relevant light. The Arduino is a perfect little piece of kit that is ideal for this project. Its basically a credit card sized circuit board with a bunch on inputs and outputs you can control with your own piece of custom software. You write the software yourself then upload it to the board and it becomes a standalone piece of kit.
Once our custom web site monitoring software had been written we could create a little webservice that the traffic light could connect too. It was quite simple really. The monitoring software connects to all of our client websites every minute to check their status and logs the result. Our TV dashboard displays this in detail if something goes wrong so we can see the issue and which site but the traffic light webservice just gathers the overall status. If all is good it outputs G, if a site is slow we get A and if a site goes completely down it outputs an R. The traffic light reads these and lights up the green light if it see the G, amber for A and so on.
The Arduino is powered by USB so it’s only 5v. The traffic light bulbs however, are 240v so I couldn’t exactly hook that up to the board direct without a bit of a bang! Relays are used in this situation – they let a small voltage control a higher voltage. The Arduino has a nifty little add-on module for this. I simply hook up the Arduinos outputs to the inputs on the relay module and when I fire a signal to them they trigger the relevant relay which in turn powers the corresponding bulb.
The next job was to open up the traffic light and rewire the bulbs to the relays and find a place to put all the kit. Fortunately, there’s quite a bit of room inside of a traffic light so I made a little board to screw everything securely onto. All the power adaptors for the lights and the USB adaptors fit in nicely too so there’s only one power cable going in along with the Ethernet cable.
After a few tests, everything was working perfectly so it was just a case of mounting it on the wall. The nice gap behind the plasterboard allowed us to hide all the cables and mount a nice on off switch too. The cables then run under the floor for a nice neat finish.
Job done, and a satisfying one at that. As well as being useful, its also a great talking point in the office when new clients come to see us.