Error functions

ESP_ERROR_CHECK() Use when calling many of the ESP32 API fucntions to carry out controlled error checking, e.g.

Read More

Running out of interrupts

Interrupt inputs are a limited resource on the ESP32, and initializing certain features requires interrupt inputs to be attached to the peripherals. Just like other resources (such as RAM), the program can run out of the interrupt inputs if it uses multiple features at once. The good news is that it is usually possible to […]

Read More

Compiler issues

General CMake issues See here. driver/gpio.h: No such file or directory CMakeLists.txt needs “driver” added to REQUIRES, e.g.: ninja: build stopped: subcommand failed Often this is caused by spaces in the path of the project or the path being too long.

Read More

Runtime errors

ESP_ERROR_CHECK failed, expression: esp_intr_alloc Example TERMINAL output: In this example, the installation of the TWAI driver failed because the system ran out of CPU interrupt inputs. This can happen when several drivers or subsystems are initialized. Something along the lines of this suggestion might help. See our page on this issue here. See the Espressif […]

Read More

REQUIRES list

General REQUIRES page see here. ESP-IDF specific REQUIRES list If you don’t have a REQUIRES list in CMakeLists.txt that is declaring dependencies on certain special components, you typically don’t have to add basic components as REQUIRES also, due to the implicit dependency behaviour of main component (see here). If you do have a REQUIRES section, you […]

Read More

FAT project settings

Configure project Menu > View > Command Palette > Type: “ESP-IDF: SDK Configuration editor” (or use CTRL+E then G)Wait for it to load Scroll down to the “FAT Filesystem support” section

Read More

.USB memory stick general

Documentation Espressif USB Host USB Host MSC (Mass Storage Class) Driver USB Mass Storage Class example Espressif sample project ESP-IDF sample project > USB > host > msc You can use this to prove your hardware works with the USB memory stick. Adding USB MSC to an existing project Adding the component See https://components.espressif.com/components/espressif/usb_host_msc and […]

Read More