Repository navigation
Electronics Actuation Module Board Layout
github-actions[bot] edited this page Oct 15, 2026
·
1 revision
Status: In Review Project: Enigma-NG Author: Izzyonstage & GitHub Copilot Version: v.0.1.0 Associated Hardware Revision: Rev A Last Updated: 2026-05-18
TOP VIEW (L1 / component side / enclosed side; intended to mount upside-down from host board)
____________________________________
|[MH1] |
| |
| [MH2] |
| [D1] <-- edge-visible status LEDs |
| [D2] |
| [D3] [ U1 LOCAL CONTROLLER ] |
| [C2][C3][C4] [C1][R4][C5] |
| |
| [J1 AM HOST DOCK (DF40C)] |
| [MH4] |
| |
|[MH3] |
|____________________________________|
Mounting hole asymmetry: MH1/MH3 (left pair) sit 7 mm from the left edge and 7 mm from the top/bottom edges - close to the left corners. MH2/MH4 (right pair) sit 7 mm from the right edge and 12 mm from the top/bottom edges - inset further from the right corners. Only one physical orientation aligns all four standoffs simultaneously. See DR-AM-03.
BOTTOM VIEW (L4 / header-maintenance side / exterior face)
____________________________________
| [DATA-PLATE] |
| [J2 SERVO LOOM] |
| [J4 SWD] |
| |
| [J5 UART/BOOT] |
| [SW1 RESET_N] |
| [SW2 BOOT0] |
| [J3 HOME LOOM] |
|____________________________________|
- J1 is a single 20-pin Hirose DF40C-20DP-0.4V(51) plug centred on the connector-facing side, carrying
power (
5V_MAIN,3V3_ENIG) and the trigger signal (ACTUATE_REQUEST_N) on one connector. Four M2.5mm NPTH mounting holes with copper annular ring (MH1-MH4,MountingHole_Padfootprint, net =GND) mate with 3.5mm standoffs (9774035151R) on the host board. - J2 and J3 are bottom-edge manual-fit Dupont-style headers. They are intentionally excluded from the
automated PCBA flow.
Pin 1 is silkscreen-marked on J2 and J3 per GRS §7.1 pin-1 marker requirement.
- J4 and J5 are manual-fit service headers. J4 is the primary SWD header and J5 is the separate
UART/bootloader header; place them near U1, keep them adjacent, and keep both accessible before the
module is installed on its host board. SW1 and SW2 should sit directly beside J5 so the two-button
UART bootloader action (
BOOT0held while reset is pressed) can be done directly at the AM.Pin 1 is silkscreen-marked on J4 and J5 per GRS §7.1 pin-1 marker requirement.
- The upside-down mounting is driven by the single-side PCBA rule: the DF40 plug and SMT components are assembled on the enclosed connector-facing side, while the manually fitted loom / service headers stay on the opposite side for post-PCBA fitting and service access.
- D1-D3 should stay on the PCBA-fitted side but be pushed to a visible board edge so the indicators can still be seen during maintenance without moving them onto the manual-fit side.
- The
ACTUATION_HOME_Nloom on J3 should use a twisted pair for pins 1-2 (ACTUATION_HOME_N+GND) because the loom is expected to run near the servo wiring. - U1, C1, and R4 should stay close to J3 so the home input is biased and filtered at the module edge.
J4, J5, SW1, and SW2 should also stay close to U1 so the SWD, UART,
BOOT0, andRESET_Nservice lines remain short and unambiguous. - C2, C3, and C7 should sit tight to the STM32 supply pins (U1 pin 4, VDD/VDDA) as local high-frequency decouplers. C4 should sit near
the local
3V3_ENIGentry / U1 supply region. C5 should sit near the5V_MAINintake and servo loom region so the AM has a local short-burst current reservoir when the servo moves. - C6 (100 nF RESET_N filter cap) shall be placed adjacent to U1's NRST pin. Keep the trace from U1 NRST to C6 and from C6 to GND as short as practicable to maximise noise suppression effectiveness.
- R5 (10 kΩ BOOT0 series protection resistor) shall be placed on the signal path between the SW2 / J5-pin-5 shared node and the U1 BOOT0 pin. Place R5 in the J4/J5/SW1/SW2 service-header cluster so the service interconnect remains compact.
- Unlike the JM, the AM is not purely a light logic daughterboard: it has both an MCU and a local servo power path. The AM therefore keeps the reduced daughterboard-capacitor approach, but adds an explicit 5V local reservoir cap rather than relying only on upstream host-board bulk capacitance.
-
Connector orientation (DF40 polarity-free body): The DF40 connector body can mate in two orientations
(180° rotated). MH1-MH4 shall be placed in an asymmetric (non-square) pattern so that only one physical
orientation of the AM aligns all four standoffs simultaneously. The silkscreen pin-1 triangle marker on
both the AM and the host board shall indicate the correct mating direction (per
design/Standards/Global_Routing_Spec.md §7.1). Pin 1 is defined as the top-left pin when the AM is viewed from its component side (connector-facing side) with the short standoff-pair edge on the left. - Enclosed-side fitted parts must remain within the 2.0 mm installed-height rule from
Design_Spec.md(DR-AM-11). The DF40 plug body height above PCB (~1.14 mm) satisfies this limit. The reviewed STM32G071K8T3TR LQFP32 package is 1.60 mm max height and the 0402 passives / LEDs are substantially lower. - Minimum board size guidance (non-binding): The DR-AM-03 asymmetric mounting hole pattern implies a minimum board height of approximately 26 mm (right-pair 12 mm insets x 2 plus 1 mm edge clearance each side) and a minimum board width of approximately 28 mm (7 mm insets each side plus clearance for the DF40C connector body). These are guidance values only; final dimensions shall be confirmed at PCB layout stage.
- The module is electrically light and mechanically non-load-bearing; the servo must not transfer structural load into the AM PCB or its host dock.
-
Design Log
- DEC-001 3v3-enig-used-throughout-3v3-system-removed-from-btb-interconnect
- DEC-002 poe-option-a2-selected-coilcraft-poe600f-12ld
- DEC-003 poe-output-12v-or-ing-priority-logic-required
- DEC-004 supercap-charge-current-05a-under-poe
- DEC-005 tps25980-efuse-replaces-tps259474l
- DEC-006 stusb4500-negotiates-15v5a-75w
- DEC-007 dual-interleaved-lmq61460-q1-5v-buck-12a
- DEC-008 tps25750-emulates-5v5a-pd-profile-to-cm5
- DEC-009 legacy-controller-probe-access-pin-14-reassigned-to-sw-led-ctrl
- DEC-010 inc-14-deferred-legacy-probe-access-esd-protection-post-prototype
- DEC-011 all-power-rails-on-power-module-3v3-enig-serves-rotor-stack
- DEC-012 u4-tps25750-replaced-with-tps25751drefr-nrnd-resolution
- DEC-013 l3-emi-inductor-changed-to-bourns-srp1265a-100m
- DEC-014 controller-board-uses-erf8-female-on-both-btb-connectors-for-blind-mate-assembly
- DEC-015 link-beta-connector-reduced-from-80-pin-to-40-pin-erf8-020-erm8-020
- DEC-016 jtag-controlled-impedance-and-series-termination
- DEC-017 minimum-4-layer-stackup-for-all-non-controller-boards
- DEC-018 connector-pinout-ownership-model
- DEC-019 poe-transformer-topology-acf-option-a-selected
- DEC-020 gnd-chassis-rib-clearway-enig-bond
- DEC-021 supercapacitor-bank-upgrade-2x2-2s2p-2x3-2s3p
- DEC-022 jdb-ft232h-clock-source-dedicated-12mhz-smd-crystal-selected
- DEC-023 jdb-gnd-chassis-omitted-mounting-holes-tied-to-gnd
- DEC-024 jdb-is-complete-jtag-master-controller-jtag-lines-are-pass-through
- DEC-025 cm5-shutdown-mechanism-hardware-driven-ltc3350-software-support-deferred
- DEC-026 rotor-position-encoder-as5600-replaced-with-single-track-capacitive-encoder
- DEC-027 rotor-position-readback-via-jtag-virtual-jtag-user0-udr
- DEC-028 split-dual-board-rotor-architecture
- DEC-029 supercapacitor-hold-up-specification-25f-abracon-cells-2s4p-20-s-at-15w
- DEC-030 5v-main-backup-switchover-transient-fix-r14-r30-c35
- DEC-031 cm5-virtual-keyboard-key-injection-feature-architecture
- DEC-032 settings-board-panel-mount-configuration-controls-with-cm5-override
- DEC-033 dsi1-display-connector-provision-for-optional-lid-touchscreen
- DEC-034 switch-hardware-refresh-settings-board-toggle-discrete-rgb-led-ruggedized-pm-sw1
- DEC-035 hid-keyboard-and-lightboard-use-a-40-position-qwerty-derived-layout-for-the-64-character-code-space
- DEC-036 link-beta-former-monitor-pins-reallocated-as-grouped-power-rails
- DEC-037 link-beta-pin-map-regrouped-around-dedicated-jtag-and-i2c-guard-bands
- DEC-038 controller-centric-dock-architecture-replaces-legacy-link-alpha-link-beta-backplane
- DEC-039 enclosure-connected-boards-use-gnd-chassis-daughterboards-are-exempt
- DEC-040 diagnostics-banks-removed-from-active-design-specs-pending-coupon-review
- DEC-041 encoder-modules-use-epm570-with-digital-debounce-and-role-by-programming
- DEC-042 encoder-port-pin-8-carries-hid-local-enc-active-n
- DEC-043 shared-actuation-module-replaces-direct-controller-servo-gpio
- DEC-044 fdc2114-internal-oscillator-selected-clkin-gnd
- DEC-045 rotor-samtec-erm8erf8-connectors-require-esd-protection
- DEC-046 bypassdecoupling-capacitor-voltage-rating-50v-retained-on-all-non-pm-boards
- DEC-047 or-ing-mosfet-corrected-to-csd17578q5a
- DEC-048 esd-protection-extended-to-host-side-rotor-facing-btb-connectors
- DEC-049 rotor-internal-headers-renamed-to-j-convention-connector-count-updated-to-8-bom-unified
- DEC-050 encoder-blade-terminal-refdes-corrected-from-bt-to-j-convention
- DEC-051 settings-board-renamed-to-user-settings-module-board-code-sbd-usm
- DEC-052 variant-specific-fdc2114-refdes-use-ab-suffix-convention
- DEC-053 extension-port-connector-upgraded-from-bhr-20-vua-20-pin-to-2bhr-30-vua-30-pin
- DEC-054 signal-net-renamed-pwr-but-pwr-but-n-active-low-suffix-conformance
- DEC-055 f-108-system-wide-reference-designator-and-requirement-id-consecutive-renumbering
- DEC-056 relocate-investigation-documents-to-board-owned-folders
- DEC-057 daughterboard-mounting-hole-specification-and-standoff-bom-ownership
- DEC-058 jdb-connector-upgrade-hat-headers-to-df40c-20-btb
- DEC-059 erm8erf8-stacking-height-confirmed-rotor-stack-assembly-specification-created
- DEC-060 jtag-daughterboard-renamed-to-jtag-module-jdb-prefix-replaced-with-jm
- DEC-061 pass-7-review-corrections-ctlstarotencamgrsstatus-updates
- DEC-062 ctl-poe-t1-selection-tdk-b82806d0060a120-topology-acf-flyback-acf-forward
- DEC-063 ctl-poe-l1-selection-yageo-pa4343333nlt-acf-forward-output-inductor
- DEC-064 ctl-poe-c17-final-part-selection-kemet-c0805c223k2racauto-22nf-200v-x7r-0805
- DEC-065 system-wide-stackup-code-correction-and-jlcpcb-authoritative-impedance-values
- DEC-066 grs-canonical-pcb-stackup-authority-consolidation
- DEC-067 am-sw1sw2-tactile-switch-rating-accepted-for-production
- DEC-068 pm-per-input-bulk-capacitors-and-output-source-quality-bulk-banks
- DEC-069 pm-per-input-polyfuse-protection-and-uvlo-resistor-recalculation
- DEC-070 mcp23017-i²c-silicon-restriction-gpb7gpa7-review-and-cfg-apply-n-reassignment
- DEC-071 usm-spdt-switch-dual-terminated-wiring-and-pull-down-resistor-removal
- DEC-072 review-pass-9-findings-and-resolutions
- DEC-073 ltc3350-rt-resistor-correction-332-kω-133-kω-amends-dec-030
- DEC-074 rename-cpld-reset-signal-sys-reset-n-cpld-reset-n
- DEC-075 tps25751-option-c-external-eeprom-isolated-i2ct-debug-header-on-power-module
- DEC-076 pm-3v3-architecture-redesign-3v3-main3v3-enig-rail-split-j4-dual-purpose-programming-j6-removal-and-q12-parallel-p-fet-selection
- DEC-077 retrospective-rotor-ttd-daisy-chain-no-series-termination-resistors-amends-dec-016
- DEC-078 cpld-reset-n-stator-buffer-bss138-n-channel-mosfet-new-decision-references-dec-077
- DEC-079 c20-voltage-rating-correction-25v-35v-amends-dec-072-bom-item-1
- DEC-080 retrospective-pm-and-stator-dock-connector-redesignation-amends-dec-038
- DEC-081 retrospective-rotor-ttd-no-series-resistor-policy-in-addition-to-dec-016
- DEC-082 10µf-bulk-reservoir-capacitor-upgrade-25v-0805-50v-1206-all-boards
- DEC-083 retire-all-boards-bomjson-consolidate-bom-authority-in-design-spec-files-and-consolidated-bom
- DEC-084 cypher-stack-architecture-migration-and-board-role-consolidation
- DEC-085 stack-output-j4-power-pin-zero-ohm-links-prototype-test
- DEC-086 cypher-input-common-variant-restructure-10-numeric-variant-single-i2c-address
- DEC-087 cypher-input-led-colour-architecture-moved-off-plain-bits-onto-local-rgb-select-circuit
- DEC-088 plugboard-jacks-wired-directly-to-cypher-board-spade-bank-j4j6-reserves-5v-main
- DEC-089 board-role-id-widened-to-4-bit-capability-bitmask-cpld-pin-freeing-and-j5-migration
- DEC-090 cypher-board-j3-stack-input-side-full-50-pin-allocation-and-actuate-request-in-out-n-signal-pair
- DEC-091 j3-esd-protection-extended-to-actuate-request-pins-and-actuation-gating-resolved-to-cypher-cpld
- DEC-092 cypher-board-j4-stack-output-side-full-50-pin-allocation
- DEC-093 actuate-request-end-to-end-signal-path-j4-rename-rotor-interposer-connectors-extended
- DEC-094 connector-ownership-reassignment-for-reused-chain-templates
- DEC-095 actuate-request-esd-protection-completed-stack-output-passive-wiring-defined
- DEC-096 stack-blanking-board-corrected-actuate-request-bridging-added
- DEC-097 cypher-j3-actuate-request-out-n-wired-as-round-trip-verification-input
- DEC-098 controller-cypher-dock-split-power-molex-signal-samtec-amends-dec-038-dec-080
- DEC-099 cm5-i2c-bank-architecture-mipi0-to-mipi1-swap-pwm-gpclk-reservation
- DEC-100 jtag-module-actuation-module-retirement-from-controller-board
- DEC-101 cypher-ina219-i2c-address-aligned-to-pm-default
- DEC-102 cypher-ft232h-3v3-vregin-self-powered-5v-usb-net-retired
- DEC-103 hid-usm-hub-connector-topology-rework
- DEC-104 user-settings-module-role-reworked-as-hid-colour-audio-hub-and-jtag-i2c-spine
- DEC-105 cfg-route-moved-to-full-cm5-software-control-physical-usm-switches-retired
- DEC-106 cypher-plugboard-reduced-to-mechanical-connector-only-board
- DEC-107 usm-hid-connector-four-colour-style-signal-expansion
- index
-
Diagrams
- renders
-
Electronics
- Boards Overview
- Consolidated BOM
- Electrical Design
- Power Budgets
- System Architecture
- Actuation Module
- Controller
- Cypher
- Cypher-Input
- Cypher-Output
- Cypher-Plugboard
- Encoder Module
- Extension
- JTAG Module
- Power Module
- Reflector
- Rotor
- Stack-Blanking
- Stack-Input
- Stack-Interposer
- Stack-Output
- Stator
- User Settings Module
-
Guides
-
Mechanical
- Complete System Assembly
- Extension
- Keyboard Assembly
- Lightboard Assembly
- Main Enclosure
- Plugboard Assembly
- Power Module
- Reflector
- Rotor
- Rotor Actuation Assembly
- Rotor Stack Assembly
-
Procedures
-
Production
-
Software
- Actuation Module
- CPLD Logic
-
GUI App
- Design Spec
-
Wireframes
- README
- renders
- Linux OS
-
Standards