Choosing the right board

Open Hardware – Arduino vs. Pi

© Lead Image © donatas1205, 123RF.com

© Lead Image © donatas1205, 123RF.com

Article from Issue 222/2019
Author(s):

When it comes to open hardware projects, the choice of an Arduino or a Raspberry Pi board can determine success or failure. Read on for guidance in selecting the best board for your specific needs.

Open hardware would not be where it is today without Arduino and Raspberry Pi boards. Compact, powerful, and mostly open source, both Arduinos and Rasp Pis offer a level of functionality in a small footprint that simply did not exist a decade ago. To casual observers, the two may seem interchangeable, but when the time comes to choose which to develop a project around, your choice can make the difference between success and failure. While some overlap exists, at the very least matching the hardware to the project and your intentions can determine how complicated your device can become.

Many do-it-yourselfers make this choice on the advice of friends – which is fine, so long as their friends' knowledge is as extensive as it sounds. The problem is, people tend to advocate what they know. For this reason, researching the differences between Arduinos and Rasp Pis is generally the safer and most efficient approach. What follows is a general overview of the capacity of both and the purposes for which they are most suited.

SBCs vs. Microcontrollers

While both Arduinos and Rasp Pis are sometimes described as nano computers, only Rasp Pis are computers in the same sense as a laptop or a workstation. Technically speaking, Rasp Pis are single-board computers (SBCs) [1], offering basic computer functionality on a single circuit board. Just what that functionality is has shifted since the first Rasp Pi was released in 2009 and still depends partly on the model. Currently, the fastest Rasp Pi has a 1.4GHz processor, slightly less than that of entry-level Chromebooks, but many times faster than any Arduino. Depending on the model, a Rasp Pi's peripherals can include an Ethernet port, aluminum heat sinks, and LAN and Bluetooth support. Memory is either on-board or provided by an online microSD card. Additional functionality can be added using Hardware Attached on Top (HATs) [2] for purposes like high-resolution displays and sound cards – a development that technically plays fast and loose with the definition of an SBC.

On the other hand, Arduino boards lack the versatility of a full computer. Instead, they are microcontrollers [3] with limited functionality. Rather than an operating system that runs an application, an Arduino runs a limited set of instructions in its firmware. The absence of an operating system reduces the resources to run an Arduino and usually reduces boot time, as well as simplifying firmware modification. Just like Rasp Pis with HATs, Arduinos can extend their functionality with shields [4] – peripherals like sound cards and sensors – although generally they have far fewer features than any Rasp Pi.

These distinctions are murkier than they were a decade ago, but still remain broadly true. You might just manage to give an Arduino the functionality of a Rasp Pi, but the main reason to do so would be just to prove you could. After all, the whole point of both Rasp Pis and Arduinos is to provide off-the-shelf components.

Models

Both Rasp Pis and Arduinos have been around long enough to have a number of different models, almost all of which are under $60 for the basic board. However, you may want to buy a starter kit with some basic instructions and cables or other hardware, which can easily double the price. Alternatively, because both are strongly oriented to education and do-it-yourself applications, you can find no shortage of instructions online. You can also buy hardware separately from online stores such as Adafruit [5].

You can study the Rasp Pi specifications online [6]. Here, it is worth noting that the Raspberry Pi 1 (RPi1) line has been a standard with various updates for seven years. It is suitable for many basic operations. The Raspberry Pi 3 (RPi3) line offers the most advanced features, including 64-bit computing, a 1.2GHz quad-core processor, WiFi, and USB boot capabilities (Figure 1). Another possible option is the Pi Zero, which is smaller than other Rasp Pis physically and has reduced input/output, plus the Pi Zero W has the ability to add HATs without soldering (Figure 2).

Figure 1: Along with the RPi3 Model A, the RPi3 Model B is the fastest and most fully-featured Rasp Pi.
Figure 2: The Pi Zero is the smallest and most stripped down Rasp Pi.

Arduinos come in over two dozen models [7], with several new ones added in most years. One or two are distributed only in Europe, and some of the more popular models may be sold out at any given time. Although a thorough description of the available Arduinos would be a magazine issue in itself, hobbyists and embedded developers might start by looking at the Arduino Zero (Figure 3), which seems to have replaced the UNO as the entry-level Arduino [8]. A more powerful alternative for open hardware ranging from keyboards to prosthetics is the Arduino Mega 2560 [9] (Figure 4). However, once you have chosen to use a microcontroller, spend a few hours browsing the descriptions in the Arduino online store to find which board best suits your needs.

Figure 3: The Arduino Zero is a popular entry-level Arduino.
Figure 4: The Arduino Mega 2560 is often the choice for commercial open hardware devices.

With both Rasp Pis and Arduinos, you can also find third-party clones at a somewhat cheaper price. However, many of these clones are proprietary and require drivers to use. Moreover, while I have never used a clone, rumors of quality problems are common when discussing some clone brands. Unless you have a compelling technical reason to use a clone, I suspect that avoiding them would be sensible.

Licensing

In many ways, the Raspberry Pi Foundation acts like an open source project. The Foundation contributes to several open source projects, including the kernel, and uses free licenses for most of its own software. In addition, Raspbian, its main operating system, is a derivative of Debian, and most of its other supported operating systems are based on Linux distributions as well. However, its CPU's firmware is proprietary and developed by Broadcom.

In comparison, Arduino describes itself as "an open source electronics platform" [10]. It uses version 3.0 of the Creative Commons Attribution ShareAlike (CC BY-AS) license [11]. Under this license, designs and documentation derived from Arduino properties must credit Arduino and use the same license.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Arduino programming for open hardware projects

    Whether you are building your own device or customizing one, Arduino technology often functions as the foundation for your open hardware project. Here's how to get started with Arduino products.

  • Arduino's cofounder describes the quest for simplicity

    Arduino's cofounder describes the quest for simplicity.

  • News

    Solomon Hykes Leaves Daily Operations at Docker; Red Hat Celebrates 25th Anniversary with a New Code Portal; Gnome 3.28 Released; Install Firefox in a Snap on Linux; Arduino Adds Rasp Pi and BeagleBone to the Arduino Create Platform; and IBM Launches a New Data Science Platform.

  • Doghouse: Tiny Computers

    A choice of ultrasmall boards lets future developers learn how to create and program computers.

  • Serial Communications

    We explore serial communications, from the electrical specs to protocols and libraries, with an example of serial communication with an Arduino.

comments powered by Disqus