Single board computer projects

Beaglebone black tips and tricks

last updated: 03/10/16

Create µSD-card

Download the image from https://beagleboard.org/latest-images , extract it (unxz) and burn it to an sd card with dd:

    unxz bone-debian-8.4-lxqt-4gb-armhf-2016-05-13-4gb.img.xz
    sudo dd status=progress if=bone-debian-8.4-lxqt-4gb-armhf-2016-05-13-4gb.img of=/dev/sde bs=1M

Write from µSD-card to eMMC

The embedded Multi-Media-Card (eMMC) is a MMC (like an SD-card) embedded onto the device’s motherboard (eMMC is much slower than SSD). It provides cheap internal storage.

To write from µSD-card to eMMC you can use a script (init-eMMC-flasher-v3.sh) located in /opt/scripts/tools/eMMC. The simplest way is to mount your SD-card on your PC and uncomment in /boot/uEnv.txt the following command with your editor (sudo nano):

    ##enable BBB: eMMC Flasher:
    cmdline=init=/opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh

Now reboot your bbb. The blue on-board LEDs should light like K.I.T.T. (knight rider pattern). It can take up to 25 minutes to flash the eMMC. If the eMMC was already in use it may be necessary to press S2 when powering up (press til 4 LEDS light) to force the bbb to boot from SD-card.

Watch booting over serial

Use a serial to USB converter with 3.3V! Connect it to the pins 1 (GND), 5 (TX) and 6 (RX) of the J1 header (6 pins). If you use the adafruit adaptor (https://www.adafruit.com/product/954) the colors are black to pin 1 (GND), white (TX out of the USB port) to 5 and green (TX out of the USB port) to 6.

With a terminal program on your PC (ex. CleverTerm) you can watch bbb when booting up (115200 bit/s 8N1).

SSH and fix IP address

First we need to know the IP adress given by DHCP. On our PC we use nmap (install with sudo apt install nmap):

    sudo nmap -sP 192.168.1.*    

Now we are able to log in (ex. DHCP gave 127):

    ssh debian@192.168.1.127

The password is temppwd.

The debian on bbb uses connman as network manager. We have to determine the "service" name of our ethernet with the connmanctl services-command.

    connmanctl services

The answer will be per example:

    *AO Wired                ethernet_544a16caaae8_cable`

Now we can tell connman to setup a static IP address for that service (in one line without backslash):

    sudo connmanctl config ethernet_544a16caaae8_cable --ipv4 manual 192.168.1.100 \
    255.255.255.0 192.168.1.1 --nameservers 192.168.1.1