Raspberry Pi and Arduino are quite different boards. Each board has its own advantages and disadvantages. If you want to decide between the two, then it depends on the requirement of your project. Let understand these two boards in detail.
Arduino was invented by Massimo Benzi in Italy. Arduino was a simple hardware prototyping tool. While raspberry pi as invented by Eben Upton at the University of Cambridge in the United Kingdom for improving the programming skills of his students.
These both teaching tools are suitable for beginners, hobbyists. The main difference between them is Arduino is microcontroller board while raspberry pi is a mini computer. Thus Arduino is just a part of raspberry pi.Raspberry Pi is good at software applications, while Arduino makes hardware projects simple.
Below table gives you some differences between them.
|1||It is a mini computer with Raspbian OS.It can run multiple programs at a time.||Arduino is a microcontroller, which is a part of the computer. It runs only one program again and again.|
|2||It is difficult to power using a battery pack.||Arduino can be powered using a battery pack.|
|3||It requires complex tasks like installing libraries and software for interfacing sensors and other components||It is very simple to interface sensors and other electronic components to Arduino.|
|4||It is expensive||It is available for low cost.|
|5||Raspberry Pi can be easily connected to the internet using Ethernet port and USB Wi-Fi dongles.||Arduino requires external hardware to connect to the internet and this hardware is addressed properly using code.|
|6||Raspberry Pi did not have storage on board. It provides an SD card port.||Arduino can provide onboard storage.|
|7||Raspberry Pi has 4 USB ports to connect different devices.||Arduino has only one USB port to connect to the computer.|
|8||The processor used is from ARM family.||Processor used in Arduino is from AVR family Atmega328P|
|9||This should be properly shutdown otherwise there is a risk of files corruption and software problems.||This is a just plug and play device. If power is connected it starts running the program and if disconnected it simply stops.|
|10||The Recommended programming language is python but C, C++, Python, ruby are pre-installed.||Arduino uses Arduino, C/C++.|
These two boards run on very low power. But power interruption for raspberry pi may cause damage to the software and applications. In case of Arduino if there is any power cut it again restarts. So raspberry pi must be properly shutdown before disconnecting power.
Raspberry Pi comes with the fully functional operating system called Raspbian. It has all features of a computer with a processor, memory and graphics driver. Pi can use different operating systems. Although Linux is preferred android can also be installed.Arduino does not have any operating system. Its firmware simply interprets the code written to it. It is very easy to execute simple code.
Input and output pins allow these boards to connect to other devices. Raspberry pi2 has 2 packs of input/output pins while Arduino Uno has 20 pins.
Pi is faster than Arduino by 40 times in clock speed.Pi has ram 128000 times more than Arduino.So Raspberry Pi is more powerful than Arduino.
Arduino has 32kb of storage on board.This is used for storing the code.This code decides the functions of the Arduino.Raspberry pi does not have any onboard storage.But it provides micro SD port.
Arduino can be expanded using external hardware like Wi-Fi, Ethernet, touchscreens, cameras etc. These boards are called shields. These shields are easily installed for Arduino. While raspberry is self-constrained board.Pi can also add some hats to add hardware like Touchscreen, GPS, RGB panels etc. but does not have many options like Arduino board has.
Arduino uses Arduino IDE for developing the code. While Raspberry Pi can use Scratch, IDLE anything that supports Linux.
How to decide between Raspberry Pi and Arduino
So to decide between the two, first you should know what you want to do in your project.
- From above discussion we can understand that Arduino is good for repetitive tasks such as opening the garage door, switching the lights on and off.
- While pi good for performing multiple tasks, driving complicated robots.
- For example, if you want to monitor the soil moisture and mail me if it is necessary to water the plants.For this application, arduino can be used.
- But if you want to monitor the moisture, mail me when the plants need to be watered and check the weather report from online.If there is rain do nothing. For this application Raspberry pi required.
- In simple Arduino is used for beginners projects and some complicated projects can be easily handled by pi.