Skip to the content
PCBKitNew board
2 layers75.3 × 21 mmButton board, the printed circuit board in 3D

A 32x8 bicolor LED matrix module based on the Holtek HT16K33A LED driver.

Size
75.3 × 21 mm
Copper layers
2
Thickness
1.6 mm
Parts
5
Nets
5
Pads
21
Tracks, vias
17, 3
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
18 May 2025
Updated
17 Aug 2026

Overview

Button board is an open-source printed circuit board by picafe, from the picafe/bicolor-matrix repository on GitHub. It is a 2-layer board of 75.3 × 21 mm with 5 parts on 5 nets, routed with 17 tracks and 3 vias.

Its parts include 4 switches and 1 connector. It belongs with the lEDs and displays boards of this library.

README

README.md

bicolor-matrix

This repository has moved to bicolor-matrix-v2.

A 32x8 bicolor LED matrix module composed of 4 8x8 matrices based on the Holtek HT16K33A I2C LED driver.

Inspiration

Inspired by the common 32x8 red LED matrix modules that use the MAX7219 IC, I wanted to make my own module but with more colours and functionality, while keeping the same asthetic.

I found these modules while browsing Aliexpress and thought they could look be a cool alternative. With the red and light green variant, you can have red, a light green, and orange all in one module. As far as I'm aware, there aren't RGB modules in a similar form factor, although you can take generic WS2818 8x8 matricies and 3D print a diffuser for them, although the footprint is much bigger. This project was also partially inspired by bitluni's LED magnet tiles which I found really cool.

Unlike the single colour matricies with 16 pins, these had 24. I found this Adafruit module and followed a similar schematic with the Holtek HT16K33A I2C LED driver, but with an inverted board layout, and with 4 modules on one PCB. This was my 2nd PCB project, so it was definately a big undertaking.

Showcase

Matrix Board:

Adapter Board: This adds functionality through a RP2040 Zero board, a DS3231 module and a small buzzer, and a generic logic level shifter since the Holtek IC only operates near 5V.

Button Board: An addition to the adapter board and provides 4 interface buttons for setting time

Bill of Materials (BOM) + Assembly Notes

ItemQuantityDescription
Machine Pin Headers5 Pcs2.54mm pitch circular pin headers to connect the LED matricies to the main PCB. These are needed such as to not solder the matrix boards directly to the PCB, allowing for easier replacement if needed.
12mm x 12mm Buttons4Generic 12mm tactile push buttons, whatever is cheapest on Aliexpress. I used these.
RP2040 Zero1Microcontroller board, whatever is cheapest on Aliexpress. I bought from here.
DS3231 Module1Mini module without the battery, basically a simple breakout. Use side cutters to cut the plastic on the pre-soldered female headers, then desolder each of the pins. Solder in male headers.
Level Shifter14-channel logic level shifter module, whatever is cheapest on Aliexpress. They are cheapest in packs of 10, so you can use the extra ones for other projects. I bought from here.
Buzzer1Generic 3.3V 7.6mm diameter buzzer, whatever is cheapest on Aliexpress.
Right Angle Pin Headers1Get the R1 type of pin headers pictured here, they're slightly more uncommon and more expensive than the R1 type. This is for the button board connection.
2.54mm Pin Headers (Male and Female)1To connect the matrix board to the adapter board and general use. This video shows how to make custom length female headers.

Buying Note: I recommend you try to buy components on the Aliexpress mobile app (web on desktop doesn't seem to have a search bar) in Bundle Deals if you can find them as you can get better prices, and they usually ship faster.

Ordering Note: I recommend you to create your own adapter board for the project. The one I built has some design flaws (button board doesn't fit flush with the adapter board, the right angle headers need to be positioned lower, and usb connector placement could be improved).

It was designed to be a prototype and optimize costs, so I recommend you to make your own design based on your needs. I was browsing Aliexpress a few days ago and found this RP2350 stamp module which would make a better alternative since you can position the USB connector anywhere on the PCB. It's also relatively cheap.

Parts

5
QtyValueFootprintReferences
4SW_PushButton_Switch_THT:SW_PUSH-12mmSW1, SW2, SW3, SW4
1Conn_01x05_SocketConnector_PinSocket_2.54mm:PinSocket_1x05_P2.54mm_VerticalJ1

Questions

How big is the Button board PCB?

It measures 75.3 × 21 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Button board use?

5 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 Button board KiCad files?

From the picafe/bicolor-matrix repository on GitHub, at the commit this page was made from: the board is button-board/button-board.kicad_pcb and its schematic adapter-board/adapter-board.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Button board design in my own project?

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

More from picafe/bicolor-matrix

2
  • 2 layers136.8 × 33.5 mmBicolour matrix, the printed circuit board in 3D

    Bicolour matrix

    picafe/bicolor-matrix

    A 32x8 bicolor LED matrix module based on the Holtek HT16K33A LED driver.

    52 parts
  • 2 layers136.8 × 33.5 mmAdapter board, the printed circuit board in 3D

    Adapter board

    picafe/bicolor-matrix

    A 32x8 bicolor LED matrix module based on the Holtek HT16K33A LED driver.

    9 parts

Similar boards

  • 2 layers98 × 27 mmXy limit, the printed circuit board in 3D

    Xy limit

    opulo-inc/lumenpnp

    The LumenPnP is an open source pick and place machine.

    5 parts3.7k
  • 2 layers21 × 33 mm24g2usb pico2w, the printed circuit board in 3D

    24g2usb pico2w

    joypad-ai/joypad-os

    Universal controller firmware for building adapters, dongles, and custom controllers.

    5 parts1.7kApache-2.0
  • 2 layers53.2 × 59.6 mmA10 OLinuXino Lime Rev B SHIELD TEMPLATE, the printed circuit board in 3D

    A10 OLinuXino Lime Rev B SHIELD TEMPLATE

    OLIMEX/OLINUXINO

    OLINUXINO is Open Source / Open Hardware, low cost from EUR 24 Linux Industrial grade Single Board Computer capable to operate -25+85C

    5 parts1.5k
  • 2 layers30 × 11 mmMain control board servo tester, the printed circuit board in 3D

    Main control board servo tester

    jamro/tiny-engineer

    A small desktop robot that brings an AI coding assistant to life, physically acting out when it reads files, thinks, writes code, and finishes work.

    5 parts1.1k
  • 2 layers78.8 × 35.3 mmKiCadTest, the printed circuit board in 3D

    KiCadTest

    hackclub/OnBoard

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

    5 parts915
  • 2 layers50 × 23 mmMiniCircuits LTCC, the printed circuit board in 3D

    MiniCircuits LTCC

    VanceVagell/kv4p-ht

    Open source handheld ham radio project KV4P-HT

    5 parts828GPL-3.0
  • 2 layers20.3 × 15.2 mmL0 light sensor, the printed circuit board in 3D

    L0 light sensor

    Luos-io/luos_engine

    Open-source and real-time orchestrator for cyber-physical-systems, to easily design, test and deploy embedded applications and digital twins.

    5 parts546MIT