Over the last two days I attended two very different workshops at itpcamp. Both involved circuits and sensors, but the latter of the two included a programming environment. The contrast between the two sessions was dramatic.
In the first session (lead by Stephen Lewis) we looked at the
KEAD6 from Hagstrom Electronics (the photo here is taken from their site). What a simple little board! It comes with a clear user manual and a program for windows that allows you to program sensor inputs to output keystrokes. How great is that! The nice bit is that you can control a simple game with a up to six sensors rather than your keyboard. you can set anywhere from two to 32 different levels of input for your sensors, depending on their range. Stephen helpfully pointed out that if for nothing else, it makes a great tester board for when you're buying sensors.
The benefits: No code! It can be intimidating to learn a new programming environment, especially if you've never done any programming before. the KEAD6 lets you get up and go in less than 20 minutes. Within our two-hour session we played with a bunch of different sensors.
The drawbacks: it must be tethered to a usb device for power. Also, the software for the keystroke setting program is only available in Windows. The board itself after it's been programmed will run on a mac, but the programming itself must be done on a windows machine.
Our second session (lead by
Tom Igoe) covered the basics of the
Arduino microcontroller (the photo here is by Nicholas Zambetti from the Arduino.cc site). I was recently gifted the Arduino starter kit by my magnanimous mate, so I was able to play along through the presentation. In our three-hour session we covered basic electronics, talked about different types of circuitry, and created some basic interactions in the Arduino programming environment. Over the course of our three hour session the number of attendees dwindled from 40 to around 25. Working with the Arduino board was much more complex than the simple KEAD6, but the increase in complexity is mainly due to the vast increase in flexibility. Sure, you need a better understanding of electronics and you need to know how to code, but you can do much more than control simple keystrokes. (although you can do that, too if you'd like).
Both are great boards, full of possibilities. I think the KEAD6 is a bit more accessible for beginners, but whether you like it or not, to do anything really specific, you'll have to learn how to program, even when using the KEAD6. There's a part of me that thinks that simple programming education should be compulsory.