Skip to the content
PCBKitNew board
2 layers450 × 125 mmA1200KB, the printed circuit board in 3D

As of right now this is revision 4. I know it could be improved very, very slightly by changing the position of key groups by less than a millimetre but I think it's complete now.

Size
450 × 125 mm
Copper layers
2
Thickness
2 mm
Parts
101
Nets
34
Pads
556
Tracks, vias
927, 63
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
19 Mar 2019
Updated
6 Oct 2024

Overview

A1200KB is an open-source printed circuit board by aeberbach, from the aeberbach/A1200KB repository on GitHub. It is a 2-layer board of 450 × 125 mm with 101 parts on 34 nets, routed with 927 tracks and 63 vias.

Its parts include 79 switches and 1 connector.

README

README.md

A1200KB Mechanical keyboard for Amiga A1200

As of right now this is revision 4. I know it could be improved very, very slightly by changing the position of key groups by less than a millimetre but I think it's complete now.

This PCB design was reverse-engineered from the original keyboard in an Amiga 1200. It is designed to connect to your Amiga 1200 with no modifications to the original machine, just take out the original keyboard and store it away safely. If you want an A600 keyboard, see my other repositories.

PCB

The A1200.net case (with internal PSU and partially-completed ReAmiga board)

PCB

The original Amiga case (with CF disk system and transparent floppy cover)

Requirements

To make a working keyboard for your Amiga 1200, you need:

  • one PCB (this project)
  • 96 pieces MX-compatible PCB-mount (5-pin) keyswitch
  • one LED (caps lock)
  • one FFC connector, 32-way RA 1.25mm pitch. Molex 52044-3245 is one example, available from Mouser Electronics.
  • one FFC ribbon cable, 32-way, 1.25mm pitch. Molex 15168-0400 is one example, available from Mouser Electronics.
  • keycaps
  • some way to mount the keyboard inside the Amiga (3D print some brackets from the STL folder...)

Design

The Amiga 1200 keyboard is a simple passive key matrix connected via a 31-conductor cable. Some special keys are not on the matrix but have a dedicated circuit, such as the CTRL and Amiga keys - this is why so many conductors are necessary. The original Amiga 1200 PCB uses a 31-way FFC connector, I was not able to buy this anywhere as they are long discontinued. However cutting one conductor away from the cable allows it to fit in the Amiga connector with 31 conductors and to the keyboard with 32 conductors and everything is fine. The specified FFC cable is slightly longer than required but in 2019 there is not a lot of choice available, so the longer one will do. I had my boards made with 1.6mm PCB substrate as any other thickness gets disproportionally expensive, no other special options. Using a piece of aluminium rail, 10x3mm, will make it as stiff as a keyboard should be while maintaining enough space underneath for an accelerator or Indivision etc. This is supported either side by the 3D printed mounts. Cover the aluminium with some kapton or other insulation if you have other internal components that may come dangerously close but in a stock Amiga there is plenty of clearance.

Amiga Keycaps

These aren't widely available. I've tried making some using a blank set of keycaps from aliexpress and a laser etcher, but I do not know of anywhere that sells a MX-stem set of Amiga keycaps. I am using a 9U space bar but you can just as easily use 7U. If gaps either side of the space bother you, 3D print something to fill the space.

If you want a perfect set of keys, visit pimpmykeyboard.com - it will not be cheap but if you look hard enough you will find every key, even the Amiga keys, and you can have any legend printed on any size keycap so it is possible to make a perfect set. It will not be cheap. You can se a partial sample in the A1200.net picture. I am currently waiting for the extra numpad keys to arrive to complete this keyboard.

Construction

Without going into all the detail here - as there is lots of detail on www.grayunicorn.com - I rate this a mid-level project. There is no power, no delicate soldering, and nothing can really be inserted the wrong way. Mounting the keyboard requires 3D printing the files you will find in the 3Dfiles folder.

If you have a replacement case produced by A1200.net then pick that folder, else the other folder. I don't know about cases made by ESCOM but I don't think they are at all different from the Commodore cases. I printed these in PETG, 0.4mm nozzle, 0.2mm layer height, supports are necessary. Mounting the keyboard with these designs allows the use of an accelerator card with a thick SIMM; I may design alternates if I get a slimmer accelerator, bringing the keys further back into the case but there is not much room.

You can damage your Amiga if you don't know what you are doing. Please be careful and if you are not experienced in projects like this get some help, maybe vist your local makerspace, and don't hurt yourself or your computer.

Share

Most of all - if you have any suggestions for improvements, adding an issue or a pull request to this repo would be much appreciated. And share your project with the Amiga community, I'd really like to see what you made.

Donate?

I hate to think what this has cost so far. It's been fun and I'd do it again, but if you'd like to help the next project happen that would be awesome.

paypal

Note this this project is licensed under CC BY-NC-SA 4.0 - only noncommercial use is permitted! (By all means sell the excess PCBs you get, at cost, if you order some for your own use)

Parts

101
QtyValueFootprintReferences
1"MX_Alps_Hybrid:MXOnly-1U-NoLEDK63
10MX_Alps_Hybrid:MXOnly-1U-NoLEDK22
11MX_Alps_Hybrid:MXOnly-1U-NoLEDK13
12MX_Alps_Hybrid:MXOnly-1U-NoLEDK14
13MX_Alps_Hybrid:MXOnly-1U-NoLEDK15
14MX_Alps_Hybrid:MXOnly-1U-NoLEDK16
15MX_Alps_Hybrid:MXOnly-1U-NoLEDK17
16MX_Alps_Hybrid:MXOnly-1U-NoLEDK18
17MX_Alps_Hybrid:MXOnly-1U-NoLEDK19
18MX_Alps_Hybrid:MXOnly-1U-NoLEDK20
19MX_Alps_Hybrid:MXOnly-1U-NoLEDK21
1AMX_Alps_Hybrid:MXOnly-1U-NoLEDK53
1BMX_Alps_Hybrid:MXOnly-1U-NoLEDK76
1BSMX_Alps_Hybrid:MXOnly-1U-NoLEDK26
1CMX_Alps_Hybrid:MXOnly-1U-NoLEDK74
1CAPSLOCKMX_Alps_Hybrid:MXOnly-1UK52
1COLONMX_Alps_Hybrid:MXOnly-1U-NoLEDK62
1CTRLMX_Alps_Hybrid:MXOnly-1.25U-NoLEDK51
1Conn_01x32_FemaleConnector_FFC-FPC:FFC-1.25mm-RA-5204403245J1
1DMX_Alps_Hybrid:MXOnly-1U-NoLEDK55
1DELMX_Alps_Hybrid:MXOnly-1.5U-NoLEDK27
1DOWNMX_Alps_Hybrid:MXOnly-1U-NoLEDK84
1EMX_Alps_Hybrid:MXOnly-1U-NoLEDK36
1ESCMX_Alps_Hybrid:MXOnly-1U-NoLEDK1
1FMX_Alps_Hybrid:MXOnly-1U-NoLEDK56
1F1MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK2
1F10MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK11
1F2MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK3
1F3MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK4
1F4MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK5
1F5MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK6
1F6MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK7
1F7MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK8
1F8MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK9
1F9MX_Alps_Hybrid:MXOnly-1.25U-NoLEDK10
1GMX_Alps_Hybrid:MXOnly-1U-NoLEDK57
1HMX_Alps_Hybrid:MXOnly-1U-NoLEDK58
1HELPMX_Alps_Hybrid:MXOnly-1.5U-NoLEDK28
1IMX_Alps_Hybrid:MXOnly-1U-NoLEDK41
1JMX_Alps_Hybrid:MXOnly-1U-NoLEDK59
1KMX_Alps_Hybrid:MXOnly-1U-NoLEDK60
1LMX_Alps_Hybrid:MXOnly-1U-NoLEDK61
1L.ALTMX_Alps_Hybrid:MXOnly-1.25U-NoLEDK90
1L.AMIGAMX_Alps_Hybrid:MXOnly-1.25U-NoLEDK91
1L.BLANKMX_Alps_Hybrid:MXOnly-1U-NoLEDK71
1L.CROCMX_Alps_Hybrid:MXOnly-1U-NoLEDK80
1L.CURLYMX_Alps_Hybrid:MXOnly-1U-NoLEDK44
1L.SHIFTMX_Alps_Hybrid:MXOnly-1.75U-NoLEDK70
1LEFTMX_Alps_Hybrid:MXOnly-1U-NoLEDK83
1MMX_Alps_Hybrid:MXOnly-1U-NoLEDK78
1MINUSMX_Alps_Hybrid:MXOnly-1U-NoLEDK23
1NMX_Alps_Hybrid:MXOnly-1U-NoLEDK77
1NUM_(MX_Alps_Hybrid:MXOnly-1U-NoLEDK29
1NUM_)MX_Alps_Hybrid:MXOnly-1U-NoLEDK30
1NUM_0MX_Alps_Hybrid:MXOnly-2U-NoLEDK95
1NUM_1MX_Alps_Hybrid:MXOnly-1U-NoLEDK86
1NUM_2MX_Alps_Hybrid:MXOnly-1U-NoLEDK87
1NUM_3MX_Alps_Hybrid:MXOnly-1U-NoLEDK88
1NUM_4MX_Alps_Hybrid:MXOnly-1U-NoLEDK66
1NUM_5MX_Alps_Hybrid:MXOnly-1U-NoLEDK67
1NUM_6MX_Alps_Hybrid:MXOnly-1U-NoLEDK68
1NUM_7MX_Alps_Hybrid:MXOnly-1U-NoLEDK47
1NUM_8MX_Alps_Hybrid:MXOnly-1U-NoLEDK48
1NUM_9MX_Alps_Hybrid:MXOnly-1U-NoLEDK49
1NUM_DECIMALMX_Alps_Hybrid:MXOnly-1U-NoLEDK96
1NUM_DIVMX_Alps_Hybrid:MXOnly-1U-NoLEDK31
1NUM_ENTERMX_Alps_Hybrid:MXOnly-2U-NoLEDK89
1NUM_MINUSMX_Alps_Hybrid:MXOnly-1U-NoLEDK50
1NUM_MULTMX_Alps_Hybrid:MXOnly-1U-NoLEDK32
1NUM_PLUSMX_Alps_Hybrid:MXOnly-1U-NoLEDK69
1OMX_Alps_Hybrid:MXOnly-1U-NoLEDK42
1PMX_Alps_Hybrid:MXOnly-1U-NoLEDK43
1PIPEMX_Alps_Hybrid:MXOnly-1U-NoLEDK25
1PLUSMX_Alps_Hybrid:MXOnly-1U-NoLEDK24
1QMX_Alps_Hybrid:MXOnly-1U-NoLEDK34
1QUESTIONMX_Alps_Hybrid:MXOnly-1U-NoLEDK81
1RMX_Alps_Hybrid:MXOnly-1U-NoLEDK37
1R.ALTMX_Alps_Hybrid:MXOnly-1.25U-NoLEDK94
1R.AMIGAMX_Alps_Hybrid:MXOnly-1.25U-NoLEDK93
1R.BLANKMX_Alps_Hybrid:MXOnly-1U-NoLEDK64

The 80 most common of 101 parts.

Questions

How big is the A1200KB PCB?

It measures 450 × 125 mm and has 2 copper layers, 2 mm thick.

What parts does the A1200KB use?

101 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 A1200KB KiCad files?

From the aeberbach/A1200KB repository on GitHub, at the commit this page was made from: the board is A1200KB.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the A1200KB design in my own project?

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

Similar boards

  • 2 layers55 × 80 mmBoard esp32 v2, the printed circuit board in 3D

    Board esp32 v2

    sudomesh/disaster-radio

    A (paused) work-in-progress long-range, low-bandwidth wireless disaster recovery mesh network powered by the sun.

    101 parts1.1k
  • 2 layers99 × 145.5 mmLamp, the printed circuit board in 3D

    Lamp

    hackclub/OnBoard

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

    101 parts915
  • 2 layers230.5 × 60 mmEEZ DIB AUX PS, the printed circuit board in 3D

    EEZ DIB AUX PS

    eez-open/modular-psu

    EEZ Bench Box 3 (BB3) Modular T&M chassis

    101 parts394
  • 2 layers224.6 × 74.2 mmKeyboard ch552-44, the printed circuit board in 3D

    Keyboard ch552-44

    rgoulter/keyboard-labs

    Repo with my PCB designs and keyboard firmware

    101 parts236
  • 2 layers90 × 60 mmCh32v307gigabit, the printed circuit board in 3D

    Ch32v307gigabit

    cnlohr/cnhardware

    My dumping grounds for all my kicad projects and random hardware bringup.

    101 parts114
  • 2 layers100 × 100 mmLittleSwitchBus, the printed circuit board in 3D

    LittleSwitchBus

    profdc9/ModularTuner

    A Modular Antenna Tuner for a Phased Array Antenna System

    101 parts59
  • 2 layers133.8 × 91.7 mmCorney island, the printed circuit board in 3D

    Corney island

    ceoloide/corney-island

    An Ergogen-based, autogenerated version of foostan's crkbd (Corne) split keyboard

    101 parts58MIT
  • 2 layers58.4 × 31.8 mmStimulator, the printed circuit board in 3D

    Stimulator

    rusefi/rusefi-hardware

    101 parts52