Arduino Uno vs Raspberry Pi vs BeagleBone Black

Posted by Brandon on May 3, 2013

BeagleBone Black, Rasbperry Pi Model B, Arduino UNO

I am a tinkerer by heart, and I have always had a thing for programming and electronic circuits.  A few years ago, I got into Microchip programming because there wasn't much out there to do what I wanted without having to design the circuit myself.  My how the times have changed.  These days, there are a plethora of single board computers to choose from to create a wide variety of projects. In this post, I am going to be focusing on the three main ones that we carry here at MCM, Arduino Uno, the Raspberry Pi, and the new Beaglebone Black.

The Arduino Uno has had the corner on the Maker community for some time now, as they were the first ones that were widely available. There are actually quite a few different Arduino boards, such as the Due, Leonardo, and Mega, but the Uno is in my opinion the best bang for the buck.  It has several I/O lines, and you can connect any of a number of expansion boards, called shields, that expand on the functionality of the Uno.  The Arduino development platform is pretty much C++, but a few things have been simplified. If you have any programming experience you can be up and going on the Arduino in no time.

Next we have the Raspberry Pi.  This board is fairly new, having been released just last year, and anyone who follows tech news has probably already heard all about it.  It is a single board computer in the truest sense, as it runs a full Linux operating system, and even has HDMI and composite video outputs to hook to a TV or monitor.  It has full networking and USB capability, which makes it great for networkable projects. The Raspberry Pi can be programmed in a variety of different languages since it runs Linux.  I personally have programmed scripts in Bash, which is essentially like a command line batch file, and Python.  Python is probably the easiest language to use on the Pi, because it is preinstalled when you use the Raspian Wheezy OS recommended by the Raspberry Pi Foundation. You can also use C++ and other high level languages, but you have to install a compiler. The Raspberry Pi has an expansion port that allows you to connect a growing array of accessories to it, the latest of which (Embedded Pi) lets you hook Arduino Shields to it.  To top it all off, the Raspberry Pi Foundation (creators of the Raspberry Pi) is a non-profit organization that is trying to improve the Computer Sciences education of school children.  So if you buy a Raspberry Pi you can feel good knowing that you are helping a good cause.  Here at MCM, we are an authorized distributor for the Raspberry Pi, one of only a few in the US. 

Third is a new board that just hit my desk, it is the BeagleBone Black.  Now the BeagleBone has been around for a little while, but the Black is a new version with greatly expanded capabilities.  Like the Raspberry Pi, it runs a full Linux operating system which lets you program in multiple languages, and it has a built-in Ethernet port and HDMI (in this case microHDMI) video output. Like the Arduino, the BeagleBone has expansion boards, which are called Capes. With the new Beaglebone Black, you get a faster processor and more RAM than the original Beaglebone, plus the addition of microHDMI video. The Beaglebone is sort of a mix between the input friendly Arduino and the full featured Raspberry Pi.

 Below is a table comparing the various features of these three boards, which will help you determine which board to use for your project.

NameArduino UnoRaspberry PiBeaglebone Black
Model R3 Model B Rev A5A
Processor ATMega 328 ARM11 ARM Cortex-A8
Clock Speed 16MHz 700MHz 700MHz
RAM 2KB 512MB 512MB
Flash 32KB External SD Card 4GB Onboard/ optional external
Input Voltage 7-12V 5V 5V
Min Power 42mA 700mA 170mA
Digital GPIO 14 8 66
Analog Input 6 10-bit N/A 7 12-bit
PWM 6 1 8
TWI/I2C 2 1 2
SPI 1 1 1
UART 1 1 5
Ethernet N/A 10/100 10/100
Video Out N/A HDMI, Composite microHDMI
Audio Out N/A HDMI, Analog Analog

No matter what your project is, any one of these three boards would likely fit the bill, but they are slightly more suited for different tasks.  The Arduino and Beaglebone Black have easy access to inputs and outputs, so they are great for connecting with external sensors or devices.  The Raspberry Pi and the BeagleBone Black have networking and HDMI output that are great for high level control and monitoring. The Arduino Uno is more suited for simple projects because of its simplified development software, and the processor runs the program directly, without having to run an operating system in the background.

Thanks to Make Magazine who posted a previous article on their blog comparing the Uno, Raspberry Pi, and Beaglebone (not Black), which I referenced in creating this post. You can see the original article here.



Comments (2) -

5/4/2013 3:57:58 PM #

The Raspberry Pi does have PWM.  There is only one and it is pin 18 on the GPIO.


7/30/2013 12:10:19 PM #

The Arduino is really in a whole different genre than the other two.  It looks like a lightweight from the stats youve posted here, but I think it's really worth celebrating that if you have a bunch of sensors and motors and want to get them all going quickly then the Arduino is the way to go.  The others are really good little compute engines for running much more, but are a more difficult to connect to other electronics as some circuit design is very much necessary. If you're just connecting to USB devices and ethernet/wifi then BeagleBone/RasPi are great for that.


Add comment

Please register or log in to post a comment.