Skip to the content
2 layers69.6 × 37.3 mmController, the printed circuit board in 3D

An open source replacement keyboard controller for 4th generation IBM/Lexmark keyboards, and for some Unicomp keyboards

Size
69.6 × 37.3 mm
Copper layers
2
Thickness
1.6 mm
Parts
65
Nets
69
Pads
244
Tracks, vias
1,000, 276
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
25 Apr 2021
Updated
26 Mar 2023

Overview

Controller is an open-source printed circuit board by purdeaandrei, from the purdeaandrei/overnumpad_controller_1xb repository on GitHub. It is a 2-layer board of 69.6 × 37.3 mm with 65 parts on 69 nets, routed with 1,000 tracks and 276 vias.

It is built around the 24LC64(LX), AMS1117-3.3 and TPS2553DBVR-1, with the USBLC6-2SC6 among its other parts. Its parts include 20 capacitors, 18 resistors, 6 diodes, 5 ICs and 5 connectors. It belongs with the keyboards and input boards and the STM32 boards of this library.

Main components

4

README

README.md

OverNumpad Controller

This is a replacement keyboard controller, for 4th generation IBM/Lexmark Model M keyboards, and Unicomp keyboards that use the same mounting style over the numpad.

Licensed under CERN-OHL-P v2 or later

Images

Top of the controller board Bottom of the controller board

Keyboards supported

Only some of the listed supported keyboards has been tested at the time of release. Some keyboards may require additional software work for support. This list may change in the future.

  • IBM/Lexmark 4th generation Model M keyboards See here for more detail on IBM Model M keyboard generations. The easiest way to identify IBM/Lexmark keyboards supported by this controller is to look at the lock lights led alignment. Top-aligned leds means that the controller is located over the numpad, and may be replaced by this controller. However this controller also provides a solder jumper option, for a set of leds that are compatible with bottom-aligned locklight stickers.

  • Various Unicomp keyboards, that use the same mounting mechanism, including:

    • Spacesaver M keyboards
    • Ultra Classic keyboards
    • Classic keyboards
    • New Model M keyboards
    • PC122 keyboards
    • The following exceptions apply:
      • The Mini M uses a bottom-mounted controller, therefore it's not supported
      • This controller may be used on keyboards that include additional input devices, such as trackballs, and pointing sticks, and card readers, but the controller will not support the additional devices.

Two versions are available

The mounting holes on the controller can come in two variants:

3.2mm mounting holes version

  • Used by IBM/Lexmark 4th generation Model M keyboards
  • Used by some Unicomp keyboards, generally the older, the more likely that it uses a small-hole controller
  • The small-hole variant will not fit on keyboards that use big-hole controllers

4.3mm mounting holes version

  • Used by some Unicomp keyboards, generally the newer, the more likely that it uses a big-hole controller
  • The big-hole controller will not be securely held in place, and will likely not work correctly if it is mounted on a keyboard with a small-hole controller.

How to order from JLCPCB:

  1. Go to http://jlcpcb.com , sign in to your account (create one if you don't have one)
  2. Click Order Now
  3. Upload the .zip file from the "order" subfolder. Make sure to select the correct version.
  4. Select PCB Qty you wish to build
  5. Set "Remove Order Number" to "Specify a location"
  6. Scroll down, turn on the "SMT Assembly" option
  7. Select "Assemble top side"
  8. Select "Tooling holes" = "Added by Customer"
  9. Click "I agree to the Terms and Conditions..."
  10. Click "Next" on the right side
  11. Click "Add BOM File", upload the "*_bom_jlc.csv" file from the "order" subfolder.
  12. Click "Add CPL File", upload the "*_cpl_jlc.csv" file from the "order" subfolder.
  13. Click "Next"
  14. Make sure that all parts say "Confirmed" with a little check box in the final column. If it shows a greyed out "confirm", or a yellow "Inventory shortage", or there is a red "No parts selected" in the Matched Part Detail column, then some parts may be out of stock. (If parts are out of stock then your options are Wait until it's back in stock / Find equivalent replacement with correct footprint, if it is in the JLCPCB parts library / Redesign the board with a different component / Order the missing part from another supplier and solder it yourself )
  15. Click "Next"
  16. Double-check components look correctly rotated (this is expected to be correct unless JLCPCB makes changes to their system)
  17. Double-check again, that Selected Parts has the correct number of items (21 items for v1.1b), and that Unselected Parts has 0 items.
  18. Save to Cart, Check Out.

Components of this design that have to be ordered separately:

The connectors for the USB cable, and for the solenoid driver need to be ordered separately. Compatible connectors are available from a variety of manufacturers, and distributors, one example:

Firmware

Currently QMK firmware, and VIAL-QMK firmware are available.

For VIAL-QMK please see here: https://github.com/purdeaandrei/vial-qmk-overnumpad-and-aristides-2862/releases/latest

For plain QMK please look for keyboards called unicomp/*/overnumpad_1xb, and ibm/*/overnumpad_1xb in upstream QMK.

Parts

65
QtyValueFootprintReferences
10100nFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC1, C2, C3, C4, C10, C11, C12, C15, C16, C19
862kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR2, R6, R7, R8, R9, R10, R11, R12
6LEDLED_SMD:LED_0805_2012Metric_Pad1.15x1.40mm_HandSolderD1, D2, D3, D4, D5, D6
52kResistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR13, R14, R15, R17, R18
31uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC6, C14, C20
347Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR3, R4, R5
3MountingHolecontroller:tooling_holeH1, H2, H3
210pFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC8, C9
222uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC13, C17
2390Resistor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolderR1, R16
24.7uFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC7, C18
2Q_NMOS_GSD 2N7002Package_TO_SOT_SMD:SOT-23Q2, Q3
110nFCapacitor_SMD:C_0805_2012Metric_Pad1.15x1.40mm_HandSolderC5
116MHzCrystal:Crystal_SMD_3225-4Pin_3.2x2.5mm_HandSolderingY1
124LC64Package_SO:SOIC-8_3.9x4.9mm_P1.27mmU5
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U1
1Conn_01x01controller:PinHeader_1x01_P1.27mm_Vertical_mod_no_courtyard_no_refJ4
1Conn_01x04Connector_JST:JST_PH_S4B-PH-K_1x04_P2.00mm_HorizontalJ2
1Conn_01x06Connector_PinHeader_1.27mm:PinHeader_1x06_P1.27mm_VerticalJ6
1Conn_01x25_Membranecontroller:membrane_connectorJ1
1Conn_Solenoid_DriverConnector_JST:JST_PH_S4B-PH-K_1x04_P2.00mm_HorizontalJ3
1Ferrite_BeadInductor_SMD:L_0805_2012Metric_Pad1.15x1.40mm_HandSolderFB1
1Q_PMOS_GSD AO3401APackage_TO_SOT_SMD:SOT-23Q1
1STM32F446RETxPackage_QFP:LQFP-64_10x10mm_P0.5mmU2
1SW_Pushcontroller:switch_K2-1187SQ-A4SW-06SW1
1SolderJumper_2_Bridgedcontroller:shortable_shortedJP1
1SolderJumper_2_Opencontroller:shortableJP2
1TPS2553DBVRPackage_TO_SOT_SMD:SOT-23-6_HandsolderingU3
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-666U4

Similar boards

  • 4 layers369.6 × 158.7 mmChunkyXiao, the printed circuit board in 3D

    ChunkyXiao

    freznel10/Zia

    Secret Project

    279 parts4
  • 2 layers435 × 123 mmNec pc-8801-type a, the printed circuit board in 3D

    Nec pc-8801-type a

    djvs/nec-pc-8801-type-a

    NEC PC 8801 Type A keyboard PCB (work in progress)

    268 parts2CC-BY-SA-4.0
  • 4 layers130 × 130 mmSmart Metering, the printed circuit board in 3D

    Smart Metering

    frahncky/Smart-Metering

    Analisador trifásico de energia e qualidade de energia com interface gráfica touchscreen.

    230 parts
  • 4 layers54 × 84 mmStepperLockingSystem, the printed circuit board in 3D

    StepperLockingSystem

    netz39/Stepper-Locking-System

    Contains encoder & processor boards for closed-loop stepper motor angle control. Steering the key/door knob with the might of stepper motors.

    107 partsMIT
  • 4 layers48.5 × 69.9 mmEZ USB FX2LP dev board, the printed circuit board in 3D

    EZ USB FX2LP dev board

    rohamid/EZ-USB-FX2LP-dev-board-master

    CY7C68013A development board

    51 parts
  • 4 layers100 × 68.3 mmEL Load Digital, the printed circuit board in 3D

    EL Load Digital

    fietser28/EL-Load

    The DCL8010 electronic load module features a DC Electronic Load with several modes and protections. This project is the for the development boards for this project. There is a seperate git project for the firmware.

    89 parts15
  • 2 layers148.7 × 104.3 mmPrntrBoardV2, the printed circuit board in 3D

    PrntrBoardV2

    kitspace-test-repos/kicad6-file-collection

    288 partsMIT
  • 4 layers53 × 42 mmMioLink, the printed circuit board in 3D

    MioLink

    Misaka0x2730/MioLink

    ARM JTAG/SWD debugger (BlackMagic port) based on RP2040.

    117 parts30GPL-3.0

Questions

How big is the Controller PCB?

It measures 69.6 × 37.3 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Controller use?

65 parts, built around the 24LC64(LX), AMS1117-3.3, TPS2553DBVR-1 and USBLC6-2SC6. 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 purdeaandrei/overnumpad_controller_1xb repository on GitHub, at the commit this page was made from: the board is controller/controller.kicad_pcb. 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 purdeaandrei before reusing the design.