Arduino or Raspberry Pi? Pros and cons in IoT use.

Some people consider the Arduino platform to be the best for beginners, however, the novice will handle both Arduino and Raspberry Pi board. The choice between platforms should mainly depend on the characteristics of the project.

The origin of both platfoms

The founder of Arduino is Massimo Banzi, a lecturer at the now-defunct Italian Interaction Design Institute Ivrea, who developed a microcontroller in cooperation with students from this university. The Arduino programming language, based on the Wiring environment and basically on the C/C++ language, was designed by Hernando Barragán, a student of Banzi. The site prepared by Hernando Barragán presents exactly all the work on the project, which clearly shows that this success has more than one father.

In the case of Rasberry Pi, the project also had its source at the university. More specifically, at the University of Cambridge. Three lecturers: Jack Lang, Alan Mycroft and Robert Mullins came up with the idea of ​​developing a simple and above all cheap computer for learning programming. The first prototypes were created between 2006 and 2008. In the next step, seeing the potential of their solution, the men established cooperation with Pete Lamas, an integrated circuit designer at BroadCom, and David Braben, one of the developers of the Elite game, and together they founded the Raspberry Pi Foundation.

As a result, both platforms, which were originally intended to be used for learning by students, due to their low price and simplicity of use, became extremely popular among amateur users of consumer electronics and control, and appeared in mass sales.

So what should you choose – Arduino or Raspberry Pi?

The answer is basically simple – Arduino is ideal for simpler projects. Raspberry Pi will be useful for solutions that require more computing power. Arduino has only 2 kilobytes of RAM. Raspberry Pi has a RAM size of 1 GB. So Arduino is a simple microcontroller, meanwhile Raspberry is actually a small computer. Not without significance is the fact that the Arduino IDE is easier to use than Linux. So if you need a simple control of watering your garden, Arduino will work perfectly. Several sensors and a few lines of code will do the trick. For Raspberry Pi, to achieve the same effect, you will first need to install the system and the necessary libraries. There will be a lot more work and the effect will be the same – watering the garden at a specific time.

So choose Arduino when you need to use a simple solution for frequently repeated activities, e.g. controlling the watering of the garden, switching on and off the external lighting at a specific time, opening the gate, etc. However, because Raspberry can run many tasks at the same time, it is a computer, work simultaneously as a home printer server and operate the monitoring system. Home weather stations are popular and Raspberry will be perfect for this application because of the need to collect information from several sensors (temperature, wind strength, humidity). Raspberry Pi will therefore be a good choice for anyone interested in IoT, i.e. the Internet of Things at home. Examples of ready projects can be found here:

Why not both?

Nothing prevents you from starting with Arduino and continuing with Raspberry Pi. By using Arduino or ESP32-based solutions you will learn the basics and you will get the effect quickly and relatively easily. But only Rasbperry Pi will allow you to make much more difficult projects. And both platforms can be combined with each other. Arduino/ESP32 can be used to read information from sensors and control e.g. motors (for example a garage door). Raspberry Pi will control all devices and send the collected data, e.g. to a mobile phone. You can do more together.