Beagleboard XM running Ubertooth installation howto

For installing Ubuntu 12.10 on the Beagleboard-XM, goto:

Essentially using Linux PC, go to:

and get the latest image.

Untar the image ("xz -d" and followed by "tar xvf"):

xz -d ubuntu-12.10-console-armhf-2013-06-14.tar.xz
tar xvf ubuntu-12.10-console-armhf-2013-06-14.tar

and then insert an empty sdcard (or ready to be overwritten) into the Linux PC, and enter the following command at the directory where the image above has been untar:

(please read the script to confirm all the following inputs are correct)

./ –mmc /dev/sdX –uboot beagle_xm

The /dev/sdX above should be virtual device disk where the sdcard has been recognized by the filesystem (discoverable via "dmesg"), should be at the whole disk level, not partition level, and the entire sdcard should not mounted into any directory. Be careful with this operation, as it will be over-writing the entire sdcard with one image that have two partition (after "" has complete formatted the sdcard):

fdisk -l /dev/sdb

Disk /dev/sdb: 3963 MB, 3963617280 bytes
4 heads, 16 sectors/track, 120960 cylinders, total 7741440 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
Disk identifier: 0x000e1939

Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 133119 65536 e W95 FAT16 (LBA)
/dev/sdb2 133120 7741439 3804160 83 Linux

First partition is vfat-formatted, and second partition is ext4-formatted.

Remember, if "/dev/sdX" is supplied wrongly you may be over-writing the entire harddisk instead. But there will be a confirmation page before the actual image-writing operation.

After the sdcard image has been properly created, removed it and insert it into Beagleboard-XM, and now connect the USB power cable to the Beagleboard, and then the FTDI-USB cable to the DB9 serial port of the Beagleboard-XM to the USB port of the Linux PC.

Do a "lsusb" or "dmesg" to find out the device driver for the FTDI-USB cable (normally should be /dev/ttyUSB0). Then use "minicom" (or any other hyperterminal software) to connect to the port at /dev/ttyUSB0.

Serial interface setting is 115200, 8N1, no hardware and software flow control.

Through this minicom connection we can see how the system bootup:

and finally will be presented with a login screen:

login: ubuntu
Welcome to Ubuntu 12.10 (GNU/Linux 3.7.10-x12 armv7l)

The default password is "temppwd" as mentioned immediately after the image is created on the sdcard.

After login as root, we can see how the system is partitioned:

root@arm:~# df

Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mmcblk0p2 3744336 581936 2972192 17% /
udev 233832 4 233828 1% /dev
tmpfs 97520 224 97296 1% /run
none 5120 0 5120 0% /run/lock
none 243792 0 243792 0% /run/shm
none 102400 0 102400 0% /run/user
/dev/mmcblk0p1 65390 11028 54362 17% /boot/uboot

root@arm:~# cat /etc/lsb-release


Now is to connect up the ethernet cable to the network (with DHCP running somewhere):

dhclient eth0

The above will get an IP address, and do a "apt-get update" to update all the APT resource database, and then install the essential compilation utilities:

apt-get install build-essential
apt-get install

But before this can be done, I got consistent segfaulting of "apt-get install", so I suspect the APT database is corrupted post-installation, so perhaps clear the APT cache first:

cd /var/cache/apt
mv pkgcache.bin srcpkgcache.bin /tmp

and do a "apt-get update" to create a new cache.

Next: HOW TO INSTALL THE Ubertooth software?

We can follow the instructions given at:

Essentially download the libbtbb-2012-10-R3.tar.xz and ubertooth-2012-10-R1.tar.xz from here:

xz -d libbtbb-2012-10-R3.tar.xz
tar tvf libbtbb-2012-10-R3.tar
cd libbtbb-2012-10-R3
make install

And I did install into another directory as well:

INSTALL_DIR=/usr/local/lib INCLUDE_DIR=/usr/local/include make install

After untaring the "ubertooth-2012-10-R1.tgz, cd to "host", and move the "bluetooth_rxtx" to the "/usr/src" directory:

cd ubertooth-2012-10-R1
cd host/
mv bluetooth_rxtx/ /usr/src/
cd /usr/src/bluetooth_rxtx/

cc -O2 -Wall -fPIC -c ubertooth.c ubertooth_control.c
In file included from ubertooth.h:25:0,
from ubertooth.c:31:
ubertooth_control.h:28:31: fatal error: libusb-1.0/libusb.h: No such file or diy
compilation terminated.
In file included from ubertooth_control.c:24:0:
ubertooth_control.h:28:31: fatal error: libusb-1.0/libusb.h: No such file or diy
compilation terminated.
make: *** [] Error 1

The above error can be corrected by:

apt-get install libusb-dev libusb-1.0.0-dev

apt-get install libftdi1 libftdi-dev

After the Ubertooth has been installed, test out the utilities:

ubertooth-dump etc etc.



3 responses to this post.

  1. Hello Peter, I would like to know the reason why you switched from Angstrom to Ubuntu in order to run Ubertooth ?, why not compiling ubertooth host applications from source code on Beaglebone ? are there any dependent packages that could not be found on Angstrom?


Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: