Yesterday morning my Arduino arrived along with some wire, some RGB LEDs and a breadboard. After a day of handing written work in and getting back late the excitement just about extended into the evening to build a test board. The task: Lighting up one LED, the equivalent of the premier programming exercise “Hello World.”
Having a non-existent knowledge of electronics made it a bit more fun as different data sheets and wiring diagrams didn’t necessarily contradict each other but proved there’s always more than one way to get it wired up and working.
The first problem, after cutting the wire with wire cutters was using the same tool to strip the insulation off at the either end. As frustration grew I looked elsewhere and eventually a pair of kitchen scissors saved the day.
After ramming the wire into the holes on the Duemilanove board then again onto the breadboard I stuck some resistors in what I thought were the relevant places. The LED was added, although I didn’t have much confidence this thing was going to light up.
I loaded up the Arduino IDE and after installing the USB Drivers – I couldn’t find the board initially – I made some small modifications to the Blink program. Changing the ports to send high, changing the timing a little. Surprisingly for me it worked first time!
Compare this experience with learning a “Hello World” program or perhaps the next step up where you might print your name. A semi-colon out of place, which may be a pixel or two in terms of visual mistake on screen and the whole thing collapses. When circuitry becomes more complex undoubtedly there will be a similar process to debugging involved but the physical manifestation allows you to get a feel for where that problem might be.
I was worried the wiring wasn’t perfect but luckily, unlike the code, it needn’t be.
[...] It’s the bit in between Physicality and Data that enables interaction between the two. It is the Arduino’s, the API’s, the PHP script and the “Code Monkey” bashing feverishly away at the keyboard [...]








