Skip to the content
PCBKitNew board
4 layers50 × 50 mmESP32-C6, the printed circuit board in 3D

custom esp32-c6 development board with rgb status led, user input, i2c expansion, oled support, and onboard environmental sensing.

Size
50 × 50 mm
Copper layers
4
Thickness
1.6 mm
Parts
42
Nets
44
Pads
179
Tracks, vias
408, 75
Pours
4
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
18 Apr 2026
Updated
24 May 2026

Overview

ESP32-C6 is an open-source printed circuit board by Batterhead221, from the Batterhead221/esp32-c6_microcontroller repository on GitHub. It is a 4-layer board of 50 × 50 mm with 42 parts on 44 nets, routed with 408 tracks and 75 vias.

It is built around the ESP32-C6-WROOM-1-N8, HDC3020DEFR and ESD9B3.3S, with the USBLC6-2P6 among its other parts. Its parts include 11 resistors, 8 capacitors, 7 diodes, 4 connectors and 3 ICs. It belongs with the lEDs and displays and microcontroller boards boards and the ESP32 and RISC-V boards of this library.

Main components

4

README

README.md

ESP32-C6_MICROCONTROLLER

ESP32-C6_MICROCONTROLLER top 3D board render

ESP32-C6_MICROCONTROLLER bottom 3D board render

Custom ESP32-C6 development board with USB-C power, RGB status LED, user input, I2C expansion, OLED support, UART programming access, and onboard temperature/humidity sensing.

This board is a small ESP32-C6 bring-up and sensor demo platform. It was designed to verify core power, boot/programming flow, GPIO, RGB LED control, I2C device detection, OLED output, and live environmental sensor readings.

Project Status

Bring-up demo verified.

The board has successfully run a combined test with:

  • RGB LED control
  • User button input
  • I2C bus scan
  • OLED output
  • Live temperature/humidity readout
  • UART programming through the J3 program header

Demo Features

  • ESP32-C6 microcontroller core
  • USB-C power input
  • 3.3V regulation
  • RGB status LED
  • User button
  • I2C expansion header
  • OLED display support
  • Onboard temperature/humidity sensor
  • UART programming/debug header
  • Reset and boot control for bring-up

System Role

text
USB-C / bench power
        ↓
ESP32-C6_MICROCONTROLLER
        ↓ I2C
OLED display + temp/humidity sensor
        ↓
bring-up demo / serial debug output

Key Specs

ItemValue
MCUESP32-C6
Main rail+3.3V
Power inputUSB-C
Programming path verifiedUART through J3 program header
Display interfaceI2C OLED
Sensor interfaceI2C temp/humidity sensor
OLED address0x3C
Temp/humidity sensor address0x44
RGB LED behaviorActive-low
Board roleESP32-C6 bring-up/demo board

Verified Working

  • USB-C power input
  • 3.3V regulation
  • ESP32-C6 boot from flash
  • UART programming through J3
  • Reset button
  • Boot button/manual boot sequence
  • User button
  • RGB LED
  • I2C bus
  • OLED display at 0x3C
  • Temperature/humidity sensor at 0x44

Verified GPIO Map

GPIOFunction
GPIO3RGB red
GPIO4RGB green
GPIO5RGB blue
GPIO23User switch
GPIO6I2C SDA
GPIO7I2C SCL

RGB LED Notes

The RGB LED is active-low.

text
GPIO LOW  → LED color ON
GPIO HIGH → LED color OFF

Firmware should invert the LED logic when controlling the status LED.

I2C Devices

The following I2C devices were detected during bring-up:

AddressDevice
0x3COLED display
0x44Temperature/humidity sensor

Sample Verified Sensor Reading

Example live reading from bring-up:

text
Temperature: 29.2 C
Humidity:    35.0 %RH

UART Programming Notes

UART programming through the J3 program header is working.

Working connections:

USB-UART adapterESP32-C6 board
TXESP_RXD
RXESP_TXD
GNDGND

Manual Upload Sequence

Current working upload sequence:

  1. Hold BOOT.
  2. Start upload.
  3. Tap RESET when the tool begins connecting.
  4. Release BOOT after connection.
  5. Press RESET after upload to run the application.

Native USB Status

Native USB enumeration still needs separate debug and validation.

Current programming flow uses UART through the J3 program header.

Bring-Up Checklist

  1. Inspect USB-C and regulator soldering.
  2. Power from USB-C and confirm +3.3V.
  3. Connect USB-UART adapter to J3.
  4. Use the manual BOOT/RESET upload sequence.
  5. Verify boot from flash.
  6. Run I2C scanner.
  7. Confirm OLED at 0x3C.
  8. Confirm temp/humidity sensor at 0x44.
  9. Verify RGB LED channels.
  10. Verify user button input.
  11. Run combined OLED + sensor + LED demo.

Open Items

  • Validate native USB enumeration.
  • Improve programming flow beyond manual UART boot sequence.
  • Add screenshots/photos of OLED and sensor demo.
  • Add firmware example to the repository.

Repository Output Images

Expected image paths for GitHub README rendering:

text
Outputs/
  IMG/
    3D-T.png
    3D-B.png
    SCHEMATIC.png
    L1-SIG.png
    L2-GND.png

Safety / Design Note

ESP32-C6_MICROCONTROLLER is a low-voltage development board. Verify regulator output, USB wiring, and UART adapter voltage level before connecting external hardware.

Designed & engineered by Brandon Shelly.

Parts

42
QtyValueFootprintReferences
41KResistor_SMD:R_0402_1005MetricR6, R7, R8, R9
4M3PCM_SL_Mechanical:MountingHole_3.2mm_PadH1, H2, H3, H4
3100NC0402C221K1HACAUTO:CAP 0402C1, C2, C8
310KResistor_SMD:R_0402_1005MetricR1, R4, R5
31UC1608X6S0G226M080AC:CAP 0603C3, C4, C5
3ESD9B3.3Diode_SMD:D_SOD-923D3, D4, D5
21UGRM21BR71A105KA01L:1UF 0805C6, C7
22K2Resistor_SMD:R_0402_1005MetricR10, R11
25K1Resistor_SMD:R_0402_1005MetricR2, R3
1Button_Switch_SMD:SW_SPST_B3U-1000PSW3
11AFuse:Fuse_1206_3216MetricF1
11N5817Diode_SMD:Nexperia_CFP3_SOD-123WD1
122Inductor_SMD:L_0805_2012MetricFB1
1ESP32-C6-WROOM-1-N8ESP32-C6-WROOM-1-N8:XCVR_ESP32-C6-WROOM-1-N8U3
1GREENLED_SMD:LED_0603_1608MetricD6
1HDC3020DEFRHDC3020DEFR:SON50P250X250X80-9N-DU2
1LDOPackage_TO_SOT_SMD:SOT-23-5U1
1PROGRAMConnector_JST:JST_ZH_B6B-ZR_1x06_P1.50mm_VerticalJ3
1RBG_LEDLED_SMD:LED_Cree-PLCC4_3.2x2.8mm_CCWD7
1RESETButton_Switch_SMD:SW_SPST_B3U-1000PSW2
1S2CConnector_JST:JST_ZH_B4B-ZR_1x04_P1.50mm_VerticalJ4
1SWDConnector_JST:JST_ZH_B10B-ZR_1x10_P1.50mm_VerticalJ2
1SW_DPSTButton_Switch_THT:SW_TH_Tactile_Omron_B3F-100xSW1
1USBLC6-2P6Package_TO_SOT_SMD:SOT-666D2
1USB_CConnector_USB:USB_C_Receptacle_G-Switch_GT-USB-7010ASVJ1

Questions

How big is the ESP32-C6 PCB?

It measures 50 × 50 mm and has 4 copper layers, 1.6 mm thick.

What parts does the ESP32-C6 use?

42 parts, built around the ESP32-C6-WROOM-1-N8, HDC3020DEFR, ESD9B3.3S and USBLC6-2P6. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the ESP32-C6 KiCad files?

From the Batterhead221/esp32-c6_microcontroller repository on GitHub, at the commit this page was made from: the board is ECAD/ESP32-C6.kicad_pcb and its schematic ECAD/ESP32-C6.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the ESP32-C6 design in my own project?

Its repository states no licence, so its author keeps all rights: ask Batterhead221 before reusing the design.

Similar boards

  • 2 layers126 × 39.5 mmPot sensor, the printed circuit board in 3D

    Pot sensor

    Manolets/potsensor_schematics

    This repo contains the KiCad project files for a battery powered plant sensor.

    55 parts
  • 4 layers50 × 50 mmESP32-C6-demoboard, the printed circuit board in 3D

    ESP32-C6-demoboard

    mortens-lab/ESP32-C6-demoboard

    KiCad files for ESP32-C6

    44 parts3
  • 4 layers50 × 50 mmEsp32-c6-wroom, the printed circuit board in 3D

    Esp32-c6-wroom

    nabiKZ/esp32-c6-wroom

    esp32-c6-wroom

    42 parts
  • 4 layers50 × 50 mmESP32C6-DEMO BOARD, the printed circuit board in 3D

    ESP32C6-DEMO BOARD

    yogith-mr/ESP32C6-DEMO-BOARD

    Custom ESP32-C6 development board designed using KiCad, including schematic capture and PCB layout. Focused on embedded systems and IoT applications with proper routing, power design, and signal integrity.

    42 parts
  • 6 layers144.8 × 106.7 mmLoriques, the printed circuit board in 3D

    Loriques

    skot/Loriques

    A solar powered Meshtastic LoRa gateway

    122 parts17CERN-OHL-S-2.0
  • 4 layers47 × 21.6 mmRotini Hardware, the printed circuit board in 3D

    Rotini Hardware

    AlfredoSystems/Rotini-Hardware

    📖 Documentation: https://www.alfredosys.com/Rotini-Hardware/ (pinout, power limits, flashing ExpressLRS, first Arduino upload)

    116 parts3MIT
  • 4 layers40 × 40 mmESP32-S3-MINI, the printed circuit board in 3D

    ESP32-S3-MINI

    mortens-lab/ESP32-S3-MINI-TestBoard

    KiCad files

    44 parts3CC0-1.0
  • 4 layers42.1 × 72 mmFrakfurt eth, the printed circuit board in 3D

    Frakfurt eth

    grodansparadis/can4vscp-frankfurt-eth

    Frankfurt Ethernet to CAN4VSCP bridge

    71 parts2