Skip to main content

Flashing ESP32 devices firmware

Prerequisitesโ€‹

Check Data Cableโ€‹

Plug your device into your computer using a USB cable and then do the following:

important

You may need to install a driver from Silicon Labs for the CP210X USB to UART bridge

Some newer boards may require the drivers for the CH9102 or Direct Download for Windows 7.

Connect your Meshtastic device to your USB port, open a Terminal and enter the following command:

lsusb

You should see something like: ID 10c4:ea60 Silicon Labs CP210x UART Bridge for CP210X or ID 1a86:55d4 QinHeng Electronics USB Single Serial for CH9102

Download Latest Firmwareโ€‹

Firmware can be downloaded from the Firmware page. Your initial installation has to happen over USB from your Mac, Windows, or Linux PC. Once our software is installed, all future software updates happen over Bluetooth from your phone.

note

The T-Beam 0.7 board is an earlier version of the T-Beam board, and due to changes in the design in subsequent iterations this board uses a specific firmware file different from the other T-Beam boards.

firmware-tbeam0.7-1.x.x.bin is the correct firmware. firmware-tbeam-1.x.x.bin is incompatible. For all other T-Beam boards firmware-tbeam-1.x.x.bin is the correct selection.

Command Line Interface Instructionsโ€‹

Install Prerequisite Softwareโ€‹

Check if you have python3 and pip installed with the following command

python3 --version
pip3 --version

If python3 is not installed, install with

sudo apt-get update
sudo apt-get install python3

If pip is not installed, install with

sudo apt-get install python3-pip

Install esptoolโ€‹

pip3 install --upgrade esptool

Confirm Communication With Chipโ€‹

Connect the radio to your computer using a data USB cable. Confirm your device is talking to your computer using the following command:

Command
esptool chip_id
Expected Output
# You should see a result similar to this:
mydir$ esptool chip_id
esptool.py v2.6
Found 2 serial ports
Serial port /dev/ttyUSB0
Connecting....
Detecting chip type... ESP32
Chip is ESP32D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: 24:6f:28:b5:36:71
Uploading stub...
Running stub...
Stub running...
Warning: ESP32 has no Chip ID. Reading MAC instead.
MAC: 24:6f:28:b5:36:71
Hard resetting via RTS pin...

cd into the directory where you unzipped the latest release. For example:

Example
cd ~/Downloads/firmware/

Install/Update Firmwareโ€‹

Install or Update the device that you have by using the following commands according to your operating system:

caution

Be very careful to install the correct load for your board. In particular the popular 'T-BEAM' radio from TTGO is not called 'TTGO-Lora' (that is a different board). So don't install the 'TTGO-Lora' build on a TBEAM, it won't work correctly.

Installโ€‹

Command
./device-install.sh -f firmware-BOARD-VERSION.bin

Updateโ€‹

Command
./device-update.sh -f firmware-BOARD-VERSION.bin

Select Firmwareโ€‹

Browse to the previously downloaded firmware and select the correct firmware based on the board type and frequency.

caution

Be very careful to install the correct load for your board. In particular the popular 'T-BEAM' radio from TTGO is not called 'TTGO-Lora' (that is a different board). So don't install the 'TTGO-Lora' build on a TBEAM, it won't work correctly. If you flash the incorrect firmware: It may appear to flash correctly, but if your device has a screen it might stay blank. On-board radio peripherals might be damaged because of GPIO pin direction, but you should just try to flash with the correct version.

Flash Firmwareโ€‹

Select Flash ESP. It may take a minute or two. Once complete, "Done! Flashing is complete!" will be shown.

Over the Air Update Instructionsโ€‹

OTA updates are only currently available on Android.