

LCDC1000
An ESP32 based controller that can drive any kind of LED strip, or motor. Includes microSD, USB-UART, and large voltage range input.
- Size
- 63.2 × 93.2 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 110
- Nets
- 91
- Pads
- 330
- Tracks, vias
- 873, 144
- Pours
- 18
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 4 Jul 2019
- Updated
- 6 Jul 2019
Overview
LCDC1000 is an open-source printed circuit board by wmeckman, from the wmeckman/LCDC1000 repository on GitHub. It is a 2-layer board of 63.2 × 93.2 mm with 110 parts on 91 nets, routed with 873 tracks and 144 vias.
It is built around the ESP32-WROOM-32D, FT231XS-R and 10118193-0001LF, with the AOD4189 and MBT3904DW1 among its other parts. Its parts include 48 resistors, 18 capacitors, 10 connectors, 5 ICs and 2 diodes. It belongs with the radio and wireless and robots and motor control boards and the ESP32 boards of this library.
Main components
5ESP32-WROOM-32D
-- WiFi Modules ROHSEspressif SystemsWiFi ModulesFT231XS-R
SSOP-20-150mil-40℃~+85℃ 125uA 5V 8.4mA USB 2.0 USB to UART SSOP-20-150mil USB Converters ROHSFTDIUSB Converters10118193-0001LF
SMD-55℃~+85℃ 1 1.8A 100V 5P Black Female Micro-B Surface Mount, Right Angle USB 2.0 SMD USB Connectors ROHSAmphenolUSB ConnectorsAOD4189
TO-252(DPAK)-55℃~+175℃ 1 P-Channel 1.7V 1.87nF 155pF 22mΩ 40A 40V 41nC@10V 62.5W TO-252(DPAK) MOSFETs ROHSAlpha & Omega SemiconductorMOSFETsMBT3904DW1
SOT-363-55℃~+150℃ 100 150mW 2 NPN 200mA 300MHz 300mV 40V 50nA 6V NPN SOT-363 Bipolar (BJT) ROHSonsemiBipolar (BJT)
README
README.mdLCDC1000
An ESP32 based controller that can drive any kind of LED strip, or motor. Includes microSD, USB-UART, and large voltage range input.

This project started as a Wifi and bluetooth controller that could drive any type of LED strip. LED strip controllers are everywhere, but I wanted a controller that I could customize without using a breadboard. As the project progressed, I wanted this board to be able to drive motors as well. I added a microSD card for file storage, and a USB-UART for debug. Here are the main features:
ESP32 based using MicroPython Drives Any type of LED strip - RGB, RGBW, WS2812, APA102, Neopixel, etc Wide input power range: 4.5V to 30V DC. Input power via Barrel Jack 2.10mm ID (0.083"), 5.50mm OD or Terminal Block. Reverse polarity input power protection. Drives 1 stepper motor in full H-bridge configuration. Drives 2 bipolar DC motors in half H-bridge configuration. Drives 4 Unipolar DC Motors. Additional outputs for servo motors available. Current sense for motor/LED drivers. Outputs on terminal blocks.
Power: 4.5V-30V DC power can be applied either through the barrel jack or the terminal block (not both). An on-board regulator is used to create the 3.3V necessary for the ESP32, MicroUSB, and USB-UART. The power input on J6 and J5 is equal to the power output on J7. Use a power supply that is designed to drive what is connected on the output. For example, if driving a 12V RGB LED strip, use a 12V power supply.
To use the board, connect whatever you're controlling (LED, motor, etc) to the terminal blocks (J3, J4, J7), then apply power to J5 or J6. The 'connection notes' section provides more in depth instruction by device.
Pinouts
J6 Barrel Jack Input Power
Pin: +Vin 4.5V to 30V
Shield: GroundJ5 Input Power Terminal Block
1: +Vin 4.5V to 30V
2: +Vin 4.5V to 30V
3: Ground
4: GroundJ7 Output Power Terminal Block
1: +Vout
2: +Vout
3: Ground
4: GroundJ3, J4, J8 High Current Motor and RGB, RGBW LED Drive Terminal Block
J3-1: Power Out
J3-8: Drive1Out1
J4-1: Drive1Out2
J4-2: Drive2Out1
J8-1: Drive2Out2
J8-2: GroundJ9 and J10: SPI, and PWM Drive Signals for Servo Motor, individually addressable LED's Terminal Block
J9-1: GPIO_2 (ESP32 IO2)
J9-2: GPIO_5 (ESP32 IO5)
J10-1: LED_DATA (ESP IO19)
J10-2: LED_CLK (ESP IO18)Test Point Header Pins
TP1: TDI_SD_MISO - Primarily used to SD card, but can be used for JTAG
TP2: TDO_SD_CD - Primarily used to SD card, but can be used for JTAG
TP3: TMS_SD_CLK - Primarily used to SD card, but can be used for JTAG
TP4: TCK_SD_MOSI - Primarily used to SD card, but can be used for JTAG
TP5: ESP32 Enable
TP7: IO17
TP8: GPIO_0 - ESP32 IO0
TP9: ESP32 IO35
TP10: ESP32 SENSOR_VP
TP11: ESP32 SENSOR_VN
TP12: +Vout
TP13: +Vout
TP14: +Vout
TP17: GND
TP18: GND
TP19: GND
USBPWR_TP: USB Power Note: TP2, TP7, TP8 are arranged on the PCB with TP12-TP14, and TP17-TP19 to be compatible with servo motor connections.
Connection Notes: Overview of connections for various devices
Individually addressable LED's - WS2812, NeoPixel, etc.
J7-1: LED Power
J7-4: LED Ground
J9-1: LED DataIndividually Addressable LED's - APA102, SK9822, DotStar, etc.
J7-1: LED Power
J7-4: LED Ground
J10-1: LED Data
J10-2: LED ClockJ10-1, and J10-2 are connected to the ESP32 SPI bus. This provides the highest speed possible. Additional LED strips can be connected using lower speed GPIO pins.
Low speed GPIO connection example:
J7-2: LED Power
J7-3: LED Ground
J9-1: LED Data
J9-2: LED ClockRGB Strips
J7-1: LED Power
J3-1: R
J3-2: G
J3-3: BRGBW Strips
J3-1: LED Power
J3-2: R
J4-1: G
J4-2: B
J8-1: WBipolar DC Stepper Motor
J3-2: Coil1+
J4-1: Coil1-
J4-2: Coil2+
J8-1: Coil2-Unipolar DC Stepper Motor 5 Wire
J3-2: Coil 1
J4-1: Coil 2
J4-2: Coil 3
J8-1: Coil 4
J7-3: GroundUnipolar DC Stepper Motor 6 Wire
J3-2: Coil 1
J4-1: Coil 2
J4-2: Coil 3
J8-1: Coil 4
J7-3: Ground
J7-4: GroundDC Motor Unidirectional : Connect up to 4
Use J3-2 or J4-1 or J4-2 or J8-1 for (+) wire
Use J7-3 or J7-4 for (-) wireDC Bidirectional Motor : Connect up to 2
J3-2: Motor 1 (+)
J4-1: Motor 1 (-)
J4-2: Motor 2 (+)
J8-1: Motor 2 (-)Servo Motors
J7-1 Servo 1 Power +
J7-3 Servo 1 Power -
J9-1 Servo 1 Control
J7-2 Servo 2 Power +
J7-4 Servo 2 Power -
J9-2 Servo 2 ControlAdditional Servos can be connected on the header pins.
Parts
110| Qty | Value | Footprint | References |
|---|---|---|---|
| 17 | TestPoint | lc_dc1000:1mm_tp | TP1, TP2, TP3, TP4, TP5, TP6, TP7, TP8, TP10, TP11, TP12, TP13, TP14, TP17, TP18, TP19 +1 |
| 14 | DNI | Resistor_SMD:R_0805_2012Metric | R6, R7, R8, R9, R10, R11, R13, R15, R16, R22, R23, R24, R40, R43 |
| 10 | 10k | Resistor_SMD:R_0805_2012Metric | R1, R2, R3, R12, R17, R36, R37, R38, R47, R48 |
| 10 | 1k | Resistor_SMD:R_0805_2012Metric | R25, R27, R28, R29, R30, R39, R41, R42, R44, R46 |
| 6 | 0.1uF | Capacitor_SMD:C_0805_2012Metric | C1, C2, C3, C7, C10, C11 |
| 5 | 100 | Resistor_SMD:R_0805_2012Metric | R31, R32, R33, R34, R45 |
| 5 | Screw_Terminal_01x02 | TerminalBlock_TE-Connectivity:TerminalBlock_TE_282834-2_1x02_P2.54mm_Horizontal | J3, J4, J8, J9, J10 |
| 4 | 10 | Resistor_SMD:R_0805_2012Metric | R18, R19, R20, R21 |
| 4 | 10uF | Capacitor_SMD:C_0805_2012Metric | C4, C17, C18, C19 |
| 4 | 4.7uF | Capacitor_SMD:C_1206_3216Metric | C9, C12, C13, C14 |
| 4 | MountingHole_Pad | MountingHole:MountingHole_3.5mm_Pad | H1, H2, H3, H4 |
| 3 | 31.6k | Resistor_SMD:R_0805_2012Metric | R14, R26, R35 |
| 2 | 27 | Resistor_SMD:R_0805_2012Metric | R4, R5 |
| 2 | 27pF | Capacitor_SMD:C_0805_2012Metric | C5, C6 |
| 2 | SW_Push | Button_Switch_SMD:SW_SPST_TL3342 | SW1, SW2 |
| 2 | Screw_Terminal_01x04 | lc_dc1000:691137710004 | J5, J7 |
| 2 | VNH7100ASTR | Package_SO:SOIC-16_3.9x9.9mm_P1.27mm | U4, U5 |
| 1 | .1uF | Capacitor_SMD:C_0805_2012Metric | C16 |
| 1 | 10118193-0001LF | lc_dc1000:usb | J1 |
| 1 | 15uH | lc_dc1000:NR6045T150M | L1 |
| 1 | 1uF | Capacitor_SMD:C_0805_2012Metric | C15 |
| 1 | 4.3V | Diode_SMD:D_SOT-23_ANK | D1 |
| 1 | AOD4189 | lc_dc1000:TO-252-2_AOD4189 | Q1 |
| 1 | Barrel_Jack | lc_dc1000:CUI_PJ-063AH | J6 |
| 1 | ESP32-WROOM-32D | lc_dc1000:MODULE_ESP32-WROOM-32D | U1 |
| 1 | FT231XS | Package_SO:SSOP-20_3.9x8.7mm_P0.635mm | U2 |
| 1 | LED | LED_SMD:LED_0805_2012Metric | D2 |
| 1 | MBT3904DW1 | Package_TO_SOT_SMD:SOT-363_SC-70-6 | Q2 |
| 1 | MCP16311MS | Package_SO:MSOP-8_3x3mm_P0.65mm | U3 |
| 1 | Micro_SD_Card | lc_dc1000:1051620001_microsd | J2 |
| 1 | TestPoint | TestPoint:TestPoint_THTPad_2.0x2.0mm_Drill1.0mm | USB_PWR1 |
Similar boards
- 2 layers67.8 × 55 mm

- 2 layers79.1 × 129 mm

- 2 layers48 × 78.2 mm

- 4 layers25.9 × 55.9 mm

- 4 layers93.3 × 83.9 mm

- 2 layers126 × 107 mm

- 2 layers55.9 × 121.3 mm

Tregatti stable
tregatti-tech/ESP32ECG
Open design/code version of ECG device based on esp32
147 parts9 - 2 layers55 × 80 mm

Board esp32
sudomesh/disaster-radio
A (paused) work-in-progress long-range, low-bandwidth wireless disaster recovery mesh network powered by the sun.
96 parts1.1k
Questions
How big is the LCDC1000 PCB?
It measures 63.2 × 93.2 mm and has 2 copper layers, 1.6 mm thick.
What parts does the LCDC1000 use?
110 parts, built around the ESP32-WROOM-32D, FT231XS-R, 10118193-0001LF and AOD4189. 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 LCDC1000 KiCad files?
From the wmeckman/LCDC1000 repository on GitHub, at the commit this page was made from: the board is lc_dc1000.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the LCDC1000 design in my own project?
Its repository states no licence, so its author keeps all rights: ask wmeckman before reusing the design.