See here.
All posts by
Encryption libraries
ESP-IDF comes with the mbedtls library. Getting started with Mbed TLS. Apparently, you can also swap in wolfSSL instead – see here.
Long file names
There is a “ESP-IDF: SDK Configuration editor” setting to enable Long filename support. Open menuconfig (see here for how to) Component config > FAT Filesystem support > Long filename support Choosing heap or stack to store long filenames? Both are stored in RAM so arguably it doesn’t matter too much. A general guide though is […]
File access functions
Path to USB drive Everything else… See here.
.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 […]
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.
Production Programming
See here
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.
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 […]
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.