Skip to the content
PCBKitNew board
4 layers130 × 131.3 mmShuffleboard, the printed circuit board in 3D

Multiplayer Shuffleboard — Embedded Firmware (C), PCB Design, Mixed-Signal I/O, and Display + Audio Integration

Size
130 × 131.3 mm
Copper layers
4
Thickness
1.6 mm
Parts
72
Nets
75
Pads
241
Tracks, vias
419, 76
Pours
2
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
17 Mar 2026
Updated
22 Apr 2026

Overview

Shuffleboard is an open-source printed circuit board by rbala25, from the rbala25/shuffleboard repository on GitHub. It is a 4-layer board of 130 × 131.3 mm with 72 parts on 75 nets, routed with 419 tracks and 76 vias.

It is built around the 74HC595N. Its parts include 31 resistors, 12 capacitors, 10 ICs, 2 diodes and 2 connectors.

Main components

1

README

README.md

Shuffleboard

60 FPS multiplayer shuffleboard built on bare-metal C/C++ for the TM4C123 — no OS, no shortcuts. ECE319H Final Project.


Highlights

Comparator + FET Input Detection — Puck sensing uses a custom analog comparator circuit driving an N-channel FET, with hardware debouncing and firmware-level input validation. Fast, noise-resistant, and doesn't rely on polling.

Custom DAC + Audio — Sound effects generated through an R-2R resistor ladder DAC feeding a discrete amplifier and speaker.

SPI Display Pipeline — ST7735 TFT screen handles all game state rendering and animations via SPI. Score output runs in parallel on 7-segment displays driven by 74HC595 shift registers.

Game Loop & State Machine — Fully interrupt-driven architecture managing turn logic, collision validation, and score tracking in real time. All rendering, input, and audio synchronized to a 60 FPS Timer12 interrupt — no RTOS, no scheduler.

Mixed-Signal PCB — Custom board with split digital/analog ground planes, decoupling for stable SPI, and an integrated comparator/FET sensing front-end alongside the DAC output stage.


Stack

LayerTech
MCUTM4C123GXL (ARM Cortex-M4)
LanguageC/C++, bare-metal
DisplayST7735 TFT over SPI
Score Display7-segment + 74HC595 shift registers
AudioR-2R DAC + speaker amp
InputAnalog comparator + N-FET + hardware debounce

Developed for ECE319H — Introduction to Embedded Systems (Honors) at The University of Texas at Austin.

Parts

72
QtyValueFootprintReferences
16100Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolderR15, R16, R17, R18, R19, R20, R21, R22, R23, R24, R25, R26, R27, R28, R29, R30
11100nCapacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolderC1, C2, C3, C4, C5, C6, C7, C8, C10, C11, C12
71kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR2, R3, R4, R6, R7, R8, R11
610kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1, R5, R9, R12, R13, R45
6~MountingHole:MountingHole_2.2mm_M2_DIN965_PadH1, H2, H3, H4, H5, H6
2330Resistor_SMD:R_2010_5025Metric_Pad1.40x2.65mm_HandSolderR10, R14
2TBJ05-08-1-G-GShuffleboardFootprints:TBJ05081GGJ1, J2
2~ShuffleboardFootprints:SW_TL3301FF160QGS1, S2
2~TestPoint:TestPoint_THTPad_1.5x1.5mm_Drill0.7mmTP1, TP2
2~ShuffleboardFootprints:LED_INND-TS56RCBU4, U5
2~ShuffleboardFootprints:SOT65P210X110-6NIC1, IC2
2~ShuffleboardFootprints:SOIC127P600X175-16NU6, U8
11uCapacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolderC9
1ComparatorShuffleboardFootprints:lmv331U3
1GreenLED_THT:LED_D5.0mmD32
1LOGOFootprint:longhornsG***
1RedLED_THT:LED_D5.0mmD1
1~ShuffleboardFootprints:SPKR_CMS-3012-18TLS1
1~ShuffleboardFootprints:XDCR_COM-09032U1
1~Fuse:Fuse_0603_1608Metric_Pad1.05x0.95mm_HandSolderF1
1~ShuffleboardFootprints:SOIC127P600X170-8NU2
1~ShuffleboardFootprints:Potentiometer_Bourns_PTA6043_Single_SlideRV1
1~ShuffleboardFootprints:SOT95P260X110-3NQ1
1~Footprint:adafruit_st7735rU7

Questions

How big is the Shuffleboard PCB?

It measures 130 × 131.3 mm and has 4 copper layers, 1.6 mm thick.

What parts does the Shuffleboard use?

72 parts, built around the 74HC595N. 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 Shuffleboard KiCad files?

From the rbala25/shuffleboard repository on GitHub, at the commit this page was made from: the board is Hardware/Shuffleboard/Shuffleboard.kicad_pcb and its schematic Hardware/Shuffleboard/8fig.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Shuffleboard design in my own project?

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

Similar boards

  • 4 layers130 × 131.3 mmShuffleboard, the printed circuit board in 3D

    Shuffleboard

    anhvuknguyen/Shuffleboard

    Intro to Embedded Systems Final Project

    72 parts
  • 2 layers120 × 80 mmClock i2c l0, the printed circuit board in 3D

    Clock i2c l0

    ekibanu4/STM_32_Clock

    test project for binary clock based in stm32 f4070disk

    77 parts
  • 2 layers160 × 125 mmReflex machine, the printed circuit board in 3D

    Reflex machine

    Mhamednoui/PCB_Designer

    AI-assisted KiCad PCB design pipeline: netlist -> schematic -> routed board -> fab files, with a 3D/simulation webview

    125 parts
  • 2 layers218 × 218 mmChessBoard, the printed circuit board in 3D

    ChessBoard

    Odissus/ChessBoard

    Interactive chess board design based on Arduino and ESP32

    143 parts
  • 2 layers78.4 × 64.8 mmPowerNode2, the printed circuit board in 3D

    PowerNode2

    utahrobotics/Electrical-2019-2020

    67 partsMIT
  • 2 layers69.9 × 41.3 mmHeaterMeterLCD, the printed circuit board in 3D

    HeaterMeterLCD

    CapnBry/HeaterMeter

    HeaterMeter and LinkMeter Arduino BBQ Controller

    21 parts557MIT
  • 2 layers108 × 88 mmControl board, the printed circuit board in 3D

    Control board

    m0xpd/STRACHEY

    A Random Looping Sequencer for Eurorack

    99 parts25CC-BY-SA-4.0
  • 2 layers87 × 96 mmBraids through hole V1.1 CONTROL, the printed circuit board in 3D

    Braids through hole V1.1 CONTROL

    sebastianbeyer/KOSMO_braids

    This is a KOSMO (Look Mum No Computer) version of the Mutable instruments braids, based on the through-hole version done by sound-force.nl.

    56 parts15