It’s amazing what you can do with a highly configurable operating system like Linux and a complete computer on a single printed circuit board. But if you need to choose a development platform for a robot, automation or Internet of Things project, which is the best single-board computer for you?
From dozens of development boards available for prototyping, in this article, I’ll compare the most important features of 10 powerful single-board computers able to run Linux.
Why Linux is better for prototyping things?
The best operating system for you is the one that you are comfortable with and keep your project secure and reliable. More than that, Linux is highly configurable and open-source, so you can take full advantage and make it more powerful.
In Linux, everything spins on the command-line, which make it more powerful but more difficult to learn because of the need to memorize dozens of different commands. As a Windows user since the first contact with a PC, when I run for the first time Linux Ubuntu was like an expedition to North Pole. Everything was new and empty. But the things have been changed in the meantime.
With the right skills, you can do much more practical things with Linux than any other operating system. And we don’t have to forget that Linux is free.
Why to use a single-board computer?
Once with the first single-board computer, the maker community has taken by storm by a compact and cost-effective platform able to provide PC functionality to DIY projects. The result is a new generation of makers able to build at home highly complex robots and automated systems.
A single-board computer is a complete computer packed on a single printed circuit board. To make us happy, these usually require a single power supply and provide all standard PC I/O features. From smartphones to gaming consoles and tablets, the entire generation of mobile gadgets is based on single-board computers.
From the first board designed to prototype things released almost 40 years ago, the niche of single-board computers for homemade projects reaching the maturity stage. Now, we are sitting in front of a shop window with many varieties, different sizes, a wide range of prices and a long list of features.
One of the most important features of an SBC is being cost effective. With a price around $50, you have in your hand a development tool suitable for new applications, hacking, debugging, testing, hardware development, etc.
You don’t need a Ph.D. to work with these smart systems. All you need is to power it up, connect the board to a display, boot the operating system and start prototyping things. In other words, you need to gather your imagination and ideas with programming and electronics skills.
Most important features of a SBC: operating system compatibility, SoC, CPU and RAM
In this comparison chart, you can see the differences between the forces that make a single board computer powerful and the operating systems that manage all these forces.
All these ten single board computers are suitable to run a variety of Linux distributions. Besides one or more Linux distributions, you can also run Android (based on the Linux kernel) or Windows OS.
Depending what do you want to do with your SBC, in the morning you can build a robot based on a Linux distribution and in the evening, you can have in hands a powerful Android smartphone.
Systems on a Chip (SoC)
A single board computer is a small computer that requires pretty much the same components as a desktop or laptop. Even so, a single-board computer offers us the same amazing things like a desktop or laptop. It can play music and video, run applications, play games or connect to the Internet via Wi-Fi.
While we focus on the processor performance most of the time, you’ll have to know that things aren’t as simple as that. Instead having a processor, these palm-size computers host more complex functionality – something called Systems on a Chip (SoC).
Why the SoC is so important for a single board computer?
Thanks to the wonders of miniaturization, the designers packed into a small space the processor, the RAM, the logic board, the graphic card, and other components. All these components have to work together to provide the same functionality as a desktop or laptop. But at the same time, these mini-computers have low power consumption in a space no more than a coin.
The single board computers explored in this article are based on different SoCs as follows:
- OLinuXino A10-LIME with Allwinner A10;
- Banana Pi and pcDuino3 with Allwinner A20;
- BeagleBone Black with TI Sitara AM335x;
- HummingBoard i2eX with Freescale i.MX6 Dual;
- UDOO Quad with Freescale i.MX6 Quad;
- Intel Galileo Gen 2 with Intel Quark SoC X1000;
- ODROID-C1 with Amlogic S805;
- Radxa Rock with Rockchip RK3188;
- Raspberry Pi 2 Model B with Broadcom BCM2836;
A10 incorporates the ARM Cortex-A8 with 1 core and 1GHz as their main processor and the Mali 400 as the GPU.
The Allwinner A10 is known for its ability to run Linux distributions such as Ubuntu, Debian, Fedora or Android OS.
In other words, if you need a single-board computer with HD capabilities able to control a variety of interfaces and connectors, a prototyping board such as OLinuXino A10-LIME is the right one for you.
The Allwinner A20 SoC is part of the same family as Allwinner A10 and shares almost the same features.
Like Allwinner A10, A20 is known also for its ability to run a variety of Linux distributions or the Android OS.
The biggest difference between A10 and A20 is the CPU unit. A20 incorporates the ARM Cortex-A7 with 2 cores and 1GHz as the main processor.
If you want to feel the power of A20 SoC, you can use Banana Pi or pcDuino3.
TI Sitara AM335x
If you use a BeagleBone Black, you’re lucky. You are lucky because the TI Sitara AM335x SoC is able to run independent operation and clocking for a high efficiency and flexibility. So you can use the Black in projects such as printers, gaming console, automated systems, multimedia systems, robots, Internet of Things, and more.
Sitara AM335x is known for its ability to run Linux distributions, Android, Windows Embedded, and RTOS.
Freescale i.MX6 Dual
The i.MX 6 series is based on a robust ecosystem able to provide an ideal platform to develop DIY projects on a single hardware design.
Freescale i.MX6 Dual is a SoC that includes a dual-core 1GHz processor based on the ARM Cortex-A9 architecture.
HummingBoard i2eX includes a i.MX 6 Dual system on chip able to provide high-performances in multimedia processing.
Freescale i.MX6 Quad
Freescale i.MX6 Quad is based on the same i.MX 6 series and with performances comparable to the i.MX6 Dual model.
The i.MX6 Quad is based on the same ARM Cortex-A9 architecture and runs at the same 1GHz.
UDOO Quad includes the Quad system on chip able to provide high-performances for the Internet of Things applications and multimedia processing.
Intel Quark SoC X1000
Intel Quark SoC X1000 was introduced in 2013 by Intel aiming to power wearable devices. The system on a chip has low power consumption and clock rate of up to 400 MHz.
And because we’re talking about technology designed for embedded platforms, the system includes interfaces such as USB, UART, I2C, Ethernet, PCIe, SDIO, PMC, and GPIO.
Intel Galileo Gen 2 is the development board based on Intel Quark SoC X1000 engineered to work with the Arduino shield ecosystems.
Amlogic S805 is a system on a chip developed by an American technology company focused on designing and selling SoC integrated circuits.
The S805 chip is based on Quad-core ARM Cortex-A5 with four cores and running at 1.5 GHz. The ODROID-C1 board integrates the Amlogic S805 system on chip, which is a good platform for multimedia applications.
Rockchip RK3188 is a system on a chip based on ARM architecture and is the first product in the RK31xx series.
The RK3188 features a quad-core ARM Cortex-A9 clocked up to 1.6 GHz frequency.
Radxa Rock is the prototyping board that hosts the Rockchip RK3188 system on chip, and it’s a good one for the Internet of Things, robotics, mini server and Wireless router applications.
The Broadcom BCM2836 system on chip features a quad core A7 processor clocked at 900 MHz. The SoC is designed specifically for Raspberry Pi 2 and has the ability to run a variety of Linux distributions and a free version of Windows 10, which is an operating system designed for makers and hackers to run Windows development tools.
About Raspberry Pi 2, the prototyping board is an excellent environment to develop robots, automated projects and Internet of Things applications.
Central processing unit (CPU)
From sand to silicon, every central processing unit makes everything possible on your single-board computer. Whether it’s single or multiple-core, the processors are placed inside the SoC.
As you can see in the comparison chart, the processors have clock speed ranging from 400 MHz to 1.6 GHz.
Random-access memory (RAM)
Each SoC comes with various memory architectures on board, and just like on a PC, memory is required to perform various tasks that single-board computers are capable of more than you think.
Most important features of a SBC: communication, networking, GPIO pins, on-board storage, and maximum power consumption
In this comparison chart, you can see the differences between interfaces, storage options and the maximum power consumption of a single board computer.
I2C and SPI are two common protocols that let you link the microcomputer of a single board computer to another microcomputer or integrated circuits.
For a prototyping board without Wi-Fi capabilities, an Ethernet port is a key feature that cannot miss from a single board computer. The Ethernet port is used to connect the prototyping board to a modem to access the Internet or to power the board.
The GPIO army of pins let you interface hardware components such as sensors, actuators, LCD displays, etc. A single board computer allows peripherals and expansion boards to access the CPU by exposing the GPIO pins and controls the pins through software.
Depending what your needs in terms of the hardware interface, you have to choose between a prototyping board with or without various serial options.
For example, the CSI connection allows you to connect cameras and video devices to the development board.
From the compatibility between a single board computer and Arduino board results the Arduino 1.0 headers that allow you to use dedicated components from the Arduino ecosystem.
Like any other memory, the on-board storage is memory for storing files. Depending what you’re looking for in terms of storage, you have to choose the right development platform that has enough storage for photos, videos and applications.
Maximum power consumption
Any electronics manufacturer is in a continuing race to reduce the power consumption of the product they manufacture. The key measurement is “performance per watt.”
For example, a robot runs on a battery, and the power consumption is a very important aspect of each component.
The maximum power consumption of a single board computer is important when you choose one. But you have to know that the power consumption depends on what you have attached to it.
The final conclusion
In conclusion, any of these single-board computers create an excellent environment to test your electronics and programming skills in robotics, automation and Internet of Things applications.