I always used to wonder how young students fresh out of high school would build innovative electronics project and apps when all I knew as an undergraduate was how to write a meaningless code for my college assignments. Though I was aware of various hardware because, of course, I read them in my textbooks to pass exams, I could never really put together how an integrated chip could be used in real life projects and not just on a breadboard. The buzz about the Raspberry Pi made me look deeper. It made me fully aware of how things actually work and I made my first full-fledged robot that eventually cracked a couple of days later! Just in case you are wondering how, I stomped on it. Not that it was not right.
Before I start with what you actually came here for, let us get to some background for our novices. In 1971, Intel Corporation introduced a single chip that could perform all the functions of a central processing unit (CPU). This was called a microprocessor. But a microprocessor could not do all the work by its own and needed fellow mates like input/output (I/O) pins and an external memory to perform a complete task. Then came the microcontrollers where the CPU, I/O pins, RAM and ROM were all built on a single chip. It could be used to perform a dedicated task completely. All that was needed was to program it with a C code. Now what we have in the market is variations to and with the microcontroller.
2005 witnessed the introduction of a new micro-controller-based board named Arduino that aimed to provide an effective way for amateurs and professionals to create devices with the ability to interact with their environment, like a simple robot or motion detector, at low costs. For beginners, it has been considered the premium choice for building an electronics project.
Things then changed with the introduction of a new board in the year 2012, named Raspberry Pi. It has been termed as a System-on-Chip (SoC) device. Based on a 32-bit BCM2835 SoC ARM11 processor, video controller, USB controller, and also an Ethernet controller, Raspberry Pi is capable of running as an independent computer by just plugging in a keyboard and a monitor. It made life much easier for project builders for its compactness and neatness. So that leaves us with a decision to make before we lay our hands on an idea. Let us take our discussion to a detailed comparison of the two boards.
Raspberry Pi is a fully functional computer whereas Arduino is just one component on a computer system. Arduino is simpler to use. It does not require any operating system and software applications to run but a proper knowledge of electronic components is essential because the structure along with wires can boggle your mind a little on the first glance. Raspberry Pi will appear complex to a beginner as it requires software knowledge. It works on a special linux operating system, Rasbian. Nevertheless, both these boards come with kits that help you start with.
Also, Arduino is more flexible than Raspberry Pi. It can work on a wide range of sensors.
FUNCTIONALITY AND PURPOSE
Arduino is a simple read and response type of a board. It executes a single program stored in it again and again. This is required in simple hardware projects such as alarm systems where the program needs to be executed in a loop. Whereas, Raspberry Pi is a multitasking board. This can be converted into a web server, VPN server, print server, database server etc. It can be connected to the internet. In fact, it can not only execute a program but also give commands. It can be used with the latest technologies including the IoT (Internet of Things) technology. Internet of Things is about machines giving commands to other machines, connected through internet, to perform a task without human interference. Arduino has also come up with boards built for the same purpose.
The Raspberry Pi is best suited for projects that require multimedia or the internet. If you’re working on something simple such as an automatic door lock, go for Arduino. But if you want the lock to don features like connect to the internet, have a multi-touch display, the Arduino might not work.
SPEED AND MEMORY
The clock speed of Arduino is 16 MHz and that of Raspberry Pi is 700 MHz. This clearly shows that the latter is 40 times faster.
Arduino has 32KB and 512KB of on-board flash memory which is desirable to retain data in the absence of a power supply. Raspberry Pi has no internal memory. It has an SD card slot where you can place a card carrying memory upto 512MB, which means it has 8000 times more RAM.
POWER CONSUMPTION, COST AND SIZE
Power consumption in case of Arduino (0.5 Watts) is less than that of Raspberry Pi (3.5 Watts). But then again Arduino is just a component of a computer and Raspberry Pi is a computer. One important aspect of the two boards is that while Raspberry Pi requires proper shut down process like a computer, Arduino can be turned off simply by plugging out the power supply. If Raspberry Pi is not turned off properly and direct power supply is cut off, it may run into the risk of losing data and corrupting the software. However, there is no such risk in Arduino and the programming can be continued from where it was stopped after plugging in the power supply again.
Coming to the price aspect, a Raspberry Pi would cost you $35-40 (approx. Rs. 1950-2200). On the other hand, Arduino is much cheaper, making you shell out just $10-20 (approx. Rs.550-1100).
There is not much difference between the two considering the size. Arduino board has dimensions as 7.6 X 1.9 X 6.4 cm and that of Raspberry Pi are 8.6 X 5.4 X 1.7 cm.
Programs on Raspberry Pi can be written in any software language that a person is familiar with. It supports Java, C, C++ and many more languages. But in case of Arduino, programs must be written in a special language called Processing, a subset of C. An Arduino program is called a sketch; artistic!
Putting it all together, Arduino and Raspberry Pi are two different boards designed for different applications. The choice of using one completely depends on the type of project one is trying to make. And also, the amount of knowledge one has of electronic components and software languages. As complimentary boards, Raspberry Pi can be used to give commands and Arduino can be used to execute those commands. Both boards together are suited for home or office automation projects like those in which appliances can be controlled by an app on the phone. Arduino is best suited for students working on minor college projects. This is because of its simplicity, flexibility, and real time and analog capabilities. But for people who are keen on learning more about software applications and new technologies and consider themselves skilled enough, Raspberry Pi is worth having an experience with.