Creating A New Project

Our Eclipse IDE resources here may well be old, we’ve switched over to using VSCode Resources https://github.com/espressif/idf-eclipse-plugin/blob/master/README.md NOTE: The esp-idf build system does not support spaces in paths to projects Create a project In Eclipse Menu > File > New > Project… Espressif > Espressif IDF Project Set the name and location (DO NOT USE […]

Read More

Terminal window

Pause the Terminal window CTRL+T then CTRL+Y Getting command prompt You may need to use CTRL + ] to end its current mode and get its command prompt first Getting “ESP-IDF Terminal” instead of powershell You need the “ESP-IDF Terminal”, if your open Terminal is Powershell, kill it and then use command prompt (CTRL_SHIFT+P) and […]

Read More

Installing ESP-IDF (Windows)

Note, if you are going to use Visual Studio Code then you can let its Espressif plugin handle installing ESP-IDF – see here Espressif guides https://docs.espressif.com/projects/esp-idf/en/stable/get-started/ Setting up a Windows PC to program the ESP32 Create the required GNU-compatible environment with toolchain (the programs to compile and build your applications) Download the Windows all-in-one toolchain from https://docs.espressif.com/projects/esp-idf/en/stable/esp32/get-started/windows-setup.html […]

Read More

I2C Pins

Pin assignment Both I2C interfaces are connected to pins via GPIO matrix, so you can select arbitrary IO pins for SDA and SCL.  You just need to observe the constraints of each pin such as I/O capability (GPIO34 – 39 are input only so not suited!), bootstrapping function. See the series datasheet for your device […]

Read More

.IO Pins General

REMEMBER NOT ALL ESP32 PINS ARE INPUT/OUTPUT – SOME ARE INPUT ONLY!!!! ESP32 Pin List All of the pin fucntions, default state, etc: https://www.espressif.com/sites/default/files/1a-esp32_pin_list_en-v0.1.pdf Peripheral pins assignment See here  Pull ups / pull downs Only pins that support both input & output have integrated pull-up and pull-down resistors. Input-only GPIOs 34-39 do not.

Read More

Programming Hardware

On many development boards with built-in USB/Serial the programming hardware is provided for you and software such as esptool.py can automatically reset the board into bootloader mode using it.  However for production boards you may well not want to add components only required at programming time on the board itself. Off the shelf programming adapters ESP-Prog […]

Read More

Power

Power Consumption 3V3 power supply to ESP32: 80ma typ, must allow for 500mA min

Read More

IO Pins

IO Pins as outputs High-level output voltage: min 2.64V (0.8 x Vdd) Low-level output voltage: max 0.33V (0.1 x Vdd) High-level source current (PAD_DRIVER = 3): 40mA Low-level sink current (PAD_DRIVER = 3): 28mA

Read More

.Dual Core Overview

Many of the ESP32 modules use a dual core version of the ESP32 processor.  This allows one of the cores to run the all the multitasking involved in updating the WiFi stack etc and the other for your main applciaiton carrying out all your data processing and IO. The two cores: Protocol CPU (PRO_CPU) Handles […]

Read More