Skip to content

ESP32

Put the ESP32-C3 on the breadboard and feed the + and − rails from it. Later steps take power from those rails.

Before you start

Checkpoint 1 passed. USB unplugged while you seat jumpers.

Match pins by silk label, not by position. This tutorial uses an ESP32-C3 DevKit: one USB port for power and serial, BOOT on GPIO9. Some boards use a USB-to-UART chip; others (including the board used for these checks) use the chip's built-in USB Serial/JTAG.

ESP32-C3-DevKitM-1 pin layout

ESP32-C3-DevKitM-1 pin layout (Espressif) — use it to find 3V3, GND, BOOT (GPIO9), and GPIO numbers by silk. Your board's USB connector shape may differ.

Wires

From ESP32 To breadboard
3V3 + rail
GND − rail

Bridge the rail halves

Many breadboards split each power rail in the middle — and each long edge has its own + / − pair. On the edge you use, seat a short jumper across the gap on both + and −, or modules on the far half get no 3V3/GND. See Breadboard.

Warning

Don't power the sensor or display from 5V or VIN.

Leave these pins free

Pin Why
GPIO9 The BOOT button, used for the factory reset
GPIO18 / 19 USB D− / D+ on the chip (Serial/JTAG)
GPIO2 / 8 Strapping pins (GPIO8 also drives the on-board RGB LED)

Seat the board across the centre trench so each pin has its own breadboard row. Leave space beside it for the VEML7700, LED, and display.

Check

Plug a USB data cable into the board's USB port, then run:

lsusb | grep -iE '303a|Espressif|10c4|cp21|1a86|QinHeng|Silicon'
ls -l /dev/ttyACM0 /dev/ttyUSB0 2>/dev/null
Bus 001 Device 024: ID 303a:1001 Espressif USB JTAG/serial debug unit
crw-rw-rw- 1 root dialout 166, 0 Nov 11 23:23 /dev/ttyACM0

This capture is from a board that uses Espressif's built-in USB Serial/JTAG (303a). A DevKitM-1 with a CP210x bridge instead shows Silicon Labs (10c4) and may appear as /dev/ttyUSB0. Either is fine — you need a serial device for flash and logs.

Nothing on the board should get warm. Unplug before the next step.

If it fails

Symptom Fix
No /dev/ttyACM* or /dev/ttyUSB* Try another data cable (charge-only cables never show a port)
Board warm Unplug. 3V3 and GND may be swapped or shorted on the rail
A meter on the + rail reads 5 V instead of about 3.3 V The rail is fed from the wrong pin. Move the wire to 3V3
Only one half of the rail has ~3.3 V Mid-rail gap. Bridge + and bridge − (Breadboard)

Checkpoint 2

  • Only 3V3 to + and GND to − from the ESP32 (no sensor, LED, or display wires yet)
  • Rail gaps bridged, if your board has them
  • The board shows up in lsusb and as a serial device
  • The board stays cool

Stop here until every box is ticked.

Pin layout: Espressif ESP32-C3-DevKitM-1 documentation.

Next: VEML7700