GPIO Map – ESP32-C6 Wi-Fi Panel

This table is the top-level GPIO map used by the GAP Wi-Fi (ESP32-C6) configuration. Use this as your master reference when wiring or troubleshooting.

GPIO Signal / Device Direction Notes
GPIO1 (Free / Future) Reserved for future features
GPIO3 (Free / Future) Reserved for future features
GPIO4 DHT11 Temperature / Humidity INPUT (1-wire) Single-wire DHT11 data pin
GPIO6 I²C SDA – LCD2004 / Bus A Bidirectional SDA for LCD2004 I²C backpack
GPIO7 I²C SCL – LCD2004 / Bus A Output SCL for LCD2004 I²C backpack
GPIO10 Inside Garage Door Reed INPUT (pullup) Detects inside track/position
GPIO11 Outside Garage Door Reed INPUT (pullup) Detects outside track/position
GPIO16 Buzzer OUTPUT Active buzzer (3.3 V)
GPIO20 Main Garage Door Reed INPUT (pullup) Primary door state (open/closed)
GPIO21 PIR Outside INPUT Outside motion sensor
GPIO22 PIR Inside INPUT Inside motion sensor
GPIO23 Garage Door Relay OUTPUT (momentary) Simulates wall-button press

All logic-level IO is 3.3 V. Relay boards typically use 5 V on their power side, with the input signal still driven from a 3.3 V GPIO.

LCD2004 – I²C Bus A Wiring

The 20×4 LCD2004 uses an I²C backpack connected to Bus A on the ESP32-C6. Power and signals are all on the 3.3 V rail.

ESP32-C6 LCD2004 I²C Backpack Typical Wire Color Function
3V3 VCC Red Display power (3.3 V)
GND GND Black Common ground
GPIO6 SDA Blue I²C data line
GPIO7 SCL Green I²C clock line

If the LCD stays blank, verify 3.3 V, GND, and SDA/SCL are not swapped. Also double-check the I²C address in your ESPHome YAML.

DHT11 – Temperature & Humidity Wiring

The DHT11 uses a single data line on GPIO4 and is powered from the 3.3 V rail.

ESP32-C6 DHT11 Typical Wire Color Function
3V3 VCC Red Sensor power (3.3 V)
GND GND Black Common ground
GPIO4 DATA / OUT Yellow DHT11 data (1-wire)
Garage Door Reeds – Inside, Outside, Main

Three reed switches are used to monitor the door and track position: inside rail, outside rail, and the primary “door closed / open” state. All are configured as inputs with internal pull-ups.

ESP32-C6 GPIO Reed Location Wiring Notes
GPIO10 Inside Garage Door Reed One side to GPIO10, other side to GND INPUT, pullup enabled
GPIO11 Outside Garage Door Reed One side to GPIO11, other side to GND INPUT, pullup enabled
GPIO20 Main Garage Door Reed One side to GPIO20, other side to GND Primary door state sensor

With pull-ups enabled, the GPIO reads HIGH when the reed is open, and LOW when the reed closes and connects the pin to ground.

PIR Sensors – Inside & Outside

Two PIR sensors monitor inside and outside motion for auto-close logic and safety.

ESP32-C6 GPIO PIR Wiring Notes
GPIO21 PIR Outside VCC to 3V3, GND to GND, OUT to GPIO21 Logic HIGH on motion
GPIO22 PIR Inside VCC to 3V3, GND to GND, OUT to GPIO22 Logic HIGH on motion
Garage Relay & Buzzer Wiring

Garage Door Relay (GPIO23)

The relay module simulates the wall-button press to open/close the garage door. The coil side is powered from 5 V, with the input signal driven by GPIO23.

ESP32-C6 / Rail Relay Module Function
5V Supply DC+ Relay power (5 V from dedicated buck)
GND (common) DC- Common ground (shared with ESP32-C6)
GPIO23 IN Relay input (momentary pulse controls NO/COM)
Garage opener button contacts NO / COM In parallel with the wall button terminals

Buzzer (GPIO16)

The active buzzer is powered from 3.3 V and driven by GPIO16 for pre-warn and continuous-beep behavior.

ESP32-C6 Buzzer Function
3V3 VCC / + Power (3.3 V only)
GND GND / − Common ground
GPIO16 IN (if 3-pin) Drives active buzzer for warning tones

Make sure the buzzer is an active type rated for 3.3 V. A passive buzzer will sound weak or not at all unless driven with PWM audio.