Controller

candykingdom·firefly2·hardware/controller/controller.kicad_pcb

Controller PCB layout, top view — open source STM32 board by candykingdom

About the Controller PCB

Controller is an open source STM32 PCB design by candykingdom, published on GitHub. It is a 2-layer board measuring 150 × 68 mm, with 190 components from 45 distinct parts.

Its main chip is the STM32G070CBTX, from the STM32 family. Other key parts include the WS2811, FM24CL16B, HT75XX-1-SOT89, RFM69CW-915MHZ and TP4056. By type, the board carries 64 capacitors, 56 diodes, 37 resistors, 12 switches, 10 ICs and 6 connectors.

It belongs with the rf & radio and displays & leds designs in this gallery.

From the project

Small blinkenlight boards that sync up using radios

Wireless LED control for Burning Man art installations, bikes, and wearables. Devices driving WS2812 strips self-organize over 915 MHz RFM69 radios into a flood mesh with exactly one master, share a network clock via heartbeats, and render effects as pure functions of network time — so every device animates in sync without streaming frames.

New to the project? Start with GETTING_STARTED.md. Working in the code (human or agent)? The mental model lives in docs/index.md and the shared Claude Code/Codex ground rules in CLAUDE.md.

Main components on the Controller

Controller bill of materials (BOM)

190 components, 45 distinct parts — part numbers from the project's BOM.

QtyPartRefs
3
WS2811
U1, U3, U4
1
FM24CL16B
U2
1
HT75XX-1-SOT89
HT75xx-1-SOT89
U5
1
RFM69CW-915MHZ
U6
1
TP4056
U7
1
STM32G070CBTX
STM32G070CBTx
U8
1
VEML6040
U9
1
CH340X
U10
1
C8512
MMBT2222A 1P
Q1
1
AO3400A
Q2
1
Conn_01x05
J1
1
Conn_01x03
J2
1
Conn_01x04
J3
1
C132563
USB_B_Micro
J4
1
Conn_01x03
J5
1
Conn_01x02
J6
1
CMA-4544PF-W
Microphone
MK1
1
OS103011MS8QP1
S1
9
ILS TA180 50
ILS_TA180_50
SW1, SW2, SW3, SW4, SW5, SW6, SW7, SW8 +1
1
SW_Push
SW10
Show 25 more
QtyPartRefs
1
C2848884
SW_SPDT
SW11
1
C269105
Thermistor_PTC
TH1
13
C2990473
D_TVS
D1, D2, D4, D26, D30, D31, D50, D51 +5
39
WS2812C/W
D5, D6, D7, D8, D9, D10, D11, D12 +31
1
C2290
WHITE
D35
1
C2286
RED
D39
1
SRV05-4-P-T7
D46
1
C8678
D
D52
1
10NH
10nH
L1
51
100NF
100nF
C1, C3, C5, C6, C7, C10, C15, C20 +43
8
10UF
10uF
C9, C11, C12, C13, C14, C16, C17, C18
1
1PF
1pF
C19
3
100UF
100uF
C21, C22, C28
1
10NF
10nF
C24
4
33
R1, R7, R25, R35
1
470K
470k
R2
13
1k
R3, R4, R5, R11, R16, R17, R18, R19 +5
4
100
R6, R10, R13, R21
2
240K
240k
R8, R14
2
680K
680k
R9, R22
2
4K7
4k7
R12, R15
3
220
R23, R38, R39
3
3K3
3k3
R33, R40, R41
2
2K2
2k2
R42, R44
1
6K8
6k8
R43

Controller design files

The KiCad project lives in the candykingdom/firefly2 repository on GitHub; these links point at the commit this page was built from.

Controller: common questions

What microcontroller does the Controller use?

The Controller is built around the STM32G070CBTX, from the STM32 family.

How big is the Controller PCB?

The Controller measures 150 × 68 mm, has 2 copper layers and is 1.6 mm thick.

How many components are on the Controller?

190 components, from 45 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.

Where can I download the Controller design files?

From the candykingdom/firefly2 repository on GitHub, which has the KiCad layout, the schematic and the BOM; the links under Design files point to each one.

Can I use the Controller design in my own project?

The repository has no license, so all rights stay with candykingdom. Use it as a reference, and ask the author before reusing the design.

Can I test firmware for the Controller without the hardware?

Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug STM32 firmware against it before you order a PCB.

More boards in firefly2

Similar boards