[SOLVED] Unable to mount reTerminal as External Storage [Flashing eMMC]

I am attempting to flash a different Operating System on the reTerminal. But I have run into a blocking issue…

I am carefully following the documentation here: Getting Started with reTerminal - Seeed Wiki

I flipped the boot mode switch inside the device. But when I attempt to mount the device as external storage it fails to mount (On both Linux [Arch] and Windows 11…). Initially I thought it was related to my Linux environment however the same exact issue persists on Windows. The device’s eMMC storage never mounts to the filesystem. Which in turn blocks me from being able to flash the device…

In Windows I can see BMC2711 Boot appear under Universal Serial Bus devices inside of Device Manager. If I run rpiboot that entry disappears from Device Manager and I can see that the rpiboot tool interacted with the reTerminal.

RPIBOOT: build-date Apr 27 2022 version 20220427~095022 0414c9c9
Waiting for BCM2835/6/7/2711…
Loading embedded: bootcode4.bin
Sending bootcode.bin
Successful read 4 bytes
Waiting for BCM2835/6/7/2711…

However the storage media still does not mount. I also noticed that the device’s system light doesn’t blink without the rpiboot tool.

This behavior is exactly the same on Linux. I can see the above stated output from the rpiboot tool. But the device never mounts it’s eMMC storage to the filesystem.

I see the following logs in dmesg

[ 6617.087520] usb 2-1: new high-speed USB device number 6 using xhci_hcd
[ 6617.227760] usb 2-1: config index 0 descriptor too short (expected 55, got 32)
[ 6617.228010] usb 2-1: New USB device found, idVendor=0a5c, idProduct=2711, bcdDevice= 0.00
[ 6617.228014] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 6617.228015] usb 2-1: Product: BCM2711 Boot
[ 6617.228017] usb 2-1: Manufacturer: Broadcom
[ 6617.228018] usb 2-1: SerialNumber: 092eb44c
[ 6619.334292] usb 2-1: USB disconnect, device number 6

I am at a loss here. Hopefully someone has some ideas on how to move forward. Perhaps some code changed somewhere? Anyhow. Any input into this situation is much appreciated.

Thanks!

1 Like

I was able to resolve this by using the “Current Stable Release” of usbboot.

Here: Release CM4 stable release · raspberrypi/usbboot · GitHub

The documentation should be corrected to reflect this instead of assuming that their most current development build will work.

➜ lapt0p:Downloads cd usbboot-2021.07.01 [Sat Apr 30, 12:09:03]
➜ lapt0p:usbboot-2021.07.01 ls [Sat Apr 30, 12:09:06]
 bin2c.c  debian  fmemopen.c  imager  LICENSE  main.c  Makefile  msd  nvme  Readme.md  recovery  win32
➜ lapt0p:usbboot-2021.07.01 [Sat Apr 30, 12:09:06]
➜ lapt0p:usbboot-2021.07.01 make [Sat Apr 30, 12:09:08]
cc -Wall -Wextra -g -o bin2c bin2c.c
./bin2c msd/bootcode.bin msd/bootcode.h
./bin2c msd/start.elf msd/start.h
./bin2c msd/bootcode4.bin msd/bootcode4.h
./bin2c msd/start4.elf msd/start4.h
cc -Wall -Wextra -g -o rpiboot main.c -lusb-1.0
➜ lapt0p:usbboot-2021.07.01 sudo ./rpiboot [Sat Apr 30, 12:09:11]
Waiting for BCM2835/6/7/2711…
Loading embedded: bootcode4.bin
Sending bootcode.bin
Successful read 4 bytes
Waiting for BCM2835/6/7/2711…
Loading embedded: bootcode4.bin
Second stage boot server
Loading embedded: start4.elf
File read: start4.elf
Second stage boot server done

dmesg logs:
[ 6617.087520] usb 2-1: new high-speed USB device number 6 using xhci_hcd
[ 6617.227760] usb 2-1: config index 0 descriptor too short (expected 55, got 32)
[ 6617.228010] usb 2-1: New USB device found, idVendor=0a5c, idProduct=2711, bcdDevice= 0.00
[ 6617.228014] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 6617.228015] usb 2-1: Product: BCM2711 Boot
[ 6617.228017] usb 2-1: Manufacturer: Broadcom
[ 6617.228018] usb 2-1: SerialNumber: 092eb44c
[ 6619.334292] usb 2-1: USB disconnect, device number 6
[ 6970.197060] usb 2-1: new high-speed USB device number 7 using xhci_hcd
[ 6970.340588] usb 2-1: config index 0 descriptor too short (expected 55, got 32)
[ 6970.340862] usb 2-1: New USB device found, idVendor=0a5c, idProduct=2711, bcdDevice= 0.00
[ 6970.340866] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 6970.340868] usb 2-1: Product: BCM2711 Boot
[ 6970.340869] usb 2-1: Manufacturer: Broadcom
[ 6970.340871] usb 2-1: SerialNumber: 092eb44c
[ 6972.443755] usb 2-1: USB disconnect, device number 7
[ 8637.057888] usb 2-1: new high-speed USB device number 8 using xhci_hcd
[ 8637.198038] usb 2-1: config index 0 descriptor too short (expected 55, got 32)
[ 8637.198311] usb 2-1: New USB device found, idVendor=0a5c, idProduct=2711, bcdDevice= 0.00
[ 8637.198315] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 8637.198317] usb 2-1: Product: BCM2711 Boot
[ 8637.198318] usb 2-1: Manufacturer: Broadcom
[ 8637.198320] usb 2-1: SerialNumber: 092eb44c
[ 8639.482919] usb 2-1: USB disconnect, device number 8
[ 8639.771253] usb 2-1: new high-speed USB device number 9 using xhci_hcd
[ 8639.911748] usb 2-1: New USB device found, idVendor=0a5c, idProduct=2711, bcdDevice= 0.00
[ 8639.911762] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=4
[ 8639.911768] usb 2-1: Product: BCM2711 Boot
[ 8639.911772] usb 2-1: Manufacturer: Broadcom
[ 8639.911776] usb 2-1: SerialNumber: 092eb44c
[ 8641.527524] usb 2-1: USB disconnect, device number 9
[ 8643.394591] usb 2-1: new high-speed USB device number 10 using xhci_hcd
[ 8643.535686] usb 2-1: New USB device found, idVendor=0a5c, idProduct=0001, bcdDevice= 0.01
[ 8643.535701] usb 2-1: New USB device strings: Mfr=2, Product=1, SerialNumber=3
[ 8643.535707] usb 2-1: Product: Compute Module
[ 8643.535711] usb 2-1: Manufacturer: Raspberry Pi
[ 8643.535715] usb 2-1: SerialNumber: 092eb44c
[ 8643.570600] usb-storage 2-1:1.0: USB Mass Storage device detected
[ 8643.570725] scsi host3: usb-storage 2-1:1.0
[ 8643.570827] usbcore: registered new interface driver usb-storage
[ 8643.578230] usbcore: registered new interface driver uas
[ 8644.595369] scsi 3:0:0:0: Direct-Access RPi-MSD- 0001 PQ: 0 ANSI: 2
[ 8644.595688] sd 3:0:0:0: Attached scsi generic sg2 type 0
[ 8644.595926] sd 3:0:0:0: [sdc] 61071360 512-byte logical blocks: (31.3 GB/29.1 GiB)
[ 8644.596071] sd 3:0:0:0: [sdc] Write Protect is off
[ 8644.596075] sd 3:0:0:0: [sdc] Mode Sense: 0f 00 00 00
[ 8644.596211] sd 3:0:0:0: [sdc] Write cache: enabled, read cache: enabled, doesn’t support DPO or FUA
[ 8644.598177] sdc: sdc1 sdc2
[ 8644.602854] sd 3:0:0:0: [sdc] Attached SCSI removable disk
[ 8645.197914] FAT-fs (sdc1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[ 8645.407286] EXT4-fs (sdc2): recovery complete
[ 8645.412716] EXT4-fs (sdc2): mounted filesystem with ordered data mode. Quota mode: none.

➜ lapt0p:usbboot-2021.07.01 df -h | grep sdc [Sat Apr 30, 12:14:04]
/dev/sdc1 253M 49M 204M 20% /run/media/nerd/boot
/dev/sdc2 29G 2.9G 25G 11% /run/media/nerd/rootfs

Thanks Team!
–nerd

1 Like

Thank you, you’re a lifesaver!

Doesn’t work for me even with this build unfortunately.