Arrow current has a sale where when you spend over $20, you get upgraded to overnight shipping for free!
I saw this through an e-mail through them and I had just heard about the Pocket Beagle so I decided I’d order it.
I got that and some other goodies that I may write about later; however, there is not good documentation on how to get the device set up.
Having a BeagleBone Black, I figured it’d be plug-and-play; however, I was way wrong.
My first instinct was to just plug it in and I did and nothing happened. I’ve had problems with Ethernet over USB before, but I was expecting that since I was using Network Manager that everything would be somewhat “automagic”; however, nothing happened at all….well, that’s a lie. The device got really hot after being plugged in. I started to get worried that I had cooked the device by accident.
Confused and frustrated, I tried searching and there short reviews of the device, but nothing that really stood out. The getting started guide shows it working out of the box (but that guide pictures a Black..) so I was really thinking that I had a defective board.
There was a very short quickstart guide written on the cardboard backing of the package. So if you threw that away and this was your first device, then you’d be totally screwed as there isn’t anything yet. I may or may not have been that guy. 🙂
So enough ranting!
To get everything started, let’s get a list of what we’ll need:
- A minimum of 4GB MicroSD card
- A MicroUSB Cable
- A way to write data to the MicroSD card (This can be a USB adapter or a MicroUSB to SD for your computer or you might even have a microSD card on your laptop)
Now, these instructions are for Linux, but in all honesty they’re applicable to other OS as well.
Downloading an Image
First thing that we’ll do is get the latest image from beaglebone. Look for one that supports our device (in this case PocketBeagle). I have a copy that is recent as of the time or writing available for download; however, it is big and will take some time to download.
Once this is done, we’ll need to extract it. On Linux, I’ll be using unxz; however, I think xz files can be extracted on Windows and Mac using 7zip.
Burning our Image
With our image extracted, we’ll need to burn it to a microSD card. For Linux, I use
dd. To use this, first we’ll need to know what drive the micro SD card is:
sudo fdisk -l
Disk /dev/sda: 298.1 GiB, 320072933376 bytes, 625142448 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0002b49f
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 576909311 576907264 275.1G 83 Linux
/dev/sda2 576909312 625141759 48232448 23G 82 Linux swap / Solaris
Disk /dev/sdb: 16 GiB, 17179869184 bytes, 33554432 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 8192 bytes
I/O size (minimum/optimal): 8192 bytes / 131072 bytes
You’ll then see something like /dev/sdX or /dev/mmcX (where X is a number or letter) and it’s size. If you see /dev/sdX then you’ll want to use /dev/sdX and not /dev/sdX1 or something, likewise, if you see /dev/mmcX then you’ll want to use /dev/mmcX and not /dev/mmcXp1.
This should be obvious, because if you look at /dev/sda in the example above, you’ll see that /dev/sda1 is underneath /dev/sda. Hopefully that isn’t too confusing..
Now to actually burn it:
sudo dd if=bone-debian-9.1-iot-armhf-2017-09-21-4gb.img of=/dev/sdX status=progress
This will take a while, but now that DD will show you progress so you don’t know if something has randomly died and you don’t know (and it beats sending USR1 to the process).
Luckily, if you’re using Windows, then there is Rufus and a helpful guide for Windows for burning Ubuntu to a USB disk. The only thing you’ll need to do differently is select the beaglebone .img instead of the Ubuntu one.
Booting the device
With the image burned, you’ll now take the microSD card and insert it into a unplugged PocketBeagle.
With it inserted, you can now plug in your MicroUSB cable to the board and into your computer.
It’ll eventually boot and everything is finished once you can see a new drive and can follow the getting started guide
If you have issues with networking over USB, then try the following on Linux:
sudo ifup usb0 192.168.7.1
#Additional configuration may be needed, check your distro's documentation for further information.