Skip to the content
PCBKitNew board
2 layers76 × 60 mmController, the printed circuit board in 3D

This PCB is a rather simple PCB, where the premade modules are soldered on top of it. There are no components that need to be preassembled. All the components are big enough to be soldered by hand.

Size
76 × 60 mm
Copper layers
2
Thickness
1.6 mm
Parts
12
Nets
40
Pads
75
Tracks, vias
182, 1
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
19 Jun 2026
Updated
23 Jun 2026

Overview

Controller is an open-source printed circuit board by Gnoled5660, from the Gnoled5660/Musicgame-Controller repository on GitHub. It is a 2-layer board of 76 × 60 mm with 12 parts on 40 nets, routed with 182 tracks and 1 via.

It belongs with the RP2040 boards of this library.

README

README.md

Musicgame-Controller

Controller_with_Case_2026-Jun-20_02-33-02PM-000_CustomizedView34039528250_png

Description

This is an arcade like controller, designed for the Musicgame by bakedcloudz (GitHub Repo: https://github.com/wuelaineyuan-bit/MUSICGAME). It has four interactive buttons and one joystick. Next to these features, it also has a speaker on the side and a tft display. While the controller is inactive or is not being used, it will play a retro arcade like music in the background. All this is powered by a Raspberry Pi Pico 2.

Motivation

The reason we designed this was because bakedcloudz project lacked of an interactive controller for her arcade game. Therefore, we wanted to design another controller for that project. This project is a sub project of the main project MUSICGAME (GitHub Repo: https://github.com/wuelaineyuan-bit/MUSICGAME).

PCB and Schematic

The PCB and schematic was made with KiCAD. Schematic is rather simple: Connect the pins to the buttons and joysticks. As almost every Pico 2 pin is a GPIO pin, almost every pin could be used to connect to the amplifier and tft module.

Bildschirmfoto 2026-06-20 um 15 15 44

This PCB is a rather simple PCB, where the premade modules are soldered on top of it. There are no components that need to be preassembled. All the components are big enough to be soldered by hand.

Bildschirmfoto 2026-06-20 um 15 12 18

This PCB is a two layer PCB, where the red tracks function as signal tracks and the blue tracks as power supply tracks.

Bildschirmfoto 2026-06-20 um 15 14 18

Firmware

The firmware was written in micropython. Most of libraries are standard libraries provided by micropico. However, we had to download an external library for the tft display. The program begins with playing a retro music until one button is clicked. Then, it stops playing the music in a loop and starts listening to the actions that the user might take. Once a button or the joystick is pressed, it sends a message to the computer with the print() function. The other projects code has to read the lines with serial.readline() to decide which actions to make next.

Assembling

There are a few components that need to be screwed on to the board. These components include the PCB, the joystick and the display. Because of that, we designed some holes, where heat threaded inserts can be placed. All components use M3 screws besides the joystick. The joystick requires M5 screws. The buttons can be simply pressed into the holes, which means it doesnt require any screws.

Bildschirmfoto 2026-06-20 um 15 48 46 Bildschirmfoto 2026-06-20 um 15 49 10

Many components need to be soldered on to the PCB too. It is recommended to use header pins between the Pico 2 board and the PCB. After everything is soldered, you need the connection cables to connect the PCB with the buttons and joysticks. Another cable is used to connect the amplifier with the speaker.

Bildschirmfoto 2026-06-20 um 15 53 17

Depending on whether you want to color the music notes, there two versions of this controller. As a usual 3D printer cannot print two colors at the same time, the music notes have to be painted later by hand, if they should be colored black.

Bildschirmfoto 2026-06-19 um 22 34 00 Bildschirmfoto 2026-06-19 um 22 34 19

Zine

pic1

BOM

NameDescriptionLinksQuantityCost
PCBPrinted Circuit Boardhttps://jlcpcb.com16
Speaker8Ohm 1W Speakerhttps://botland.de/analoge-lautsprecher/19458-lautsprecher-1w-8ohm-30x20x5mm-adafruit-4227-5904422354848.html?gad_source=1&gad_campaignid=23574294202&gbraid=0AAAAApBhtfdmZRY2FJGh-xArvpZV2eCLa&gclid=CjwKCAjw9NjRBhATEiwA_p2J8S86mPfKDnuq3Meckbowv6KXXqRWsGLSo_4u3SZHp3daIj2UEHCkihoC-4IQAvD_BwE13.20
MAX98357AAmplifierhttps://www.amazon.de/Verstärker-Verstärkerplatine-Elektronische-Enthusiasten-Ingenieure/dp/B0F1TRSD2N/ref=asc_df_B0F1TRSD2N?mcid=b3cc78920c783042ac17388eb574bcae&th=1&psc=1&tag=googshopde-21&linkCode=df0&hvadid=751200241164&hvpos=&hvnetw=g&hvrand=557849342057074083&hvpone=&hvptwo=&hvqmt=&hvdev=c&hvdvcmdl=&hvlocint=&hvlocphy=9192175&hvtargid=pla-2419607785174&psc=1&hvocijid=557849342057074083-B0F1TRSD2N-&hvexpln=018
Pico 2Microcontrollerhttps://www.reichelt.de/de/de/shop/produkt/raspberry_pi_pico_2_rp235x_cortex-m33_microusb-383358?PROVID=2788&gad_source=1&gad_campaignid=18342381572&gbraid=0AAAAADwnxtZySp6snfqlNQh9cQN6eEoma&gclid=CjwKCAjw9NjRBhATEiwA_p2J8Z5EgQVT_I2qJDtdCrQ07205wtKj9qcaRFiQCRmb6aA3hme78elB0xoCkwoQAvD_BwE15.14
Arcade ButtonButtonhttps://www.berrybase.de/mini-arcade-button-24mm/farbe-rot?gad_source=1&gad_campaignid=22735754544&gbraid=0AAAAADSQJK6oAGUJjXrYG5gYnJHQ5Jjam&gclid=CjwKCAjw9NjRBhATEiwA_p2J8TrWjbhcsVNdGDTCZIJtp7aCs2650nWhUSuZ5SYqhxaVa3eP51LD4BoCi0oQAvD_BwE44.13
JoystickJoystick to control directionhttps://de.aliexpress.com/item/1005006881757851.html?spm=a2g0o.tesla.0.0.5f0cIGAYIGAYAg&pdp_npi=6%40dis%21EUR%2110%2C38€%214%2C69€%21%21%21%21%21%40211b6c1717819569630011453e4670%2112000038607187018%21btfpre%21%21%21%211%210%21&pvid=210f2bc9-ea8b-413f-9403-466b57ef5987&afTraceInfo=1005006881757851__pc__c_ppc_item_bridge_pc_same_wf__r6YWpYS__1781956963362&gatewayAdapt=glo2deu112.61
5 Pin JST-XHReceptacle for Joystickhttps://www.reichelt.de/de/de/shop/produkt/jst_-_stiftleiste_gerade_1x5-polig_-_xh-185076?PROVID=2788&gad_source=1&gad_campaignid=21154722893&gbraid=0AAAAADwnxtbPyJx8nCOWbAD8uZL35tp4z&gclid=CjwKCAjw9NjRBhATEiwA_p2J8V1nQh1DAOTZbzkY9tsnYV5dJ24D084mqzUnY8sjf2c5BYI_QxigaBoCw18QAvD_BwE10.34
2 Pin JST-XHReceptacle for Buttomshttps://www.berrybase.de/ph2.0-buchse-printmontage-gerade-2-pin?gad_source=1&gad_campaignid=22735754544&gbraid=0AAAAADSQJK6oAGUJjXrYG5gYnJHQ5Jjam&gclid=CjwKCAjw9NjRBhATEiwA_p2J8Urol7tXOTt939yNAB6z-nwgtlo3U0Lzd1b4rYRmLl3-F9V2eJTBkRoC8gwQAvD_BwE40.46
2 Pin JST-XH cableCablehttps://www.berrybase.de/kabel-mit-jst-xh-2.54mm-steckverbinder-awg26-20cm/pinanzahl-2-pin?gad_source=1&gad_campaignid=22735754544&gbraid=0AAAAADSQJK6oAGUJjXrYG5gYnJHQ5Jjam&gclid=CjwKCAjw9NjRBhATEiwA_p2J8W0x6WuNUUs6bxL4TG9hyvZCpREeYp3Er9v8SU3_aX8OdhUF2LM27hoCtJoQAvD_BwE41.60
5 Pin JST-XH cableCablehttps://www.berrybase.de/kabel-mit-jst-xh-2.54mm-steckverbinder-awg26-20cm/pinanzahl-5-pin?gad_source=1&gad_campaignid=22735754544&gbraid=0AAAAADSQJK6oAGUJjXrYG5gYnJHQ5Jjam&gclid=CjwKCAjw9NjRBhATEiwA_p2J8ed_m7wkuAmCj3BJHQQX81vanObY6mg6JzyN2FSQFX1OP-F2Mh5QaRoCbrMQAvD_BwE10.57
Header Pin2.54mm Header Pinhttps://www.digikey.de/de/products/detail/amphenol-icc-fci-/10129378-920003BLF/7915971?gclsrc=aw.ds&gad_source=1&gad_campaignid=20475954717&gbraid=0AAAAADrbLliANvk-4k_iHnkN0w1_Owx2g&gclid=CjwKCAjw9NjRBhATEiwA_p2J8enJV0joqofnp_be1iUuoErMy9oAMu6LXCxdTL6W0V9_86SqaJBf5RoC0BYQAvD_BwE10.52
Heated threaded insertsM3x4mmx5mmhttps://www.berrybase.de/bossard-bn1052-gewindeeinsatz-messing-m3-laenge-5-8mm?gad_source=1&gad_campaignid=22735754544&gbraid=0AAAAADSQJK6oAGUJjXrYG5gYnJHQ5Jjam&gclid=CjwKCAjw9NjRBhATEiwA_p2J8fmtN9uvJFi6raxtH1SBm7bqzLmf6tLV8yUB9gSUcvRfArNPB06mJhoCuyUQAvD_BwE82.58
Heated threaded insertsM5x9mmx5mmhttps://www.berrybase.de/bossard-bn1052-gewindeeinsatz-messing-m5-laenge-9-5mm?gad_source=1&gad_campaignid=22735754544&gbraid=0AAAAADSQJK6oAGUJjXrYG5gYnJHQ5Jjam&gclid=CjwKCAjw9NjRBhATEiwA_p2J8eEpl-ngpjr0zGPOqsMol5EgsN96HSMkL-J5gVBillc_oGD0vaZc2xoCkN8QAvD_BwE41.28
M3screwshttps://www.berrybase.de/makerbeam-linsenkopfschrauben-fuer-15x15-makerbeamxl-openbeam-m3x6mm-innensechskant-100-stueck?gad_source=1&gad_campaignid=22735754544&gbraid=0AAAAADSQJK6oAGUJjXrYG5gYnJHQ5Jjam&gclid=CjwKCAjw9NjRBhATEiwA_p2J8c6O3telypadqSWUnIosaG3yVkbjvgmMxDbh4MoW5Eh82wFQ_xoHuBoCRpoQAvD_BwE86
M5screwshttps://www.thomann.de/de/km_m5_rack_screw_pack.htm?gad_source=1&gad_campaignid=1576042954&gbraid=0AAAAADuDMCXMyqF9VJSCZggPhx_6MjWGL&gclid=CjwKCAjw9NjRBhATEiwA_p2J8ayVorCc0uU63e3y15L2IY4ynFoCtjSuOSQzXwZ0U_juIpEPnycZ4hoCz3QQAvD_BwE44
FilamentWhole Case18.93
total63.19

Parts

12
QtyValueFootprintReferences
4Conn_01x02_SocketConnector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_VerticalButton1, Button2, Button3, Button4
1Conn_01x05_SocketConnector_JST:JST_XH_B5B-XH-A_1x05_P2.50mm_VerticalJoystick1
1Conn_01x09_SocketConnector_PinHeader_2.54mm:PinHeader_1x09_P2.54mm_VerticalDisplay1
1RASPBERRY_PI_PICORASPBERRY_PI_PICO:RASPBERRY_PI_PICOU1
1adafruit-MAX98357adafruit-MAX98357:adafruit-MAX98357U2

The 8 most common of 12 parts.

Questions

How big is the Controller PCB?

It measures 76 × 60 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Controller use?

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.

Where can I download the Controller KiCad files?

From the Gnoled5660/Musicgame-Controller repository on GitHub, at the commit this page was made from: the board is Schematic and PCB/Controller.kicad_pcb and its schematic Schematic and PCB/Controller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Controller design in my own project?

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

Similar boards

  • 2 layersNrf bga, the printed circuit board in 3D

    Nrf bga

    github-linguist/linguist

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

    12 parts14kMIT
  • 2 layers66.9 × 74.5 mmDeskHop, the printed circuit board in 3D

    DeskHop

    hrvach/deskhop

    Fast Desktop Switching Device

    12 parts7.9kGPL-3.0
  • 2 layers40 × 15 mmSensors, the printed circuit board in 3D

    Sensors

    google/mozc-devices

    Circuit diagrams and firmware source code for Gboard DIY keyboards

    12 parts3kApache-2.0
  • 2 layers42.7 × 56.5 mmTle6240 driver, the printed circuit board in 3D

    Tle6240 driver

    rusefi/rusefi

    rusefi - GPL internal combustion engine control unit

    12 parts1.2k
  • 2 layers49 × 25 mm5v boost regulator, the printed circuit board in 3D

    5v boost regulator

    hackclub/OnBoard

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

    12 parts915
  • 2 layers28.3 × 10.3 mmTap Photosensor PCB, the printed circuit board in 3D

    Tap Photosensor PCB

    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:

    12 parts716GPL-3.0
  • 2 layers25.4 × 70.4 mmTpmsniffer, the printed circuit board in 3D

    Tpmsniffer

    stacksmashing/pico-tpmsniffer

    A simple, very experimental TPM sniffer for LPC bus

    12 parts696