
Nrf bga
github-linguist/linguist
Language Savant. If your repository's language is being reported incorrectly, send us a pull request!

A small macropad to get comfortable with 3d design, cad, printing, and pcb design
Spotify pad is an open-source printed circuit board by brady-27, from the brady-27/Macropad repository on GitHub. It is a 2-layer board of 80 × 92 mm with 12 parts on 15 nets, routed with 63 tracks and 15 vias.
Its parts include 3 switches, 1 capacitor, 1 resistor, 1 IC and 1 connector. It belongs with the keyboards and input boards and the RP2040 boards of this library.
A media macropad: 3 hotswap MX keys (⏮ ⏯ ⏭), an EC11 rotary encoder for volume (push = mute), and a 1.54" ST7789 240×240 color display showing the current song, artist, and album cover. Brain: Seeed Studio XIAO RP2040 (USB-C).
Board: 80 × 92 mm, 2 layers. Passes KiCad DRC with 0 errors, all nets routed, ground pours on both sides. Schematic and PCB netlists verified identical.
spotify-pad.kicad_pro / .kicad_sch / .kicad_pcb — full KiCad 7 project
(opens fine in KiCad 8/9 too, they read v7 files)footprints/SpotifyPad.pretty/ — project-local footprints (self-contained,
including the XIAO RP2040 DIP footprint and the Kailh hotswap socket)gerbers/ — ready-to-order gerbers + Excellon drill files (zip the folder
and upload to JLCPCB / PCBWay as-is)BOM.csv — parts list (~$15 in parts + switches/caps)firmware/ — CircuitPython boot.py + code.py for the XIAOhost/spotify_display.py — desktop script that feeds song info + cover art
to the display via USB serial (Spotify Web API)The three keys and the encoder send standard USB media keys — they work immediately with Spotify, YouTube, anything, on any OS, no software needed.
The display can't pull album art on its own (the XIAO has no WiFi), so the
little spotify_display.py script runs on your computer, polls the Spotify
API, and streams the title/artist/cover over the same USB cable.
| XIAO pin | Signal | Goes to |
|---|---|---|
| D0 | SW_BACK | Key 1 (⏮) |
| D1 | SW_PLAY | Key 2 (⏯) |
| D2 | SW_NEXT | Key 3 (⏭) |
| D3 | ENC_SW | Encoder push |
| D4 | ENC_A | Encoder channel (east pad) |
| D5 | ENC_B | Encoder channel (west pad) |
| D6 | LCD_RST | Display RES |
| D7 | LCD_CS | Display CS |
| D8 (SCK) | LCD_SCK | Display SCL |
| D9 | LCD_DC | Display DC |
| D10 (MOSI) | LCD_MOSI | Display SDA |
| 3V3 | +3V3 | Display VCC, R1→BLK, C1 |
All switches go to ground; firmware uses internal pull-ups. R1 (0Ω) ties the display backlight to 3V3 permanently — leave it off and bodge BLK to a spare pin if you ever want PWM dimming.
firmware/boot.py and firmware/code.py to the CIRCUITPY driveadafruit_hid, adafruit_st7789, adafruit_display_text from the
Adafruit CircuitPython bundle into CIRCUITPY/lib/pip install spotipy pyserial pillow requests,
create a (free) Spotify developer app, export the credentials, run
python host/spotify_display.pyUpload a zip of gerbers/ to JLCPCB: 2 layers, 1.6mm, any color (it's a
Spotify pad — green solder mask, obviously). Default options are fine.
| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | M3 | SpotifyPad:MountingHole_3.2mm_M3 | H1, H2, H3, H4 |
| 3 | MX_HOTSWAP | SpotifyPad:SW_Hotswap_Kailh_MX | SW1, SW2, SW3 |
| 1 | 0R | SpotifyPad:R_0805_2012Metric | R1 |
| 1 | 10uF | SpotifyPad:C_0805_2012Metric | C1 |
| 1 | EC11 | SpotifyPad:RotaryEncoder_Alps_EC11E-Switch_Vertical_H20mm | RE1 |
| 1 | LCD_1.54in_ST7789 | SpotifyPad:PinSocket_1x08_P2.54mm_Vertical | J1 |
| 1 | XIAO-RP2040 | SpotifyPad:XIAO-RP2040-DIP | U1 |
It measures 80 × 92 mm and has 2 copper layers, 1.6 mm thick.
12 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.
From the brady-27/Macropad repository on GitHub, at the commit this page was made from: the board is PCB/spotify-pad.kicad_pcb and its schematic PCB/spotify-pad.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask brady-27 before reusing the design.

github-linguist/linguist
Language Savant. If your repository's language is being reported incorrectly, send us a pull request!


google/mozc-devices
Circuit diagrams and firmware source code for Gboard DIY keyboards



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

VoronDesign/Voron-Tap
Tap is a nozzle-based z-probe for the V2 and Trident printer designs. The entire toolhead moves to trigger an optical switch. Tap offers many advantages:

stacksmashing/pico-tpmsniffer
A simple, very experimental TPM sniffer for LPC bus