Arduino vs Raspberry Pi Comparison

- by - in Tutorials

The Arduino vs Raspberry Pi debate  has caused a bit of confusion to beginners on what these 2 little devices actually do. They are both pretty cheap, the same size, and to the untrained eye, look very similar. However they are very different.  The Raspberry Pi is a mini-computer, running a Linux operating system, and the Arduino is a microcontroller, without the typical OS style you may be used to. They both are focused on very different ideas.


The Arduino Uno
The Arduino Uno

The Arduino is a programmable microcontroller. The only functionality is what YOU program it to have. It is designed to read data from sensors, compute the data, and either send the data to a PC (or raspberry Pi), or output them to LEDs or LCD screens you have attached and programmed. By controlling relays, you can control high powered components via relays and control motors.

The Arduino is used is many different types of projects, from musical applications and interactive art exhibitions, to robotics and gaming gadgets. There are quite a few different types of boards for different projects.

Raspberry Pi

The Raspberry Pi
The Raspberry Pi

The Raspberry Pi is on the opposite end – it features a fully fledged operating system loaded on an SD card. It also has audio out, HDMI and RCA video output and an Ethernet port. This allows you to use your Raspberry Pi as a computer, complete with internet browsing, games and more. Plug in your keyboard, mouse and monitor, and you have an amazingly cheap computer.

The Raspberry Pi projects are more software based than hardware based. As it is simply a Linux computer, most projects are based around software hacks, media centres and graphics/sound and multimedia. It can however do some simple hardware control with the GPIO pins.

Arduino vs Raspberry Pi

Choosing which board you want depends on the type of project you want to make, and your experience in programming. If you have no experience in programming or electronics, you will find the Arduino a steeper learning curve than the Pi as you will have to learn them both at the same time. The Arduino has been around for a while though and there are tons of useful tutorials around to get you started. If you have experience in programming (be it HTML, C/C++ or even BASIC), you should have no problem getting to grips with the Arduino straight away.

The Arduino is based on hardware, which means you won’t get far without some components: LEDs, LCDs, resistors, motors and the like, depending on what project you want to do. You need no experience or components (other than a monitor, keyboard and mouse, which you have right?)  to get the Raspberry Pi to do something. Just plug and play!

If you want to make a hardware project then the Arduino is by far the best choice. The analog inputs and PWM outputs add a whole spectrum of compatibility the Pi cannot do natively. Plus the large about of I/O pins let you connect multiple sensors and feedback components. The Arduino however is not as powerful as the Pi, so there’s no proper audio, video or internet out-of-the-box (you can however add basic functionality of this). The Arduino can send data to your PC or Pi, over serial, and you can then create a program to read this data and do something.

If you want to make a software project then the Pi is the way to go. The audio, video and internet capabilities make it the winner in this aspect. There’s no need to attach external components, so there’s no real need to learn electronics.


The Arduino vs Raspberry Pi comparison is summarised in the following table…

Arduino Uno


Raspberry Pi


Operating SystemCustomLinux
Suited forHardwareSoftware
Number of I/O pins14 Digital (6 PWM), 6 analog8 Digital
Audio / Video outBasic functionality programmableYes
InternetVia ShieldYes

*Prices correct as of 10th July 2014

Adam RogersAdam RogersI am the the founder and editor of Codeduino. I'm a developer by trade, and a maker by night. I've been 'making' ever since being introduced to Arduino at university - my final year project was an Ableton Live controller based on Arduino.



  1. Dave S.

    Thanks for this! I nearly bought the raspberry pi instead of the arduino – I wanted to do more electronics projects,


  2. Codeduino

    Hi Dave,
    Glad it was of use to you. Good luck with your projects!

  3. Olmo Axayacatl

    Thank’s for this. I want to learn more about Arduino and Pi, but in this moment I don’t know about these technologies. For that reason I’m learnig and I’ll buy my firts Arduino in a few days.

  4. Codeduino

    You’re welcome. Good luck with your Arduino projects!

  5. Jeanne

    Really great synopsis!!

  6. Zafar

    What about the arduPi library? Using this shield ( we can get the advantage of Arduino on Pi.
    Do you know how stable is the shield’s usage? Is the library arduPi usable?

  7. Codeduino

    I’ll be honest, I’ve not used it, but a quick look through it and it’s seems like it should work well. It looks like it’s forked directly from the Arduino repository.

  8. Chan

    Thanks for the comparison! I am not sure which one should I choose so far But I want to get to know more about electronics so Arduino will be my best choice!


  9. Jason

    I’m more familiar with Parallax only because I started with it. However, I’ve been using more Arduino now because of variety. I’d like to use my Arduino boards to control external peripherals and have the Raspberry PI program an LCD with Linux (Ubuntu) to have a touch screen display what is happening and if possible “acknowledge” and “silence” alarms from the touch screen. Also, would the Ras pi be able to provide a server for ip cameras and such? Thanks for your info above. I just heard of the ras pi yesterday so today is dedicated to determining what all I need to integrate the touch screen with server access. Thanks again.

  10. nelson paz

    Thank you for the great visual wall between them. It was very helpful.

  11. Glenn Bazell

    Have been looking at Arduino via jamco cataloge for a while and just heard about Raspberry Pi from a friend that designs web sites. Your article straightened out the difference between the two platforms so thank you very much.
    My interest lies with electronic control of heat flow in a large house with multiple thermostats and other projects. The Arduino online course looks like my best place to start.

    • Adam

      Great stuff! If you make an awesome project, be sure to let us know!

  12. Dude

    There is not a single reason why the Raspberry Pi would not be suitable for hardware projects as much as an Arduino. Saying “It can however do some simple hardware control” implies that somehow the Arduino can do superior hardware IO, you should explain why you believe so. The only valid argument I can think of in this area would be that Arduino has numerous shields while the Raspberry Pi does not. Other than that, they both seem equally capable hardware-wise to me.

    • Adam

      This guide was written as an overview for those unfamiliar with microcontrollers in general, and not a fully-fledged low-level explanation of all the features. I will clarify some of the points made in the article as to why the Arduino has superior hardware IO…

      The Raspberry Pi doesn’t have any analog inputs, so you would need to get an external ADC. This means that you cannot read a potentiometer, or a sensor that outputs voltage (rather than serial data). The Pi also only has 1 hardware PWM output, which again limits the number of components you can interface with. As the Pi’s Linux kernel isn’t real time, the software PWM timing (and other functions) may be off slightly, which can be critical. Running a fully fledged Linux OS requires a chunk of the CPU and RAM, and any delays or unexpected processes will stall the program execution. The Arduino was designed as a low-level hardware controller, whereas the Pi is a mini-PC with a few general purpose IO pins.

  13. BhallaR@chin

    I am a begineer. From which board i should start. I donot know how to program in c++ also. Plz help me to decide.

    • Adam

      Hi Rachin. If you want to make a project that needs a GUI and software go for the Raspberry Pi. The Raspberry Pi has a full blown operating system, so you don’t have to learn C/C++ – you can use any of the different scripting languages. If you want to make a project that mostly uses electronics components and doesn’t need a fancy GUI, go for the Arduino Uno. The code isn’t that difficult for the Arduino and there are loads of tutorials for it. Hope that helps!

Leave a Reply

Your email address will not be published. Required fields are marked *