# Flashing BeagleBone Black image

I have a BeagleBone Black:

$cat /etc/dogtag BeagleBoard.org Debian Image 2015-03-01$ uname -a
Linux beaglebone 3.8.13-bone70 #1 SMP Fri Jan 23 02:15:42 UTC 2015 armv7l GNU/Linux


There's an updated image available BeagleBoard.org Latest Firmware Images. The updated image is for Debian 8.2, and its dated 2015-11-12 (sha256sum 4714268365500e4c...).

According to eLinux's BeagleBoneBlack | Debian, I simply need to uncomment the following line. I verified I have init-eMMC-flasher-v3.sh in that location.

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


I'm running into trouble because I'm not sure what else is needed. I don't see a treatment in the wiki, the Debian docs are a mess (and don't really apply), and the script lacks head notes, comments and usage.

# cat /opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh | grep "\.xz"
#
# cat /opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh | grep "\.img"
cp -v /boot/uboot/u-boot.img /tmp/boot/u-boot.img || write_failure
rsync -aAx \${rsync_progress} /boot/uboot/ /tmp/boot/ --exclude={MLO,u-boot.img,uEnv.txt} || write_failure


And:

# /opt/scripts/tools/eMMC/init-eMMC-flasher-v3.sh --help
Starting eMMC Flasher
-----------------------------
Checking for Valid BBB EEPROM header
Valid BBB EEPROM header found
-----------------------------
copying: [] -> []
lsblk:
NAME         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
mmcblk1boot0 179:16   0     1M  1 disk
mmcblk1boot1 179:24   0     1M  1 disk
mmcblk1      179:8    0   3.7G  0 disk
├─mmcblk1p1  179:9    0    96M  0 part /media/BEAGLEBONE
└─mmcblk1p2  179:10   0   3.6G  0 part /
-----------------------------
df -h | grep rootfs:
rootfs                                                  3.5G  1.9G  1.4G  58% /
-----------------------------
Error: [] does not exist
writing to [] failed...


Image name

Do I unpack the *.xz archive so that its filename is bone​-​debian​-​8​.​2​-​tester​-​2gb​-​armhf​-​2015​-​11​-​12​-​2gb​.​img (that's the filename in the *.xz archive)? Or does it need to be named something else? Or should I do nothing and just reboot?

fstab

Also, do I need to add an fstab or mtab entry for mmc0 before rebooting? Or should I do nothing and just reboot?

Here's what I see when I install and remove the microSD card:

# dmesg
...

[ 9493.952565] mmc0: new high speed SD card at address e624
[ 9493.956686] mmcblk0: mmc0:e624 SU02G 1.84 GiB
[ 9493.973345]  mmcblk0: p1
[ 9504.049054] mmc0: card e624 removed
[ 9504.243331] mmc0: host does not support reading read-only switch. assuming write-enable.
[ 9504.246933] mmc0: new high speed SD card at address e624
[ 9504.249514] mmcblk0: mmc0:e624 SU02G 1.84 GiB


Judging by the file name, you have downloaded a filesystem image. To use it, you need to take an empty SD card, at least 2 GB large, and extract your image on it:

xz -cd *.img.xz | dd of=/dev/sd_card_dev_name bs=8MB


Then you will need to remount the SD card you have extracted the image to, and edit /boot/uEnv.txt on it to enable flashing. Then put the SD in your BeagleBone and boot from it to actually flash the eMMC.

Note that I don't actually own a BeagleBone, so take is as advice, not as 100% working solution. And please comment back if you have anything to add.

• Thanks Dmitry. I think I'm going to wait for someone with BBB experience to answer. I'm basically in the same boat as you, and I don't want to brick it with less than 8 hours on it. I will certainly report back if I work up the courage. – jww Dec 21 '15 at 10:42
• If you're afraid to brick it, why bother flashing at all? Is there a specific problem which makes you think that flashing is necessary? – Dmitry Grigoryev Dec 21 '15 at 10:47
• I'm noticed some software is old and dated, like OpenSSL 1.0.1e. I also want to try a newer version of GCC. (I'm a Crypto++ maintainer, and we get an occasion failure report for BeagleBone and ARM hard floats. So I want to try a new version of GCC because I can't induce a failure under the version shipped with the device). – jww Dec 21 '15 at 11:02
• In that case the board in its current state is practically useless to you, so what are you afraid of? I suppose you can always flash it back to the original state. – Dmitry Grigoryev Dec 21 '15 at 12:14
• – Junior Dec 21 '15 at 13:28