ESP Test Tools Choose target... Choose version... Development Stage Introduction RF Test Guide RF Test Items RF Test Certification WFA Certification and Test Guide Production Stage Introduction Flash Download Tool Espressif Production Testing Guide Module Fixture Manufacturing Instructions Matter QR Code Generator Others FAQ Related Documentation and Resources Disclaimer and Copyright Notice ESP Test Tools ESP Test Tools and Guidelines Download PDF ESP Test Tools and Guidelines [中文] This repository provides comprehensive resources to support the development and production of products based on Espressif chips and modules. For the development stage, it provides an RF testing tool and detailed test guidelines to ensure your product meets the necessary performance and certification standards. Additionally, for the production stage, the repository includes essential tools and instructions to streamline the manufacturing process, ensuring efficient testing, validation, and quality control of your products. RF Test Guide RF Test Items Production-stage Tools Next Suggestion on this document? Provide feedback Help improve this document? Edit on GitHub Need more information? Check ESP forum Sales Questions Technical Inquiries © Copyright 2024 - 2026, Espressif Systems (Shanghai) Co., Ltd. Built with Sphinx using a theme based on Read the Docs Sphinx Theme.
ESP Test Tools Choose target... Choose version... Development Stage Introduction RF Test Guide RF Test Items RF Test Certification WFA Certification and Test Guide Production Stage Introduction Flash Download Tool Preparation Tool Overview User Interface SPIDownload Tab FactoryMultiDownload Tab chipInfoDump Tab Download Example Regular Download Encrypted Download Version Release Notes Espressif Production Testing Guide Module Fixture Manufacturing Instructions Matter QR Code Generator Others FAQ Related Documentation and Resources Disclaimer and Copyright Notice ESP Test Tools Flash Download Tool User Guide Download PDF Flash Download Tool User Guide [中文] Preparation The software and hardware resources required for downloading firmware to flash are listed below. Hardware: 1 x module to which firmware is downloaded 1 x PC (Windows 7 [64 bits], Windows 10) Software: Flash Download Tool Tool Overview User Interface Open the Flash Download Tool, double-click the .exe file to enter the main interface of the tool, as shown in the figure below: Flash Download Tool Main Interface ChipType: Selects the chip type for your product. WorkMode: Work mode of the tool. Below are the differences between the two modes supported currently, Develop and Factory modes. Develop mode uses the absolute path of the firmware and only allows flashing firmware to one chip at a time. Factory mode uses a relative path. It is recommended to place the firmware to be flashed in the bin folder at the same level as the .exe file. It will be automatically saved locally when closed after configuration. Selecting Factory mode leads you to a locked interface in order to prevent misoperation by your mouse. Please click the LockSettings button to enable editing. LoadMode: Only supports UART SPIDownload Tab Here is the configuration descriptions. Download Path Config You can configure the firmware loading path and downloading address (in hexadecimal format), such as 0x1000. SPI Flash Config SPI SPEED: SPI boot rate SPI MODE: SPI boot mode DETECTED INFO: Flash & crystal oscillator information that are detected automatically. DoNotChgBin: If it is enabled, the tool flashes the original content of the bin file. If not enabled, the tool updates the firmware according to the SPI SPEED, SPI MODE configuration on the interface before flashing. CombineBin button: combines all the selected firmware in Download Path Config into one firmware. If DoNotChgBin is enabled, combine the original firmwares. If DoNotChgBin is not enabled, combine them according to the SPI SPEED and SPI MODE configuration. Any unused areas between firmware files will be filled with 0xff. The combined firmware will be saved as ./combine/target.bin. Each click of this button will overwrite the previous firmware. Default button: restores the SPI configuration to the default values. Download Panel START: Starts downloading STOP: Stops downloading ERASE: Erases the entire flash COM: Serial port used for downloading BAUD: Baud rate SPIDownload Tab Note When the tool version is >= 3.9.10, SPI SPEED and SPI MODE cannot be changed by default. These parameters are consistent with the firmware build configuration. FactoryMultiDownload Tab Factory mode uses the relative path. By default, the tool loads the firmware from the bin folder of the tool directory. Whereas, Develop mode uses the absolute path. The advantage of the Factory mode is that as long as the firmware to flash remains in the bin folder of the tool directory, path problems will not occur when the tool package is copied to other factory computers. In Factory mode, the tool enables LockSettings by default. When LockSettings is enabled, firmware download path config and SPI flash config cannot be configured. This is to prevent production line workers from accidentally clicking and causing errors. (When factory managers need to configure these settings, they can click LockSettings to unlock.) In Factory mode, you can click the CRC32 cal button to generate a checksum based on all files to be flashed and their flash addresses. The production line can use this checksum to verify that the files and configuration to be flashed are correct. FactoryMultiDownload Tab The download path config and SPI flash config section on the FactoryMultiDownload Tab are basically the same as those on the SPIDownload tab. Please refer to SPIDownload Tab for descriptions. Do not forget to configure the serial port number and baud rate of each download panel. chipInfoDump Tab Device: Selects the device’s serial port number and communication baud rate. Read Flash: Specifies the start address and size of the content to be read from the flash. This setting is only required when reading flash. chipInfoDump Tab Function Description Chip Info: Reads the chip model, flash ID, and flash status register values. The read content is displayed directly in the tab. Read Flash: Reads data stored in the flash. The read content is saved in a generated bin file, which is named in the format “Chip MAC + Start Address of Reading + Data Length of Reading + Reading Time”. Read Efuse: Reads the chip’s eFuse content, with functionality identical to esptool summary. The read content is stored in a generated text file, named in the format “Chip MAC + Reading Time”. Note To use the above reading functions, the product should enter download mode after startup. Tool version >= 3.9.8 Download Example This section takes the ESP32 series as an example to demonstrate how to perform both regular and encrypted download operations. At present, ESP32 supports regular and encrypted download. Regular Download Pull GPIO0 low to enter the download mode. Open the download tool, set ChipType to ESP32, WorkMode to Develop, and LoadMode to UART as shown in the figure below. Then, click OK Selecting Device — ESP32 Download Tool In the appeared download page, enter the path to the bin file and the address where it should be downloaded, check the box before the path, and enter COM and BAUD according to your requirements. Click START to start downloading. During the download process, the tool will read the flash information and the chip’s MAC address. After the download is complete, the tool interface is shown in the following figure. Download Completed Encrypted Download The encrypted firmware downloading process is as follows: Flash Download Tool downloads the plaintext firmware to the chip. The chip uses the key in its eFuse to encrypt the firmware and write it to the flash. If there is no such key in the eFuse, the tool will automatically generate a random one and flash it to eFuse. You can also prepare your own encryption key. If there is, the tool skips the key generation and flashing process. To configure the encryption function, follow the steps below: Open the configuration file ./configure/[chip_name]/security.conf. If there is no such file, for example, when you open the tool for the first time, restart the tool. Update the configuration options as needed. Below are the configuration options. The equal sign is followed by the default value of the option. True means enabling the option; False means disabling it. [SECURE BOOT] Secure boot related configurations: secure_boot_en = False (Configures whether to enable secure boot) secure_boot_version = 1 (Selects secure boot version) public_key_digest_path = .\secure\public_key_digest.bin (Path to the public key digest file. This file is generated using the command espsecure digest_sbv2_public_key -k pem.pem -o public_key_digest.bin. The .pem file is the private key file specified during compilation.) public_key_digest_block_index = 0 (Index of the eFuse block where the public key digest file is stored. Default: 0.) [FLASH ENCRYPTION] Flash encryption related configurations: flash_encryption_en = False (Configures whether to enable flash encryption) reserved_burn_times = 3 (Configures the number of reserved flashing operations. Optional values: 0, 1, 2, 3.) [SECURE OTHER CONFIG] Other security configurations: flash_encryption_use_customer_key_enable = False (Configures whether to enable a customer-specified encryption key) flash_encryption_use_customer_key_path = .\secure\flash_encrypt_key.bin (If using a customer-specified key, the key path needs to be specified here.) flash_force_write_enable = False (Configures whether to skip encryption and secure boot checks during flashing. If it is set to False (default), an error message may pop up when attempting to flash products with enabled flash encryption or secure boot.) [FLASH ENCRYPTION KEYS LOCAL SAVE] Determines whether to store the encryption key file locall