Updating firmware while offline

All my nodes are located in places without any Internet access, and while installing the bin file it requires fetching data from Github.

Would it be possible to cache the Github data to enable offline firmware updates?

1 Like

I’m assuming you are attempting a bluetooth OTA update. You should be able to update over a USB cable connected to a computer without an internet connection. Inside the release zips at the links below, there should be both the firmware files you need and bash scripts you can use to perform the update. There are other ways of performing the update here: https://github.com/meshtastic/Meshtastic-device#firmware-installation.

https://github.com/meshtastic/Meshtastic-device/releases
https://github.com/meshtastic/Meshtastic-device/releases/download/1.1.7/firmware-1.1.7.zip

1 Like

Actually I was trying over USB using the zip files and the EspHome flashing tool. And during the flashing process internet connection is required in order to download data from Github. Don’t have a device to show the screenshot now.

Hm. That’s weird, I’m surprised to hear that. Do you have Python installed on your system? You can install Anaconda’s python if you don’t https://www.anaconda.com/products/individual. Once you have Python installed, you should be able to install esptool by launching a python command prompt and typing

> pip install esptool

Once you have done that, you can flash the firmware by typing

> python -m esptool --baud 921600 write_flash 0x10000 path/to/firmware.bin

Very similar to the commands the “device-install.sh” and “device-update.sh” use to flash the firmware on linux systems. I use python to flash my devices routinely, and it works well and doesn’t require internet.

1 Like