Today, the specs on my first computer are way below all but the smallest embedded systems. For example you can now buy a 32-bit ARM microcontroller with flash, RAM, and I/O on a single 8-pin chip for less than $1, (NXP LPC810). The LPC810 has more raw power than my first computer (but not as much RAM). You can now buy more-capable system on a chip (SOC) processors with CPU, RAM, FLASH, I/O, etc. all on the same chip, resulting in very-inexpensive systems. These SOCs are at the core of all smart phones, which is driving the volume up and the price down!
Many companies are now building very inexpensive, credit-card sized, single board computers (SBC) using these SOCs, largely based on cell phone or tablet chips. These SBCs are great for learning to program and learning to hack both software and hardware. Almost all of the higher-end computers run some version of Linux (Android, Angstrom, Ubuntu, Fedora, etc.). One of the best is the Beaglebone Black ($45) which is well built, has a lot of I/O, and includes both Ethernet and FLASH on-board. Another excellent board is the Raspberry Pi ($35) which is very popular, but slower (over 2M sold so far).
Hardware is cool, but what can you do with it?
- learn to program (python, C, C++, Java, and many other languages)
- learn about hardware, control hardware, robotics
- create network-aware devices
- control things like cameras and, yes, even toasters
- make cool things like robots or drones, use your imagination!
- create media centers or game systems (they typically have HDMI outputs)
(Some Raspberry Pi examples can be found here.)
I have a GPS on one of my Raspberry Pis. On another, I have the Pi Camera and I hope to do some time lapse photography with it. I hope to turn one into a controller for my Canon DSLR using Gphoto2.
Raspberry Pi - a credit-card sized 700 MHz ARM computer with 512M RAM, Ethernet (in the B version, $35), HDMI, and SD card. It is was designed for the education market: "We want to see it being used by kids all over the world to learn programming." The Raspberry Pi foundation has sold over 2M of them so far. You can easily add a camera module to it ($30, 5MP). It is not fully open source hardware, is based on an older processor, and sometimes has power issues (it is not as well designed as the BeagleBone Black). I have several Raspberry Pi computers, one with the camera module, and one with a GPS module I purchased from AdaFruit. I am using them for testing and demonstrations.
BeagleBone Black - a better credit card sized computer than the Pi. The board is much better engineered and includes a lot more general purpose I/O. It includes a faster processor and 2G FLASH on-board as well for $10 more. The BeagleBone Black is completely open source hardware and is built in the USA. The only drawbacks are smaller developer community (100K sold versus 2M), micro HDMI, and slower video processor (not sure if it can do 1080p).
Intel Galileo - an Intel QUARK (Atom) computer with Linux. This is a 32-bit Intel processor that is compatible with Arduino shields.
CubieBoard - based on the Chinese Allwinner A10 ARM.
VIA APC Rock and Paper - small ARM computers from VIA.
This is a partial list of vendors where you can purchase some of these computers:
- Adafruit - good small company, strong in the maker community
- AliExpress - Chinese site with very cheap Arduino clones (mini: $4) and maker stuff
- Amazon.com - search for boards like the Arduino or Raspberry Pi
- Beagle Board - official site of the Beagle Board, Beagle Bone, etc.
- Deal Extreme - Chinese site with very cheap parts
- Gadget Factory - source for the Papilio FPGA
- Robot Shop - site with embedded computers plus a lot of robotics items
- SeeedStudio - Chinese company with lots of maker boards
- Spark Fun - good small company, strong in the maker community
In another post, I'll post about some very exciting open hardware, non-Linux single board computers. These typically don't have a traditional operating system, but do run simple software that you develop on a Linux, Windows, or Mac computer system. Some of these include the Arduino, Leaf Labs Maple, and the Papilio FPGA.Disclaimer: the word Hacking in the context of this article refers to the "computer enthusiast" and not those that break into computers, as those are called crackers (or the NSA). Computer crackers must not be confused with a Florida Cracker (though my grandfather and friends did ride horses and take a mule team from Gainesville to California Swamp for week-long hunting/fishing trips 100+ years ago).