After having set-up and customized my "master" BeagleBone Black (BBB) with applications etc. on the on-board eMMC, I want to duplicate it on other BBB boards.
What is the best way to duplicate the BBB?
My understanding of options:
- SD-Card: Programming each board by inserting a prepared SD card containing an image and pressing the "boot" switch while powering up.
- How should I prepare that .img file or the SD card from my master BBB?
- The image should copy to the on-board eMMC, so that the SD-card can be removed afterwards.
- USB: Programming by connecting the board over USB to a (Win7) PC.
- Is it possible to write the full on-board eMMC from the PC?
- With which app to do the writing?
- How to prepare the image which will be written, starting from the master BBB?
- Ethernet: Programming over LAN after boot-up with default angstrom distro.
- Is it even possible over LAN?
- How to do the writing?
- How to prepare the image which will be written, starting from the master BBB?
Which is possible/best?
Edit: My current solution is to flash with a standard image (from the BeagleBoe website) and then have a script do all modifications as expected. This includes disabling many services I don't need, installing applications and configuring stuff etc.
If there is an easier way for making a SD card with a full image on it, I'm still interested.
For anyone else that needs this, the best answer I've found to this is to do the following:
First setup your master Beaglebone Black the way you want it.
Backup the eMMC
- FAT format a 4GB or larger SD card (must be a MBR/bootable formatted microSD card)
Download beagleboneblack-save-emmc.zip and extract the contents onto your SD card
Note: this is an image from Jason Krinder at his github https://github.com/jadonk/buildroot using the save-emmc-0.0.1 tag
- Put the card into your powered off Beaglebone Black
- Power on your Beaglebone Black while holding the S2 Button
- The USR0 led will blink for about 10 minutes, when it's steady on you have an SD card with a copy of your eMMC in a .img file
Use the eMMC to flash a new Beaglebone Black
On the SD card edit autorun.sh
#!/bin/sh
echo timer > /sys/class/leds/beaglebone\:green\:usr0/trigger
dd if=/mnt/<image-file>.img of=/dev/mmcblk1 bs=10M
sync
echo default-on > /sys/class/leds/beaglebone\:green\:usr0/trigger
where <image-file>
is the image file you got after copying backing up your eMMC
- Insert the card into your powered off Beaglebone Black
- Power on your Beaglebone Black while holding the S2 Button
- The Beaglebone Black should go into rebuilding mode and within about 20 minutes you'll have a newly flashed Beaglebone Black (when all 4 USR LEDs are solid) with a copy of your original
eLinux reference used for this article - http://elinux.org/BeagleBone_Black_Extracting_eMMC_contents