.ESP32 S3 General

JTAG Interface The JTAG pins are not enabled by default, they are assigned to the USB JTAG port. To use them you need to burn an eFuse (which you do via the serial port or the USB port). To enable the JTAG pin see here.

Read More

eFuse Programming

espefuse.py tool Github repo for espefuse.py espefuse.py is a command line tool, it gets installed as part of the ESP-IDF VSCode plugin install process. You can run it from the Windows command prompt, or in the VS Code TERMINAL window (you may need to press Enter in the Terminal windows to take it out of […]

Read More

System 1uS timer

esp_timer_get_time starts counting from 0 at startup / wake from deep sleep. It increments every 1uS int64:0x0000000000000000 to 0x7FFFFFFFFFFFFF9,223,372,036,854,775,807 uS9,223,372,036,854 seconds153,722,867,280 minutes2,562,047,788 hours106,751,991 days292,471 years Using esp_timer_get_time to time things

Read More

Default IDLE# tasks watchdog timer

First read the Tasks basic on this page, to understand the basic tasks based approach of the ESP-IDF / FreeRTOS. IDLE Watchdog The ESP-IDF created task for each CPU core (called “IDLE0”, and “IDLE 1” if there is a second core) are idle tasks that reset watchdog timeout whenever that respective core is idling. This […]

Read More

CMakeLists.txt

ESP-IDF uses the CMake build automation tool and if you created your project from one of the sample projects you will have the necessary “CMakeLists.txt” files. These contain the instructions describing the project sources files and targets. Which CMakeLists.txt file is used for what ? The CMake project hierarchy in ESP IDF is a bit […]

Read More

Project (& ESP32) settings

Rename (or move) project Close the project then rename its folder. Delete the \build\ directory so you delete the compiler cache etc. Open CMakeLists.txt in your project root and update: project(MyProjectName) Configure project SDK Configuration editor Menu > View > Command Palette > Type: “ESP-IDF: SDK Configuration editor” (or use CTRL+E then G)Wait for it […]

Read More

Sleep wake-up pins

You can use an external interrupt to wake up the ESP32 from deep sleep. There are two types of external wake-ups in the ESP32. Only Real-time clock or RTC input-output pins can be used as a wake up source and you need to make sure that during deep sleep the RTC peripherals are powered ON. […]

Read More