Scroll to navigation

ESPTOOL(1) User Commands ESPTOOL(1)

NAME

esptool - ESP8266 and ESP32 ROM Bootloader Utility

DESCRIPTION

usage: esptool [OPTION] COMMAND

command arguments:

Run esptool {command} -h for additional help
load_ram
Download an image to RAM and execute
dump_mem
Dump arbitrary memory to disk
read_mem
Read arbitrary memory location
write_mem
Read-modify-write to arbitrary memory location
write_flash
Write a binary blob to flash
run
Run application code in flash
image_info
Dump headers from an application image
make_image
Create an application image from binary files
elf2image
Create an application image from ELF file
read_mac
Read MAC address from OTP ROM
chip_id
Read Chip ID from OTP ROM
flash_id
Read SPI flash manufacturer and device ID
read_flash_status
Read SPI flash status register
write_flash_status
Write SPI flash status register
read_flash
Read SPI flash content
verify_flash
Verify a binary blob against flash
erase_flash
Perform Chip Erase on SPI flash
erase_region
Erase a region of the flash
version
Print esptool version

optional arguments:

-h, --help
show this help message and exit
--chip, -c {auto,esp8266,esp32}
Target chip type
--port PORT, -p PORT
Serial port device
--baud BAUD, -b BAUD
Serial port baud rate used when flashing/reading
--before {default_reset,no_reset}
What to do before connecting to the chip
--after, -a {hard_reset,soft_reset,no_reset}
What to do after esptool is finished

EXAMPLES

Flash Espressif AT v1.4 firmware to an ESP-12S board:
esptool write_flash --flash_mode dio --flash_size 4MB-c1 0x00 boot_v1.7.bin 0x1000 at/1024+1024/user1.2048.new.5.bin 0xfe000 blank.bin 0x3fc000 esp_init_data_default.bin 0x3fe000 blank.bin

Display ESP32 efuse state summary:

espefuse --port /dev/ttyUSB0 summary

Generate a flash encryption key:

espsecure generate_flash_encryption_key key.bin

Burn the key to the device (WARNING: one time only operation):

espefuse --port /dev/ttyUSB1 burn_key flash_encryption key.bin

Encrypt flash data:

espsecure encrypt_flash_data --keyfile key.bin --address 0x10000 -o my-app-encrypted.bin my-app.bin

AUTHOR

esptool.py was started by Fredrik Ahlberg as an unofficial community project, currently maintained by Angus Gratton and supported by Espressif Systems (Shanghai) PTE LTD. This manual page was generated by Milan Kupcevic <milan@debian.org> for the Debian project and can be used by others.

REPORTING BUGS

Review: <https://github.com/espressif/esptool/#troubleshooting>
Known issues: <https://github.com/espressif/esptool/issues>
Report new issues at: <https://github.com/espressif/esptool/issues/new>

COPYRIGHT

Copyright © 2014-2016 Fredrik Ahlberg, Angus Gratton, Espressif Systems (Shanghai) PTE LTD, other contributors as noted. License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

SEE ALSO

esptool(1), espefuse(1), espsecure(1)
April 2018 esptool.py 2.1