20 eFuse Controller
20 eFuse Controller
20.1 Introduction
The ESP32 has a number of eFuses which store system parameters. Fundamentally, an eFuse is a single bit of
non-volatile memory with the restriction that once an eFuse bit is programmed to 1, it can never be reverted to
0. Software can instruct the eFuse Controller to program each bit for each system parameter as needed.
Some of these system parameters can be read by software using the eFuse Controller. Some of the system
parameters are also directly used by hardware modules.
20.2 Features
• Configuration of 33 system parameters
• Optional write-protection
• Optional software-read-protection
20.3 Functional Description
20.3.1 Structure
Thirty-three system parameters with different bit width are stored in the eFuses. The name of each system
parameter and the corresponding bit width are shown in Table 20-1. Among those parameters, efuse_wr_disable,
efuse_rd_disable, BLK3_part_reserve and coding_scheme are directly used by the eFuse Controller.
Name
efuse_wr_disable
efuse_rd_disable
flash_crypt_cnt
WIFI_MAC_Address
SPI_pad_config_hd
XPD_SDIO_REG
SDIO_TIEH
sdio_force
BLK3_part_reserve
Espressif Systems
Table 20-1. System Parameters
Program
Bit width
-Protection by
efuse_wr_disable efuse_rd_disable
16
1
4
0
7
2
56
3
5
3
1
5
1
5
1
5
2
10
Submit Documentation Feedback
Software-Read
-Protection by
-
-
-
-
-
-
-
-
3
523
Description
controls the eFuse Controller
controls the eFuse Controller
governs the flash encryption/
decryption
Wi-Fi MAC address and CRC
configures the SPI I/O to a
certain pad
powers up the flash regulator
configures the flash regulator
voltage: set to 1 for 3.3 V
and set to 0 for 1.8 V
determines whether
XPD_SDIO_REG
and SDIO_TIEH can
control the flash regulator
controls the eFuse controller
ESP32 TRM (Version 5.2)
Need help?
Do you have a question about the ESP32 and is the answer not in the manual?