Raspberry Pi Vs Arduino – Choosing an IoT Platform

2017-05-01 - By 

Choosing an IoT platform is a pre-requisite for beginning the development of an end-to-end IoT solution. Let us take a look at Raspberry Pi and Arduino – the most popular open firmware and hardware platforms.

Arduino is a microcontroller board that is used for dedicated applications; for example, actuating small devices like motors, sensors, and lights. On the other hand, Raspberry Pi has a microcontroller, HDMI ports, and RAM. Which means that; with basic coding knowledge, you can configure an OS on Raspberry Pi and use it as a media streaming device, running a web server, or VPNs. So, if you are looking for an M2M interface, Arduino is what you need. But, if your end use involves a human interface then Raspberry Pi would serve the purpose.

Which other crucial metrics should you consider before choosing between Arduino and Raspberry Pi?


  • Power Requirement

A typical Arduino uses an ATmega328 chip with 2KB RAM, 32 KB flash memory, and 1 KB EEPROM. The power consumption is thus fractional – you can use a 9V battery or just plug it into your computer. The power drawn can be further reduced by decreasing the Vcc voltage, reducing a clock source, turning off clocks to peripherals, or only triggering when an interrupt fires. Also, it does not require a shut-down process, while the code runs immediately when Arduino is plugged-in.

Raspberry Pi, as explained earlier, has a full-fledged computing system. It usually has a Linux OS, more than 512 RAM, 32 GB SD Card, USB and HDMI ports. It also requires a proper shut down process. As you can see, Raspberry Pi is like a low performance PC hardware system running on Linux; but comparatively lower power consumption.


  • Network connectivity

Raspberry Pi has a built-in Ethernet port as well as USB ports for connecting WiFi dongles. On the    other hand, Arduino has no built-in network connectivity and requires additional hardware.


  • Sensor connectivity

Arduino has 14 digital and 6 analog I/O pins. It can thus be interfaced with sensors that measure pulse-width modulation, temperature, and similar Vcc to analog changes. Also, it has a scalable hardware design.

Raspeberry Pi has 8 I/O pins which are all digital. Chips like MCP3008 can be used for interfacing a Raspberry Pi with an analog input.


  • Development Languages

Arduino does not have an OS. So, coding and prototyping is done in C/C++ with the Arduino IDE. Raspberry Pi runs on an OS called Raspbian based on Debian Linux which lets you code in C/C++, Java, Python, .NET, PHP, NodeJS etc.


Original article here.

Posted In:  IoT

Site Search

Exact matches only
Search in title
Search in content
Search in comments
Search in excerpt
Filter by Custom Post Type


Sign Up

Enter your email and Password

Log In

Enter your Username or email and password

Reset Password

Enter your email to reset your password

<-- script type="text/javascript">jQuery('#qt_popup_close').on('click', ppppop);