Esptool.py Documentation

This is the documentation for esptool.py - a Python-based, open source, platform independent utility to communicate with the ROM bootloader in Espressif SoCs.

esptool.py, espefuse.py and espsecure.py are a complete toolset for working with Espressif chips. They can do a number of things, for example:

  • Read, write, erase, and verify binary data stored in flash.

  • Read chip features and other related data such as MAC address or flash chip ID.

  • Read and write the one-time-programmable efuses.

  • Prepare binary executable images ready for flashing.

  • Analyze, assemble, and merge binary images.

This document describes using esptool.py with the ESP32 SoC. To switch to a different SoC target, choose target from the dropdown in the upper left.

Quick Start

Getting started is easy:

  1. Install esptool.py:

    $ pip install esptool
    

    For detailed instructions, see How to Install.

  2. Connect an Espressif chip to your computer.

  3. Run esptool.py commands. For example, to read information about your chip’s SPI flash, run:

    $ esptool.py -p PORT flash_id
    

    Replace PORT with the name of used serial port. If connection fails, see Troubleshooting.

More Information