Mechanical Keyboard Assembly Design Spec - thepinkmile/Enigma-NG GitHub Wiki
Keyboard Assembly โ Mechanical Design Specification
Status: Draft Project: Enigma-NG Author: Izzyonstage & GitHub Copilot Version: v0.1.0 Associated Hardware Revision: Rev A Last Updated: 2026-04-20
1. Overview
A standalone operator keyboard assembly using the QWERTY-derived 40-position HID layout to access
the machine's 64-character code space. This assembly contains the keyboard panel, the key-switch
harness, and one Encoder Module populated/programmed in the KBD_ENC role.
The keyboard assembly is electrically independent of the lightboard assembly. It connects to the
Stator through its own 26-pin IDC ribbon on the dedicated KBD_ENC port.
2. Keyboard Switches
- Keyboard Switches (ร40): DPDT 6-pin momentary push-button switches, one per physical HID key
position.
- Mounted in the keyboard panel (mechanical chassis); connect to the
KBD_ENCEncoder Module via a field-installable spade-terminal harness. - Pole 1 โ COM1 + NO1 provides the active-low key path: COM1 -> assigned Encoder input terminal, NO1 -> local GND return. Pressing the key pulls the Encoder input LOW.
- Pole 2 pins (3ร) are unused electrically and may be retained only for mechanical anchoring; no connection to the Encoder electrical netlist.
- NC1 -> not connected.
- Part: uxcell-style DPDT 2-pole 6-pin push button switch โ purchased from seller
gadgetskingdom(eBay item365271584375, 2 per pack). Seedesign/Datasheets/Gadgetskingdom_DPDT_Keyboard_Switch_Pseudo_Datasheet.md.
- Mounted in the keyboard panel (mechanical chassis); connect to the
3. Key Panel Layout
The keyboard assembly uses a 40-position physical layout that preserves a conventional QWERTY-inspired operator experience while still exposing the machine's full 64-character logical alphabet.
- Printable key positions (ร38): dedicated keycaps for
[a-z0-9+=]. - Modifier key positions (ร2): one Left Shift key and one Right Shift key.
- Bottom-row arrangement: the two Shift keys flank the bottom row so either hand can access the uppercase alphabetic plane.
- Uppercase behaviour: there are no separate uppercase-only key positions. Holding either
Shift key while pressing an alphabetic key yields the corresponding uppercase code (
A-Z).
For signal polarity, RC debounce circuit, Schmitt trigger configuration, and Shift key state machine logic, see
design/Electronics/Encoder/Design_Spec.md ยง6 Key Mapping.
4. Mechanical Key Lever Interface
Each key has a mechanical lever extending downward from the key body to contact the depression bar of the Rotor Actuation Assembly.
See
design/Mechanical/Rotor_Actuation_Assembly/Design_Spec.mdfor the depression bar and pivot lever mechanism that translates keypresses into rotor steps.
5. Cross-References
| Document | Description |
|---|---|
design/Electronics/Encoder/Design_Spec.md |
Generic Encoder Module pinout, CPLD role definition, key mapping |
design/Mechanical/Lightboard_Assembly/Design_Spec.md |
Separate but layout-matched lightboard assembly |
design/Mechanical/Rotor_Actuation_Assembly/Design_Spec.md |
Depression bar, pivot lever, and rotor stepping mechanism |