Thursday, September 06, 2007

Micro-Processor Board Roundup

In the previous article I presented an introduction to micro-processor boards and discussed their characteristics. In this article I present 22 different solutions for building your own sensor device. For each I give a capsule description with only the most pertinent information. I believe that this is the most extensive list on the web, given that I am focusing on hardware suitable for audio applications, and am not about to list every micro-processor in existence.

The list is roughly ordered by price. In order to assist my European friends, I have tried to determine the total cost including shipping to Europe for those units that seem the most interesting. Shipping costs can dramatically change the affordability of the given solution.

Let's get started!

The Arduino is a family of open-source boards. The latest and most capable is the Diecimila (69 x 53 mm), which has 14 digital pins (6 of which allow output) and 6 analog inputs. Output is serial over USB. Power is via USB or an external supply. The firmware language is based on Wiring; the development environment is based on Processing. These run on Mac, win32 and LINUX. The unit can be used standalone (eg: without a computer) and has 8KB of memory. The price for an assembled board is €22 plus VAT from PCB Europe or €27.50 from Libelium. (Unfortunately shipping cannot be determined without logging in. However, shipping from the US is only about $8.) Options include the Zigbee Shield, an RF module with on-board antenna for communication up to 100m. This is €39. Motor kits and Bluetooth add-ons are also available. The community is strong.

A "bread-board friendly" version of the Arduino is available under the name The Bare-Bones Board. It is one-third the size in each dimension, loses the USB interface and is designed for easy assembly by beginners. Fully assembled it's $22, but that likely misses the point.

Gainer is an open source kit based on a simple I/O module. The parts must be obtained separately so the unit can be built (approximate cost $30). It can be configured for a total of 8 analog and digital I/O. It is USB bus-powered. The software is supported for win32 and Mac and is available for Flash, Max/MSP and Processing. The device communicates using a simple ASCII serial protocol over USB. The firmware cannot be modified unless the commercial Cypress C compiler is purchased ($140). The device does not work as a standalone unit. Some of the key documents are in Japanese only.

The BASIC Stamp is a line of controllers popular in robotics. The boards have varying pin numbers, speed, and memory, the popular BASIC Stamp 2 having 16 digital pins and serial I/O on two more. It is programmed in PBASIC (a variation of BASIC) on win32. There is no analog I/O. The Stamp requires fitting with a USB or serial port plus a power regulator circuit. It has a very small amount of internal memory (2KB). Dimensions are 30 x 15 x 10mm and the price is $49.

The BasicX is a similar line, the most recent being the BasicX-24p. This has 32KB memory and 8 additional pins that can be analog I/O or digital. The price is $50.

MIDIsense is a $50 kit that comes complete with all the parts to self-assemble. It provides win32 or Mac software to control a boards that handles resistive sensors only (force, bend, photosensors, etc.). Future board variants will handle different types of sensors. Because it handles a good number of MIDI messages natively, it does not need to be used with a computer. Has 6 inputs but no outputs. The chip is the ATmega8, the same as that used by Arduino; it hence has 8KB of memory. Size is not known.

MAnMIDI provides 10 (or 11) analog inputs to MIDI output. It is a compact 59 x 31 mm and costs $50 assembled (though it is no longer available this way). There is little available information and it does not have a visible user community.

The USB MultI/O-Box is an open source kit providing 88 analogue inputs and 64 outputs, 64 digital I/O, 2 MIDI outputs, a 40 character LCD display, a rotary encoder and a serial output on RS232. It is still in alpha and is not a trivial build project. The author can provide some units built for €40 + €15 shipping + the cost of the parts. The unit is two boards stacked on top of one another and is hence larger than most of the other kit-based options listed here.

The PhidgetInterfaceKit 8/8/8 has, as the name suggests, 8 analog inputs and 8 digital I/O, interfacing with USB. Designed for use on LINUX, win32 or Mac, it has programme interfaces for Visual Basic, VB.NET, C, C++, C#, Flash 9, Flex, Java, LabVIEW, and Matlab. The inputs use 3-pin locking connectors and so are designed to be used with the 20-odd sensors sold by the same company as "phidgets". The unit itself is CND$ 80 but kits with various phidgets (including motors and other output devices) are available as well. Dimensions unknown.

The Create USB Interface (CUI) was developed at U.C. Santa Barbara and includes a breadboard area as an easy project surface. It has 13 A/D inputs, 17 usable general I/O ports and USB out. The firmware development software requires that you write in C on win32 only. However an assembled and loaded board can be obtained for $50 US that is ready to interface to any software that understands Human Interface Device interface (eg: Max/MSP, PD, SuperCollider).

Doepfer is one of the biggest names in modular synth components and custom MIDI controllers. Their Pocket Electronic includes sensor inputs on two 10-pin ribbon cables, and MIDI I/O. A number of presets for different devices are in the firmware, which can be controlled either physically with the provided momentary switch (and LED for feedback) or with incoming MIDI messages. The editor software (win32 only) can be used to reprogramme the presets. Any other data at the MIDI in is merged to the MIDI out, allowing chaining of multiple devices. The PE works on an external power supply, which is provided for European sales. Dimensions are 80 x 56 x 25 mm and price €77 from Thomann, who have reasonable shipping.

Wiring is an open source project consisting of schematics for a board and a control language. The board has 5 ports of 8 digital I/O pins each, 8 analog ins and 6 outs. There are further configuration possibilities, since the analog ins can be used as an extra digital port, some pins are used as interrupts, etc. There are two serial ports, one over USB, the other through pins. The board is USB powered and has an external power adapter connector for when more current is needed. Drivers and the development environment are available for Mac, win32 and LINUX. It has a generous 128KB of memory. The unit can operate standalone; multiple units can be ganged. The best way of obtaining one in Europe is from SparkFun for $83 with shipping starting at $7.40 (depending on method).

The TNG-3B (pronounced "thing") from MindTel has 8 analog and 8 digital inputs but no control outputs. It communicates and draws power over a serial stream on RS-232. It is provided with NeatTools, a visual development app for win32, similar in use and scope to the industry standard LabView, except that it is free, open and has been optimised for use in computer interface design. The unit is finished in a case and sensors connect using standard plugs, 3.5 mm stereo for analog inputs, 2.5 mm mono for analog inputs. This is convenient for those who don't want to do any assembly, though sensors bought from places other than Sensyr will obviously require wiring to the correct plugs. The unit is 72 x 119 x 23 mm and weighs 130g. The Thing costs $88 but is not approved for European sales due to regulatory issues.

MidiTron provides a combination of up to 20 digital or analog I/O pins, with MIDI input and output, powered from a 9V battery (or transformer). SYSEX messages are used for configuring the flash memory; the included software for doing so runs on win32 or Mac. MidiTron can run in stand-alone mode. The connectors are of a screw type so no soldering to the board is required. The size is 63.5 x 76 x 38 mm and cost is $149 + $30 shipping outside the USA.

The Make Controller Kit has 8 analog inputs, 8 digital outputs and 4 servo controllers. It has Ethernet as well as full-speed USB 2, plus a special interface for networking multiple boards. It uses OSC for communication, and thus can be used with any language or tool that uses that protocol. Sensors attach with screw connectors. The board runs off USB power (for testing) or external power (for actually powering connected electronics). A Dip switch and trim pot for manual configuration, jumpers for different voltage settings and four status LEDs complete the package. It can be run standalone. Dimensions unknown. Software and schematics are open source. For users in Europe it is best obtained through Make Magazine for $149 plus $32 shipping.

Ezio is a board developed at the U. of Michigan which has 10 digital I/O and 8 analogue ins powered from a 9V battery or adaptor. Output is to RS-232. The programmer interfaces for win32 and Mac include Director, Max/MXP and Processing. The I/O connectors are screw type, dimensions are unknown. The designer's page has some additional info. The unit is $179 plus $60 international shipping though a $50 educational discount is available.

BlueSense have nine different modular boards ranging in price from €49 to €79 that are tuned to a single function each (analog input, analog output, power supply, etc.) and thus have to be used in combination with each other and further boards for wireless, USB or Ethernet communication. The company also provides sensors, LEDs, motors and so on. In order to provide the functionality of other single-board systems at least four different BlueSense units would need to be bought at a total cost of €199 and size 109 x 154 mm (depth unknown). These units are obviously targeted at the education market, not embedded development, since this form factor is prohibitively unwieldy. Assembly required, as this is the whole point of these boards!

SquidBee is an open source environmental sensor device based on Arduino (11 digital I/O, 6 analog I/O) that can run for months on 2 AA batteries, signaling changes in data via RF. Multiple devices configured as "Sensor Motes" form autonomous networks, sending data and receiving commands from a "Gateway Mote" connected to a computer. Price is €130 and €105 respectively and you need at least one of each.

The Eobody was designed by the clever people at IRCAM. It is a fully finished MIDI I/O device that includes 4 switches and 3 pots on the face of the unit, so that the values from one of the 16 inputs can be tweaked. These connect with 1/4" adaptors; the device is rigged to work with sensors bought from the same company. The included Mac and win32 software stores the configuration in flash memory; the Eobody can be used standalone. The price including the required breakout box for the second half of the inputs, plus VAT, is €540. Or would be, except they have been out of stock for some time, awaiting the successor. Scotto is another possible source.

The Eobody 2 will have a total of 32 inputs that connect through breakout units on RJ45 (telephone) plugs, and will communicate using high-speed USB 2. Power is over USB or through an adapter. Dimensions are approximately 130mm square. A wireless module will be available as an option. This unit has been shown at trade fairs like Musikmesse but is not yet released, although it was scheduled for summer 2007. The price is to be similar to the original unit.

The I-CubeX converts an unspecified number of inputs to MIDI, configured by dedicated Mac or win32 software (or any other that writes to their system exclusive spec). A number of example Max patches are provided. The basic kit has been "reduced to" $600, but this appears to be a permanent state of affairs. A line of over-priced sensors with their own pseudo-standard 3-pin connectors is available.

The gluion is a high-speed unit that communicates via OSC over Ethernet. The 16 analog and 68 digital pins can be programmed with advanced functions. It is available in a number of form factors. The bare board is 75 x 75 x 19mm and weighs only 42g. The price is €466 or €557 (depending on whether you want 12 or 16 bit resolution). The "slipper" (€535 or €626) is the smallest enclosure at 130 x 81 x 31 and 234g, but this comes at the cost of losing half the digital pins. The "sneaker" (€558 or €649) is a 130 x 81 x 48 enclosure weighing 280g and preserving full functionality. Configuring the unit requires the user to send the developer a spec which he turns into a usable configuration file!

The Teabox is a robust device designed for systems where low latency and high bandwidth are particularly important -- video tracking dance for example. Essentially it is 10 times as fast as MIDI and provides 12-bit instead of 7-bit resolution. The half-rack case provides Neutrik connectors that will accept 1/4" or XLR connectors. All other connector types are catered to, the Teabox preferring to group the 16 inputs by 4 on standard telephone jacks, which has the benefit of cheap cabling and very long runs (up to 100 feet). The output is also industrial-strength, using S/PDIF over RCA or optical. One limitation when used with an audio interface is that same must be slaved to the TeaBox. The basic unit is $400.

Finally, the MIDIcreator is a sound module and MIDI interface that takes inputs from 8 different sensors and creates music. For £998 I suppose it had better.

In my next (and final) article in this series, I will cull this list based on my opinions and priorities.

I thank the Arts Council for their support in this research.



Dinne said...

Dear Robin,

You have made a balanced and complete review of the many available interface boards. As one of the developers of BlueSense I am interested to see what people think of our modules.

We have just release BluePD, a box which natively runs Pure Data patches. It opens up possibilities into the Physical Computing field. Please see our website for more information (BluePD website)

Furthermore we are busy with plans for an upgrade of BlueSense. One of our ideas is to discard the (expensive) plateaus on which the modules are screwed. These plateaus were used to give weight and stability to the modules. Instead we would enlarge the PCB somewhat and place rubber knobs directly on the pcb for stability. Unfortunately this would increase the form factor of the device. Is this the way to go?


robin said...

Removing the plateaus would decrease the depth and overall bulk of the units, I am thinking, even if the PCB itself had to be enlarged. It would be best to survey your customers (as I'm sure you have!) but I would imagine this would be a good trade-off, especially if lower prices were the result.

Post a Comment