

C128SX mx
Replacement and enhanced keyboards for Commodore machines
- Size
- 404.4 × 137.6 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 137
- Nets
- 59
- Pads
- 971
- Tracks, vias
- 2,538, 255
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 22 Dec 2020
- Updated
- 6 Dec 2025
Overview
C128SX mx is an open-source printed circuit board by sjgray, from the sjgray/CBM-MX-Keyboards repository on GitHub. It is a 2-layer board of 404.4 × 137.6 mm with 137 parts on 59 nets, routed with 2,538 tracks and 255 vias.
It is built around the ATTINY214-SSN and CD4066BM. Its parts include 74 switches, 6 capacitors, 4 connectors, 3 ICs and 3 diodes. It belongs with the AVR (ATmega, ATtiny) boards of this library.
Main components
2ATTINY214-SSN
SOIC-14-40℃~+105℃ 1.8V~5.5V 10bit 12 20MHz 2KB 64Byte 8 Bit 8bit AVR Built-in FLASH SOIC-14 Microcontrollers (MCU/MPU/SOC) ROHSMicrochip TechnologyMicrocontrollers (MCU/MPU/SOC)CD4066BM
SOIC-14-55℃~+125℃ 125Ω 15ns 1:1 3V~18V 40MHz Bidirectional analog channel SOIC-14 Analog Switches, Multiplexers ROHSTexas InstrumentsAnalog Switches, Multiplexers
Parts
137| Qty | Value | Footprint | References |
|---|---|---|---|
| 3 | 220pf | Capacitor_THT:C_Disc_D4.7mm_W2.5mm_P5.00mm | C1, C2, C3 |
| 3 | C | Capacitor_THT:C_Disc_D5.0mm_W2.5mm_P5.00mm | C5, C6, C7 |
| 2 | "F1" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW1, SW70 |
| 2 | "F3" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW2, SW71 |
| 2 | "F5" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW3, SW72 |
| 2 | "F7" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW4, SW73 |
| 2 | 510 | Resistor_THT:R_Axial_DIN0204_L3.6mm_D1.6mm_P7.62mm_Horizontal | R1, R2 |
| 2 | C128-Header | Connector_PinHeader_2.54mm:PinHeader_1x25_P2.54mm_Vertical | J1, J12 |
| 2 | CD4066BM | Package_SO:SO-14_3.9x8.65mm_P1.27mm | U1, U2 |
| 2 | Conn_01x13 | Connector_PinHeader_2.54mm:PinHeader_1x13_P2.54mm_Vertical | J3, J7 |
| 2 | LED | LED_THT:LED_D3.0mm | D1, D2 |
| 2 | R_Network04 | Resistor_THT:R_Array_SIP5 | RN1, RN2 |
| 1 | "*" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW33 |
| 1 | "+" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW16 |
| 1 | "," | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW60 |
| 1 | "-" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW17 |
| 1 | "." | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW61 |
| 1 | "/" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW62 |
| 1 | "0" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW15 |
| 1 | "1" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW6 |
| 1 | "2" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW7 |
| 1 | "3" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW8 |
| 1 | "4" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW9 |
| 1 | "5" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW10 |
| 1 | "6" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW11 |
| 1 | "7" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW12 |
| 1 | "8" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW13 |
| 1 | "9" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW14 |
| 1 | ":" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW47 |
| 1 | ";" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW48 |
| 1 | "=" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW49 |
| 1 | "@" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW32 |
| 1 | "A" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW38 |
| 1 | "B" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW57 |
| 1 | "BACK-ARROW" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW5 |
| 1 | "C" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW55 |
| 1 | "C=" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW51 |
| 1 | "CTRL" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.50u_PCB | SW21 |
| 1 | "D" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW40 |
| 1 | "DEL" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW20 |
| 1 | "DOWN" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW68 |
| 1 | "E" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW24 |
| 1 | "F" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW41 |
| 1 | "G" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW42 |
| 1 | "H" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW43 |
| 1 | "HOME" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW19 |
| 1 | "I" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW29 |
| 1 | "J" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW44 |
| 1 | "K" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW45 |
| 1 | "L" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW46 |
| 1 | "LEFT SHIFT" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.50u_PCB | SW52 |
| 1 | "LEFT" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW67 |
| 1 | "LFT/RGT" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW65 |
| 1 | "M" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW59 |
| 1 | "N" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW58 |
| 1 | "O" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW30 |
| 1 | "P" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW31 |
| 1 | "POUND" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW18 |
| 1 | "Q" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW22 |
| 1 | "R" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW25 |
| 1 | "RESTORE" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.50u_PCB | SW35 |
| 1 | "RETURN" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_2.00u_PCB | SW50 |
| 1 | "RIGHT" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW69 |
| 1 | "S" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW39 |
| 1 | "SHIFT LOCK" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW37 |
| 1 | "SPACE" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_6.0u_Stabs_PCB | SW66 |
| 1 | "STOP" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW36 |
| 1 | "T" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW26 |
| 1 | "U" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW28 |
| 1 | "UP-ARROW" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW34 |
| 1 | "UP/DN" CONFIG | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW64 |
| 1 | "V" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW56 |
| 1 | "W" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW23 |
| 1 | "X" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW54 |
| 1 | "Y" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW27 |
| 1 | "Z" | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW53 |
| 1 | 4080-LED | LED_THT:LED_D3.0mm | D5 |
| 1 | ATtiny214-SS | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U3 |
| 1 | C128 F5+ | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW76 |
| 1 | C128 40/80 | MX_Hybrid_Library-SJG:SW_Hybrid_CherryMX_GateronLP_1.00u_PCB | SW100 |
The 94 most common of 137 parts.
More from sjgray/CBM-MX-Keyboards
6- 2 layers399.1 × 140.3 mm

- 2 layers380.5 × 157.9 mm

- 2 layers386.1 × 100 mm

- 2 layers386.1 × 99.6 mm

- 2 layers386.1 × 127 mm

- 2 layers29 × 21.8 mm

Similar boards
- 2 layers49 × 35 mm

Boost sequencer
danupp/boost_sequencer
Universal sequencer for radio applications with 12 to 28V boost regulator for coaxial relays
56 parts1 - 2 layers161.6 × 95.2 mm

Ersaswitch
hb020/ersaswitch
Make a Ersa i-con 1V soldering station work with 2 tools, without re-plugging
80 parts1 - 2 layers77.6 × 44.2 mm

- 4 layers236.8 × 240.9 mm

DIY Video
jimbro1000/DIY-Video
General purpose video system for 8-bit computers using 74LS logic
315 parts1 - 2 layers99.7 × 99.7 mm

Pikvm atxboard switch
L0czek/pikvm-atxboard-switch
The need for this hardware arose when I bought a PIKVM v4 mini and wanted to control 2 PCs. I really wanted to be able to forward the POWER, RESET buttons and LEDs to the chosen computer for easy control of the target.
66 parts - 2 layers322.5 × 148.8 mm

MXKeys
velvia-fifty/AudioThings
DIY audio-related projects of questionable quality and dubious utility; delivered in 30 minutes or less or the next one is free
179 parts1 - 2 layers52.8 × 69 mm

MuntsorteerderESP
TiebeDeclercq/Munt-sorteer--en-opslagsysteem
A coin-counting, storing, and dispensing system. View the blog »
53 parts - 2 layers134.7 × 120.8 mm

Questions
How big is the C128SX mx PCB?
It measures 404.4 × 137.6 mm and has 2 copper layers, 1.6 mm thick.
What parts does the C128SX mx use?
137 parts, built around the ATTINY214-SSN and CD4066BM. 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 C128SX mx KiCad files?
From the sjgray/CBM-MX-Keyboards repository on GitHub, at the commit this page was made from: the board is C128SX/CSX-V1-R1/C128SX-mx.kicad_pcb and its schematic C128SX/CSX-V1-R1/C128SX-mx.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the C128SX mx design in my own project?
Its repository states no licence, so its author keeps all rights: ask sjgray before reusing the design.