Skip to the content
PCBKitNew board
2 layers30 × 65 mmPiZeroLEDController, the printed circuit board in 3D

PiZeroLEDController

sudermanjr/led-controller5

Golang Code, Image Builder, and PCB for a Pi-ZeroW NeoPixel Controller

Size
30 × 65 mm
Copper layers
2
Thickness
1.6 mm
Parts
9
Nets
42
Pads
70
Tracks, vias
62, 0
Pours
1
Routed
Yes
KiCad
KiCad 7 (file 20221018)
Created
18 Jan 2020
Updated
3 Mar 2023

Overview

PiZeroLEDController is an open-source printed circuit board by sudermanjr, from the sudermanjr/led-controller repository on GitHub, published under the Apache-2.0 licence. It is a 2-layer board of 30 × 65 mm with 9 parts on 42 nets, routed with 62 tracks and 0 vias.

Its parts include 6 connectors, 2 switches and 1 capacitor. It belongs with the lEDs and displays boards of this library.

README

README.md

LED Controller

This is a project to control NeoPixel lights with a PiZeroW and golang

Homekit

led-controller homekit will start this as a homekit device. Check the help for options, specifically the homekit pin. The homekit device will work with color and brightness controls once registered.

Dashboard

Currently under heavy development. The dashboard will allow viewing and controlling the neopixel strip.

Building your Pi Controller

In the pi-builder directory is the cloud-init for building my pi image using Hypriot. I have encrypted the cloud-init.yaml file using sops and pgp since it contains secrets. There's not much to this file, so it should be easy to re-create on your own if you like.

Compiling

This is cross-compiled for the Raspberry Pi using the instructions in the rpi-ws281x repository. This utilizes a build container that is based on the Balena Golang Image. If you are using a different Pi, you will want to change the base image in the Dockerfile

The build commands are in the Makefile. You can make build to build the Docker container and then use that to build the binary for the Pi. At the end it will show the output of file led-controller to verify the type of the binary.

The build will also create a local .tmp directory for storing build cache so that subsequent builds are much much faster.

Another word of caution: This container build will utilize your local GOPATH and GOCACHE so that it doesn't have to download every package every time.

References

Parts

9
QtyValueFootprintReferences
1330uFCapacitor_THT:CP_Radial_D10.0mm_P5.00mmC1
1ButtonButton_Switch_THT:SW_PUSH_6mm_H9.5mmSW1
1Button 25Button_Switch_THT:SW_PUSH_6mm_H9.5mmSW2
1Converter High SideConnector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ6
1Converter Low SideConnector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ5
1LED 12TerminalBlock_TE-Connectivity:TerminalBlock_TE_282834-3_1x03_P2.54mm_HorizontalJ4
1LED 18TerminalBlock_TE-Connectivity:TerminalBlock_TE_282834-3_1x03_P2.54mm_HorizontalJ3
1PiZeroConnector_PinSocket_2.54mm:PinSocket_2x20_P2.54mm_VerticalJ1
1PowerTerminalBlock_TE-Connectivity:TerminalBlock_TE_282834-2_1x02_P2.54mm_HorizontalJ2

Questions

How big is the PiZeroLEDController PCB?

It measures 30 × 65 mm and has 2 copper layers, 1.6 mm thick.

What parts does the PiZeroLEDController use?

9 parts. 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 PiZeroLEDController KiCad files?

From the sudermanjr/led-controller repository on GitHub, at the commit this page was made from: the board is hack/kicad/PiZeroLEDController/PiZeroLEDController.kicad_pcb and its schematic hack/kicad/PiZeroLEDController/PiZeroLEDController.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the PiZeroLEDController design in my own project?

Its repository publishes it under the Apache-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers103 × 30.5 mmTS Back Endcap, the printed circuit board in 3D

    TS Back Endcap

    EEVengers/ThunderScope

    ThunderScope GitHub Repo

    9 parts1.3kMIT
  • 2 layers31.8 × 47.6 mmNGC 38 connector, the printed circuit board in 3D

    NGC 38 connector

    rusefi/rusefi

    rusefi - GPL internal combustion engine control unit

    9 parts1.2k
  • 2 layers24 × 27.3 mmExpansion Card Retrofit, the printed circuit board in 3D

    Expansion Card Retrofit

    FrameworkComputer/ExpansionCards

    Reference designs and documentation to create Expansion Cards for the Framework Laptop

    9 parts1.1kCC-BY-4.0
  • 2 layers15.6 × 17.3 mmSKR Mini TFT Thermistor Board, the printed circuit board in 3D

    SKR Mini TFT Thermistor Board

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    9 parts1.1kGPL-3.0
  • 2 layers39.1 × 49.5 mmLearnoliver, the printed circuit board in 3D

    Learnoliver

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    9 parts915
  • 2 layers17.4 × 16.9 mmToolhead, the printed circuit board in 3D

    Toolhead

    tanaes/whopping_Voron_mods

    9 parts787GPL-3.0
  • 2 layers9.8 × 108 mmExpander, the printed circuit board in 3D

    Expander

    wntrblm/Castor_and_Pollux

    A Juno-inspired dual oscillator

    9 parts587
  • 2 layersKeyboard after, the printed circuit board in 3D

    Keyboard after

    adamws/kicad-kbplacer

    KiCad plugin for automatic keyboard's key placement and routing

    9 parts547GPL-3.0