This is an old revision of the document!
Table of Contents
Booting
There are different options for booting from an external device (useful e.g. to reflash the eMMC)
- Boot the same image from an USB-stick
- Boot image from USB-stick via serial console
- Boot from USB-stick with unbootable eMMC
Troubleshooting
- Only the two USB-2.0 ports can be used for booting:
- One is the single port on the upper right side
- The other is the port directly near the power plug (at the bottom left)
- The port near the powerplug works very unreliable for me, but that may not be the case for you
Boot the same image from an USB-stick
This is the easiest way, but does not always work.
If the image that you want to boot is the same as the one on the device, then you can simply insert the USB-stick and reboot.
Afterwards, log in via SSH and check, if you have really booted from USB-stick:
mount|grep sda
If you have successfully booted from the USB-stick, the output will read
/dev/sda2 on / type ext4 (rw,noatime,errors=remount-ro,commit=1)
If the output reads
/dev/mmcblk1p2 on / type ext4 (rw,noatime,errors=remount-ro,commit=1)''
then you didn't have luck and need to try other ways.
Background info:
- This is not an intended feature, but rather a bug/exploit
- If the images are identical, the partitions will have identical UUIDs.
- During boot, the initrd looks for this UUID to identify the partition to boot the rest of the system from.
- When there are two identical UUIDs, the first one found will be used (or the last one? doesn't matter)
- With some luck, the system partition from the USB-stick was booted (
/boot
will still be mounted from/dev/mmcblk1p1
)
Boot image from USB-stick via serial console
This way uses u-boot commands to boot from an USB-stick (and is a little tricky)
The bootloader (“u-boot”) can be interrupted using keyboard input via a serial line.
The board has to be shut down, but still connected to power. In this state, the two visible LEDs at the top of the case are off, but there is another blue LED inside the case, which is on and can be seen through the air holes (there is also a red LED near the blue one, which is also shining, but hardly visible).
To get into this state
- Have your device booted
- Connect the USB-C port to your computer
- Open a serial connection (see https://github.com/TomasOlsson/BrickedSv07-Sv07Plus)
- Shut down the device
- either by using the power-off button on the screen
- or log in via ssh and execute
sudo poweroff
.
Now interrupt the bootloader:
- Activate the window with the serial connection and keep the spacebar pressed
- With the other hand, press the small “on” button on the side of the device (for about a second, until the device turns on)
- After some lines, the console window will stop and show
Hit any key to stop autoboot: 0
- If you see the spaces arriving in the console, you can now stop pressing the spacebar
To boot from USB, enter run bootcmd_usb0
(the word “run” really has to be typed there).
Boot from USB-stick with unbootable eMMC
This is the way shown in https://github.com/TomasOlsson/BrickedSv07-Sv07Plus