Skip to content

ARM BASIC Chip: a new robot microcontroller?

September 20, 2012

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.

ARM BASIC Chip 50Coridium 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.

Dr. Evil thinking about 10 million lines of code per second

…that’s ten million lines of code per second!

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.


From → News, Opinion, Tips

  1. This looks good to me! I have a free sample on order. I’ve got more MCUs than I know what to do with, many are ARM-based. They collect dust because of an utter lack of decent libraries to simplify things (but not too much). Leaf Labs is a start, but only that, at least compared to the brilliant libraries available through mbed. If only the mbed code was open source 😦 Still waiting for wiring. But Arduino API is too limiting of the ARM, methinks. I’d love to see mbed level functionality out of the box for other boards: LPCXpresso, the maple offerings, the STM32F4 discovery… I’ve tried doing some library routines for my LPC210x breakout but… yeah it’s kind of involved. 🙂

  2. shimniok permalink

    Looks good to me. I have a free sample ordered. Check hackaday for the link. I have more mcus than I know what to do with several arm. The main issue is the sad lack of good libraries to simplify use. Leaf labs was a start. It just that IMHO. The mbed libraries are brilliant. If only it were open source and ported to other arms like STM32F4 (but it is an nxp project so…)

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: