Esptool - RTurala/Sonoff-Tasmota GitHub Wiki
How to setup and configure Esptool for Tasmota upload.
Download Esptool
If you do not have an installed copy of Python 2.x or 3.x download and install it from https://www.python.org/.
Download Esptool Source code from https://github.com/espressif/esptool/releases to a known folder.
Install Esptool
Go to the known folder and install Esptool with command python setup.py install
.
Download Tasmota
Download the latest Tasmota release firmware file sonoff.bin from https://github.com/arendst/Sonoff-Tasmota/releases to a known folder.
Upload Tasmota
Put device in firmware upload mode
When performing a firmware upload do not connect the device to AC but use the power supply provided by your (FTDI type) serial interface.
Put the device in firmware upload mode by grounding pin GPIO00 while applying power.
Grounding pin GPIO00 can often be achieved by pressing button 1 on the Sonoff device or using a wire between GPIO00 and Gnd if the button is not available. Deviations may apply.
Connect the serial interface of your PC to the device while GPIO00 to Gnd.
Esptool uses the serial interface to communicate with your device. On Windows these interfaces are named COM1, COM2 etc. On Linux these interfaces are called /dev/ttyUSB0, /dev/ttyUSB1 etc.
Before using Esptool make sure you know to which serial interface name your device is connected to.
In the following commands I use COM5 as an example.
Optional: Backup firmware
Ensure the device is in firmware upload mode.
Backup the current firmware with the following command:
esptool.py --port COM5 read_flash 0x00000 0x100000 image1M.bin
NOTE: When the command completes the device is out of firmware upload mode!
Optional: Erase firmware
Ensure the device is in firmware upload mode.
Erase the complete flash memory holding the firmware with the following command:
esptool.py --port COM5 erase_flash
NOTE1: When the command completes the device is out of firmware upload mode!
NOTE2: It only takes a few seconds to erase 1M of flash.
Upload firmware
Ensure the device is in firmware upload mode.
Load the downloaded Tasmota firmware file sonoff.bin with the following command:
esptool.py --port COM5 write_flash -fs 1MB -fm dout 0x0 sonoff.bin
NOTE1: When the command completes the device is out of firmware upload mode!
NOTE2: For a proper device initialization after first firmware upload power down and power up the device.