I’ve done this several times, from a linux virtual machine running on Windows. If that is ok for you, I’ll write it down.
peteroakes has done this from a full Linux machine. A Raspberry Pi if I recall ...
2 of 2 people found this helpful
Use a Linux computer or a Linux VM to turn the device into a mass storage device:
The rpiboot version for Windows available on the internet does not work with the gateway.
(not sure if this is needed:, but installing it gets the USB drivers installed on the windows PC)
clone the avnet rpiboot repository on linux:
navigate to the utils/rpiboot subdir, an then make clean
then make build
(and resolve dependencies along the way)
Then, without powering the device, open it and connect the usb micro connector in the middle of the PCB with your PC
Then power up the device
then, go to the subdir where you built the repository and execute:
sudo ./rpiboot -d ./msd
(I forgot if you first have to set the execute flag or if the build script did it)
If all is ok, on your unix, it should become available under /dev as a new entry (/dev/sd*)
peteroakes did all of this on a Pi, and mounted the drives as below (sda1 is the /boot):
pi@raspberrypi:/media $ sudo mkdir sda1
pi@raspberrypi:/media $ sudo mkdir sda2
pi@raspberrypi:/media $ sudo mount /dev/sda1 /media/sda1
pi@raspberrypi:/media $ sudo mount /dev/sda2 /media/sda2
sudo dd of=raw_os_image_of_your_choice.img if=/dev/sdX bs=4MiB
On my PC with Ubunu client Linux VM under VMBox - I have to allow pass-through of the USB devices that enumerate during these activities, and the drives enumerate on Window instead of Linux.
I then used BalenaEtcher to flash the image.
Thank you for taking the time to reply. Your instructions were very helpful and I was able to flash the image using a RPi 3B+.
1 of 1 people found this helpful
With that image, take care to run these commands before doing an apt-get upgrade:
sudo apt-mark hold raspberrypi-kernel sudo apt-mark hold raspberrypi-bootloader sudo apt-mark hold raspberrypi-sys-mods
Can I get some direction on how to reload the "stock" image?
I tried loading the Raspberry desktop (because I thought why not if its running "stretch lite"), well that was a mistake and doing so has caused the gateway not to properly boot anymore. Now I just want to go back to an "out of the box" device. I have downloaded the image file onto a Windows machine and now I am confused on how to get that image onto the gateway...
I understand if this is an annoying question and if reloading an image is a remedial task/request but, it is where I am at and I would appreciate some help.