Repository navigation
Electronics JTAG Module Board Layout
Status: In Review Project: Enigma-NG Author: Izzyonstage & GitHub Copilot Version: v.0.1.0 Associated Hardware Revision: Rev A Last Updated: 2026-05-20
This board implements our version of an Intel (Altera) USB Blaster II device for programming CPLDs.
TOP VIEW (L1) - 4-Layer (DEC-017) / 2oz Copper
_______________________________________________________________________________________
| |
| [ MH1 ] [ MH2 ] |
| (Top-Left, M2.5 NPTH, 7mm from edge) (Top-Right, M2.5 NPTH) |
| |
| [ FT232H IC ] <--- High-Speed USB to MPSSE Bridge |
| (Main IC for JTAG Blaster, 12MHz Crystal Attached) |
| |
| [ DATA PLATE ] <--- Inverted White Silkscreen on L4 (B.Silkscreen / exterior face) |
| (Enigma Silhouette + JLC Serial) |
| |
| [ MH3 ] [ J1 DF40 ] [ MH4 ] |
| (Bot-Left, inset 12mm) (Bottom-Centre, 20-pin BtB) (Bot-Right, inset 12mm) |
|_______________________________________________________________________________________|
________________________________________________
| [MH1] [MH2] |
| |
| [ FT232H + supporting components ] |
| |
| [MH3] [ J1 DF40 BtB ] [MH4] |
|_________________(Bottom-Centre)________________|
Connector Definition Owner: This board. All other boards connecting to the JTAG Module cross-reference here.
Part: Hirose DF40C-20DP-0.4V(51)
Location: Bottom-centre of board; R1 row on the outer (bottom) board edge.
Mating part (CTL J12): Hirose DF40HC(3.5)-20DS-0.4V(51) — 3.5mm stack-height receptacle on CTL board.
C1 C2 C3 C4 C5 C6 C7 C8 C9 C10
R1: TCK GND GND 5V_U GND GND 3V3 GND GND TDI
R2: GND TMS GND GND USB+ USB- GND GND TDO GND
R1 = outer (bottom) edge; R2 = inner row.
| Pin | Signal | Dir | Description |
|---|---|---|---|
| C1R1 | TCK | JM → CTL | JTAG Clock (buffered via U2; 33Ω via R2) |
| C2R1 | GND | — | Ground |
| C3R1 | GND | — | Ground |
| C4R1 | 5V_USB | CTL → JM | 5V USB power from CTL TPS2065C rail |
| C5R1 | GND | — | Ground |
| C6R1 | GND | — | Ground |
| C7R1 | 3V3_ENIG | CTL → JM | 3.3V logic rail / JTAG signal reference |
| C8R1 | GND | — | Ground |
| C9R1 | GND | — | Ground |
| C10R1 | TDI | JM → CTL | JTAG Data In (33Ω via R4; R1 at FT232H) |
| C1R2 | GND | — | Ground |
| C2R2 | TMS | JM → CTL | JTAG Mode Select (buffered via U2; 33Ω via R3) |
| C3R2 | GND | — | Ground |
| C4R2 | GND | — | Ground |
| C5R2 | USB+ | Bidir | USB 2.0 D+ to CM5 (USB FS differential pair) |
| C6R2 | USB− | Bidir | USB 2.0 D− to CM5 (USB FS differential pair) |
| C7R2 | GND | — | Ground |
| C8R2 | GND | — | Ground |
| C9R2 | TTD_RETURN | CTL → JM | JTAG Transmission Data return from chain end |
| C10R2 | GND | — | Ground |
Stackup: see GRS §2.3.2
| Layer | Role | Notes |
|---|---|---|
| L1 | GND plane + SMT component pads (component side) | Faces toward Controller Board when JM is mounted as a hat |
| L2 | All signal traces (inner layer) | Shielded between L1 GND reference and L3 power |
| L3 | Power distribution pours (5V_USB + 3V3_ENIG) | Inner power layer |
| L4 | GND pour shield | Faces away from Controller (exterior/top when mounted) |
GND_CHASSIS is not implemented on the JM - see DEC-057. Mounting holes connect to GND (circuit return).
Board specs: 4-layer / 2oz finished copper (inverted) — stackup per GRS §2.3.2. L1 = GND plane (component side); L2 = all signal traces (inner layer); L3 = power pours; L4 = GND pour.
IPC-2221A basis (2oz copper, 10°C rise, 25°C ambient): External: ~0.15 mm/A. Internal: multiply by 2.5x for same thermal rise. See design/Standards/Global_Routing_Spec.md §1.1 for the full current-category table.
| Net | Peak Current | IPC Calc (2oz) | Design Min | Specified Width | Layer | Notes |
|---|---|---|---|---|---|---|
| 5V_USB (J1 C4R1 → FT232H VCC) | ≤ 120 mA peak | 0.02 mm | per GRS §1.1 | per GRS §1.1 | L1 + L3 pour | FT232H datasheet Table 5.2 (p.41): Ireg ≈ 54 mA + Iccphy ≈ 60 mA = 114 mA absolute max, rounded up to 120 mA for margin. Note: a legacy figure of 400 mA was ≈4× the actual device maximum and has been corrected. Power-rail minimum applies. |
| 3V3_ENIG (J1 C7R1 → FT232H VCCIO) | 15 mA | 0.002 mm | per GRS §1.1 | per GRS §1.1 | L1 + L3 pour | VCCIO domain; 3V3_ENIG canonical width per GRS §1.1 |
| JTAG signals: TCK, TMS, TDI, TDO (CI) | signal | - | per GRS §2.3.2 | per GRS §2.3.2 / JLCPCB_Manufacturing.md §1.1 | L2 (inner) | JM inverted stackup (DEC-017): L2 buried microstrip immediately below L1 GND plane. 50 Ω controlled impedance per GRS §2.3.2 and JLCPCB_Manufacturing.md §1.1. Per DEC-016. |
| USB D+ / D- differential pair | signal | — | see GRS §2.3 | see design/Production/JLCPCB_Manufacturing.md §1 |
L2 (inner) | 90 Ω differential USB 2.0; must be length-matched to within 0.1 mm; routed as a tightly-coupled pair |
| GND pours (outer layers) | - | - | pour | copper pour | L1 + L4 | Both outer layers = solid GND; provides dual-sided shielding for L2 signals |
| Power pours (inner power layer) | ≤ 120 mA | - | pour | copper pour | L3 | Separate pour zones for 5V_USB and 3V3_ENIG |
- All JTAG traces on L2 are sandwiched between the L1 GND reference (top) and L3 power pour (bottom), providing inherent shielding and a well-defined impedance environment.
-
JTAG CI traces: 50 Ω controlled impedance on L2 (buried microstrip, immediately below L1 GND plane per DEC-017 inverted stackup). Trace width per GRS §2.3.2 and
design/Production/JLCPCB_Manufacturing.md §1.1. - USB D+/D- trace width and differential impedance shall comply with
design/Production/JLCPCB_Manufacturing.md §1anddesign/Standards/Global_Routing_Spec.md §2.3for the board's assigned stackup.
JM mounting holes MH1–MH4 are M2.5 NPTH holes with a GND annular ring.
Net: GND (not GND_CHASSIS — daughterboard exception per DEC-057).
No purchasable BOM component on the JM; mounting standoffs are owned and sourced by the
Controller Board BOM (MH9–MH12, 9774035151R, M2.5×3.5mm SMT standoffs).
See design/Standards/Global_Routing_Spec.md §4 for module mounting hole rules.
See DEC-057 (standoff ownership) and DEC-058 (JM BtB upgrade) for full rationale.
| Hole | Location | From Left | From Right | From Top | From Bottom |
|---|---|---|---|---|---|
| MH1 | Top-left corner | 7 mm | — | 7 mm | — |
| MH2 | Top-right corner | — | 7 mm | 7 mm | — |
| MH3 | Bottom-left inset | 12 mm | — | — | 7 mm |
| MH4 | Bottom-right inset | — | 12 mm | — | 7 mm |
Notes:
- MH1 and MH2 are right in the top corners for maximum mechanical stability above the DF40 connector.
- MH3 and MH4 are inset from the bottom corners (12 mm from each side) to leave space for J1 (DF40) centred between them at the bottom edge.
- Final board dimensions are deferred to PCB layout time (same approach as AM board).
- Positional asymmetry (MH1/MH2 at 7 mm, MH3/MH4 at 12 mm from sides) enforces correct orientation, combined with silkscreen pin-1 markers on J1.
-
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