Wednesday, January 29, 2014

Small, Open Computer Boards

Previously, I wrote about small Linux-based Single Board Computers.  This post expands on that by discussing hackable, mostly non-Linux single board computers wifely used throughout the maker community!

A lot of the real traction in makerspace is for small, simple, non-Linux single board computers. These typically don't have an operating system, but run simple software that you develop on a Linux, Windows, or Mac computer systems.  Some of these include the ArduinoBeagle BoardLeaf Labs Maple, and the Papilio FPGA board.

All of these are designed to be used to build things.  For example people use Arduinos to build everything robots and drones (see the Arduino Playground). Several scouts I have worked with built their science fair projects using Arduinos and ended up making it to the National Science Fair with their creation.  The Papilio FPGA can be used for many things like this Bass guitar (Papilio and Comodore 64).

Another very interesting concept is the use of these computers to build wearable devices, essentially computers built in clothing, handbags, and hats.  The first time I saw this was at the MIT Media Labs about 10 years ago, now you can purchase systems like the Arduino-based AdaFruit FLORA and build your own washable computerized creation.

All of these simple computer systems are designed to make building thing easy, but that was not always the case. When I started creating embedded systems, the computer in them consisted of a CPU, bus decode chips, RAM chips, EPROM chips, and I/O chips.  To debug them, you needed a very expensive hardware-based emulator (typically $5K-20K).  Software was stored on EPROMs which were expensive, needed an EPROM programmer, and were erased using a UV light.  We wrote programs on VAX mini-computers ($100K and up) in assembler.  Programming was hard and had a high barrier to entry.
8-bit 2MHz 68B09 board, about 7"x7", circa 1988

72 MHz 32-bit Maple Mini, 2x.7",2011
Today, single chip microprocessors such as the Arm in the Leaf Labs Maple and the Atmel processors in the Arduino contain all these and much more including analog inputs, timers, pulse-width-modulation outputs, etc., costing a few dollars and using very little power.  These single chip microprocessors contain on-board FLASH which can easily be erased and re-used.  The development of the GNU Compiler Collection (GCC) and the Wiring development platform have greatly simplified the software development environment.

The Arduino project brought all this together to create an inexpensive, flexible, and very easy to use development board (Linux, Windows, and Mac-compatible). The environment is so simple that children in Middle School are using it to learn to program and building working projects. Since the Arduino project was started in 2005, several companies have grown up in the maker space including AdaFruit and SparkFun.  Many projects have been created all over the world, and the Arduino is even mentioned in XKCD comics.

There are now dozens of boards that plug into an Arduino to expand it.  These are called shields.  I have one that provides Ethernet and allows me to read SD cards.  I also have ultrasonic sensor shields and a real-time clock shield.  A friend has Arduino shields for his drone.

This is a partial list of vendors where you can purchase some of these computers:
The barrier to entry is very low.  The parts are cheap and readily available.  The expertise is all around you.  My recommendation is "Get an Arduino and have some fun"!  

No comments:

Post a Comment