gswbbb_kit_box

NOTE: The guide below is for OSX users. Windows users click here for the same update guide. Linux users I will presume you already know the various options for running Debian on your BeagleBone Black. :)

BeagleBone Black Rev C — In Brief

The third major revision — or Rev C — of the BeagleBone Black introduced a few minor updates, notably the increase of onboard memory from 2GB to 4GB (and as such an increase in price). But it’s the operating system (OS) in this guide that I’m focused on. Rev C ships with Debian (Linux) preinstalled. Previous revisions of the BeagleBone Black were shipped with Ångström (also Linux). For instance the “Getting Started with” kit above that I have contained an “A6” revision board running Ångström by default.

A sticker is located on the side of one of the banks of expansion headers. The designation at the end indicates the revision board you have.
A sticker should be located on the side of one of the banks of expansion headers. The designation at the end indicates the revision board you have.

Whether you’re unfamiliar with Ångström or whether you would simply prefer — like myself — to be running Debian, this guide will show you how.


To eMMC or not to eMMC

The BeagleBone Black contains either 2GB or 4GB of onboard memory, depending on the revision board you have. This memory is “nonvolatile” meaning when the board is turned off, what is written to the memory stays there, and will be accessible the next time the board is turned on. Think of this like your mobile phone’s “storage” capacity. The number is much smaller, but for most development projects 2GB or 4GB is plenty. Henceforth I will refer to this onboard memory as the eMMC.

StepOSX_to-emmc-or-not-to-emmc

There are two ways to boot Debian on the BeagleBone Black.

One way is to flash a microSD card with the latest available firmware and to boot the OS directly from the microSD card.

The other way only requires one additional step, and seems risky, but it isn’t. You can flash the eMMC (onboard memory) with Debian, effectively loading it from the microSD card directly onto the board.

This has two benefits: 1) the OS will run marginally faster from the eMMC versus running off the microSD card and 2) it allows you to keep your microSD card for flashing other BeagleBone Blacks with Debian. The second benefit is especially useful to me because I like to make one microSD card with the firmware I want, and use that one reliable card over and over again.

This guide will show you both procedures.

Note: Flashing the eMMC will require a 5VDC adapter that supplies at least 1A of power. If you plan to build a project using the BeagleBone Black that uses WiFi, you’ll want a 5VDC adapter that supplies at least 2A of power. Thus the 3.6A supplied by the Enercell adapter recommended in the parts list above is plenty, and why I’ve chosen this adapter.


My Configuration, Your How-To

For OSX my configuration is a Mid-2012 MacBook Pro (MBP) with Retina running 10.9.3. This version MBP has a built-in SD card reader, for example. All instructions below assume this configuration. Make adjustments where needed to suit your needs.

Project Steps

First Connection with the BeagleBone Black

Unpack the BeagleBone Black from the box and grab the USB cable also. Connect the USB Type B Mini to the Mini USB Port on the BeagleBone Black. Connect the USB Type A plug into your computer. This will power up the BeagleBone Black and mount a volume to your computer. It mounted ‘BEAGLEBONE’ to my Desktop.

Open the volume and double-click the START.htm file — this will open a tab in your browser. Scroll down to the ‘Install drivers’ sub-section and follow the next instructions for installing OSX drivers.

You need to click both the ‘Network’ and ‘Serial’ links. The former will download ‘HoRNDIS.pkg’ (a network driver, which you can read more about here if you’re so inclined); the latter will download ‘FTDI_Ser.dmg’ (a serial driver). From where the two files downloaded to, install the both of them, following all the necessary prompts for a successful installation.

OK we’ll come back to the BeagleBone later. Now it’s time to update the OS running on the BeagleBone Black to be the latest version of Debian available.

Eject the BeagleBone Black from your computer (in Finder, right-click the drive and ‘Eject’ it).

Download the Debian eMMC XZ file

Go here: http://beagleboard.org/latest-images.

If you wish to flash the BeagleBone Black’s eMMC, download the ‘eMMC flasher’ version of Debian. Click the respective link for the image you want.

This will download a .IMG.XZ file to your default download directory (image 2). Note the filename may be different than the image shown, depending on the image type you choose to download.

Install The Unarchiver

If this is your first time with .XZ files, OSX won’t recognize them. Double-clicking the archive results in a ‘There is no application set to open the document’ error. It asks you to choose an application, cancel, or Search App Store. Click the Search App Store button.

App Store will launch and automatically search for applications associated with .XZ files. The Unarchiver was the first option in my search results. It’s free. Install it.

Extract the .IMG.XZ file

Now that you have a program associated with .XZ files, double-clicking the Debian .IMG.XZ will ask you where you want to extract the archive to. Click ‘Extract to the same folder’ and it will do exactly that.

The extracted .IMG is significantly larger than the compressed .XZ — this is standard. And now that we have an expanded .IMG, we need to write it to a microSD card!

Install Pi Filler

Pi Filler is a program designed to write .IMG files onto SD cards for the Raspberry Pi. It works just fine with this process for the BeagleBone Black also.

Click the link for Pi Filler 1.1.1 — it does not specify support for OSX 10.9.x but it works fine for me.

Where the .ZIP downloads to: Double-click PiFiller.zip and it will expand the program to the same directory as the .ZIP.

Drag the Pi Filler program to your Applications directory.

Launch Pi Filler.

Launch Pi Filler

Note: if you already have the SD card inserted, eject it now.

Pi Filler will prompt you about what it does. Click Continue.

Navigate to the directory where the expanded .IMG file is, click it once, and click the Choose button.

Pi Filler will prompt you to ‘insert the SD card you want to use for the Raspberry Pi.’ Again this program was designed for the Raspberry Pi, but works great for the BeagleBone Black too! Click Continue.

Pi Filler will begin ‘Looking for your SD card …’ and then find it. It will prompt you with the name of your SD card’s volume and ask you to “Please make sure this is really your SD card and that it can be ERASED.”

When you are sure this is your SD card — and not the volume of your Mac’s hard drive for instance! — click Continue.

Erase and Write to the SD Card

Pi Filler will prompt you one last time are you really absolutely sure you want to erase your SD card? When you are sure, click Erase SD card.

Depending on your privileges OSX may require an Administrator password to proceed.

Pi Filler will begin the process of writing the .IMG to the SD card. I found if my Mac’s screen went off during the write process Pi Filler returned an error. I recommend ‘doing other things with your Mac’ (image 2) as long as you don’t interrupt the SD card process.

It took my machine around 20 minutes to write the .IMG to the SD card.

Remove the SD card from your computer and remove the microSD card from the SD card adapter.

Insert the microSD card

Insert the microSD card in the microSD card slot on the BeagleBone Black as shown.

Push the card in and you will hear it ‘click’ into place.

Note: If you installed the ‘eMMC flasher’ version of Debian to your microSD card, proceed to the next step. If you opted for the bootable microSD version of Debian, I recommend you glance at the next step (to see what you’re missing out on!) and then proceed to Step 10.

Flash the BeagleBone Black's eMMC (optional)

This is the exciting part! You’re about to flash the BeagleBone Black’s onboard eMMC which will effectively write the Debian firmware to the BeagleBone Black.

With the microSD card inserted, locate the ‘Boot Switch’ on the component side of the BeagleBone Black.

Note: Before proceeding ensure your Adaptaplug’s “M” tip is in the correct polarity orientation (image 3). If you want to flash the eMMC, you will absolutely require a 5VDC adapter; computer USB ports simply do not supply enough current needed by the write process to transfer data from the microSD card to the eMMC.

This next step is a bit tricky. Push down on the ‘Boot Switch’ and hold it down — try it a few times so you can tell when it is depressed. Now while holding down the Boot Switch, plug in the 5VDC power supply.

The ‘PWR’ LED located between the power connector and the ethernet port will light up. You’re still holding down the Boot Switch. Next the four on-board LEDs will all light up. Then they will begin flashing. At the point when the onboard LEDs begin flashing, count to three and then let go of the Boot Switch.

The eMMC flasher version of Debian is now being written from the microSD card to the BeagleBone Black’s onboard flash memory. The process takes around 20 minutes. You’ll know when the process is done because all the LEDs (onboard and PWR) will turn off and the BeagleBone Black will power down.

When all the LEDs are off, unplug the 5VDC power cable and remove the microSD card.

Connect to the BeagleBone Black via Serial over USB

Now it’s time to confirm you can connect to the BeagleBone Black. Connect the USB Type B Mini to the Mini USB Port on the BeagleBone Black. Connect the USB Type A plug into your computer. Debian is now booting from the BeagleBone Black’s eMMC. Give it a couple minutes.

Now launch OSX’s Terminal program. Type the following in Terminal:

ssh root@192.168.7.2

Hit the Enter key.

Terminal will now connect with Debian using secure shell (SSH). When it connects, this will confirm Debian is running on the BeagleBone Black (image 2). Type ‘exit’ to cancel the connection. Eject the BeagleBone Black from your Mac.

Begin strategizing your next embedded Linux electronics project using the BeagleBone Black!