ARM BASIC Chip: a new robot microcontroller?
The brains of most humanoid robots are either an embedded Linux board, such as the Gumstix (or, I predict, the Raspberry Pi); or an ATmega328 (or its smaller cousin, the ATmega168). The former offers a full Linux environment, running at 600-800 MHz, with all the on-board dev tools, file management, and other trappings that implies. The latter offers just a chip, running at 16 MHz or so, with no standard OS at all. You might install a tiny RTOS, or you might put in an Arduino bootloader, or you might just bang out code in C on your desktop and stuff it onto the chip.
Between these two extremes, there hasn’t been much else… until now.
Coridium has recently announced the LPC1114, accurately (if not pithily) dubbed the ARM BASIC Chip 50 MHz. This is a 32-bit ARM M0 chip, preprogrammed with an onboard BASIC compiler (that’s compiler, not interpreter!). It runs at 50 MHz, and executes more than 10 million lines of BASIC per second. Its form factor — 28-pin DIP chip — is quite convenient: fits comfortably into a breadboard or standard chip socket, and small enough to fit into most robots comfortably. It runs on 3.3V power, which has become pretty standard these days, and has 22 digital I/Os, including six A/D converters.
The physical package and I/O ports are reasonably similar to chips such as those ATmegas (though 22 is a generous number). But it’s the built-in BASIC compiler that’s most exciting about this. To get started with one of these, you hook the serial lines up (through a TTL serial adapter) to a serial port on your computer, attach 3.3V and ground, fire up a terminal program, and start programming! It’s like having an Apple II on a chip — except that, in most ways, this is way more powerful than your Apple II ever was. And the price for all this power and convenience? Ten bucks. Fry a few, they’re cheap.
Compare that to the (oddly) popular BASIC Stamp 2, which is wider, runs at 20 MHz, executes 4000 instructions (rather than 10 million), costs over four times as much, and requires a Windows machine to program it.
Coridium’s new ARM BASIC system-on-a-chip fills a great niche in between the ATmega-based controllers, and a full Linux board. It should have no trouble communicating to any smart (serial-controlled) servo line, including Bioloid, RoboBuilder, and HerkuleX. Moreover, I’ve worked with Coridium before; they are a great bunch of folks in California, very easy to work with, and they produce excellent documentation. If you’re thinking about a custom controller for your next bot, the ARM BASIC Chip‘s simplicity, platform neutrality, low cost, and speed make it a great option to consider.