The new wave of fun geek toys is inexpensive, hackable, tiny Linux-powered ARM computers, and they're red hot. This is the year to go small.
The ARM platform has been around for a long time, and nearly everyone has used an ARM-powered device. ARM CPUs come in 32-bit, 64-bit, and multiple core flavors. They are paired with amazing tiny powerful GPUs that deliver high-end video in mobile phones, tablets, media players, game consoles, calculators, routers, backup drives, GPS devices, e-readers, set-top boxes and digital video recorders, robots, 3D printers, home automation, and cameras. ARM Holdings claims that over 20 billion ARM-based chips have shipped since they were developed.
ARM started out as the Acorn RISC Machine way back in the early 1980s. RISC is reduced instruction set, in contrast to the Intel x86 processor family, which is CISC: complex instruction set. RISC doesn't mean fewer instructions, because some RISC processors have large sets of instructions, but rather more efficiency, because each instruction doesn't have to work as hard as a comparable CISC instruction. A single CISC instruction may require a dozen or more memory cycles, while a RISC instruction needs only one.
There are other differences, and as fun as it would be to go into detail, the executive summary is RISC CPUs are smaller and require fewer transistors, so they use less power and don't get as hot as big bad x86 processors. Now don't get all excited and insist on using only ARM CPUs for the rest of your life, because each type has its strengths and weaknesses, and applicability to different workloads.
Acorn RISC Machine changed its name several times and went through other changes, and is now ARM Holdings. They do not manufacture nice ARM chips, but only develop and license the technology. It's a sweet deal where they make a lot of money by exchanging pieces of paper with licensees, and hundreds of licensees means a lot of competition and choices for us lowly customers.
Tiny Pluggable Computers
We've had little bitty ARM-powered single-board computers for years, like the Pogoplug and BeagleBoard, and Linux is great on these. Now we're into the next wave of portable computing, and that is a miniscule go-anywhere portable computer that plugs into any computing device with a screen and input device. If you have Internet you can access your fine personal cloud services.
The Cotton Candy and MK802 look like USB sticks and plug into a PC, laptop, tablet, HDMI screen, GPS, tablet, smartphone, set top box – pretty much anything with USB or HDMI ports. The Raspberry Pi is a little larger, about the size of a credit card, and is designed to plug into a TV and keyboard.
The downside to these little computers is closed-source GPU drivers. I expect this will change due to pressure and assistance from developers and vendors who don't want the hassles and higher costs of maintaining them. The nice people at the Lima driver project are developing reverse-engineered open source drivers for the Mali GPUs in the Cotton Candy and MK802. Raspberry Pi is built on a Broadcom chipset, which has both closed binary blobs and open code. There has been a steady stream of criticism of the Raspberry Pi project from its inception because of this, but there are not many options.
FXI Cotton Candy
FXI Technologies' Cotton Candy is billed as "the secure personal computer", a single point of access to personal cloud services through any networked computer, and it is a flexible multi-purpose gadget. It looks like a USB thumb drive (figure 1), and it plugs into any device that supports USB mass storage and has a display screen-- PCs, laptops, tablets, smartphones, smart screens, set top boxes, your car navigation widget-- if it has a screen and a USB or HDMI port you're in business.
This little computer packs in a lot of functionality:
- Quad-core ARM Mali 400MP GPU
- Dual-core ARM Cortex A9 1.2GHz CPU
- Wi-fi b/g/n
- 1 GB DRAM
- Up to 64GB microSD storage
- Android 4.0 Ice Cream Sandwich or Ubuntu For ARM
The Mali GPU is a powerful beast that supports OpenGL 3D for gaming and fancy special graphical effects. But that's not all. It also delivers 1080p high-definition video. That's non-interlaced, friends, and it has an HDMI connector so you can plug in directly to any screen with HDMI. Yes, even your fancy big-screen TV.
This little widget is endlessly adaptable: stream HD media from your smartphone to your big screen via the Cotton Candy, plug it into a PC to copy files, give presentations using your smartphone as the remote, run it in its built-in virtual machine client on Linux, Mac, or Windows. $199. It's in short supply and probably won't be available until later this summer.
MK802 PC on a Stick
The MK802 has a boring name and lower specs than the Cotton Candy, and it has a smaller price tag and is available now. Or it was; these little gadgets sell fast. The MK802 runs on a single-core 1.2ghz ARM Cortex A8 with a Mali 400MP GPU, 512MB of RAM, 4GB onboard storage, and 2160p hardware-accelerated HD video. It has USB, microUSB, microSD storage, 802.11b/g Wi-Fi, and an HDMI port. Unlike the Cotton Candy, which has an HDMI connector, you'll need an HDMI cable to connect to anything.
The MK802 ships with Android, and I don't see why it couldn't something like Ubuntu for ARM, Debian ARM, Fedora ARM, or Arch Linux ARM.
The Raspberry Pi made a huge splash thanks to its $25 price tag. What do you get for $25? Assuming you can even get one? You get the A model. Model B costs $35 and adds Ethernet and an extra USB port. The Raspberry Pi was originally intended to be the size of a USB thumb drive, but it grew a bit. It's a little credit-card-size circuit board with a Broadcom BCM2835 processor. This is an ARM1176JZ-F 700MHz CPU and dual-core VideoCore IV GPU for 1080p HD video.
The Pi has 256MB of RAM, 10/100 Ethernet, two USB ports, composite video out, audio, and HDMI. It does not have VGA support, so it won't work with an analog computer monitor. It boots from a microSD card; the default operating system is Fedora Linux. Debian and Arch Linux should also run on it. Arch Linux has a very active and up-to-date ARM project that supports a lot of single-board ARM computers.
The idea behind the Raspberry Pi is to bring computing to children at the lowest cost. If you have a TV and keyboard you can plug it in and play games, use productivity software, play movies and music, write programs – in other words, use it like any desktop PC. Once the manufacturing and distribution are running smoothly the Raspberry Pi Foundation will offer a buy one, give one program, and they accept donations.
Definitely Not Desktop PCs
As cool as these are, they're not desktop PCs. Running applications is a bit slow, though video performance is good. Do these little gadgets have any practical value? My Magic 8 ball says "Reply hazy, try again".
The Raspberry Pi's goal of reaching children is worthy, but I expect that most of its users will be adult computer nerds. I'm not seeing what will draw children to it, because it's still typing on a computer. Kids don't like to sit and type. Kids like to take things apart and bash on them, and put them back together in random ways. Which goes to show that as always, the weaknesses in open source are closed hardware and a lack of useful teaching tools for children. Little hands need something analogous to Legos, something modular they can snap together and take apart.
The Raspberry Pi is the most hackable, and even has a helpful Broadcom datasheet.