

SpectrumKeyboard
ZX Spectrum keyboard implementation with composite keys using Cherry keys.
- Size
- 273.1 × 153.2 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 157
- Nets
- 81
- Pads
- 612
- Tracks, vias
- 1,459, 229
- Pours
- 1
- Routed
- Yes
- KiCad
- KiCad 6 (file 20211014)
- Created
- 18 Nov 2024
- Updated
- 31 Jan 2026
Overview
SpectrumKeyboard is an open-source printed circuit board by spodula, from the spodula/SpectrumKeyboard repository on GitHub. It is a 2-layer board of 273.1 × 153.2 mm with 157 parts on 81 nets, routed with 1,459 tracks and 229 vias.
It is built around the 74LS245SC, 74LS32SC and L7805. Its parts include 60 switches, 48 diodes, 16 resistors, 8 capacitors and 7 ICs. It belongs with the keyboards and input and retro computing and games boards of this library.
Main components
374LS245SC
-0℃~+70℃ 12ns@5V,45pF 15mA 24mA 4.75V~5.25V 74LS 8 Bidirectional Output enable Schmitt trigger Tri-State - Buffers, Drivers, Receivers, Transceivers ROHSTexas InstrumentsBuffers, Drivers, Receivers, Transceivers74LS32SC
-- Logic Gates ROHSTexas InstrumentsLogic GatesL7805
TO-220ST0℃~+125℃@(Tj) 1 1.2A 20V 2V@(1A) 42uV 500uA 5V 73dB@(120Hz) Fixed Positive Short Circuit Protection TO-220ST Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSOSENVoltage Regulators - Linear, Low Drop Out (LDO) Regulators
README
README.mdzx Spectrum keyboard intended for a Harlequin project.
This implementation provides o Layout for a cherry keyswitches o Power + optional utility LEDs for hard drive and Floppy disk. (you need to provide these signals) o Digital logic/diode logic for composite keys as used on the spectrum+ keyboard o Optional header for remote cursor keys.
Notes: If you are using this on an original speccy for a keyboard with a long wire run, you will need to add buffering closer to the spectrum. This should be something like a 74LS245 connected to the 8 pin keyboard header. For Short wire runs this wont be a problem.
this will not be nessesary for a Harlequin kit which uses Transistors to buffer the signals from the CPU.
Parts
157| Qty | Value | Footprint | References |
|---|---|---|---|
| 45 | D | Diode_THT:D_DO-41_SOD81_P2.54mm_Vertical_KathodeUp | D1, D2, D10, D11, D12, D13, D14, D15, D16, D17, D18, D19, D20, D21, D22, D23 +29 |
| 13 | 1k0 | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R1, R2, R6, R7, R8, R9, R10, R11, R12, R13, R14, R15, R16 |
| 10 | MountingHole | MountingHole:MountingHole_2.7mm | H1, H2, H3, H4, H5, H6, H7, H8, H9, H10 |
| 4 | 47nF | Capacitor_THT:C_Disc_D4.3mm_W1.9mm_P5.00mm | C3, C4, C5, C6 |
| 4 | 74LS32 | Package_DIP:DIP-14_W7.62mm | U1, U2, U3, U4 |
| 3 | 330r | Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal | R3, R4, R5 |
| 2 | 10uF | Capacitor_THT:CP_Radial_D4.0mm_P1.50mm | C1, C2 |
| 2 | 47n | Capacitor_THT:C_Disc_D4.3mm_W1.9mm_P5.00mm | C7, C8 |
| 2 | 74LS245 | Package_DIP:DIP-20_W7.62mm | U6, U7 |
| 1 | " | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW17 |
| 1 | , | Button_Switch_Keyboard:SW_Cherry_MX_1.50u_PCB | SW12 |
| 1 | . | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW11 |
| 1 | 0 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW53 |
| 1 | 1 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW50 |
| 1 | 1kx5 | Resistor_THT:R_Array_SIP6 | RN1 |
| 1 | 1kx8 | Resistor_THT:R_Array_SIP9 | RN2 |
| 1 | 2 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW42 |
| 1 | 3 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW34 |
| 1 | 4 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW26 |
| 1 | 5 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW18 |
| 1 | 6 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW21 |
| 1 | 7 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW29 |
| 1 | 8 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW37 |
| 1 | 9 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW45 |
| 1 | : | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW10 |
| 1 | ; | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW13 |
| 1 | A | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW52 |
| 1 | Ancillary | Connector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_Horizontal | J3 |
| 1 | B | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW25 |
| 1 | Break | Button_Switch_Keyboard:SW_Cherry_MX_1.75u_PCB | SW7 |
| 1 | C | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW31 |
| 1 | Caps | Button_Switch_Keyboard:SW_Cherry_MX_1.75u_PCB | SW55 |
| 1 | Caps Lock | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW16 |
| 1 | Caps2 | Button_Switch_Keyboard:SW_Cherry_MX_2.00u_PCB | SW59 |
| 1 | Cursor_keys | Connector_PinSocket_2.54mm:PinSocket_1x05_P2.54mm_Horizontal | J5 |
| 1 | D | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW36 |
| 1 | Delete | Button_Switch_Keyboard:SW_Cherry_MX_1.25u_PCB | SW8 |
| 1 | Down | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW4 |
| 1 | E | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW35 |
| 1 | Edit | Button_Switch_Keyboard:SW_Cherry_MX_1.25u_PCB | SW9 |
| 1 | Ent | Button_Switch_Keyboard:SW_Cherry_MX_ISOEnter_PCB | SW56 |
| 1 | Ent2 | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW60 |
| 1 | Extend | Button_Switch_Keyboard:SW_Cherry_MX_1.25u_PCB | SW15 |
| 1 | F | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW28 |
| 1 | FDD | LED_THT:LED_D5.0mm | D40 |
| 1 | G | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW20 |
| 1 | Graph | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW14 |
| 1 | H | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW24 |
| 1 | HDD | LED_THT:LED_D5.0mm | D39 |
| 1 | I | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW38 |
| 1 | Inv_vid | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW6 |
| 1 | J | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW32 |
| 1 | K | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW40 |
| 1 | Kbd_data | Connector_PinSocket_2.54mm:PinSocket_1x05_P2.54mm_Vertical | J1 |
| 1 | L | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW48 |
| 1 | L7805 | Package_TO_SOT_THT:TO-220F-3_Horizontal_TabDown | U5 |
| 1 | Left | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW1 |
| 1 | M | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW41 |
| 1 | N | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW33 |
| 1 | O | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW46 |
| 1 | P | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW54 |
| 1 | PWR | LED_THT:LED_D5.0mm | D38 |
| 1 | Power | Connector_BarrelJack:BarrelJack_CUI_PJ-063AH_Horizontal | J6 |
| 1 | Pwr_out | Connector_PinSocket_2.00mm:PinSocket_1x02_P2.00mm_Horizontal | J4 |
| 1 | Q | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW51 |
| 1 | R | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW27 |
| 1 | Right | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW2 |
| 1 | S | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW44 |
| 1 | Spc | Button_Switch_Keyboard:SW_Cherry_MX_6.25u_PCB | SW57 |
| 1 | Sym | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW49 |
| 1 | Sym2 | Button_Switch_Keyboard:SW_Cherry_MX_2.00u_PCB | SW58 |
| 1 | T | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW19 |
| 1 | True_Vid | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW5 |
| 1 | U | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW30 |
| 1 | Up | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW3 |
| 1 | V | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW23 |
| 1 | W | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW43 |
| 1 | X | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW39 |
| 1 | Y | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW22 |
| 1 | Z | Button_Switch_Keyboard:SW_Cherry_MX_1.00u_PCB | SW47 |
The 156 most common of 157 parts.
Questions
How big is the SpectrumKeyboard PCB?
It measures 273.1 × 153.2 mm and has 2 copper layers, 1.6 mm thick.
What parts does the SpectrumKeyboard use?
157 parts, built around the 74LS245SC, 74LS32SC and L7805. 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 SpectrumKeyboard KiCad files?
From the spodula/SpectrumKeyboard repository on GitHub, at the commit this page was made from: the board is kb.kicad_pcb and its schematic kb.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the SpectrumKeyboard design in my own project?
Its repository states no licence, so its author keeps all rights: ask spodula before reusing the design.
Similar boards
- 2 layers111.8 × 121.9 mm

- 2 layers99.7 × 149.9 mm

- 4 layers103.7 × 78.5 mm

SnarkBarker
computerguy096/snark-barker-mini
A miniaturized version of the Snark Barker
180 partsCC-BY-SA-4.0 - 2 layers231.1 × 106.7 mm

- 2 layers125 × 98 mm

3-in-1
mudmin/AnotherMaker
This is where I will store code snippets for AnotherMaker Videos
44 parts258 - 2 layers370.8 × 298.5 mm

8 Bit Computer
The-Invent0r/8-bit-Computer-PCB
These are the KiCAD files for my 8-Bit Computer.
323 parts142 - 2 layers89.5 × 77.5 mm

Apple2-IO RPi
tjboldt/Apple2-IO-RPi
Apple II expansion card using a Raspberry Pi for I/O
24 parts140MIT - 2 layers114.3 × 106.7 mm
