While I was in the workshop over the weekend I decided to see if I could work out just how many ARM processors there were hidden inside all the devices and development boards.
The results of my findings are below, ordered roughly by the date of acquisition and going some way towards telling the story of my experiences with ARM-powered hardware to date.
My introduction to Linux on ARM came in 2007 via the Nokia N800, and as long time open source advocate I couldn’t have been more excited to have a smart mobile device for which I could compile native Linux applications.
One drawback of the N800 was the fact that it didn’t have a keyboard and the resistive touch screen required use of a stylus. However, the N810 rectified this and also came packaged in a sturdy metal enclosure which will appeal to those who appreciate well executed mechanical engineering.
One of the more fun things that I used my N800 for was to emulate a 1980s IBM mainframe computer and to actually boot a vintage copy of the IBM VM operating system.
Upon showing this to someone who once worked on IBM mainframes he was utterly convinced that it was either a video or a simple emulation of the OS. It took a little while and interacting with the emulator and VM before he would be persuaded otherwise!
ARM cores: 2. Running total: 2.
When an artwork called for an embedded computer it provided the perfect excuse to get a BeagleBoard. Here it is being used to parse an uncompressed audio file to extract individual samples, which are then displayed via nixie tubes as decimal values for the left and right channels.
ARM cores: 1. Running total: 3.
Google Nexus One & 4
I was one of the lucky delegates at the 2010 Linux Foundation Collaboration Summit who received a Nexus One handset courtesy of Google. By the time the Nexus 4 came out I was sold.
ARM cores: 3. Running total: 6.
On a quick search of the workshop I managed to locate 6 Raspberry Pi computers, but I cannot be certain that there are not more laying undiscovered.
I’ve had immense fun experimenting with Raspberry Pi and personal highlights include emulating an IBM mainframe (again!), creating a VAXcluster (with emulated VAX computers), and time-lapse and infra-red photography.
ARM cores: 6. Running total: 12.
BeagleBone and Tegra 2
Does anyone actually know how many different ARM-based dev boards there are? I certainly don’t and here are just another two: a BeagleBone and a dual-core Tegra 2 development system.
ARM cores: 3. Running total: 15.
What workshop would be complete without an mbed, and here one can be seen together with the application board which provides a healthy selection of peripherals for prototyping.
ARM cores: 2. Running total: 17.
BBC Radio 4 appliance
I have something of an obsession with BBC Radio 4 and decided to make an Internet radio purely for this. Suffice to say that it’s one Raspberry Pi-based creation that has not been dismantled.
ARM cores: 1. Running total: 18.
The sysmoBTS is a small form factor GSM base station (BTS) that can be used to create a turnkey GSM “network in a box”, and can also be integrated within existing GSM networks. A DSP is used for the baseband processor, but the rest of the network stack is provided via Linux applications running on an ARM processor.
ARM cores: 1. Running total: 19.
These simple Motorola handsets can be had for only a few pounds and are ideal for use in testing GSM network infrastructure. Not only can they be used as-is and with the original firmware, but they are capable of loading an open source baseband implementation that is useful in debugging.
ARM cores: 6. Running total: 25.
The prototype Parallella computer comprises of a ZedBoard plus a 16 or 64-core Epiphany floating-point accelerator. The one seen above is used for remote access by members of the community, and is paired with a Raspberry Pi configured as a console server and remote power switch.
The final form factor Parallella board recently started shipping to Kickstarter backers, and with over 6,000 due to go out over the coming months, there are truly exciting times ahead.
ARM cores: 2x (ZedBoard) + 1 (Raspberry Pi) = 3. Running total: 28.
The Ormerod is the latest addition to the RepRap family of self-replicating 3D printers, and at the heart of its electronics is a microcontroller with an ARM Cortex-M3. The one pictured above has been assembled from a kit and is now in the process of being commissioned.
ARM cores: 1. Total: 29.
By no means exhaustive…
Had I ventured to dismantle a spectrum analyser, signal generator or other test equipment, I fully expect that I would have located even more ARM processors. Perhaps also buried in a digital camera or network equipment, secreted away and quietly getting the job done. Such is the nature of embedded computing — and in particular a processor architecture that is as versatile as ARM.
I counted 29 ARM cores. Do you know how many there are in your home, office or workshop? Should you attempt a count I’d love to hear via the comments!