In the past, I’ve exclusively covered Arduino-based projects, but that platform is far from the only option for makers and anyone into D-I-Y electronics. Sometimes, you need more than just an electronics controller board, you need a full computer system. Among other options, the most significant single-board computers today are the Raspberry Pi and the Beaglebone Black. There’s been a lot of digital ink spilt about the Raspberry Pi since it launched early last year, but the Beaglebone Black hasn’t enjoyed nearly the same level of coverage (even though it's used in projects like OpenROV). I think that’s a shame, because the board actually has a lot to offer the amateur builder, and for many is a compelling alternative to the Pi. In this guide, I’ll take an in-depth look at the Beaglebone Black, discussing what it is, what you can do with it, and how to get started.
What is the Beaglebone Black
First, a bit of vocab: the Beaglebone Black is a single-board computer, like the Raspberry Pi. A single-board computer is pretty much what it sounds like—all the hardware you would expect to find in a desktop or laptop computer, shrunken down and soldered to a single circuit board. A processor, memory, and graphics acceleration are all present as chips on the board.
To contrast, Arduino boards also have a processor and memory on board, but are orders of magnitude less powerful, and lack the specialized I/O hardware you need to connect the board to a monitor. In more concrete terms, you can hook a Beagleboard Black up to a display, speakers, a keyboard and mouse and an Ethernet network, and boot into a Linux-based operating system. From there, you can do anything you could do with a (low-powered) Linux computer. You can’t do that with Arduino.
The original Beagleboard, launched in 2008 and was a little bit bigger and a lot more expensive. By 2012, the Beaglebone was released, which brought the size in line with the credit-card-shaped Raspberry Pi, but still cost $90. The Beaglebone Black came along earlier this year, and finally brought the price down to just $45, making it suddenly very competitive with the Raspberry Pi and other DIY-oriented Single-board computers.
What’s It Good For?
It won't replace your primary PC, but Beaglebone Black can be a powerful tool for sophisticated projects.
The Beaglebone Black has a 1GHz ARM-based CPU, 512MB of RAM and 2GB of onboard storage, expandable with a MicroSD slot. In practical terms, this is enough to run a Linux OS, along with a web browser and other desktop applications, though with limited performance. Don’t think that it will replace your primary PC, but it can be a powerful tool for sophisticated projects, and a good way to learn about Linux-based operating systems.
You can use the Beaglebone Black as nothing more than a small, standalone Linux computer, but the hardware is designed for use as an embedded system—a computer installed inside of a larger electronics project. The main evidence of this is in the two rows of GPIO (general purpose Input/Output) pins mounted along either side of the board. These pins allow the Beaglebone Black to communicate with a wide range of sensors, servos, outputs and other hardware, letting it act as the brain of a large, complex project.
When to use the BeagleBone Black
Building an electronics project is hard enough even without having to pick from a ton of different microcontroller/microprocessor options. Here’s some quick guidelines on when to pick the Beaglebone Black:
When an Arduino isn’t good enough
For a number of reasons, I still tend to recommend Arduino as the best choice for those getting started with DIY electronics. The platform is cheap, incredibly well supported, and has an enormous community, making it a great board to learn on. Even though most Arduino boards’ specs are miniscule compared to the Beaglebone Black, you may find that you don’t actually need the extra power. It comes in handy for the heavy lifting of running an operating system and other software, but for many embedded applications the Arduino will perform just as well as the fancier boards. Some of the Arduino boards are also substantially smaller, which comes in handy when you’re trying to make every cubic centimeter count.
When you want to connect a lot of hardware to your project
The one area in which the Beaglebone Black blows the Raspberry Pi out of the water is in GPIO connectivity. The Pi has a single 26-pin header that can be used as 8 GPIO pins, or as a serial bus. The Beaglebone Black, on the other hand, has two 48-socket headers that can be used for virtually limitless I/O hardware and includes a number of analog I/O pins that allow it to connect to a variety of sensor hardware that can’t be used with an out-of-the-box Raspberry Pi.
When your project isn’t media-heavy
Though the specs of the Beaglebone Black and the Raspberry Pi are quite similar, the latter has a major advantage when it comes to graphics processing. The Pi can output video at a full 1080p resolution, while the Beaglebone Black caps out at 1280 x 1024. Video decoding, 3D rendering and general GUI performance are all better on the Raspberry Pi.
Further, the Raspberry Pi features both a full-sized HDMI port and an S-Video connector, making it easy to connect it to a display. The Beaglebone has only a single micro-HDMI port, which is located uncomfortably close to the board’s USB port.
For media-heavy projects, or if you just want to use the board primarily as a small Linux computer, you’re better off going with the Raspberry Pi.
When you want to get started without much fuss
A major advantage of the Beaglebone Black is that it takes very little to get up and running. Unlike the Raspberry Pi, the Beaglebone ships with a Linux distro already installed, so getting the board up and running takes all of a few minutes. With the Raspberry Pi, you have to download and install a distro before you can get started—an inconvenient first step.
How to Get Started with the Beagle Black
If you think the Beaglebone Black is right for you, getting started is easy. Unlike the complicated Arduino ecosystem, there’s not much to choose from—just get the newest Beaglebone Black from your favorite electronics components store (Digi-Key, Maker Shed, Adafruit and a bunch of others carry it, all for the same $45), and make sure to pick up any accessories you might need. That will include a micro-HDMI cable for most people, and a MicroSD card if you don’t already have one. You’ll also want some way to read and write to the MicroSD card using your computer.
The Beaglebone Black can be powered off of a USB connection, but if you want to use components with a high power draw, or you want to use the Beagleboard away from a USB power source, you will need a power adapter. Any 5V 10W power adapter with a 5.5mm barrel connector will work—Beagleboard notes this adapter as an example, though you should be able to find a compatible adapter on any site.
Finally, you will probably also want a USB hub if you intend to use the Beaglebone Black as a computer. It ships with only a single port for USB peripherals, so the hub is necessary to be able to use a mouse and a keyboard at the same time.
All you have to do is take it out of the box and plug it into your computer using the included mini USB cable.
As previously mentioned, getting the Beaglebone Black up and running is an incredibly quick process. All you have to do is take it out of the box and plug it into your computer using the included mini USB cable. It will power up and boot into its included Linux distro, Angstrom. You could now hook it up to a display and USB peripherals.
However, you may want to be able to control the Beaglebone Black through your computer, connecting to it with a web browser. To do this, you’ll have to install a driver, located here. Unfortunately, the driver is unsigned, so in Windows 8 you’ll have to boot into the mode that allows you to install unsigned driver. Here’s a quick explanation about how to do that.
Once you’ve installed the driver, you can control the Beagleboard Black as long it’s connected via USB to your computer. You now should upgrade to the latest version of the Angstrom OS. It’s not strictly necessary, but it’s a good idea, and it should take less than an hour, much of it unattended.
First, you’ll need to download the latest Angstrom release (just under 400 MB) from this page. Then, decompress it with 7zip, and use Image Writer to write the image to the microSD card. Finally, reboot the Beaglebone Black with the microSD card inserted. The board will flash its onboard memory with the data from the microSD card, which can take up to 45 minutes. When it’s done, all the lights on the board will glow steadily, and the latest version of the OS is successfully installed. For a longer description of this process, with screenshots, check the Beaglebone Black getting started page.
From here, the sky’s the limit. You can hook the Beaglebone up to a monitor and get acquainted with using a Linux operating system, if you’re not already. You can write custom software for the Beaglebone using Python and libraries to manage all the GPIO pins. Programming the Beaglebone Black is a subject with way too much depth to cover here, but a good place to get started is Adafruit’s in-depth tutorial here. Like Arduino, you can wire hardware components directly to the Beaglebone, or you can add more sophisticated functionality by connecting a “shield,” a daughterboard that sits on top of the Beaglebone and adds features like Wi-Fi or a color LCD screen.
Like with any good project, the fun is in figuring out where to go once you’ve found your footing. Good luck, and let us know what you make!