If you’re at all interested in the world of computers and the Internet of Things (IoT), then you’ve more than likely heard of Raspberry Pi. The small but powerful microcomputer has been a smash hit in the DIY computing world since its introduction in 2012 and, now in its fourth generation, continues to go from strength to strength. Before all that, however, came Arduino, a much more modest but still highly effective piece of hardware that’s stayed relevant in the rudimentary programming and prototyping market since arriving in the early 2000s.
Both have their strengths and uses, and both could work for whatever project you have in mind. Here’s a quick comparison between the two to help you understand when to go Arduino and when to go Raspberry Pi.
Controller vs computer
The first and most fundamental difference to understand between the two pieces of hardware is that Arduino is a microcontroller while Raspberry Pi is a microcomputer. In simple terms, microcontrollers are more basic hardware boards used for simple logic tasks whereas microcomputers are more complex in their build and capable of more advanced computation.
Raspberry Pi is a closed source hardware – meaning it is made by one manufacturer alone (the Raspberry Pi Foundation) – now in its fourth generation of development. Arduino is open-source hardware – meaning it can be built and designed by different producers. There is no Arduino 1, 2, 3 and 4, as with Raspberry Pi, however the open-source factor allows different producers to create unique boards with interchangeable componentry, thus making different Arduino fit for different purposes.
While Raspberry Pi boards are capable of expansion via additional software installation and also have a number of useful features already built in (media and audio input/output, several connectivity options, SD port and other features are all preinstalled on the Raspberry Pi 4), Arduino boards start off as a simple single board. They can, however, be expanded via the addition of shields, which are essentially boards installed on top of the main board which allow for a number of extra functionalities like Ethernet, GPS and SD ports.
While storage is not important for every IoT task, there’s little comparison to be made here. Against the Raspberry Pi’s 8GB of SDRAM, the Arduino offers only 32KB of flash memory and 2KB of SRAM. The latter is enough memory to run simple logic code, while the former allows for much more complex processes and multiple functionalities at once.
WiFi, Bluetooth and Ethernet connectivity are all installed as standard on the latest Raspberry Pi, which offers decent processing speed and power, and audio and video capabilities. Any connectivity features required must be added to Arduino boards, again via shields. Through shields, Arduino can offer Bluetooth, WiFi and GPS, while LoRa can be installed in both boards.
The true defining factor between which board makes most sense for you will be the project(s) you have in mind. Arduino’s strengths lie its versatility for simple, single sensor repetitive tasks – for example, switching an AC unit on and off according to a given temperature level. The latest Raspberry Pi is a more all singing, all dancing IoT device, which can multitask between more complex functionalities.
Thus, for simple logic tasks alone, the Arduino represents a more cost-effective solution. For those with multiple, more demanding IoT projects in mind, a later generation Raspberry Pi microcomputer will be required.
To be clear, Arduino shouldn’t be considered a direct competitor to Raspberry Pi, but rather an alternative IoT hardware option that makes more sense in certain circumstances. Depending on the project you have in front of you, your choice should be fairly simple. If you are looking for a no-nonsense, good value, simple logic processor, look no further than Arduino. However, if you’re more interested in diving into the IoT world and seeing the true possibilities of microcomputing, a Raspberry Pi 3 or 4 is the only viable choice.