Microcontroller news
I've done a mild amount of embedded development and try to keep up to date. Recently TI ran a promotion offering their embedded micro-controller on a USB dongle for $20. I got one and was able to play with the down-loadable program, fiddling with the LED and making it blink slower or faster, varying the duty cycle and so on. Limited IO, though; the USB interface wasn't easily available to the downloaded program.
I've kept an eye out since then for interesting options and recently ran across Coridium Corporation. Their ARMMite and ARMexpress Lite boards that sell for $49 originally caught my attention - ARM7 CPU running 60 MHz, 20K for code, 5K data, 16 or 24 digital IOs (the 16 IO ARMexpress Lite fits in a DIP package), 6 or 8 10 bit A/D and 6 or 8 HW PWM channels. I've run robots on 128 bytes of RAM and 8K for code and static data with no A/D and no PWM hardware and 10% of the raw CPU throughput (12 MHz 8051), these microcontrollers are much nicer. The ARMMite comes with USB and the eval kit is only $59, just a $10 premium. All very nice.
But I got curious and looked around the Coridium site - what does a little more get you? I found this:
The ARMWeb runs a similar ARM7 CPU at 60 MHz with user code space up to 64K but only 4K of user data and adds in 224K of user file space. It has 10 Mb Ethernet and includes 6 A/Ds and 1 D/A, all are 10 bit.
Coding is supported in BASIC, C and HTML. The BASIC implementation has some hooks into the web server, but I don't have a good handle on exactly how tightly integrated and flexible it is.
It looks pretty good, and with dev systems going for $199 and $99 for regular systems it establishes a pretty low price point. It would be a good platform for experimenting with home control - you could wire relays into the thermostat's control outputs (fan, heater, air conditioner) and add a thermocouple, using the A/D to determine temperature via the thermocouple and digital outputs to control the relays yielding a thermostat with a built in web-UI, allowing you to turn the heat up and down remotely via the web interface. A simple 24 hour schedule could be added, or even a full weekly, monthly or even yearly schedule.
Similarly you could use opto-isolated outputs to SCRs to switch AC from the ARMWeb, allowing you to control (at least switch off and on) lights, coffee makers, stereos, etc via a remote web interface from your browser.
For the guitar robots I coded on for Trimpin, you could use one of these to build a front end app that downloads small MIDI files to local storage then processes them and sends the transcoded notes to the individual string guitar-robots via serial MIDI input. You could squeeze in MIDI fan-out to the 44 strings, a couple of MIDI synthesizers, a MIDI drum machine or two (eventually a robotic drum machine would be awfully cool) and an assortment of effects boxes and maybe a mixer.
Voila - the robot studio!