Encryption libraries

ESP-IDF comes with the mbedtls library. Getting started with Mbed TLS. Apparently, you can also swap in wolfSSL instead – see here.

Read More

.SD/MMC Card general

Documentation SD/SDIO/MMC Driver FAT Filesystem Support FatFs library API Support Good, startoff with the Espressif sample project as a way to get up and running writing and reading a card simply. Supports 1bit and 4bit SD card interfaces. Raw Access The API provides functions that can read and write sectors directly if you don’t want […]

Read More

eMMC memory

From the protocol layer’s perspective, eMMC memory chips behave exactly like SD memory cards. The terminology for SD cards can still be applied to eMMC due to the similarity of the protocol. See here.

Read More

Troubleshooting IO pins

Default assignment to special functions Some ESP32 devices default to assignment of the IO pins via the IO matrix to specific peripherals (e.g. ESP32S3 JTAG pins). Try using call gpio_reset_pin() on a problem pin before you configure it: Output drive capability Output pins can have the drive current capability adjusted using gpio_set_drive_capability() – see here.

Read More

Special pin assignments

JTAG pins Some ESP32 devices (e.g. ESP32 C3 and S3) default to JTAG assignment of the IO pins via the IO matrix and the pins won’t work as general IO until you call gpio_reset_pin(): USB pins Some ESP32 devices (e.g. ESP32 S3) default to USB of their IO pins via the IO matrix and the […]

Read More

Serial number

The ESP32 doesn’t have a unique serial number specifically, but it is programmed with a unique MAC address at manufacture. See here for how to read it.

Read More

MAC address

An explanation on how mac addresses are derived on the ESP32: https://docs.espressif.com/projects/esp … dress.html An explanation for how many universal (unique) mac addresses are allocated to each ESP32 https://docs.espressif.com/projects/esp … ystem.html Read MAC Address 8 bytes are stroed in total. 6 bytes for MAC-48, 8 bytes for EUI-64 Display device MAC address to console

Read More