
ChristmasLight
bamnet/village
I have a collection of 1-2 dozen Department 56 lighted Christmas houses. The default lighting solution has a big problem though: a house is either lit or not.

This project is a custom ESP32-S3 development board designed for robotics and embedded systems. It integrates two DRV8833 motor drivers, an MPU6050 accelerometer and gyroscope, a MAX98357A audio amplifier, and…
ESP32 Custom Devboard is an open-source printed circuit board by shreyD2408, from the shreyD2408/Custom_Esp32_Devboard repository on GitHub. It is a 4-layer board of 84 × 72 mm with 72 parts on 92 nets, routed with 1,221 tracks and 227 vias.
It is built around the ESP32-S3-MINI-1-N8, DRV8833PW and LM1117-3.3, with the MPU-6050, USBLC6-2SC6 and BLM21PG220SN1 among its other parts. Its parts include 20 capacitors, 19 connectors, 10 resistors, 7 ICs and 6 diodes. It belongs with the microcontroller boards and robots and motor control boards and the ESP32 boards of this library.
This project is a custom ESP32-S3 development board designed for robotics and embedded systems. It integrates two DRV8833 motor drivers, an MPU6050 accelerometer and gyroscope, a MAX98357A audio amplifier, and connections for up to six servos. It also includes USB-C programming, power inputs, and accessible GPIO, ADC, and I2C pins for connecting external components.
The goal is to combine commonly used robotics components into one board, reducing external wiring and making prototyping easier. This project is part of Hack Club's Half Life program, where I am developing my PCB design and assembly skills using KiCad.
This custom board will feature an ESP32-S3-MINI-1 module as the microcontroller, 2 DRV8833 Motor Drivers, which allow a total of 4 motor inputs, a USB-C connector for programming and power input; alternatively, you can use the 5v terminal block for power input. This board also supports 3 5V and GND outputs for external components. I2C, ADC and GPIO pins are also available on the board via pin headers. ADC pins can be used as GPIO pins. The MPU6050 6-axis gyroscope and accelerometer, and the built-in MAX98357A audio amplifier may be programmed to be used. Separate servo connectors are also supported. It can have up to 6 servos connected at the same time (6 sets of 01x03 pin headers).
I am designing and building this board as a part of the Hack Club Half Life program to develop my skills with circuit design and assembly using KiCad.
Purpose: To provide an all-in-one development board for robotics projects by integrating motor control, servo connections, motion sensing, audio output, and power distribution. Why it exists: To reduce the need for separate modules and complicated wiring while gaining hands-on experience with PCB design, circuit development, and hardware assembly using KiCad.
The components are connected through a custom-designed schematic and PCB layout. The schematic defines the electrical connections, while the PCB layout determines where components sit and how electrical signals travel through copper traces.
The schematic shows the electrical connection between all built-in components. Editable schematic available in the hardware folder.
The 3D Model shows the physical placement of components, copper traces, and connectors. Editable 3D Model available in the hardware folder.
Connect the board to a computer through USB-C to program the ESP32-S3 using the Arduino IDE or ESP-IDF. Upload firmware onto the board provided in "firmware" folder for basic features. Firmware can then be used to control motors and servos, read motion data from the MPU6050, and play audio through the MAX98357A amplifier.
External components can be connected through the dedicated motor terminals, servo headers, power outputs, and GPIO, ADC, and I2C headers. Alternatively, a suitable external 5V supply can be connected through the power terminal block. Verify the board's power requirements before connecting motors or servos.
| Part | Purpose | Qty | Unit Cost | Total | Vendor |
|---|---|---|---|---|---|
| Panasonic Push Button | User input, BOOT/RESET | 5 | $0.38 | $1.90 | LCSC |
| Ceramic 1µF Capacitor | Decoupling | 50 | $0.01 | $0.50 | LCSC |
| Ceramic 2.2µF Capacitor | Decoupling | 20 | $0.02 | $0.40 | LCSC |
| Ceramic 10µF Capacitor | Filtering | 20 | $0.03 | $0.60 | LCSC |
| Ceramic 100nF Capacitor | Decoupling | 50 | $0.01 | $0.50 | LCSC |
| Ceramic 10nF Capacitor | Filtering | 50 | $0.01 | $0.50 | LCSC |
| Ceramic 220nF Capacitor | Filtering | 2 | $0.33 | $0.66 | LCSC |
| USB-C Connector | Power and programming | 20 | $0.08 | $1.60 | LCSC |
| ESD Protection Diode | Surge protection | 20 | $0.03 | $0.60 | LCSC |
| Fuse | Overcurrent protection | 5 | $0.09 | $0.45 | LCSC |
| MAX98357A | Audio amplifier | 1 | $1.33 | $1.33 | LCSC |
| DRV8833PW | Motor driver | 2 | $1.65 | $3.30 | LCSC |
| LM1117 | 5V to 3.3V regulator | 5 | $0.18 | $0.90 | LCSC |
| USBLC6-2SC6 | USB ESD protection | 10 | $0.05 | $0.50 | LCSC |
| 10K Resistor | Passive component | 100 | $0.01 | $1.00 | LCSC |
| 2.2K Resistor | Passive component | 100 | $0.01 | $1.00 | LCSC |
| 5.1K Resistor | Passive component | 100 | $0.01 | $1.00 | LCSC |
| 1M Resistor | Passive component | 100 | $0.01 | $1.00 | LCSC |
| 1K Resistor | Passive component | 100 | $0.01 | $1.00 | LCSC |
| ESP32-S3-MINI-1 | Main MCU and Wi-Fi | 1 | $4.76 | $4.76 | LCSC |
| 1×2 Terminal Block | Power and motor input | 5 | $0.10 | $0.50 | LCSC |
| 1×3 Terminal Block | Power output | 5 | $0.35 | $1.75 | LCSC |
| LED | Power indicator | 100 | $0.01 | $1.00 | LCSC |
| Custom PCB | Component mounting | 5 | $2.60 | $13.00 | JLCPCB |
Links available in BOM.md
| Item | Cost |
|---|---|
| Parts Subtotal | $39.75 |
| Tax & Shipping | $17.36 |
| Grand Total | $57.11 USD |
Disclaimer - Quantities are not exact as LCSC sells in bulk.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 7 | 0.1u | Capacitor_SMD:C_0402_1005Metric_Pad0.74x0.62mm_HandSolder | C3, C5, C6, C7, C8, C17, C18 |
| 4 | 10K | Resistor_SMD:R_0402_1005Metric_Pad0.72x0.64mm_HandSolder | R1, R2, R9, R10 |
| 4 | ESD3.3 | Diode_SMD:D_SOD-923 | D1, D2, D5, D6 |
| 4 | MountingHole_Pad | MountingHole:MountingHole_3.2mm_M3_DIN965_Pad | H1, H2, H3, H4 |
| 3 | 10u | Capacitor_SMD:C_0402_1005Metric_Pad0.74x0.62mm_HandSolder | C2, C13, C14 |
| 3 | 1u | Capacitor_SMD:C_0201_0603Metric_Pad0.64x0.40mm_HandSolder | C1, C19, C20 |
| 3 | 2.2u | Capacitor_SMD:C_0201_0603Metric_Pad0.64x0.40mm_HandSolder | C4, C11, C12 |
| 2 | 0.01u | Capacitor_SMD:C_1206_3216Metric_Pad1.33x1.80mm_HandSolder | C15, C16 |
| 2 | 22u | Capacitor_SMD:C_1825_4564Metric_Pad1.57x6.80mm_HandSolder | C9, C10 |
| 2 | 2K2 | Resistor_SMD:R_0402_1005Metric_Pad0.72x0.64mm_HandSolder | R3, R4 |
| 2 | 5.1K | Resistor_SMD:R_0402_1005Metric_Pad0.72x0.64mm_HandSolder | R5, R6 |
| 2 | DRV8833PW | Package_SO:TSSOP-16_4.4x5mm_P0.65mm | U6, U7 |
| 2 | Motor1 | TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x02_P3.50mm_Horizontal | J21, J22 |
| 2 | Motor2 | TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x02_P3.50mm_Horizontal | J23, J24 |
| 1 | 1K | Resistor_SMD:R_0402_1005Metric_Pad0.72x0.64mm_HandSolder | R8 |
| 1 | 1M | Resistor_SMD:R_0402_1005Metric_Pad0.72x0.64mm_HandSolder | R7 |
| 1 | 1N5817 | Diode_THT:D_DO-41_SOD81_P10.16mm_Horizontal | D3 |
| 1 | 5V_OUT | TerminalBlock:TerminalBlock_Xinya_XY308-2.54-3P_1x03_P2.54mm_Horizontal | J15 |
| 1 | 5v_IN | TerminalBlock_4Ucon:TerminalBlock_4Ucon_1x02_P3.50mm_Horizontal | J13 |
| 1 | ADC_Socket | Connector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_Vertical | J18 |
| 1 | BLM21PG220 | Inductor_SMD:L_0805_2012Metric_Pad1.05x1.20mm_HandSolder | FB1 |
| 1 | BOOT | Button_Switch_SMD:SW_SPST_EVQP2_ShortPushTravel_H2.1mm | SW1 |
| 1 | ESP32-S3-MINI-1 | RF_Module:ESP32-S2-MINI-1 | U2 |
| 1 | GND_OUT | TerminalBlock:TerminalBlock_Xinya_XY308-2.54-3P_1x03_P2.54mm_Horizontal | J16 |
| 1 | GREEN | LED_SMD:LED_0402_1005Metric_Pad0.77x0.64mm_HandSolder | D4 |
| 1 | General_IO_Socket | Connector_PinSocket_2.54mm:PinSocket_1x05_P2.54mm_Vertical | J19 |
| 1 | I2C_Conn2 | Connector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_Vertical | J5 |
| 1 | LM1117-3.3 | Package_TO_SOT_SMD:SOT-223-3_TabPin2 | U4 |
| 1 | MAX98357A | Package_DFN_QFN:TQFN-16-1EP_3x3mm_P0.5mm_EP1.23x1.23mm | U3 |
| 1 | MPU-6050 | Sensor_Motion:InvenSense_QFN-24_4x4mm_P0.5mm | U1 |
| 1 | Polyfuse 1A | Fuse:Fuse_1206_3216Metric | F1 |
| 1 | RESET | Button_Switch_SMD:SW_SPST_EVQP2_ShortPushTravel_H2.1mm | SW2 |
| 1 | SPKR_Socket | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | J6 |
| 1 | Servo1 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J2 |
| 1 | Servo2 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J3 |
| 1 | Servo3 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J7 |
| 1 | Servo4 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J9 |
| 1 | Servo5 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J10 |
| 1 | Servo6 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J11 |
| 1 | Tx/Rx_Socket | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Vertical | J12 |
| 1 | USBLC6-2SC6 | Package_TO_SOT_SMD:SOT-23-6 | U5 |
| 1 | USB_C_Receptacle_USB2.0_16P | Connector_USB:USB_C_Receptacle_HCTL_HC-TYPE-C-16P-01A | J1 |
| 1 | USER_SW1 | Button_Switch_SMD:SW_SPST_EVQP2_ShortPushTravel_H2.1mm | SW3 |
| 1 | USER_SW2 | Button_Switch_SMD:SW_SPST_EVQP2_ShortPushTravel_H2.1mm | SW4 |

bamnet/village
I have a collection of 1-2 dozen Department 56 lighted Christmas houses. The default lighting solution has a big problem though: a house is either lit or not.

ysaip07/KiCAD_Project
Personal PCB design projects using KiCad, reflecting a strong foundation in electronics design, component footprints, and PCB fabrication workflows.
kiranj26/Posture-Tracker-Using-ESP32
Posture Correction using ESP32-MINI-1 and MU sensor (GY-521 / MPU-6050)

KazanNinja/MM36-Data-Hub
ESP32 based DAQ board. Fit with a 4 external 16bit 5V capable ADCs, 6-DOF IMU, and GPS breakout. Has two 5V > 3.3V & 12V > 3.3V voltage dividers


JonasLindinger/MicroPad
Battery-efficient ESP32-S3 macro pad with a 2.9" e-paper display for controlling Home Assistant. Pages and per-key actions are configured in a web tool and pushed over MQTT — no reflashing for menu or key changes.

Imdad2005/ESP32-S3-testboard
Custom 4-layer ESP32-S3 IoT testboard designed in KiCad 9, featuring USB-C, 3.3 V power regulation, environmental sensing, and QWIIC/SPI expansion.

talhazmc/ESP32-S3-TestBoard-Kicad
ESP32-S3 based custom test board PCB with USB-C, Qwiic, I2C, SPI, buttons, LEDs, and Si7021 sensor interface designed in KiCad.
It measures 84 × 72 mm and has 4 copper layers, 2.04 mm thick.
72 parts, built around the ESP32-S3-MINI-1-N8, DRV8833PW, LM1117-3.3 and MPU-6050. 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.
From the shreyD2408/Custom_Esp32_Devboard repository on GitHub, at the commit this page was made from: the board is hardware/ESP32 Custom Devboard.kicad_pcb and its schematic hardware/ESP32 Custom Devboard.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask shreyD2408 before reusing the design.