What can an Arduino do that a Raspberry Pi can't?
As per my understanding Arduino and Raspberry Pi both make single-board computers. How are they different and what are the specific things that an Arduino can do that a Raspberry Pi cant?
The question is open to all group members! Please answer.
Lets put it simply, Arduino is a micro-controller which doesn't has an operating system since all it does is execute codes. While Raspberry Pi is a full blown computer, it has all the features and qualities a computer needs, from graphics driver, memory, to a processor.
Its a good question since most people may think that Raspberry Pi is just an advanced version of Arduino, so it can do everything an Arduino does along with some extra features aside from its price difference... but that's not the only case. There are quite a few things an Arduino could do but the Raspberry Pi couldn't, I'll try to mention a few points I remember::
- If you want to design your own small board, you can build it using a standard Arduino Uno. But it'll be much difficult with a Raspberry Pi. In simple, Raspberry Pi can't be used much for small scale projects since it'll be costly and hard to configure.
- Arduino Uno can run at ~45 mA, but in case of Raspberry Pi it requires ~700mA. So clearly Arduino is the winner since it has longer battery life.
- Raspberry Pi doesn't has an ADC( Analog to Digital Converter ) whereas Arduino contains a built-in ADC so its easier to interface analog sensors to Arduino.
- If you are adding a Watchdog Timer ( a device which automatically resets the hardware which might cause problem to the system ) to a Raspberry Pi, it requires an OS and the application which becomes really complicated, but in case of Arduino its quite easier.
- When it comes to library functions, its obvious that whichever one has more features to interface with the hardware will also have more library functions, i.e. Raspberry Pi. But it can also be counted as a limitation since accessing multiple of those hardwares lies in the range of 50ms which is quite a lot when compared to Arduino since it can read and write from the hardware in around 100ns.