You may have never used Raspberry Pi or Arduino, but chances are you’ve heard of them. Raspberry Pi has been the best-selling British computer for years now and Arduino has been transforming the DIY community one board at a time. There’s no shortage of options designed to provide you with a little electronic control over your projects, but the budget-friendly Raspberry Pi and the plethora of solutions under the Arduino brand are certainly two of the most popular.
But comparing the two can be like judging a lineup of cats and dogs. They’re both animals — they both lick themselves — but they each dig holes for very different reasons.
So lets pit Arduino vs. Raspberry Pi to help you identify what to purchase for your next project.
Say Hi To Raspberry Pi
For all intents and purposes, the Raspberry Pi is a fully functional computer. It has all the trappings of a computer, with a dedicated processor, memory, and a graphics driver for output through HDMI. It even runs an optimized version of the Linux operating system called Raspbian. Most Linux software is easy to install, and lets you use the Raspberry Pi as a functioning media streamer or video game emulator with a small amount of effort.
Though the Raspberry Pi doesn’t offer built-in on-board storage, you can use microSD cards to store whatever operating system you choose, whether its Raspbian, Ubuntu Mate, or even the Internet of Things version of Windows 10. You can essentially install different operating systems on different microSD cards for swapping platforms, testing updates, and debugging software. And because the card includes Wi-Fi and Ethernet-based connectivity, you can also set it up for access via SSH, or transfer files to it using FTP.
Technically, there are six versions of the Raspberry Pi board you can purchase right now, but overall there are only two form factors: full-size and miniature. The most recent Raspberry Pi boards are the full-size third-generation Model B for $35, and the miniature Raspberry Pi Zero for a mere $5. For the latter, you can purchase a version with Wi-Fi and Bluetooth for $10. The other three Raspberry Pi boards on the market are older-generation full-size models: Gen2 Model B ($30), Gen1 Model B+ ($25), and Gen1 Model A+ ($20).
Here’s a comparison between the two major models with built-in Wi-Fi:
|Raspberry Pi 3 Model B||Raspberry Pi Zero W|
|Processor:||Broadcom BCM2837||Broadcom BCM2835|
|Ports:||4x USB-A 2.0
1x HDMI 1.3
1x Micro USB
1x stereo/composite video
1x 40-pin GPIO
1x CSI camera port
1x DSI display port
|1x Mini HDMI
1x Mini USB OTG
1x Micro USB
1x 40-pin GPIO
1x CSI camera port
1x Composite video header
1x Reset header
|Dimensions:||3.370 x 2.224 x 0.669 inches||2.56 x 1.18 x 0.20 inches|
As shown, Raspberry Pi products are the brain of your project. For instance, the Piper Computer Kit we reviewed last year is a Linux-based laptop powered by the Raspberry Pi 3, as is Kano’s Computer Kit Complete that kids can assemble to create a Linux-based all-in-one PC.
Those are two examples of kits you can purchase, but there’s a large community that can steer you in the right direction to build projects from scratch, such as Game Boy Zero, a working miniature Macintosh, Pip-Boy from Fallout 4, and more.
Unlike Raspberry Pi, Arduino boards are micro-controllers, not full computers. They don’t run a full operating system, but simply execute written code as their firmware interprets it. You lose access to the basic tools an operating system provides, but on the other hand, directly executing simple code is easier, and is accomplished with no operating system overhead.
The main purpose of the Arduino board is to interface with sensors and devices, so it’s great for hardware projects in which you simply want things to respond to various sensor readings and manual input. That might not seem like a lot, but it’s actually a very sophisticated system that allows you to better manage your devices. It’s great for interfacing with other devices and actuators, where a full operating system would be overkill for handling simple read and response actions.
But because Arduino isn’t the “brain” of your project, solutions aren’t locked to a handful of boards. Instead, there are more than 50 solutions for entry-level products, advanced devices, Internet of Things projects, education, wearables, and 3D printing. Of course, they all have processors, memory, and in some cases storage, but they’re designed to serve as controllers, not miniature computers.
Great examples of Arduino projects can be found here. One project is the Arduino Servo Catapult that fires off a bowl full of food when a cat walks onto a pressure sensor mat seated under its dish. Another project transforms a Nerf Vulcan gun into a sentry turret that can track its enemies. Arduino devices can even be used to add a fingerprint scanner onto a garage door opener. As we reported earlier, many robot kits for kids you can buy on Amazon are based on the Arduino software and hardware platform.
Arduino vs. Raspberry Pi: Power
The two systems have very different power requirements. For starters, the Raspberry Pi 3 Model B board uses 1.5 watts when idle, and up to 6.7 watts when a monitor, keyboard, and mouse is connected. The smaller Raspberry Pi Zero W consumes 0.5 watts of power when idle, and 1.75 watts when a monitor, keyboard, and mouse is attached.
Both Raspberry Pi boards require five volts to remain on, so you need a wall adapter or rechargeable battery pack with a higher voltage. For instance, both Raspberry Pi-based kits we reviewed provided an internal rechargeable battery that connected directly to the board. These batteries included an additional Micro USB port for recharging via a wall adapter, or using the device like any other electrically tethered PC.
Meanwhile, Arduino devices begin executing code when turned on, and stop once you pull the plug. To add functionality, you either wire directly into the pins on the Arduino board, or stack chips called “shields” on top of the base unit. There are hundreds of shields, each of which is designed to perform a different task, interface with certain sensors, and work with one another to build a complete control unit.
Thus, for Arduino, you merely need a battery pack that keeps the voltage above a certain level, along with a basic shield to manage the power. Even if the power drops on the Arduino, you won’t end up with a corrupt operating system or other software errors: it will just start running code when it’s plugged back in. For Raspberry Pi, you must shut it down within the operating system like any other computer, or else risk corruption and software problems.
Arduino vs. Raspberry Pi: Networking
The Raspberry Pi 3 has both a built-in Ethernet port and Wireless N connectivity, which allows easy access to any network with little setup. Once you’re connected, you can use the operating system to connect to web servers, process HTML, or post to the internet. You can even use it as a VPN or print server.
Unfortunately, Arduino devices typically aren’t built for network connectivity directly out of the box. Though it’s possible, they require a bit more tinkering to set up a proper connection. You’ll need an extra chip outfitted with an Ethernet port, and you’ll need to do some wiring and coding to get everything up and running just right, which is enough of a process in itself that some vendors sell comparable Arduino devices with a built-in Ethernet component.
Arduino vs. Raspberry Pi: Sensors
While Raspberry Pi and Arduino devices have a number of interface ports, connecting analog sensors to Arduino devices is an easier process. The micro-controller can easily interpret and respond to a wide range of sensor data using the code you put on it, which is great if you intend to repeat a series of commands or respond to sensor data as a means of making adjustments to servos and devices.
Raspberry Pi boards, on the other hand, require software to effectively interface with these sorts of devices, which isn’t always what you need if you’re just trying to water plants or keep your beer at the right temperature. Using both in a project isn’t all that uncommon, as the Arduino device could act as a control board that executes commands issued by the Raspberry Pi’s software before the sensor information is fed back for recording or acknowledgement.
Match made in DIY heaven?
So which solution is right for you? The answer will depend heavily on your project.
You should take the Arduino route if the main task involves reading sensor data and changing values on motors or other devices. Given the low power requirements and upkeep of Arduino devices, they’re also a good choice if your project will continuously run, and require little to no interaction.
You should go with a Raspberry Pi board if your project involves a task you would otherwise accomplish on a personal computer. Raspberry Pi boards make a slew of operations easier to manage, whether you intend to connect to the internet to read and write data, view media of any kind, or connect to an external display.
But given the two devices accomplish different tasks, using both in some instances is ideal. As one optional example, Raspberry Pi could give you client-side access to the settings and code, while the Arduino gadget could handle the actuation of devices, and gather data from the sensors. There are a number of ways to go about making the connection, whether you prefer USB, a local network, or by running some of the I/O ports on the Arduino device into the Raspberry Pi board.