Our I2C Master universal code

We try to use common defines for I2C master code in our projects, so it’s easy to jump between different microcontrollers and processors. This is quite challenging with the ESP32, because its setup and then do as a single operation approach is very different to the raw operation by operation approach a microtroller will typically […]

Read More

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

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