Captured: 2015-12-04 at 23:54 from lifehacker.com
Some of the best DIY projects use microcontrollers or cheap single board computers to automate awesome stuff. But Between the Arduino, the Raspberry Pi, and the BeagleBone, it's hard to figure out which is best for a project. Let's demystify the most popular boards and make the selection process a bit easier.
Words like microcontroller, pocket-sized computer, or development boards might conjure up images of a geek with a soldering iron attached to their hip, but these boards are accessible and useful to everyone. Each of these boards are incredibly easy to work with, and each are good as a starting point for electronics hobbies as well as advanced features for your own projects.
However, when it comes to cheap, open-source hardware, you have a ton of options to build your projects on. We're going to outline the differences between the three most popular boards: the Arduino Uno, Raspberry Pi Model B, and BeagleBone Black. Each of these have their own strengths and weakness, and certain platforms are better for certain types of projects more than others.
If all you want is the specs, here's a breakdown of the differences between each of them. There's much more to it then that, so we'll discuss what you can do with each in the following sections.
For Beginners and Single-Purpose Projects: Arduino
The $25 Arduino is a staple of the DIY community because it's open-source, easy to develop for, consumes very little power, and is very simple to set up. Plus, it's designed specifically for beginners, so pretty much anyone can play with it and connect it to external components. Essentially, the Arduino is a small, programmable board that accepts and stores code from your computer. It's capable of simple, but cool things like controlling lights or programming gardening systems. The board, the programming language, and most projects you find are open-source so you can use them to suit your own needs.
Advantages: At $30, the Arduino is cheap enough that you can buy a few to mess around with. Alongside the flagship Arduino Uno, you have a ton of other variations of the Arduino to choose from. The Arduino also consumes very little power, so it's perfect for projects that run all day long, or need to be powered with batteries. Most importantly, the Arduino is insanely popular, so it's easy to find support, tutorials, and projects. Finally, the Arduino is flexible and can interface with just about anything.
Disadvantages: The Arduino is a beginner board, but it still takes a little while to get used to using something without a graphic interface. Because it's cheap and small, the Arduino can't usually handle a lot of different processes at once, so it's not good for projects that are incredibly complicated or require a lot of computing power.
Looking for a better idea of what you can do with the Arduino? Here are a few ideas:
The $35 Raspberry Pi has been a DIY-darling since it was first announced. It's essentially a tiny computer that runs Linux from an SD card, and from there you can run all sorts of DIY projects. It's essentially a low-powered Linux computer, and subsequently can do anything a Linux machine can for only $35. With the two USB ports and the HDMI out, you can use the Raspberry Pi just like you would any computer, and that means it's perfect for all sorts of projects that require a Linux system.
Subsequently, the Raspberry Pi is good for anything you're making that requires a display, and especially any projects you want to connect to the internet. Remember, it's basically a tiny computer, so provided you're not looking to do anything super complicated with it, the Raspberry Pi can handle a ton of different things.
Disadvantages: The Raspberry Pi is awesome for just about any project you'd use a computer for, but unlike the Arduino and BeagleBone, it doesn't have as many options to interface with external sensors or buttons. So if you want to do a project that's interfacing with other electronics in your home, or lights around the house, the Raspberry Pi isn't quite as solid of an option.
Looking for a better idea of what you can do with the Raspberry Pi? Here are a few ideas:
The easiest way to describe the BeagleBone Black is as combination of a Raspberry Pi and an Arduino. It has the power of the Raspberry Pi, but it has the external interfacing options of the Arduino. At $45, it's right on par with the cost of either, but it manages to do enough things differently that it's in a world of its own.
Since it doesn't actually require a display like the Pi to setup, the BeagleBone Black is targeted more at advanced users and serious developers. Still, it has the Angstrom Linux distro installed from the start, so like the Pi, you can use it as standalone computer if you like. You can also install a wide variety of other operating systems, including Android. The BeagleBone Black is a tougher system to get used to than the Raspberry Pi because it wasn't initially targeted as an education system, but you can do a lot with it.
Advantages: The BeagleBone comes packed with flash memory and an operating system already installed, which means that out of the box it's already fully operational. If you want to run in headless mode (without a monitor), it's easy to do, and you don't need extra hardware to set it up like you would with the Raspberry Pi. The big advantage for the BeagleBone is that it has a really good set of input/output features (69 GPIO pins compared to the Raspberry Pi's eight) so it can interface with exterior electronics easily.
Disadvantages: The BeagleBone doesn't have as many USB ports as the Raspberry Pi, nor does it have video encoding built in, so it's not really that great as a standalone computer or entertainment system. It also doesn't have quite the same amount of fervor around it as the Raspberry Pi, so while the community around the BeagleBone is strong, it's not nearly as loud as the Raspberry Pi. That means tutorials and project ideas are a little harder to come by.
What the BeagleBone is best for: The BeagleBone is best suited for projects that might be a little too complicated for the Arduino, but don't need any complex graphics like the Raspberry Pi. Since it connects to the internet out of the box, it's a lot cheaper to use than an Arduino, and since it has a ton of ways to connect external sensors it's perfect for advanced projects that interface with the real world.
Looking for a better idea of what you can do with the BeagleBone Black? Here are a few ideas: