This article is more than 1 year old

Review: Beagleboard Beaglebone Black

Pi-eyed killer - or should we give Pis a chance?

IO, oh aye

The Pi has fewer general-purpose IO pins, but it has a number of extra connectors on the board that can be soldered to, and it also has a couple of ribbon-type connectors, one of which is used for the now-available Pi camera module.

Beagleboard Beaglebone Black

Wired networking comes as standard. The mini USB port is for power and headless operation

Clearly, then, the Pi has some advantages over the Black, but the Beaglebone is not without its merits. For a start, its operating system, an embedded Linux distro called Angstrom, is pre-loaded on the device in 2GB of flash fitted onto the board, a feature the Pi lacks. Hook the Black's mini USB port into a Mac, Linux or Windows machine for power, and it'll boot up, ready for access in a few seconds.

A small, 75MB part of the eMMC storage mounts on your desktop. Inside, you'll find some HTML page files that help you set up your machine to fully communicate with the Black using the USB link as a network proxy, if your OS doesn't support this already.

Once you've done the setup, you have interactive access to the pages served by the Black's own web server, which take you through updating the software, give you the opportunity to use the bundled web-based IDE, Cloud 9, and give you a brief run through Bonescript, a library of Beaglebone control functions you can use in JavaScript, the primary coding language for the Beaglebone family.

Beagleboard Beaglebone Black

The Black can take Micro SD storage, but with 2GB of on-board Flash, a card isn't essential

The upshot is that you can run the Black headlessly (sans monitor in other words) to operate, prepare and install software, all out of the box - which, as I say, also contains the mini USB cable you'll need. In fact, board and cable are the only things in the box other than a quick-start card.

Now, a Pi user - heck, this Pi user - will tell you you can run a Raspberry Pi headlessly, too. However, not in a way that's as easy and as elegant as hooking computer and board together over a single cable - which, since it provides power, means you need literally nothing else attached to the Black. I'm sitting here, writing this review, and the Black's LEDs are flashing away on voltage delivered by the spare USB port on my office Mac's extended keyboard. Because of the on-board eMMC, I don't even need a storage card.

I had the Black delivered at work, but I didn't have to wait until I got home before I could begin using it. I just hooked it up to my computer. If I'd been using a wireless keyboard, I'd have used one of the main unit's USB ports instead.

Beagleboard Beaglebone Black

The Black's chips include a TI ARM SoC and 2GB of eMMC

Anyone who's used the old Beaglebone will be used to this because it lacked any kind of TV output - it had less memory and no hardwired flash storage either, by the way - but as someone new to the platform, I found it a revelation.

This approach is particularly handy for folk using the Black as the basis for a broader hardware project as it saves them from having to hook up the board to its own monitor, keyboard and mouse before dropping it into the gadget they're making. Connected to a TV, the Black boots straight into the Gnome desktop, so you'll need mouse and keyboard, and so a USB hub - or keyboard with integrated hub - is a requirement.

I mentioned that JavaScript is the main development language for the Black. Coders who prefer Python - and beginners - may want to check out Matt Richardson's mrBBIO, a Python module written to provide access to the BeagleBone's IO pins. It's easy to transfer the module to a headless Black using the scp command.

Beagleboard Beaglebone Black

Cramped connectors: HDMI and USB plugs barely fit alongside each other

Alas, once on the Black, myBBIO and similar modules, such as Alexander Hiam's Arduino-oriented pyBBIO, break due to changes board developer Beagleboard has made to the Black's operating system. Specifically, the Black ships with Linux kernel 3.8 and supports the Device Tree system to simplify considerably the interaction between the operating system kernel and hardware - but the interfacing software above all that needs to know about the device tree and where data is located, and that's where incompatibilities have crept in.

Beagleboard co-founder Jason Kridner explains the rationale behind the move in a post over at LinuxGizmos.

Next page: Fast forward

More about

TIP US OFF

Send us news


Other stories you might like