Arcade 2040
tebl·C64-JoyKEY·Arcade 2040/Arcade 2040.kicad_pcb
About the Arcade 2040 PCB
Arcade 2040 is an open source RP2040/RP2350 PCB design by tebl, published on GitHub under the CERN-OHL-1.2 license. It is a 2-layer board measuring 81.9 × 52.7 mm, with 27 components from 25 distinct parts.
Its main chip is the Pico, from the RP2040/RP2350 family. By type, the board carries 20 connectors, 3 modules, 2 diodes, 1 IC and 1 resistor.
It belongs with the retro computing, keyboards and test & measurement designs in this gallery.
From the project
WASD-style joystick for vintage computers. With an added Arduino Pro Micro you can use it as a USB-keyboard, so if you wanted a DIY streamdeck or Macro-keyboard - then the C64 JoyKEY can do that as well.
With options to handle multiple types of systems comes complexity, you'll have to make a few decisions on what you want out of the C64 JoyKEY. Do I only want to use it as a joystick replacement on vintage systems, ideally with 2-3 fire buttons where supported? If so, then you won't need the Arduino Pro Micro.
Want to use it on a modern system as a WASD-style keyboard or a gamepad, then install it - a common use of these types of devices is as a macro-keyboard or a stream-deck. Note that compared to many similar solutions, the microcontroller is not required for use with any of the vintage…

Main components on the Arcade 2040
Arcade 2040 bill of materials (BOM)
27 components, 25 distinct parts — part numbers from the project's BOM.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | Pico | RPi_Pico_SMD_TH_Clean | U1 |
| 3 | Mounting | M3_pin | M1, M3, M4 |
| 1 | Jack-DC | BARREL_JACK | J1 |
| 1 | Expansion | JST_XH_B4B-XH-A_1x04_P2.50mm_Vertical | J2 |
| 1 | RGB | JST_XH_B4B-XH-A_1x04_P2.50mm_Vertical | J3 |
| 1 | TURBO_EN | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J4 |
| 1 | DIR_RIGHT | JST_XH_B5B-XH-A_1x05_P2.50mm_Vertical | J5 |
| 1 | DIR_LEFT | JST_XH_B5B-XH-A_1x05_P2.50mm_Vertical | J6 |
| 1 | B1 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J7 |
| 1 | B2 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J8 |
| 1 | B3 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J9 |
| 1 | B4 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J10 |
| 1 | L1 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J11 |
| 1 | L2 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J12 |
| 1 | L3 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J13 |
| 1 | R1 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J14 |
| 1 | R2 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J15 |
| 1 | R3 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J16 |
| 1 | A1 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J17 |
| 1 | A2 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J18 |
Show 5 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | S1 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J19 |
| 1 | S2 | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | J20 |
| 1 | 1N5819 | D_DO-41_SOD81_P10.16mm_Horizontal | D2 |
| 1 | TURBO_LED | JST_XH_B2B-XH-A_1x02_P2.50mm_Vertical | D3 |
| 1 | 470 | R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_Horizontal | R2 |
Arcade 2040 design files
The KiCad project lives in the tebl/C64-JoyKEY repository on GitHub; these links point at the commit this page was built from.
Arcade 2040: common questions
What microcontroller does the Arcade 2040 use?
The Arcade 2040 is built around the Pico, from the RP2040/RP2350 family.
How big is the Arcade 2040 PCB?
The Arcade 2040 measures 81.9 × 52.7 mm, has 2 copper layers and is 1.6 mm thick.
How many components are on the Arcade 2040?
27 components, from 25 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.
Where can I download the Arcade 2040 design files?
From the tebl/C64-JoyKEY repository on GitHub, which has the KiCad layout, the schematic and the BOM; the links under Design files point to each one.
Can I use the Arcade 2040 design in my own project?
Yes, under the terms of its CERN-OHL-1.2 license, which tebl chose for the repository.
Can I test firmware for the Arcade 2040 without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug RP2040/RP2350 firmware against it before you order a PCB.
More boards in C64-JoyKEY
RP2040/RP2350
C64 Joykey 2040
tebl
99.7 × 74.9 mm64 parts2LCERN-OHL-1.227AVR/Arduino
C64 Joykey
tebl
99.7 × 74.9 mm61 parts2LCERN-OHL-1.227AVR/Arduino
C64 Arcade
tebl
99.7 × 55.2 mm49 parts2LCERN-OHL-1.227Amiga CD32
tebl
58.4 × 38.1 mm29 parts2LCERN-OHL-1.227NEC PC Engine
tebl
58.4 × 38.1 mm25 parts2LCERN-OHL-1.227Gameport
tebl
58.4 × 43.8 mm22 parts2LCERN-OHL-1.227RP2040/RP2350
Adapter 9 from 2040
tebl
70.7 × 46.7 mm16 parts2LCERN-OHL-1.227C64 SkeletonKey
tebl
10.4 × 55.3 mm5 parts2LCERN-OHL-1.227Adapter 9 FaceplateB
tebl
70.7 × 46.7 mm4 parts2LCERN-OHL-1.227C64 Joykey Faceplate X1
tebl
99.7 × 74.9 mm4 parts2LCERN-OHL-1.227C64 Joykey Faceplate A1
tebl
99.7 × 74.9 mm4 parts2LCERN-OHL-1.227
Similar boards
RP2040/RP2350
Open Book Abridged Edition
joeycastillo
85 × 115 mm29 parts2LCC-BY-SA-4.08.1kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
Corne
foostan
277.2 × 107.5 mm164 parts2LCC-BY-4.07.7kRP2040/RP2350
Jitx design
gusmanb
55.5 × 65 mm26 parts4LGPL-3.05.0kRP2040/RP2350
LogicAnalyzer
gusmanb
57 × 55.2 mm6 parts2LGPL-3.05.0kRP2040/RP2350
Main
google
98 × 71 mm102 parts2LApache-2.02.9k