Skip to the content
2 layers60 × 50 mmDriver wide, the printed circuit board in 3D

Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

Size
60 × 50 mm
Copper layers
2
Thickness
1.6 mm
Parts
73
Nets
156
Pads
384
Tracks, vias
672, 155
Pours
2
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
3 Aug 2020
Updated
30 Oct 2026

Overview

Driver wide is an open-source printed circuit board by brainsmoke, from the brainsmoke/leddriver3d repository on GitHub. It is a 2-layer board of 60 × 50 mm with 73 parts on 156 nets, routed with 672 tracks and 155 vias.

It is built around the 74HCT245, ESP32-WROVER and ME6211C33M5G-N. Its parts include 38 resistors, 12 capacitors, 8 ICs, 7 connectors and 2 switches. It belongs with the lEDs and displays boards and the ESP32 and STM32 boards of this library.

Main components

3

README

README.md

LED Driver for 3D sculptures based on an ESP32 with PSRAM + an STM32F0XX

Design:

text
   programming &
  micropython REPL
         ||
     .--------.
     |  usb   |
     |   to   |  unified codebase       project specific firmware
     | serial |    /                            \
     '--------'   /                              \
         ||      /   standardized protocol        \
   .--------------.            |                  _____________.--
   |  ESP32-D0WD  |          (UART)              |             |-- multiple LED strands
   |   8M PSRAM   |-- 16bit/color LED frames --> |  STM32F0XX  |-- (temporal dithered)
   |  16M FLASH   |                              |_____________|--
   '--------------'                                            '--

ESP Code firmware/esp32/

  • Running micropython

  • 60 FPS 16bit/color (48bit) animation with some routines written in C for speed.

  • Animations use 3D-coordinates of the LEDs, as well as the direction they're pointing at

  • Gamma correction & support for multiple LED orderings.

  • Cached animation frames to prevent garbage collection hiccups

  • Web interface (HTTPS capable, but no automatic cert. updates)

STM32 Code firmware/stm32/

Protocol

Sending a frame: ( [16 bit brightness]* [ FF FF FF F0 ] )*

Brightness must be little endian integers in the (inclusive) range [0 .. 0xFF00]

[ FF FF FF F0 ] is an end of frame marker and allows the protocol to synchronize in the event of an uneven number of bytes being written to the serial port

The firmware is completely agnostic about the color ordering.

Some of the following firmwares allow for tuning of the pulse interval:

( [16 bit number]* [ FF FF FF F3 ] )*

The given number is the number of cycles outputting a byte should take. (Useful for increasing the FPS and thus improving temporal dithering.

dither16.bin

Read in 16bit/color data in, drive 8 ws2812 LED strips in parallel

strip4.bin

Read in 16bit/color data in, drive 4 ws2812 LED strips in parallel

strip5.bin

Read in 16bit/color data in, drive 5 ws2812 LED strips in parallel, Supports tuning the pulse interval.

relayball.bin

Read in 16bit/color data in, drive 4 circuit-routed ws2812 LED meshes. Small LED strands are connected through PADAUK based relay-chips (firmware/pdk/relay/) that use in-band messages to build up routing circuits.

uartball16.bin

Drives up-to 8 busses with PADAUK based LED drivers which read 38400 baud uart. firmware/pdk/softpwm/

dither8.bin

Older code using a different input protocol, reads 8bit/color data & transforms this to 16 bit colors after gamma correction

STM32 Tester code

jitter_timer.bin

Tester for PADAUK ws2812 relay chips. firmware/pdk/relay/

Tests for functionality and measures the clock speed deviation (for binning).

timing_experiment.bin

Dynamically adjust the T1H and T1L intervals from the ws2812 protocol to test its limits.

Parts

73
QtyValueFootprintReferences
3268 OhmResistor_SMD:R_0402_1005MetricR13, R14, R15, R16, R17, R18, R19, R20, R21, R22, R23, R24, R25, R26, R27, R28 +16
8100nFCapacitor_SMD:C_0402_1005MetricC3, C5, C8, C10, C11, C12, C13, C14
410kResistor_SMD:R_0402_1005MetricR1, R2, R6, R7
474HCT245Package_SO:TSSOP-20_4.4x6.5mm_P0.65mmU5, U6, U7, U8
310uFesp32-wrover:C_0603_1608MetricC2, C4, C9
3Conn_01x16_MaleConnector_PinHeader_2.54mm:PinHeader_1x16_P2.54mm_VerticalJ1, J3, J5
25.1kResistor_SMD:R_0402_1005MetricR8, R9
2SW_SPSTButton_Switch_SMD:SW_Push_1P1T_NO_CK_KMR2SW1, SW2
11uFCapacitor_SMD:C_0402_1005MetricC6
1Conn_01x01_MaleConnector_PinHeader_2.54mm:PinHeader_1x01_P2.54mm_VerticalJ7
1Conn_01x02_MaleConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ6
1Conn_01x03_MaleConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ4
1ESP32-WROVEResp32-wrover:XCVR_ESP32-WROVERU1
1Jumper_2_BridgedJumper:SolderJumper-2_P1.3mm_Bridged_Pad1.0x1.5mmJP1
1Jumper_2_OpenJumper:SolderJumper-2_P1.3mm_Open_Pad1.0x1.5mmJP2
1ME6211C33M5G-NPackage_TO_SOT_SMD:SOT-23-5U3
1STM32F030CCTxPackage_QFP:LQFP-48_7x7mm_P0.5mmU2
1STM32F042F4PxPackage_SO:TSSOP-20_4.4x6.5mm_P0.65mmU4
1USB_C_Receptacle_USB2.0footprints:USB_C_Receptacle_HRO_TYPE-C-31-M-12J2

The 69 most common of 73 parts.

More from brainsmoke/leddriver3d

12
  • 4 layers25.4 × 34.3 mmDriver v3.2, the printed circuit board in 3D

    Driver v3.2

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    36 parts11
  • 4 layers25.4 × 34.3 mmDriver v3, the printed circuit board in 3D

    Driver v3

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    36 parts11
  • 2 layers36.8 × 64.5 mmRelay tester, the printed circuit board in 3D

    Relay tester

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    36 parts11
  • 4 layers25.4 × 34.3 mmDriver v2, the printed circuit board in 3D

    Driver v2

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    35 parts11
  • 4 layers25.4 × 30.4 mmDriver v4, the printed circuit board in 3D

    Driver v4

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    33 parts11
  • 4 layers25.4 × 34.3 mmDriver v2.1, the printed circuit board in 3D

    Driver v2.1

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    31 parts11
  • 4 layers25.4 × 34.3 mmDriver v3.1, the printed circuit board in 3D

    Driver v3.1

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    31 parts11
  • 4 layers33 × 38.4 mmDriver v1, the printed circuit board in 3D

    Driver v1

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    30 parts11
  • 2 layers82.8 × 70.7 mmDriver aluball v1, the printed circuit board in 3D

    Driver aluball v1

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    29 parts11
  • 2 layers48 × 50.1 mmDriver penta, the printed circuit board in 3D

    Driver penta

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    27 parts11
  • 4 layers25.4 × 27.7 mmDriver v4.2, the printed circuit board in 3D

    Driver v4.2

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    21 parts11
  • 2 layers47.5 × 20 mmDriver slim v1, the printed circuit board in 3D

    Driver slim v1

    brainsmoke/leddriver3d

    Renamed from esp32leddriver because it also contains code and PCBs for other MCUs

    17 parts11

Similar boards

  • 2 layers39.6 × 99.1 mmESP32-Eurorack Audio, the printed circuit board in 3D

    ESP32-Eurorack Audio

    ctag-fh-kiel/ctag-tbd

    CTAG TBD >>to be determined<< an extendible open source Eurorack sound module

    128 parts260
  • 4 layers85.6 × 53.8 mmMuVox, the printed circuit board in 3D

    MuVox

    muvox-io/muVox

    Open Source Hardware Audio Amplifier

    128 parts84
  • 4 layers100 × 100 mmESP32-Eurorack Audio, the printed circuit board in 3D

    ESP32-Eurorack Audio

    ctag-fh-kiel/esp32-eurorack-audio

    Open source eurorack audio module based on ESP32

    173 parts71
  • 2 layers53.5 × 101.8 mmSony scopeman, the printed circuit board in 3D

    Sony scopeman

    lucysrausch/sony-scopeman

    Hardware Design files of a replacement mainboard for the Sony Watchman FD-10. This turns it into a bluetooth and WiFi-enabled vector display.

    135 parts69
  • 2 layers136 × 100 mmClimateSprinklerController, the printed circuit board in 3D

    ClimateSprinklerController

    kbx81/ClimateSprinklerController

    ESP32-based climate and sprinkler controller for use with ESPHome

    194 parts56
  • 2 layers224.8 × 174.4 mmInkplate10 Soldered panel, the printed circuit board in 3D

    Inkplate10 Soldered panel

    SolderedElectronics/Soldered-Inkplate-10-hardware-design

    Hardware design, BOM, gerbers and 3D files for Soldered-Inkplate-10 designed by Soldered Electronics.

    319 parts18
  • 2 layers34.3 × 53.3 mmESP32 WROVER BREAKOUT, the printed circuit board in 3D

    ESP32 WROVER BREAKOUT

    har-in-air/ESP32_WROVER_BREAKOUT

    Breadboard compatible breakout PCB for ESP32-WROVER with TPS82140 power supply

    27 parts12
  • 2 layers125 × 41 mmPowerMonitorMK3, the printed circuit board in 3D

    PowerMonitorMK3

    MAWoodMain/PowerMonitorMK3

    Third version high resolution high speed AC power monitor

    93 parts5

Questions

How big is the Driver wide PCB?

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

What parts does the Driver wide use?

73 parts, built around the 74HCT245, ESP32-WROVER and ME6211C33M5G-N. 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 Driver wide KiCad files?

From the brainsmoke/leddriver3d repository on GitHub, at the commit this page was made from: the board is pcb/driver_wide/pcb.kicad_pcb and its schematic pcb/driver_aluball_v1/pcb.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Driver wide design in my own project?

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