Hall Effect Keyboard Design

I started the layout phase and inspected the current PCB state. The board is still the default 160 × 100 mm, 4-layer layout, and the components are spread far outside the board from schematic-origin placement, so placement needs to be redone after sizing.
Open items:
  • I’m blocked because the account has no available ACUs.
  • Board outline still needs to be resized to a real TKL footprint.
  • Component placement has not been run yet.
Suggested next steps:
  1. Add ACUs, then resize the board to a standard TKL outline.
  2. Place the USB-C connector at the rear edge, encoder at the top-right, mux/MCU cluster centrally, and Hall sensors on the switch grid.
  3. Run post-placement DRC before routing.
continue
I’ll continue layout setup: apply a standard TKL board size/outline, then place the major blocks according to the keyboard geometry and run a quick layout check if resources are available.
I continued layout setup: resized the PCB to a 365 × 140 mm 4-layer TKL board and placed all 213 components, including the 87 Hall sensors in a TKL-style grid, USB-C/ESD/power at the rear edge, MCU/muxes centrally, and encoder at the top-right.
Open items:
  • I’m blocked from running the post-placement DRC because the account has no available ACUs.
  • Placement reported no overlap/out-of-bounds issues, but final board checks still need to be run.
  • Magnetic Jade Max mechanical sensor alignment still needs physical validation.
Suggested next steps:
  1. Add ACUs, then rerun post-placement DRC.
  2. Verify Hall sensor position vs Magnetic Jade Max switch magnet travel.
  3. Route the board after placement checks pass.
Route and verify
Route critical nets
Verify Hall alignment
Prepare DRC checklist
Review placement risks
U14
U5
D1
U3
U13
U10
U12
U7
U8
U11
U6
U9
U15
U4
U2
U1
J1
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U4 GND - U5 GND
J1 GND_B - J1 GND_B
U189 GND - U190 GND
U189 GND - U190 GND
J1 MH1 - J1 MH2
J1 MH1 - J1 MH2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
J1 GND_B - J1 GND_B
SW1 2 - SW2 2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U4 GND - U5 GND
J1 MH1 - J1 MH2
U4 GND - U5 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
U189 GND - U190 GND
U16 GND - C13 P2
U189 GND - U190 GND
U4 GND - U5 GND
J1 MH1 - J1 MH2
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
J1 MH1 - J1 MH2
J1 MH1 - J1 MH2
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
GND
U4 GND - U5 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
SW1 2 - SW2 2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U4 GND - U5 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
SW1 2 - SW2 2
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U4 GND - U5 GND
U4 GND - U5 GND
U189 GND - U190 GND
U4 GND - U5 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U4 GND - U5 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
J1 MH1 - J1 MH2
SW1 2 - SW2 2
J1 MH1 - J1 MH2
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U16 GND - C13 P2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
J1 MH1 - J1 MH2
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U189 GND - U190 GND
GND
U189 GND - U190 GND
U189 GND - U190 GND
U4 GND - U5 GND
U4 GND - U5 GND
U4 GND - U5 GND
U189 GND - U190 GND
U189 GND - U190 GND
U302 VOUT - U8 X6
U278 VOUT - U5 X6
U341 VOUT - U13 X5
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U10 X - U11 X
U344 VOUT - U14 X0
U189 VCC - U190 VCC
U4 C - U5 C
U348 VOUT - U14 X4
U330 VOUT - U12 X2
U286 VOUT - U6 X6
J1 DP2 - D1 I/O2
U337 VOUT - U13 X1
U189 VCC - U190 VCC
U4 B - U5 B
U189 VCC - U190 VCC
U284 VOUT - U6 X4
U189 VCC - U190 VCC
U349 VOUT - U14 X5
U4 A - U5 A
U197 VOUT - U5 X1
U189 VCC - U190 VCC
U1 IOVDD - U1 IOVDD
U339 VOUT - U13 X3
U4 A - U5 A
U189 VCC - U190 VCC
U4 C - U5 C
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U196 VOUT - U5 X0
U189 VCC - U190 VCC
U314 VOUT - U10 X2
U189 VCC - U190 VCC
U348 VOUT - U14 X4
U189 VCC - U190 VCC
U192 VOUT - U4 X4
U1 IOVDD - U1 IOVDD
U1 QSPI_SD2 - U3 ~WP_(IO2)
J1 DP2 - D1 I/O2
J1 DN1 - J1 DN2
U189 VCC - U190 VCC
J1 CC2 - R2 P1
U189 VCC - U190 VCC
U10 X - U11 X
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U190 VOUT - U4 X2
U189 VCC - U190 VCC
U299 VOUT - U8 X3
U189 VCC - U190 VCC
U318 VOUT - U10 X6
U296 VOUT - U8 X0
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U4 B - U5 B
U4 C - U5 C
U4 B - U5 B
U304 VOUT - U9 X0
U1 DVDD - C3 P1
U4 A - U5 A
U189 VCC - U190 VCC
U4 B - U5 B
U4 X - U5 X
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U1 QSPI_SCLK - U3 CLK
U320 VOUT - U11 X0
U4 X - U5 X
U189 VCC - U190 VCC
U2 EN - C1 P1
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U326 VOUT - U11 X6
U319 VOUT - U10 X7
U308 VOUT - U9 X4
U332 VOUT - U12 X4
J1 DP2 - D1 I/O2
U293 VOUT - U7 X5
U282 VOUT - U6 X2
U189 VCC - U190 VCC
U338 VOUT - U13 X2
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U345 VOUT - U14 X1
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U329 VOUT - U12 X1
U4 C - U5 C
U322 VOUT - U11 X2
U189 VCC - U190 VCC
U1 QSPI_SS - U3 ~CS
U1 XOUT - Y1 CRYSTAL_2
ENC1 B - U1 GPIO1
U280 VOUT - U6 X0
U189 VCC - U190 VCC
U4 B - U5 B
U295 VOUT - U7 X7
U1 QSPI_SS - U3 ~CS
U189 VCC - U190 VCC
ENC1 S1 - U1 GPIO2
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
J1 DN1 - J1 DN2
U350 VOUT - U14 X6
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U321 VOUT - U11 X1
U7 X - U8 X
U346 VOUT - U14 X2
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U290 VOUT - U7 X2
U320 VOUT - U11 X0
U318 VOUT - U10 X6
U189 VCC - U190 VCC
U296 VOUT - U8 X0
U1 IOVDD - U1 IOVDD
U16 VOUT - U4 X0
U189 VCC - U190 VCC
U327 VOUT - U11 X7
U189 VCC - U190 VCC
U189 VCC - U190 VCC
R4 P2 - U1 USB_DP
ENC1 A - U1 GPIO0
U189 VCC - U190 VCC
U310 VOUT - U9 X6
U317 VOUT - U10 X5
U350 VOUT - U14 X6
U334 VOUT - U12 X6
U192 VOUT - U4 X4
U189 VCC - U190 VCC
U286 VOUT - U6 X6
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U328 VOUT - U12 X0
U309 VOUT - U9 X5
U1 XIN - Y1 CRYSTAL_1
U1 QSPI_SD0 - U3 DI_(IO0)
U4 B - U5 B
U304 VOUT - U9 X0
U292 VOUT - U7 X4
U4 B - U5 B
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U277 VOUT - U5 X5
U189 VCC - U190 VCC
U1 IOVDD - U1 IOVDD
U1 VREG_VOUT - U1 DVDD
U189 VCC - U190 VCC
U189 VOUT - U4 X1
U291 VOUT - U7 X3
U334 VOUT - U12 X6
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U287 VOUT - U6 X7
U311 VOUT - U9 X7
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U1 IOVDD - U1 IOVDD
U189 VCC - U190 VCC
U343 VOUT - U13 X7
U331 VOUT - U12 X3
U2 EN - C1 P1
U302 VOUT - U8 X6
U4 B - U5 B
U292 VOUT - U7 X4
U4 B - U5 B
U325 VOUT - U11 X5
U189 VCC - U190 VCC
U4 A - U5 A
U1 IOVDD - U1 IOVDD
U1 RUN - R5 P2
U1 XIN - Y1 CRYSTAL_1
U195 VOUT - U4 X7
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
R3 P2 - U1 USB_DM
U324 VOUT - U11 X4
U189 VCC - U190 VCC
U312 VOUT - U10 X0
U276 VOUT - U5 X4
U189 VCC - U190 VCC
U307 VOUT - U9 X3
U313 VOUT - U10 X1
U189 VCC - U190 VCC
U283 VOUT - U6 X3
U344 VOUT - U14 X0
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U307 VOUT - U9 X3
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U10 X - U11 X
U1 QSPI_SD2 - U3 ~WP_(IO2)
U195 VOUT - U4 X7
U189 VCC - U190 VCC
U298 VOUT - U8 X2
U317 VOUT - U10 X5
U279 VOUT - U5 X7
U189 VCC - U190 VCC
U194 VOUT - U4 X6
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U191 VOUT - U4 X3
U323 VOUT - U11 X3
U197 VOUT - U5 X1
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U305 VOUT - U9 X1
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U332 VOUT - U12 X4
U279 VOUT - U5 X7
U327 VOUT - U11 X7
U4 X - U5 X
R4 P2 - U1 USB_DP
U189 VCC - U190 VCC
U297 VOUT - U8 X1
U314 VOUT - U10 X2
U275 VOUT - U5 X3
U4 X - U5 X
U347 VOUT - U14 X3
U4 C - U5 C
U276 VOUT - U5 X4
U189 VCC - U190 VCC
U189 VCC - U190 VCC
J1 CC1 - R1 P1
U189 VCC - U190 VCC
U1 VREG_VOUT - U1 DVDD
U335 VOUT - U12 X7
U189 VCC - U190 VCC
U301 VOUT - U8 X5
U300 VOUT - U8 X4
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U7 X - U8 X
U189 VCC - U190 VCC
U190 VOUT - U4 X2
U301 VOUT - U8 X5
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U1 DVDD - C3 P1
U189 VCC - U190 VCC
U337 VOUT - U13 X1
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U310 VOUT - U9 X6
U189 VCC - U190 VCC
U280 VOUT - U6 X0
U189 VCC - U190 VCC
J1 VBUS_B - D1 VBUS
U315 VOUT - U10 X3
U305 VOUT - U9 X1
ENC1 B - U1 GPIO1
U4 B - U5 B
U189 VCC - U190 VCC
U189 VCC - U190 VCC
J1 DN1 - J1 DN2
J1 DN1 - J1 DN2
U189 VCC - U190 VCC
U297 VOUT - U8 X1
U4 B - U5 B
U4 A - U5 A
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U330 VOUT - U12 X2
U343 VOUT - U13 X7
U289 VOUT - U7 X1
U290 VOUT - U7 X2
U194 VOUT - U4 X6
U4 A - U5 A
U13 X - U14 X
ENC1 S1 - U1 GPIO2
U189 VCC - U190 VCC
U1 QSPI_SS - U3 ~CS
U340 VOUT - U13 X4
U4 B - U5 B
U189 VCC - U190 VCC
U1 RUN - R5 P2
U315 VOUT - U10 X3
U339 VOUT - U13 X3
U193 VOUT - U4 X5
U189 VCC - U190 VCC
U294 VOUT - U7 X6
U189 VCC - U190 VCC
U288 VOUT - U7 X0
U1 XOUT - Y1 CRYSTAL_2
U349 VOUT - U14 X5
U189 VCC - U190 VCC
U283 VOUT - U6 X3
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U311 VOUT - U9 X7
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U1 RUN - R5 P2
U275 VOUT - U5 X3
U189 VCC - U190 VCC
U325 VOUT - U11 X5
U189 VCC - U190 VCC
U341 VOUT - U13 X5
U324 VOUT - U11 X4
U298 VOUT - U8 X2
U1 IOVDD - U1 IOVDD
U1 XIN - Y1 CRYSTAL_1
U189 VCC - U190 VCC
U329 VOUT - U12 X1
J1 VBUS_B - D1 VBUS
U189 VCC - U190 VCC
U287 VOUT - U6 X7
U189 VCC - U190 VCC
U189 VCC - U190 VCC
R4 P2 - U1 USB_DP
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U13 X - U14 X
U189 VCC - U190 VCC
U281 VOUT - U6 X1
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U333 VOUT - U12 X5
U189 VCC - U190 VCC
U316 VOUT - U10 X4
U189 VCC - U190 VCC
U299 VOUT - U8 X3
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U4 A - U5 A
U285 VOUT - U6 X5
U189 VCC - U190 VCC
U13 X - U14 X
U1 XOUT - Y1 CRYSTAL_2
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U291 VOUT - U7 X3
U189 VCC - U190 VCC
U189 VCC - U190 VCC
J1 VBUS_B - D1 VBUS
U189 VCC - U190 VCC
U4 C - U5 C
U10 X - U11 X
U189 VCC - U190 VCC
U13 X - U14 X
R3 P2 - U1 USB_DM
U342 VOUT - U13 X6
U1 QSPI_SD3 - U3 ~HOLD_OR_~/RESET_(IO3)
U4 A - U5 A
U193 VOUT - U4 X5
U4 C - U5 C
U1 QSPI_SCLK - U3 CLK
U335 VOUT - U12 X7
U338 VOUT - U13 X2
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U4 A - U5 A
U340 VOUT - U13 X4
U189 VCC - U190 VCC
U293 VOUT - U7 X5
U189 VCC - U190 VCC
U1 IOVDD - U1 IOVDD
U345 VOUT - U14 X1
U294 VOUT - U7 X6
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U1 QSPI_SD1 - U3 DO_(IO1)
U289 VOUT - U7 X1
U4 A - U5 A
U309 VOUT - U9 X5
U189 VCC - U190 VCC
U342 VOUT - U13 X6
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U319 VOUT - U10 X7
U189 VCC - U190 VCC
U303 VOUT - U8 X7
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U198 VOUT - U5 X2
U281 VOUT - U6 X1
U346 VOUT - U14 X2
J1 CC1 - R1 P1
U189 VCC - U190 VCC
U313 VOUT - U10 X1
U336 VOUT - U13 X0
U189 VOUT - U4 X1
U196 VOUT - U5 X0
U336 VOUT - U13 X0
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U312 VOUT - U10 X0
U189 VCC - U190 VCC
U300 VOUT - U8 X4
U1 IOVDD - U1 IOVDD
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U1 QSPI_SD0 - U3 DI_(IO0)
U295 VOUT - U7 X7
U1 QSPI_SD1 - U3 DO_(IO1)
U308 VOUT - U9 X4
U4 C - U5 C
U189 VCC - U190 VCC
J1 CC2 - R2 P1
U189 VCC - U190 VCC
U198 VOUT - U5 X2
U306 VOUT - U9 X2
U7 X - U8 X
U189 VCC - U190 VCC
U303 VOUT - U8 X7
U4 C - U5 C
U285 VOUT - U6 X5
U326 VOUT - U11 X6
U282 VOUT - U6 X2
U284 VOUT - U6 X4
U189 VCC - U190 VCC
U189 VCC - U190 VCC
R3 P2 - U1 USB_DM
U4 C - U5 C
U189 VCC - U190 VCC
U331 VOUT - U12 X3
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U347 VOUT - U14 X3
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U278 VOUT - U5 X6
U1 DVDD - C3 P1
U189 VCC - U190 VCC
U4 A - U5 A
U316 VOUT - U10 X4
U322 VOUT - U11 X2
U306 VOUT - U9 X2
U189 VCC - U190 VCC
U1 QSPI_SD3 - U3 ~HOLD_OR_~/RESET_(IO3)
U1 QSPI_SS - U3 ~CS
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U321 VOUT - U11 X1
U191 VOUT - U4 X3
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U277 VOUT - U5 X5
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U4 A - U5 A
U4 C - U5 C
U7 X - U8 X
U1 IOVDD - U1 IOVDD
U4 C - U5 C
U189 VCC - U190 VCC
U323 VOUT - U11 X3
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U4 A - U5 A
U4 C - U5 C
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
ENC1 A - U1 GPIO0
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U4 B - U5 B
U288 VOUT - U7 X0
U333 VOUT - U12 X5
U16 VOUT - U4 X0
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U189 VCC - U190 VCC
U328 VOUT - U12 X0
U189 VCC - U190 VCC
U189 VCC - U190 VCC
C316
Capacitance
Capacitance
C356
Capacitance
Capacitance
C285
Capacitance
Capacitance
C310
Capacitance
Capacitance
C318
Capacitance
Capacitance
C327
Capacitance
Capacitance
C298
Capacitance
Capacitance
C292
Capacitance
Capacitance
C12
Capacitance
Capacitance
C331
Capacitance
Capacitance
C308
Capacitance
Capacitance
C273
Capacitance
Capacitance
C6
Capacitance
22pF
C10
Capacitance
Capacitance
C309
Capacitance
Capacitance
C333
Capacitance
Capacitance
C305
Capacitance
Capacitance
C282
Capacitance
Capacitance
C347
Capacitance
Capacitance
C357
Capacitance
Capacitance
C355
Capacitance
Capacitance
C335
Capacitance
Capacitance
C354
Capacitance
Capacitance
C294
Capacitance
Capacitance
C290
Capacitance
Capacitance
C275
Capacitance
Capacitance
C345
Capacitance
Capacitance
C314
Capacitance
Capacitance
C321
Capacitance
Capacitance
C1
Capacitance
10uF
C293
Capacitance
Capacitance
C337
Capacitance
Capacitance
C326
Capacitance
Capacitance
C313
Capacitance
Capacitance
C299
Capacitance
Capacitance
C342
Capacitance
Capacitance
C336
Capacitance
Capacitance
C315
Capacitance
Capacitance
C287
Capacitance
Capacitance
C13
Capacitance
0.1uF
C4
Capacitance
0.1uF
C8
Capacitance
Capacitance
C353
Capacitance
Capacitance
C328
Capacitance
Capacitance
C5
Capacitance
22pF
C274
Capacitance
Capacitance
C320
Capacitance
Capacitance
C281
Capacitance
Capacitance
C295
Capacitance
Capacitance
C301
Capacitance
Capacitance
C330
Capacitance
Capacitance
C7
Capacitance
Capacitance
C272
Capacitance
Capacitance
C349
Capacitance
Capacitance
C343
Capacitance
Capacitance
C312
Capacitance
Capacitance
C344
Capacitance
Capacitance
C289
Capacitance
Capacitance
C303
Capacitance
Capacitance
C283
Capacitance
Capacitance
C350
Capacitance
Capacitance
C302
Capacitance
Capacitance
C324
Capacitance
Capacitance
C319
Capacitance
Capacitance
C323
Capacitance
Capacitance
C2
Capacitance
10uF
C340
Capacitance
Capacitance
C334
Capacitance
Capacitance
C291
Capacitance
Capacitance
C288
Capacitance
Capacitance
C348
Capacitance
Capacitance
C276
Capacitance
Capacitance
C280
Capacitance
Capacitance
C346
Capacitance
Capacitance
C300
Capacitance
Capacitance
C332
Capacitance
Capacitance
C317
Capacitance
Capacitance
C11
Capacitance
Capacitance
C306
Capacitance
Capacitance
C278
Capacitance
Capacitance
C311
Capacitance
Capacitance
C329
Capacitance
Capacitance
C279
Capacitance
Capacitance
C322
Capacitance
Capacitance
C284
Capacitance
Capacitance
C307
Capacitance
Capacitance
C325
Capacitance
Capacitance
C296
Capacitance
Capacitance
C304
Capacitance
Capacitance
C286
Capacitance
Capacitance
C339
Capacitance
Capacitance
C351
Capacitance
Capacitance
C3
Capacitance
0.1uF
C341
Capacitance
Capacitance
C277
Capacitance
Capacitance
C297
Capacitance
Capacitance
C352
Capacitance
Capacitance
C338
Capacitance
Capacitance
C9
Capacitance
Capacitance
U290
U332
U282
U321
U198
U327
U16
U334
U350
U346
U286
U296
U329
U291
U325
U297
U307
U347
U348
U319
U308
U302
U336
U314
U315
U309
U284
U335
U322
U330
U299
U191
U195
U278
U337
U323
U339
U342
U345
U289
U194
U292
U276
U349
U301
U281
U295
U320
U324
U197
U277
U326
U283
U279
U340
U328
U288
U306
U190
U333
U331
U285
U293
U310
U300
U341
U275
U312
U318
U305
U298
U294
U193
U313
U343
U338
U287
U317
U316
U304
U344
U192
U280
U311
U196
U303
U189
Y1
R3
Resistance
27Ω
R5
Resistance
10kΩ
R1
Resistance
5.1kΩ
R2
Resistance
5.1kΩ
SW2
SW1
ENC1
R6
Resistance
10kΩ
R4
Resistance
27Ω

Refine this doc
Ask about this doc
Project Specification: TKL Hall Effect Keyboard
Summary
Design a standard TKL-size wired USB-C Hall-effect computer keyboard PCB using Gateron Magnetic Jade Max HE / MX-style magnetic switches, with continuous analog key-position reporting for supported apps/games and an app-configurable firmware architecture. Low input latency is the top design priority.
User-declared requirements
  • Layout: standard TKL size.
  • Switch sensing: Hall-effect / magnetic switch architecture.
  • Target switch family: Gateron Magnetic Jade Max HE, or a mechanically/electrically compatible MX-style Hall-effect switch.
  • Continuous analog behavior: the keyboard should expose calibrated key-position data for supported apps/games, not only emit a digital event at a fixed actuation point.
  • USB behavior: enumerate as a standard USB HID keyboard plus a second optional analog HID interface for analog-aware apps/games.
  • Compatibility: normal keyboard operation must work without custom drivers, background software, proprietary APIs, or vendor software installed.
  • Rapid Trigger: implement entirely in firmware while still sending ordinary keyboard press/release reports to the host.
  • Latency priority: minimize scan-to-USB/report latency above all nonessential features.
  • Hot-swap support for the selected MX-style Hall-effect switch ecosystem.
  • Rotary encoder.
  • USB-C wired host connection.
  • ESD protection on external USB interface.
  • App-configurable keyboard behavior planned.
  • No RGB and no keyboard lighting circuitry.
Proposed architecture
  • MCU with native USB and enough I/O/ADC expansion for analog Hall scanning; default candidate: RP2040-class MCU plus analog multiplexers or ADC expansion as needed.
  • USB-C receptacle with USB 2.0 device wiring, CC pull-downs, VBUS protection, and D+/D- ESD array.
  • 3.3 V logic rail from USB 5 V.
  • Hall-effect sensing per key with scan/mux architecture suitable for continuous position readout, rapid-trigger behavior, and analog actuation firmware.
  • Firmware normalizes each key from raw ADC counts into calibrated travel/position values; standard HID keypresses are derived from configurable thresholds for OS compatibility.
  • Composite USB HID device model:
    • Interface 0: standard Keyboard HID for normal apps and OS-level keyboard behavior.
    • Interface 1: optional Analog HID for supported apps/games to read per-key position, visible as 0–100% or equivalent normalized values.
  • Avoid gamepad/Xbox-controller emulation as the default analog output path because it can confuse game UI prompts, desktop behavior, and anti-cheat systems.
  • Low-latency firmware path: prioritize high scan rate, short ADC acquisition windows compatible with sensor settling, minimal filtering delay, interrupt/DMA-assisted sampling where practical, and frequent USB reports.
  • Hot-swap mechanical/electrical interface documented as switch-family dependent; exact Gateron Magnetic Jade Max HE-compatible switch/socket/sensor footprint must be finalized before per-key circuits are completed.
  • Rotary encoder connected to GPIO with pull-ups/debounce support.
  • Firmware/app interface: standard USB Keyboard HID plus dedicated Analog HID for live position data, with optional configuration/control reports for calibration and settings.
  • No LED driver, per-key RGB, underglow, backlight, or indicator LED network is included unless explicitly added later by the user.
Switch notes
  • Gateron Magnetic Jade Max HE is a linear Hall-effect magnetic switch for Hall-effect keyboards, not ordinary mechanical contact PCBs.
  • Published specs list approximately 3.5 ± 0.1 mm total travel and freely configurable actuation/pre-travel via compatible firmware/software.
  • The switch choice reinforces the need for per-key Hall sensing and calibration rather than contact-matrix scanning.
Open decisions
  • Exact Hall sensor and PCB footprint/placement geometry compatible with Gateron Magnetic Jade Max HE.
  • Exact hot-swap/socket or plate/PCB retention strategy for the selected switch ecosystem.
  • Exact TKL physical outline and mounting hole/case compatibility.
  • Final Analog HID report descriptor and report packing for low-latency app/game support.
Validation targets
  • USB enumerates reliably as a composite HID device with standard Keyboard HID plus optional Analog HID.
  • Keyboard HID works in normal applications without vendor software or custom drivers.
  • ESD parts located close to connector in layout.
  • 3.3 V rail sized for MCU, Hall sensors, encoder, muxes, and flash; no lighting load budget required.
  • Firmware can read every Hall channel and store calibration data.
  • App/game interface can stream/report continuous normalized key-position data from 0–100% or equivalent fixed-point range.
  • Rapid Trigger behavior is handled in firmware and produces ordinary key down/up reports.
  • Scan-to-report latency is measured and optimized; avoid heavy filtering that increases latency.
  • BOM and schematic contain no RGB/lighting parts.
  • Summary

  • User-declared requirements

  • Proposed architecture

  • Switch notes

  • Open decisions

  • Validation targets

Documents

  • Project Specification: TKL Hall Effect Keyboard

  • Firmware and App Architecture

  • Board Bring-Up Plan

  • Analog HID Report Format

  • TKL Analog Key Index Map

Assets

Assets are files uploaded to this project which can be used in various ways.

TKL Hall Effect Keyboard thumbnail
USB-C TKL Hall-effect keyboard with hot-swap switches, rotary encoder, ESD protection, and app-configurable firmware architecture.

Properties

V

Pricing & Availability

Distributor

Qty 1

Arrow

$67.96–$74.80

Digi-Key

$88.25–$88.36

HQonline

$9.54–$9.64

LCSC

$116.79–$117.49

Mouser

$126.26

TME

$13.21

Verical

$72.35–$139.36

Controls