esp:esp8266:open-sdk:flash-fota-firmware
Table of Contents
Flash FOTA Firmwares
In order to flash ESP8266 the GPIO0 should be connected to GND. This is D3 on Wemos D1 Mini Pro.
Initial Flash
Initially when ESP is new/blank use esptool.py to flash boot_v1.6.bin and create the user1.bin (with 32m-c1) option. Needs to be flashed with 32m-c1 to get 1024×1024. Connect ESP to the USB port. Steps are:
- erase_flash
- 0x00000 firmware/boot_v1.6.bin
- 0x3FC000 firmware/esp_init_data_default.bin
- 0x3FE000 firmware/blank.bin
- 0x01000 firmware/user1.bin
- 0x101000 firmware/user2.bin (optional not necessary)
esptool.py --port /dev/ttyUSB0 --baud 115200 erase_flash esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_mode qio --flash_size 32m-c1 0x0 firmware/boot_v1.6.bin esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_mode qio --flash_size 32m-c1 0x3FC000 firmware/esp_init_data_default.bin esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_mode qio --flash_size 32m-c1 0x3FE000 firmware/blank.bin esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_mode qio --flash_size 32m-c1 0x01000 firmware/user1.bin esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_mode qio --flash_size 32m-c1 0x101000 firmware/user2.bin (optional not necessary)
Or all in once:
esptool.py --port /dev/ttyUSB0 --baud 115200 erase_flash esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_mode qio --flash_size 32m-c1 0x0 firmware/boot_v1.6.bin 0x3FC000 firmware/esp_init_data_default.bin 0x3FE000 firmware/blank.bin 0x01000 firmware/user1.bin 0x101000 firmware/user2.bin
MAKE OTA UPDATES
First generate BIN file using esptool.py:
esptool.py elf2image --version=2 -o user1.bin espmodule esptool.py --port /dev/ttyUSB0 --baud 115200 write_flash --flash_mode qio --flash_size 32m-c1 0x01000 user.bin
Make OTA bin update file
After that we need to user the makefile with gen_appbin.py to generate proper formated user1.bin/user2.bin. Because ota updates created with “esptool.py elf2image –version=2 -o user1.bin espmodule” give checksum mismatch
Upload to webserver
scp firmware/user2.bin root@192.168.178.82:/media/storage1/www/homesite/public/firmware
Dump memory Block
esptool.py --port /dev/ttyUSB0 --baud 115200 read_flash 0x3fe000 2048 flash-3fe.bin
esp/esp8266/open-sdk/flash-fota-firmware.txt · Last modified: by 127.0.0.1
