Then and now: a brief history of single board computers
The term SBC or single board computer has been around for many years and has meant different things to different people. By Cliff Ortmeyer, Global Head of Solutions Development, Premier Farnell.
In its truest sense, an SBC has referred to a single PC board with the processor, memory and some type of I/O that allowed it to function as a computer – an example is the mid-70s “dyna-micro”, one of the first true single board computers. This differs from a traditional mass produced motherboard in that these early boards had expansion slots for many of the key additional peripherals like audio, video and network cards. Today, most consumer motherboards would be considered SBCs as most of the necessary functionality exists on a single motherboard, with the added bonus of being able to upgrade the existing functionality through the use of add-on cards. This is an abbreviated version of the rise of the modern PC.
As stated previously, the term SBC generally refers to a microprocessor based board. But, just as in previous years, semiconductor manufacturers have often supplemented the launch of new products, especially microcontrollers, with development kits or demo boards that engineers could use to test out their newest silicon. These kits were generally used by professional engineers to test out the silicon for their next design. Once the necessary functionality of the microcontroller was confirmed, the designer went into laying out their own board to test out their proof of concept design.
In order to understand the rise of today’s SBCs, we need only look back 10 years ago in Ivrea Italy where a team of designers were looking to develop a lost cost, easy to use microcontroller based development kit that allowed people of all skill levels to make use of modern microcontrollers in their projects. This was the start of the Arduino platform. The rapid market acceptance of this prototyping platform paved the way for a new breed of designers entering into the electronics market. Today they are called makers, DIYers and hobbyists among other titles. As the microcontroller based Arduino market continued to grow, the cost of microprocessors and SOCs continued to drop dramatically thanks to the success of commercial processor platforms that integrated increasingly more functionality in a single package.
Beagleboard - The element14 BeagleBone Black is a full featured, internet enabled development platform that utilises the low cost Sitara AM3358 ARM Cortex-A8 processor from Texas Instruments and runs a variety of OS.
One of the next major developments in the rise of the modern SBC was on July 28, 2008 when the non-profit BeagleBoard.org. was formed to bring modern microprocessors development into the hands of engineers and designers through a low cost, open source community supported development platform known as the BeagleBoard.
With the Arduino and BeagleBone platforms in place and continuing to evolve in the hands of designers, developers and hobbyists, the world was about to experience one of the largest disruptions in both the consumer and industrial computing space - the introduction of the Raspberry Pi.
Raspberry Pi - The idea behind a tiny and affordable computer for kids came in 2006, when Eben Upton, Rob Mullins, Jack Lang and Alan Mycroft, based at the University of Cambridge’s Computer Laboratory, became concerned about the year‑on-year decline in the numbers and skills levels of the A‑Level students applying to read Computer Science.
In 2006, a group from the University of Cambridge’s Computer Laboratory, decided to address the need for a low cost computing platform that would allow students to learn how to program without the need for a home computer. The result was a $35 single board computer named Raspberry Pi. While initially designed as a tool for students to learn to program, the Raspberry Pi was adopted by makers, designers, students and even professional engineers and helped to spark the current boom in interest in SBCs.
Present day SBCs
Today, SBCs can be grouped into two main categories - open source and proprietary. Open source SBCs offer users access to both the hardware design and layout as well as access to the source code used on the board. This is ideal for all users as they can easily understand how the software and hardware operates and adopt the design to meet their end designs requirements or simply learn how a piece of hardware or software works. Proprietary SBCs on the other hand are generally designed for use in end applications or as a reference to be evaluated. They are often industrialised designs that have gone through the same type of testing that an end product requires and are often integrated into end product designs or installed in a rack mount configuration.
Current SBCs come with a wide variety of processor types, most with GPUs on-board. These processors range from X86 based processors from the traditional PC space (AMD and Intel) to ARM processors which have traditionally been used in the industrial and more recently mobile spaces. The most prevalent form of software used on SBCs is Linux with numerous derivations including Ubuntu, Fedora, Android, Debian and Arch Linux as well as FreeBSD and Windows CE.
The programming/debugging tools are also often free and open source, such as those based on the Eclipse IDE. Other tools that are tailored to a specific processor that are often used by professionals include ARM's DS-5 or vendor specific tools such as Texas Instruments’Code Composer Studio or Freescale’s CodeWarrior.
Types of SBCs
While SBCs can be used for a number of purposes, many have originally been designed for a specific application. A perfect example of this is the Raspberry Pi which was developed as an educational tool to help encourage and strengthen students programming skills. The BeagleBoard and BeagleBone were also developed to help educate and promote the benefits and usage of open source hardware and software in embedded computing.
Atmel Xplained - Fast prototyping and evaluation platform based on the SAMA5D3 ARM Cortex-A5. Powerful Atmel’s SAMA5D36 Cortex-A5 MPU, 2Gb DDR2 RAM, 2Gb Flash, Dual Ethernet (GMAC + EMAC), Arduino R3-compatible header and LCD connector.
Numerous other SBCs have been developed in the past few years including Atmel’s SAMA5D3 Xplained, which was designed for rapid prototyping development, and the RIoTboard which focuses on Android development to enable the development of the Internet of Things. Other well-known boards include the OlinuXino, PandaBoard, as well as a whole host of Allwinner ARM SoC based SBCs.
Riotboard - Revolutionising the Internet of Things. An open source development platform ideal for Android and GNU/Linux development. Low-cost, fully functional Single Board Computer. i.MX 6Solo ARM Cortex-A9 processor at 1GHz, 1GB DDR3 RAM at 800MHz, 4GB EMMC Flash, Ideal for Arduino and GNU/Linux development.
The long term success of an SBC, like most other products, relies heavily on the performance/price ratio. But what also weighs in just as heavily is the amount of available support for a particular board or range of boards. While some SBCs rely on a dedicated supplier or secondary support entity, most of the open source SBCs are supported through a community of developers. These communities strengthen the board’s proposition by providing software updates from individuals as well as projects that showcase the features and many accessories that are often available to expand its functionality.
The future of SBCs
Many of today’s SBCs have become so powerful that they are beginning to have the capability of modern day PCs and tablets. This trend will continue as more powerful processors make their way into the embedded computing market as ever-increasing performance/price ratios rise, as well as additional manufacturers enter the frontier of supporting open source hardware and software for both DIYers and professionals alike.
An additional trend we will continue to see is the availability of more accessories or add-on boards to extend current SBC platforms, allowing users more options to control and access the outside world. This will benefit both DIYers and professionals alike. Professional engineers can take these accessories and quickly add additional needed functionality to their SBCs to develop working prototypes for projects currently on-hand. DIYers on the other hand that come from a programming background will have increased access to the analog electronics that are required to interface with the outside world.
Lastly, another trend that will most likely continue is the adoption of these SBCs into lower volume end products. Many of today’s SBCs are as close to fully vetted designs as those developed specifically for end product usage. This is due to the fact that open source designs are equivalent to having a continual global design review with multitudes of designers and programmers updating and giving feedback on the boards and their software. Additionally, as the design and testing of these boards is done through high quality design and manufacturing firms like AVID or Embest Technologies, the boards go through the same quality control as any other end product and often come with CE or FCC certifications. And, as the cost of these boards is often well below what an individual or company could produce the board for, entrepreneurs and small companies alike, see these boards as an ideal way to quickly bring designs to market without the overhead needed to develop new hardware, but instead focus on the software innovation that is often a key differentiator in today’s end product designs.