Skip to the content
PCBKitNew board
2 layers82.8 × 70.7 mmDriver aluball v1, the printed circuit board in 3D

Driver aluball v1

brainsmoke/leddriver3d11

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

Size
82.8 × 70.7 mm
Copper layers
2
Thickness
1.6 mm
Parts
29
Nets
56
Pads
127
Tracks, vias
314, 73
Pours
4
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
3 Aug 2020
Updated
30 Oct 2026

Overview

Driver aluball v1 is an open-source printed circuit board by brainsmoke, from the brainsmoke/leddriver3d repository on GitHub. It is a 2-layer board of 82.8 × 70.7 mm with 29 parts on 56 nets, routed with 314 tracks and 73 vias.

It is built around the ESP32-WROVER and AO3400. Its parts include 9 connectors, 6 capacitors, 6 resistors, 3 ICs and 2 transistors. It belongs with the lEDs and displays boards and the ESP32 and STM32 boards of this library.

Main components

2

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

29
QtyValueFootprintReferences
610kResistor_SMD:R_0402_1005MetricR3, R4, R5, R6, R7, R11
4Conn_01x01_Maleoutline:solderpad1J6, J7, J8, J9
310uFCapacitor_SMD:C_1206_3216MetricC1, C9, C10
2100nFCapacitor_SMD:C_0402_1005MetricC5, C8
2AO3400Package_TO_SOT_SMD:SOT-23Q1, Q2
2Conn_01x02_MaleConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ3, J4
1outline:outline
11uFCapacitor_SMD:C_0402_1005MetricC7
1Conn_01x02_Maleoutline:xt60-pcbJ1
1Conn_01x03_MaleConnector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_VerticalJ5
1Conn_01x05_MaleConnector_Molex:Molex_PicoBlade_53261-0571_1x05-1MP_P1.25mm_HorizontalJ2
1ESP32-WROVEResp32-wrover:XCVR_ESP32-WROVERU1
1STM32F030F4PxPackage_SO:TSSOP-20_4.4x6.5mm_P0.65mmU3
1dcdc3a-12.5x17.4outline:dcdc3a-12.5x17.4U2

The 27 most common of 29 parts.

Questions

How big is the Driver aluball v1 PCB?

It measures 82.8 × 70.7 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Driver aluball v1 use?

29 parts, built around the ESP32-WROVER and AO3400. 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 aluball v1 KiCad files?

From the brainsmoke/leddriver3d repository on GitHub, at the commit this page was made from: the board is pcb/driver_aluball_v1/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 aluball v1 design in my own project?

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

More from brainsmoke/leddriver3d

12
  • 2 layers60 × 50 mmDriver wide, the printed circuit board in 3D

    Driver wide

    brainsmoke/leddriver3d

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

    73 parts11
  • 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 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 layers97.1 × 97.1 mmESP32 IMU Module V1.1, the printed circuit board in 3D

    ESP32 IMU Module V1.1

    shaun-lloyd/dev-ardupilot-obal

    ArduPi is an open hardware Raspberry Pi hat to run Ardupilot.

    87 parts2CC0-1.0
  • 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