Final package generated: Download SOLX_RevA_Final.zip, containing real Flux exports: Gerbers, BOM, pick-and-place, PDF, STEP, SVG/GLB renders, DRC/ERC report, firmware handoff, docs, and lawyer package. I followed the manufacturing export gate logic that blocks export on airwires, missing footprints, or critical overlapping copper, and the final review returned no critical checks for the requested blocker categories .
Status: documentation ready, Codex ready, lawyer-review ready, fabrication-quote ready; not automatically approved for prototype ordering until a human EE/mechanical review verifies pogo geometry, connector fit, drill sizes, assembly rotations, and first-article bring-up. Complete file list, readiness report, recommended next steps, and physical validation requirements are included inside the ZIP.
Purpose: give a human PCB editor a direct, execution-oriented routing plan for finishing the remaining SOLX Rev A airwires in Flux. This is not an architecture redesign; it is a physical routing sequence for the existing 100 mm × 100 mm, 2-layer proof-of-concept board.
Current verified layout context:
Board: 100 mm × 100 mm rectangle, 2-layer stackup.
Placement density: low, about 26% component area.
Active DRC blocker: 41 airwires.
Major placements:
Base input/protection: J1 at left edge, F1/D1/U1/C1/C2/C3 around upper-left/mid-left.
ESP32 module U2 near upper-center.
Base pogo/header interface J2 near upper-right edge.
Pass-through pair J3/J4 near upper-right, side-by-side.
Smart-ID pair J5/J6 near right-center/lower-right, side-by-side.
Smart-ID regulator U7/C4/C5 near J5/J6.
I2C EEPROM U3 and R4 near lower-right.
Test points mostly on left/upper-mid areas.
Overall routing philosophy
This Rev A board is a proof-of-concept and should be visually understandable. Favor direct, readable routes over aggressive optimization.
Use:
Top layer: primary routing, component-side traces, short point-to-point routes.
Bottom layer: broad GND return where possible, longer horizontal/vertical jump routes, and limited crossovers.
Copper pours: GND pour on both layers after signal/power routing, stitched with vias.
Vias: acceptable for low-speed signals and power transitions, but keep them intentional and sparse.
Recommended default constraints:
Table
Net class
Suggested width
Suggested clearance
Via guidance
12V input/protected power
0.75–1.00 mm
≥0.25 mm
Avoid where possible; if needed use 2 vias in parallel
Pogo 12V pass-through rails
0.75–1.00 mm
≥0.25 mm
Avoid between mating pads; use direct top-side routes
GND trunks
copper pour + 0.75–1.00 mm traces
≥0.25 mm
Use stitching vias; multiple vias for current returns
3.3V logic rail
0.30–0.50 mm
≥0.20 mm
Single via acceptable
DATA/SDA, ID/SCL, DETECT
0.20–0.25 mm
≥0.20 mm
Single via acceptable; keep clean and away from 12V trunks
EEPROM local I2C
0.20–0.25 mm
≥0.20 mm
Prefer top layer, short traces
LED/test point branches
0.20–0.30 mm
≥0.20 mm
Flexible
Do not use 0.15 mm traces unless absolutely necessary. A Rev A prototype should be easy for common PCB fabs.
1. Critical power nets
VIN_JACK: J1 center pin → F1:1
Route first. This is the raw DC input from the barrel jack.
Preferred layer: top.
Width: 0.75–1.00 mm.
Path: short direct segment from J1 to F1.
Vias: avoid.
Geometry: keep it wide and visible; this is the start of the current path.
Keepout: maintain clearance from mounting holes and test points.
VIN_FUSED: F1:2 → D1 anode
Route immediately after VIN_JACK.
Preferred layer: top.
Width: 0.75–1.00 mm.
Path: direct from fuse output to reverse-protection diode anode.
Preferred implementation: GND copper pour on both layers, with direct short traces where pour may not reach.
Pour strategy:
Add or preserve a bottom-layer GND pour across the board.
Add a top-layer GND pour if Flux supports it without creating overlaps.
Keep the pour connected around the board; do not split the GND plane with long 12V traces.
Trace width where explicit traces are needed: 0.75–1.00 mm for power return paths; 0.30–0.50 mm for local signal/reference branches.
Vias:
Use GND stitching vias near U1, U7, J2, J3/J4, J5/J6, and around the ESP32 module.
Use at least one GND via near any signal via.
Use multiple GND vias around duplicated pogo GND contacts if they route through the bottom layer.
Decoupling priority:
C1/C2/C3 should have very short GND return to U1 and the local GND pour.
C4/C5 should have very short GND return to U7 and local GND pour.
U3 GND and EP should connect to the nearest GND pour with short top trace and/or via.
Ground routing order:
Connect J1 terminal to the main GND pour/return.
Connect U1 GND, C1/C2/C3, and U2 GND pins.
Connect J2 pins 3/4 to the GND pour with fat local copper.
Connect pass-through GND pins J3/J4 pins 3/4 with direct short links.
Connect smart-ID GND pins J5/J6 pins 3/4 with direct short links.
Connect U7/C4/C5/U3/R4/D2/TP2.
3. ESP32 support traces
U2 ESP32 routing should be readable and not forced through the antenna area. If the ESP32 module footprint has an antenna end, keep copper and routing away from that keepout region.
Vias: acceptable but avoid if a direct top-side route is easy.
Routing strategy:
Route U1 VOUT to C3 first.
Route from C3/U1 output node to U2 3V3.
Branch to R1/R2/R3 and TP3 from the 3.3V rail.
U2:VP is tied to 3V3_BASE as an intentional defined state; route it as a short branch if the pin is physically nearby. If not nearby, one via is acceptable.
Keep short: U1 VOUT to C3; C3 to U1/U2 supply path.
DATA_SDA: U2 GPIO21 → J2:5 → R2:P2 → TP4
Preferred layer: top for U2-to-J2 and R2 pull-up branch.
Width: 0.20–0.25 mm.
Vias: one via acceptable if crossing the 12V trunk would otherwise be messy.
Keep away from: 12V high-current trunk and noisy input/protection region.
Routing priority: clean geometry over shortest path; this is low-speed I2C/reserved data.
Pull-up R2 should connect as a short branch to the line, not force the signal to route through the resistor body.
ID_SCL: U2 GPIO22 → J2:6 → R3:P2 → TP5
Preferred layer: top.
Width: 0.20–0.25 mm.
Vias: one acceptable.
Routing: keep parallel-ish to DATA_SDA with modest spacing; do not require length matching.
Keep away from: 12V input/protection chain.
Pull-up R3 should be a short branch.
DETECT: U2 GPIO16 → J2:7 → TP6
Preferred layer: top.
Width: 0.20–0.25 mm.
Vias: one acceptable.
Routing: simple direct GPIO route from U2 to J2 pin 7, with TP6 branch near accessible edge/area.
Signal integrity: low-speed digital presence line; no length matching needed.
4. Pogo interface routing strategy
The board uses 7-contact interfaces, with duplicated power and ground contacts for reliability. The routing should reinforce this concept visually.
Recommended physical contact order:
12V_A
12V_B
GND_A
GND_B
DATA/SDA
ID/SCL
DETECT/PRESENCE
For each mating pair J3/J4 and J5/J6:
Route same-numbered pins directly and in parallel where possible.
Keep the top-side pass-through traces short and easy to inspect.
Do not weave the pass-through routes through unrelated circuitry.
Preserve consistent orientation: pin 1 on bottom/top interfaces should correspond to the same physical side.
Place or verify silkscreen labels at each contact: 12V_A, 12V_B, GND_A, GND_B, DATA, ID, DETECT.
Power/gnd pad geometry:
12V and GND traces should be wider than signal traces.
If pad size permits, connect duplicated 12V and duplicated GND contacts with wide local copper.
Avoid thermal relief on pogo current pads if they are purely surface pads and hand soldering is not a concern; if Flux/fab defaults apply thermal relief, verify current path is still adequate.
5. Reserved DATA/ID lines
Base DATA_SDA and ID_SCL
DATA_SDA and ID_SCL are reserved communication lines from ESP32 to the base pogo interface.
Keep them as a recognizable pair from U2 to J2 pins 5/6.
Width: 0.20–0.25 mm.
Clearance: ≥0.20 mm; use ≥0.30 mm from 12V if space allows.
Vias: acceptable, but do not use unnecessary zig-zag transitions.
No impedance control needed for Rev A low-speed I2C/metadata testing.
Pass-through PT_DATA_SDA and PT_ID_SCL
J3:5 → J4:5 and J3:6 → J4:6.
Preferred layer: top.
Width: 0.20–0.25 mm.
Vias: avoid if possible.
Strategy: route parallel short links between connector pairs.
Do not cross under/through power pads if a clean perimeter route is possible.
Smart-ID SID_DATA_SDA and SID_ID_SCL
SID_DATA_SDA: J5:5, J6:5, U3:SDA.
SID_ID_SCL: J5:6, J6:6, U3:SCL, R4:P1.
Preferred layer: top.
Width: 0.20–0.25 mm.
Vias: avoid for local U3 routes unless escaping around J5/J6 requires one.
Strategy:
First link J5/J6 same-numbered pins.
Then branch to U3 SDA/SCL.
R4, if used as a resistor-ID/pull element, should branch cleanly from the ID/SCL line.
6. LED/output paths
PWR_LED: R1:P2 → D2:A
Preferred layer: top.
Width: 0.20–0.30 mm.
Vias: avoid.
Routing: very short direct trace; this is non-critical.
D2 cathode to GND
Prefer top trace to nearby GND pour or direct GND via.
Width: 0.20–0.30 mm.
Keep LED trace readable so the power indicator function is obvious.
7. Test point routing
Test points should be branches, not series elements.
TP1: branch from 12V_PROTECTED. Width 0.30–0.50 mm.
TP2: branch to GND pour. Use short trace/via.
TP3: branch from 3V3_BASE. Width 0.25–0.30 mm.
TP4: branch from DATA_SDA. Width 0.20–0.25 mm.
TP5: branch from ID_SCL. Width 0.20–0.25 mm.
TP6: branch from DETECT. Width 0.20–0.25 mm.
Keep test point branches short and label them clearly. Avoid placing test point branches through critical current paths.
8. Optional EEPROM / identification traces
SID_3V3: U7 VOUT → C5 → U3 VCC
Preferred layer: top.
Width: 0.30–0.50 mm.
Vias: avoid.
Keep short: U7 VOUT to C5 and U3 VCC.
Treat this as a local regulator output island, not a board-wide rail.
U3 local ground and address pins
U3 GND, EP, A0, A1, A2, WP should tie directly into local GND.
Preferred: short top traces to GND pour or a nearby GND via.
Keep these traces short and visually grouped with U3.
R4 on SID_ID_SCL
If R4 is resistor-ID fallback/pull element, route it as a branch from SID_ID_SCL to GND.
Width: 0.20–0.25 mm.
Keep close to U3/J5/J6 so its function is obvious.
Recommended routing order
Follow this exact order in the Flux PCB editor:
Pre-routing cleanup
Check for dangling traces/stubs and remove them before new routing.
3V3_BASE from U1 VOUT/C3 to U2 3V3, R1/R2/R3, TP3, U2:VP.
Base ESP32 to pogo interface
DATA_SDA: U2 GPIO21 → J2:5, with R2 and TP4 branch.
ID_SCL: U2 GPIO22 → J2:6, with R3 and TP5 branch.
DETECT: U2 GPIO16 → J2:7, with TP6 branch.
Pass-through module interface J3/J4
PT_12V_A and PT_12V_B.
GND pins 3/4.
PT_DATA_SDA, PT_ID_SCL, PT_DETECT.
Smart-ID module interface J5/J6
SID_12V_A and SID_12V_B.
GND pins 3/4.
SID_DATA_SDA, SID_ID_SCL, SID_DETECT.
Smart-ID local regulator and EEPROM
SID_12V_A branch to U7 VIN/C4.
SID_3V3 from U7 VOUT/C5 to U3 VCC.
U3 SDA/SCL to J5/J6 data/ID lines.
U3 address/WP/EP/GND to local ground.
Indicator and remaining test point branches
PWR_LED and D2 ground.
Any remaining TP branches.
Copper pours and stitching
Apply GND pours on bottom, then top if available.
Add stitching vias near connectors, regulators, and around board perimeter.
Refill pours and re-run DRC.
Suggested DRC constraints before final routing
Use conservative prototype settings:
Minimum signal trace width: 0.20 mm.
Preferred signal trace width: 0.25 mm.
3.3V trace width: 0.30–0.50 mm.
12V/pogo current trace width: 0.75–1.00 mm.
Minimum copper clearance: 0.20 mm.
Preferred power clearance: 0.25 mm or greater.
Via drill: 0.30 mm minimum for general use.
Power via drill: 0.40 mm if carrying 0.5–1 A; use multiple vias for higher current.
Copper-to-board-edge clearance: ≥0.30 mm, preferably ≥0.50 mm for Rev A.
Signal integrity considerations
This is a low-speed 2-layer prototype, so the main SI concern is clean return paths, not impedance control.
Keep DATA_SDA and ID_SCL over or near continuous GND where possible.
Avoid routing DATA/ID directly alongside 12V for long distances.
If a DATA/ID trace changes layers, place a GND stitching via nearby.
Keep U1/U7 regulator input/output capacitors close and with short GND paths.
Keep ESP32 antenna area free of copper/traces if the footprint/module has a PCB antenna keepout.
No length matching is required for DATA_SDA and ID_SCL in this Rev A implementation.
Copper pour strategy
Finish all intentional routed traces first.
Add/refill a bottom-layer GND pour across the board.
Add/refill a top-layer GND pour only if it does not create confusing islands near pogo pads.
Stitch GND between layers near:
J1 input connector.
U1/C1/C2/C3.
U2 GND pins.
J2 pogo/header output.
J3/J4 pass-through connectors.
J5/J6 smart-ID connectors.
U7/C4/C5/U3.
Remove isolated copper islands if DRC flags floating copper.
Keep 12V pours optional. For Rev A, wide traces are easier to review than large unlabeled 12V copper areas.
Board cleanup process after routing
After all visible ratsnest/airwires are gone:
Re-run airwire DRC.
If any airwire remains, click it and route that specific pad-to-pad connection manually.
Refill GND pours.
Run DRC for:
Airwires.
Overlapping copper.
Invalid layer.
Dangling trace.
Missing footprints.
Clearance / drill spacing.
Fix in this order:
Invalid layers.
Overlaps/shorts.
Clearance/drill issues.
Dangling traces.
Remaining airwires.
Silkscreen issues.
Confirm silkscreen labels for all pogo contacts and power polarity.
Confirm board outline is closed and mounting holes are correct.
Final pre-Gerber checklist
Do not export fabrication files until all critical items below are true:
Airwires = 0.
No overlapping copper on different nets.
No invalid layer errors.
No missing footprints.
No critical clearance violations.
No dangling traces.
Board outline closed.
Mounting holes have valid drill definition and adequate copper clearance.
Pogo contacts/pads are labeled and orientation is consistent.
12V and GND duplicated contacts are routed with wide copper.
U1/U7 capacitors have short input/output/GND routes.
ESP32 antenna region is not blocked by copper if applicable.
BOM still excludes fabricated test pads and mounting holes.
Gerber, drill, BOM, pick-place, schematic PDF, layout PDF, and STEP export are generated only after checks pass.
Human routing shortcut
Because the board has generous space, the fastest clean manual route is:
Route all connector-pair pass-through links J3↔J4 and J5↔J6 first as short parallel traces.
Route the base input power chain J1→F1→D1→U1/J2.
Pour GND and connect local GND pads with short spokes/vias.
Route ESP32 GPIO lines to J2.
Route U7/U3 local smart-ID circuit.
Finish test point branches.
Run DRC and clean the few leftovers.
This should be achievable quickly because most remaining nets are either short connector-pair pass-throughs or low-speed support signals, not dense fine-pitch routing.
Assets are files uploaded to this project which can be used in various ways.
Manufacturable Rev A proof-of-concept PCB system for the SOLX modular magnetic lamp platform, documenting a standardized magnetic pogo-pin electrical pass-through interface, 12V low-voltage power transfer, reserved data/ID contacts, module identification support, automatic configuration recognition, lifecycle metadata tracking capability, and patent-supporting manufacturing/test documentation.
Properties
Properties describe core aspects of the project.
Pricing & Availability
Distributor
Qty 1
Arrow
$7.70–$8.01
Digi-Key
$11.42–$12.13
HQonline
$0.88–$0.99
LCSC
$26.54–$26.67
Mouser
$13.22–$13.28
TME
$1.18
Verical
$0.87–$1.65
Controls
Welcome 👋
Flux helps you build PCBs faster with an AI teammate!
Create your account to collaborate, stay updated, fork your own version, and get instant answers from our AI agent.