techmannih/nema34-mounted-stepper-controller
A 48 V USB‑C PD 3.1 EPR NEMA‑34 stepper controller PCB combining STM32/TMC5160 control, external MOSFET motor bridges, protected power and regenerative braking, USB data, telemetry, diagnostics, status LEDs, and buzzer alarms.
- Version
- 0.3.92
- License
- unset
- Stars
- 1
engineering/top-side-placement.json
{
"baseline_commit": "33eb130",
"assembly": {
"fitted_top": 254,
"service_pads_top": 11,
"bottom_components": 0
},
"schematic": {
"records": 2901,
"sha256": "2ace6914ff4e959d717e5d602e8fce388a71074bfd3f51bdf9c011741a3f4696",
"baseline_matches": true,
"source_metadata_exception": "Only source_project_metadata.source_filesystem_md5_hash changes with the filesystem; all electrical source records are identical.",
"source_entry_sha256": "d99c825073c7aca787a39f2eda3b5f77cc0746a13e406e409b35b8f91f54e589",
"comparison": "2901 schematic records and all electrical source records compare exactly with baseline 33eb130; PCB placement/routing only."
},
"logical_records": {
"source_component": {
"count": 265,
"unchanged": true
},
"source_port": {
"count": 934,
"unchanged": true
},
"source_net": {
"count": 182,
"unchanged": true
},
"source_trace": {
"count": 938,
"unchanged": true
},
"source_component_internal_connection": {
"count": 3,
"unchanged": true
}
},
"decoupling": {
"pairs": 32,
"same_top_layer": true,
"pin_distance_limit_mm": 3,
"local_trace_limit_mm": 5,
"ground_return_vias": 34,
"maximum_pin_distance_mm": 2.954858069185043,
"maximum_local_trace_mm": 4.175134000000014
},
"mechanical": {
"outline_and_mounting_holes": "unchanged",
"J7_beside_J2": "unchanged",
"U18_center": [
0,
0
],
"U18_magnet_gap": "physical validation required after changing assembly side"
},
"routing_status": "complete: native DRC, continuity, schematic parity, ERC and power-copper checks pass",
"placement_checks": {
"tsci_errors": 0,
"tsci_warnings": 0,
"native_seed_clearance_courtyard_silkscreen_violations": 0,
"native_seed_pending_ground_vias": 34,
"native_seed_unconnected_before_routing": 499
},
"routing_seed": {
"pads_preserved": 942,
"seed_copper_items": 243,
"reproduced_copper_equal": true
},
"final_validation": {
"matched_pad_geometries": 942,
"fresh_local_segments": 83,
"missing_local_segments": [],
"board_sha256": "1991773e7d50a347f404909a997f2e30aa405acd9dab96f4cc8d028099569b7d",
"fitted_back_footprints": [],
"native_drc_violations": 0,
"unconnected_items": 0,
"schematic_parity_issues": 0,
"erc_violations": 0,
"thermal_drain_vias": 40,
"power_copper_check": "pass",
"statistics": {
"components_including_mounts_and_service_pads": 269,
"supplier_backed_fitted_components": 254,
"service_testpads": 11,
"mounting_holes": 4,
"pads": 942,
"traces": 3877,
"vias": 530,
"copper_pours": 626,
"layers": 4
},
"review": {
"command": "bun run review",
"checks_passed": 29,
"checked_at": "2026-10-09T13:47:41.031Z",
"delivery_files": 38,
"archives": 5,
"cloud_viewer_ports_mapped": 934,
"delivery_errors": []
},
"scope": "Historical top-only conversion; current via-drill verification is recorded in via_drill_update."
},
"via_in_pad": {
"total_vias": 768,
"minimum_finished_drill_mm": 0.3,
"criterion": "Through-via finished-drill circle overlaps an F.Paste-enabled solder land",
"required_process": "epoxy filled and copper capped, per release/order-settings.json",
"count": 58,
"vias": [
{
"x_mm": 66.800077,
"y_mm": 83.249997,
"net": "PD_SBU2_CONN",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"J1:16"
]
},
{
"x_mm": 70.5183,
"y_mm": 126.0999,
"net": "CAN_RX",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U19:4"
]
},
{
"x_mm": 70.6,
"y_mm": 72.5003,
"net": "PD_3V3",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"C2:1"
]
},
{
"x_mm": 73.0,
"y_mm": 72.4125,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"C87:1"
]
},
{
"x_mm": 74.55,
"y_mm": 74.624999,
"net": "CC1_PD",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U2:24"
]
},
{
"x_mm": 75.4,
"y_mm": 69.4,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U34:9"
]
},
{
"x_mm": 76.6,
"y_mm": 69.4,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U34:9"
]
},
{
"x_mm": 76.6,
"y_mm": 70.4,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U34:9"
]
},
{
"x_mm": 79.824999,
"y_mm": 72.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"C86:1"
]
},
{
"x_mm": 79.899999,
"y_mm": 74.825,
"net": "CC1_PD",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"C3:1"
]
},
{
"x_mm": 84.195,
"y_mm": 67.400056,
"net": "PD_3V3",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U3:8"
]
},
{
"x_mm": 91.5,
"y_mm": 65.849999,
"net": "EFUSE_IN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q4:9"
]
},
{
"x_mm": 91.5,
"y_mm": 66.849999,
"net": "EFUSE_IN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q4:9"
]
},
{
"x_mm": 91.925,
"y_mm": 73.05,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"R31:1"
]
},
{
"x_mm": 92.5,
"y_mm": 65.849999,
"net": "EFUSE_IN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q4:9"
]
},
{
"x_mm": 92.5,
"y_mm": 66.849999,
"net": "EFUSE_IN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q4:9"
]
},
{
"x_mm": 105.659005,
"y_mm": 96.613042,
"net": "V3V3",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U33:5"
]
},
{
"x_mm": 107.5,
"y_mm": 65.849999,
"net": "BRAKE_RETURN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q16:9"
]
},
{
"x_mm": 107.5,
"y_mm": 66.849999,
"net": "BRAKE_RETURN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q16:9"
]
},
{
"x_mm": 108.5,
"y_mm": 65.849999,
"net": "BRAKE_RETURN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q16:9"
]
},
{
"x_mm": 108.5,
"y_mm": 66.849999,
"net": "BRAKE_RETURN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q16:9"
]
},
{
"x_mm": 108.9769,
"y_mm": 72.289499,
"net": "BRAKE_ON",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U15:6"
]
},
{
"x_mm": 111.85,
"y_mm": 90.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q6:9"
]
},
{
"x_mm": 111.85,
"y_mm": 91.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q6:9"
]
},
{
"x_mm": 111.85,
"y_mm": 106.5,
"net": "MOTOR_A2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q9:9"
]
},
{
"x_mm": 111.85,
"y_mm": 107.5,
"net": "MOTOR_A2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q9:9"
]
},
{
"x_mm": 112.85,
"y_mm": 90.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q6:9"
]
},
{
"x_mm": 112.85,
"y_mm": 91.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q6:9"
]
},
{
"x_mm": 112.85,
"y_mm": 106.5,
"net": "MOTOR_A2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q9:9"
]
},
{
"x_mm": 112.85,
"y_mm": 107.5,
"net": "MOTOR_A2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q9:9"
]
},
{
"x_mm": 113.15,
"y_mm": 96.5,
"net": "MOTOR_A1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q7:9"
]
},
{
"x_mm": 113.15,
"y_mm": 97.5,
"net": "MOTOR_A1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q7:9"
]
},
{
"x_mm": 113.15,
"y_mm": 112.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q8:9"
]
},
{
"x_mm": 113.15,
"y_mm": 113.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q8:9"
]
},
{
"x_mm": 114.149986,
"y_mm": 96.5,
"net": "MOTOR_A1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q7:9"
]
},
{
"x_mm": 114.149986,
"y_mm": 97.5,
"net": "MOTOR_A1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q7:9"
]
},
{
"x_mm": 114.15,
"y_mm": 112.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q8:9"
]
},
{
"x_mm": 114.15,
"y_mm": 113.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q8:9"
]
},
{
"x_mm": 116.4847,
"y_mm": 132.6986,
"net": "V3V3",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"R85:1"
]
},
{
"x_mm": 118.4478,
"y_mm": 82.4249,
"net": "OUT0_BASE",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"R98:2"
]
},
{
"x_mm": 118.459545,
"y_mm": 83.829747,
"net": "OUT0_DRIVE",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"R98:1"
]
},
{
"x_mm": 119.8473,
"y_mm": 103.7029,
"net": "GND",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U7:24"
]
},
{
"x_mm": 134.45,
"y_mm": 93.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q10:9"
]
},
{
"x_mm": 134.45,
"y_mm": 94.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q10:9"
]
},
{
"x_mm": 134.45,
"y_mm": 110.900001,
"net": "MOTOR_B2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q13:9"
]
},
{
"x_mm": 134.45,
"y_mm": 111.900001,
"net": "MOTOR_B2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q13:9"
]
},
{
"x_mm": 135.45,
"y_mm": 93.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q10:9"
]
},
{
"x_mm": 135.45,
"y_mm": 94.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q10:9"
]
},
{
"x_mm": 135.45,
"y_mm": 110.900001,
"net": "MOTOR_B2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q13:9"
]
},
{
"x_mm": 135.45,
"y_mm": 111.900001,
"net": "MOTOR_B2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q13:9"
]
},
{
"x_mm": 135.749986,
"y_mm": 100.5,
"net": "MOTOR_B1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q11:9"
]
},
{
"x_mm": 135.749986,
"y_mm": 101.5,
"net": "MOTOR_B1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q11:9"
]
},
{
"x_mm": 135.749986,
"y_mm": 116.700001,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q12:9"
]
},
{
"x_mm": 135.749986,
"y_mm": 117.700001,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q12:9"
]
},
{
"x_mm": 136.749986,
"y_mm": 101.5,
"net": "MOTOR_B1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q11:9"
]
},
{
"x_mm": 136.75,
"y_mm": 100.5,
"net": "MOTOR_B1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q11:9"
]
},
{
"x_mm": 136.75,
"y_mm": 116.700001,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q12:9"
]
},
{
"x_mm": 136.75,
"y_mm": 117.700001,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q12:9"
]
}
],
"board_sha256": "0181e5b4c89659b3f502aa19fb4344057770f8a1cd0d9da20caf6518244016ce"
},
"assembly_model": {
"glb": "dist/release/3d.glb",
"input": "release/circuit.json",
"input_sha256": "1a95b0dcd3a38207466bc3ad5788e1e265af5251be1b543d2e4d70afd086ee6f",
"glb_sha256": "2d42ee7cf71604531bf2e1a4835f1608edaf718f1105bd3bfa0e20e2134abccf",
"contains": "Current top-side source components and exact final KiCad routing"
},
"preview_advisory": {
"message": "tsci build reports C11 overlaps C12 (area 0.1254)",
"compiled_rotated_bounds_mm": {
"C11": {
"center": [
-25,
1.5
],
"width": 1.75,
"height": 4.05
},
"C12": {
"center": [
-27.635,
2.2289
],
"width": 0.95,
"height": 2.45
}
},
"x_gap_mm": 1.285,
"validation": "The compiled oriented boxes are separated. CLI placement and native KiCad clearance/courtyard checks pass; the build advisory remains visible and has not been suppressed."
},
"via_drill_update": {
"baseline_commit": "d02df91171e6f44e42e1531dce0d28b64a0d0e21",
"board_sha256": "ca3715aa25884e35cc3925a0c5e498852de8ee2de2fae081cf484d3a2d74c6bf",
"pads_compared": 1042,
"all_pad_positions_geometry_and_nets_unchanged": true,
"via_count": 561,
"minimum_finished_via_drill_mm": 0.3,
"via_pad_drill_counts": {
"0.50/0.30": 416,
"0.60/0.30": 145
},
"schematic_records_unchanged": 3189
},
"power_eco_update": {
"recorded_at": "2026-10-10T07:04:08.547834+00:00",
"board_sha256": "e97ad49ce1460acea8b69487f246bf4806e632261c876f245a82a8a7a832a931",
"matched_pad_geometries": 1072,
"fitted_top": 295,
"service_pads_top": 11,
"bottom_components": 0,
"minimum_via_drill_mm": 0.3,
"U34_thermal_vias": 4,
"via_in_pad_count": 69,
"errors": []
},
"c19_correction": {
"recorded_at": "2026-10-10T09:23:26.188847+00:00",
"board_sha256": "c9007161c6b74a6dc9713a2e786b1761b4a3b42090f70075ccfa8724ed1677fb",
"removed_reference": "C19",
"remaining_pad_geometries_and_nets_unchanged": 1071,
"existing_tracks_and_vias_unchanged": 8237,
"fitted_top": 294,
"service_pads_top": 11,
"bottom_components": 0,
"minimum_via_drill_mm": 0.3,
"via_in_pad_count": 69,
"errors": [],
"baseline_commit": "b38aa63c568504deec009184d52fd277ab1c7e7c"
},
"usb_label_update": {
"baseline_commit": "3a0f0727f6638f1e0b6786f2762a76a99fef2f51",
"board_sha256": "b57a97de0d59069538bb80063f72260d76a59fa89e2b122e46a7fe6417fd6c0a",
"recorded_at": "2026-10-10T13:54:33.302827+00:00",
"change": "Move PWR and DATA into the user-marked left-edge spaces, rotated 90 degrees, with 1 mm knockout text (25% larger).",
"native_comparison": "Board serialization is byte-identical after removing only the two modified gr_text objects. Pads, component placement, tracks, vias, zone outlines and filled polygons are unchanged.",
"source_comparison": "Every compiled record except silkscreen text and the filesystem cache hash is unchanged; all 3275 schematic records match exactly.",
"labels": [
{
"text": "PWR",
"native_xy_mm": [
58.15,
77.8
],
"rotation_deg": 90,
"font_height_mm": 1.0,
"knockout": true,
"native_ink_bounds_mm": [
57.418708,
76.232936,
58.790913,
79.319443
],
"left_edge_clearance_mm": 0.368708
},
{
"text": "DATA",
"native_xy_mm": [
58.15,
108.2
],
"rotation_deg": 90,
"font_height_mm": 1.0,
"knockout": true,
"native_ink_bounds_mm": [
57.418708,
106.37162,
58.79093,
109.88611
],
"left_edge_clearance_mm": 0.368708
}
],
"edge_reference": "Physical Edge.Cuts centerline x=57.05 mm, not the outline-stroke bounding box.",
"assembled_preview": "previews/usb-port-labels.png",
"assembled_preview_sha256": "20568bc3443adafddbcfab785722bc80f6a6a8cea08165f7119ff1d2e41ababc",
"visual_review": "Both vertical knockout labels are readable in the actual assembled GLB and sit in the requested edge spaces outside the connector bodies."
},
"ordered_motor_mounting_update": {
"date": "2026-10-11T00:32:50.363216+00:00",
"baseline_commit": "b131a20",
"board_sha256": "aabcf940d274bf8d7ff9a39c8c2f891a71b2b03341c86619f439a98be283f456",
"hole_reference": "engineering/mechanical/ordered-motor-pcb-reference.json",
"mounting_holes": [
{
"name": "H1",
"diameter_mm": 4.2,
"x_mm": 67.397132,
"y_mm": 4.575689,
"centered_x_mm": 24.447132,
"centered_y_mm": -38.374311
},
{
"name": "H2",
"diameter_mm": 4.2,
"x_mm": 81.324311,
"y_mm": 67.397132,
"centered_x_mm": 38.374311,
"centered_y_mm": 24.447132
},
{
"name": "H3",
"diameter_mm": 4.2,
"x_mm": 18.502868,
"y_mm": 81.324311,
"centered_x_mm": -24.447132,
"centered_y_mm": 38.374311
},
{
"name": "H4",
"diameter_mm": 4.2,
"x_mm": 4.575689,
"y_mm": 18.502868,
"centered_x_mm": -38.374311,
"centered_y_mm": -24.447132
}
],
"schematic_records_unchanged": 3275,
"logical_records": {
"source_component": {
"count": 305,
"unchanged": true
},
"source_port": {
"count": 1066,
"unchanged": true
},
"source_net": {
"count": 199,
"unchanged": true
},
"source_trace": {
"count": 1096,
"unchanged": true
},
"source_component_internal_connection": {
"count": 3,
"unchanged": true
}
},
"fitted_top": 294,
"service_pads_top": 11,
"bottom_components": 0,
"minimum_via_drill_mm": 0.3,
"via_in_pad_count": 57,
"native_drc_violations": 0,
"unconnected_items": 0,
"schematic_parity_issues": 0,
"erc_violations": 0,
"bypass_paths_passed": 46,
"critical_branches_passed": 9,
"usb_reference_check": "pass",
"power_routing_check": "pass",
"screw_copper_keepout_radius_mm": 4.25,
"screw_copper_keepout_layers": [
"F.Cu",
"B.Cu"
],
"copper_cleanup": "Rounded four acute pour tips and removed disconnected islands. Restored the original In2 USB ground reference and local return vias, plus the reviewed A1 B.Cu power corridor, F.Cu landing and four parallel vias. OUT0 is routed outside the A1 back-layer corridor. Native checks rerun without DRC exclusions.",
"mechanical_scope": "Nominal CAD alignment and screw-envelope clearance only; front-supported adapter and encoder remain unqualified.",
"source_native_pad_positions": {
"matched_source_pad_positions": 1066,
"tolerance_mm": 0.001,
"errors": []
}
},
"motor_connector_edge_update": {
"date": "2026-10-11T01:29:36.090310+00:00",
"base_commit": "61d2d66f19d42bdcb0541ae2fd6934e2f135d173",
"board_sha256": "96b726582de590c283d432b00b81381c254a4e2a04d2e00b6c6c8f81188a35c3",
"moved_components": [
"J2",
"R65",
"R84",
"R85",
"R86",
"C41",
"R78"
],
"j2_inward_shift_mm": 2.5,
"minimum_via_drill_mm": 0.3,
"via_in_pad_count": 58,
"schematic_records_unchanged": 3275,
"logical_records": {
"source_component": {
"count": 305,
"unchanged": true
},
"source_port": {
"count": 1066,
"unchanged": true
},
"source_net": {
"count": 199,
"unchanged": true
},
"source_trace": {
"count": 1096,
"unchanged": true
},
"source_component_internal_connection": {
"count": 3,
"unchanged": true
}
},
"scope": "Relocated complete connector and adjacent passives; preserved supplier CAD origin, pin map, board outline and all mounting holes. Rerouted displaced local signals without altering critical Kelvin branches or USB reference copper."
},
"optional_bottom_encoder_update": {
"date": "2026-10-11T03:10:56.932064+00:00",
"base_commit": "509c650224688afd320fab2e4b82ea0ee98fbe2c",
"board_sha256": "8f4d566f3ba7dd8e475757fed7817659918fe7655db8f5643861b7bd488cb1a7",
"bottom_unpopulated": [
"U18",
"C52",
"C53"
],
"fitted_top": 291,
"service_pads_top": 11,
"encoder_axis_mm": [
0,
0
],
"minimum_via_drill_mm": 0.3,
"via_in_pad_count": 58,
"schematic_records_unchanged": 3274,
"schematic_note_change": {
"before": "AS5047P is centered on the PCB underside; shaft magnet alignment must be verified.",
"after": "Optional AS5047P at the shaft axis: U18/C52/C53 are bottom-side DNP; magnet interface is not qualified."
},
"logical_records": {
"source_component": {
"count": 305,
"unchanged": true
},
"source_port": {
"count": 1066,
"unchanged": true
},
"source_net": {
"count": 199,
"unchanged": true
},
"source_trace": {
"count": 1096,
"unchanged": true
},
"source_component_internal_connection": {
"count": 3,
"unchanged": true
}
},
"source_native_pad_positions": {
"matched_source_pad_positions": 1066,
"tolerance_mm": 0.001,
"errors": []
},
"native_drc_violations": 0,
"unconnected_items": 0,
"schematic_parity_issues": 0,
"erc_violations": 0,
"bypass_paths_passed": 46,
"critical_branches_passed": 9,
"scope": "Flipped U18/C52/C53 to bottom DNP and rerouted their affected local connections. Fitted components, motor connector, mounting holes, outline and critical branches remain in place. No paste or fitted BOM/CPL entries for the optional footprints."
},
"diagnostics_eco": {
"date": "2026-10-11T06:16:25.553176+00:00",
"base_commit": "56729549ba0ac8c60ce19137651d952b5ae1da34",
"board_sha256": "0181e5b4c89659b3f502aa19fb4344057770f8a1cd0d9da20caf6518244016ce",
"fitted_top": 311,
"service_pads_top": 19,
"bottom_unpopulated": [
"U18",
"C52",
"C53"
],
"minimum_via_drill_mm": 0.3,
"via_in_pad_count": 58,
"source_native_pad_positions": {
"matched_source_pad_positions": 1137,
"tolerance_mm": 0.001,
"errors": []
},
"native_drc_violations": 0,
"unconnected_items": 0,
"schematic_parity_issues": 0,
"erc_violations": 0,
"bypass_paths_passed": 48,
"buzzer_bulk_paths": [
{
"component": "BZ1",
"pin": 1,
"capacitor": "C96",
"layer": "F.Cu",
"route_length_mm": 5.903924342263854,
"maximum_mm": 7,
"passed": true
}
],
"critical_branches_passed": 9,
"scope": "Added the authorized diagnostic and isolated EEPROM programming circuits; moved adjacent components to clear their bodies and preserve local bypass paths. No change to the board outline, mounting holes, motor connector, industrial functions or optional encoder policy. Four existing vias overlapping the relocated/new solder lands were moved clear. The U33 pin 5 supply-via overlap at native (105.659005, 96.613042) mm is retained because the adjacent top and inner signal routes block a short escape; its 0.50/0.30 mm pad/drill uses the same specified epoxy-filled, copper-capped process as the other recorded locations. No via-drill exception or DRC waiver is used."
},
"warning_cleanup": {
"checked_at": "2026-10-11T07:32:46.035681+00:00",
"board_sha256": "7e46297f0bf288c2a8add54f65b2da0cff8255a7ed4c24951f7746c24f01f1d6",
"baseline_board_sha256": "0181e5b4c89659b3f502aa19fb4344057770f8a1cd0d9da20caf6518244016ce",
"geometry_and_routing_unchanged": true,
"evidence": "docs/checks/warning-fix-parity.json"
},
"power_eco_via_audit": {
"board_sha256": "708a4e6a9d81441bbc8a56124c846ab7b321720af4932f093a696e5bb0120ddd",
"total_vias": 643,
"minimum_finished_drill_mm": 0.3,
"criterion": "Through-via finished-drill circle overlaps an F.Paste-enabled solder land",
"required_process": "epoxy filled and copper capped",
"count": 63,
"vias": [
{
"x_mm": 75.4,
"y_mm": 69.4,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U34:9"
]
},
{
"x_mm": 102.325,
"y_mm": 132.4,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"C41:2"
]
},
{
"x_mm": 79.6,
"y_mm": 112.0,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U16:49"
]
},
{
"x_mm": 76.6,
"y_mm": 69.4,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U34:9"
]
},
{
"x_mm": 76.6,
"y_mm": 70.4,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U34:9"
]
},
{
"x_mm": 81.0,
"y_mm": 113.0,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U16:49"
]
},
{
"x_mm": 81.0,
"y_mm": 110.4,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U16:49"
]
},
{
"x_mm": 119.8473,
"y_mm": 103.7029,
"net": "GND",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U7:24"
]
},
{
"x_mm": 78.8,
"y_mm": 113.2,
"net": "GND",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"U16:49"
]
},
{
"x_mm": 135.749986,
"y_mm": 101.5,
"net": "MOTOR_B1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q11:9"
]
},
{
"x_mm": 136.749986,
"y_mm": 101.5,
"net": "MOTOR_B1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q11:9"
]
},
{
"x_mm": 136.75,
"y_mm": 100.5,
"net": "MOTOR_B1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q11:9"
]
},
{
"x_mm": 135.749986,
"y_mm": 100.5,
"net": "MOTOR_B1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q11:9"
]
},
{
"x_mm": 81.75,
"y_mm": 115.4,
"net": "NRST",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U16:10"
]
},
{
"x_mm": 105.659005,
"y_mm": 96.613042,
"net": "V3V3",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U33:5"
]
},
{
"x_mm": 134.4,
"y_mm": 127.2,
"net": "U35_RESET_N",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U35:3"
]
},
{
"x_mm": 70.6,
"y_mm": 72.5003,
"net": "PD_3V3",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"C2:1"
]
},
{
"x_mm": 84.195,
"y_mm": 67.400056,
"net": "PD_3V3",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U3:8"
]
},
{
"x_mm": 114.149986,
"y_mm": 96.5,
"net": "MOTOR_A1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q7:9"
]
},
{
"x_mm": 114.149986,
"y_mm": 97.5,
"net": "MOTOR_A1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q7:9"
]
},
{
"x_mm": 113.15,
"y_mm": 97.5,
"net": "MOTOR_A1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q7:9"
]
},
{
"x_mm": 113.15,
"y_mm": 96.5,
"net": "MOTOR_A1",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q7:9"
]
},
{
"x_mm": 136.75,
"y_mm": 116.700001,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q12:9"
]
},
{
"x_mm": 112.85,
"y_mm": 90.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q6:9"
]
},
{
"x_mm": 113.15,
"y_mm": 113.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q8:9"
]
},
{
"x_mm": 136.75,
"y_mm": 117.700001,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q12:9"
]
},
{
"x_mm": 111.85,
"y_mm": 91.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q6:9"
]
},
{
"x_mm": 135.749986,
"y_mm": 116.700001,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q12:9"
]
},
{
"x_mm": 79.824999,
"y_mm": 72.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"C86:1"
]
},
{
"x_mm": 135.45,
"y_mm": 94.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q10:9"
]
},
{
"x_mm": 114.15,
"y_mm": 113.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q8:9"
]
},
{
"x_mm": 135.749986,
"y_mm": 117.700001,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q12:9"
]
},
{
"x_mm": 113.15,
"y_mm": 112.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q8:9"
]
},
{
"x_mm": 111.85,
"y_mm": 90.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q6:9"
]
},
{
"x_mm": 134.45,
"y_mm": 93.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q10:9"
]
},
{
"x_mm": 112.85,
"y_mm": 91.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q6:9"
]
},
{
"x_mm": 91.925,
"y_mm": 73.05,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"R31:1"
]
},
{
"x_mm": 134.45,
"y_mm": 94.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q10:9"
]
},
{
"x_mm": 73.0,
"y_mm": 72.4125,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"C87:1"
]
},
{
"x_mm": 135.45,
"y_mm": 93.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q10:9"
]
},
{
"x_mm": 114.15,
"y_mm": 112.5,
"net": "VMOTOR",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q8:9"
]
},
{
"x_mm": 83.35,
"y_mm": 111.75,
"net": "USB_VBUS_SENSE",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U16:19"
]
},
{
"x_mm": 74.55,
"y_mm": 74.624999,
"net": "CC1_PD",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U2:24"
]
},
{
"x_mm": 79.899999,
"y_mm": 74.825,
"net": "CC1_PD",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"C3:1"
]
},
{
"x_mm": 112.85,
"y_mm": 107.5,
"net": "MOTOR_A2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q9:9"
]
},
{
"x_mm": 111.85,
"y_mm": 106.5,
"net": "MOTOR_A2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q9:9"
]
},
{
"x_mm": 111.85,
"y_mm": 107.5,
"net": "MOTOR_A2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q9:9"
]
},
{
"x_mm": 112.85,
"y_mm": 106.5,
"net": "MOTOR_A2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q9:9"
]
},
{
"x_mm": 134.45,
"y_mm": 110.900001,
"net": "MOTOR_B2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q13:9"
]
},
{
"x_mm": 134.45,
"y_mm": 111.900001,
"net": "MOTOR_B2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q13:9"
]
},
{
"x_mm": 135.45,
"y_mm": 111.900001,
"net": "MOTOR_B2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q13:9"
]
},
{
"x_mm": 135.45,
"y_mm": 110.900001,
"net": "MOTOR_B2",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q13:9"
]
},
{
"x_mm": 107.5,
"y_mm": 66.849999,
"net": "BRAKE_RETURN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q16:9"
]
},
{
"x_mm": 107.5,
"y_mm": 65.849999,
"net": "BRAKE_RETURN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q16:9"
]
},
{
"x_mm": 108.5,
"y_mm": 65.849999,
"net": "BRAKE_RETURN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q16:9"
]
},
{
"x_mm": 108.5,
"y_mm": 66.849999,
"net": "BRAKE_RETURN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q16:9"
]
},
{
"x_mm": 91.5,
"y_mm": 65.849999,
"net": "EFUSE_IN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q4:9"
]
},
{
"x_mm": 92.5,
"y_mm": 65.849999,
"net": "EFUSE_IN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q4:9"
]
},
{
"x_mm": 91.5,
"y_mm": 66.849999,
"net": "EFUSE_IN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q4:9"
]
},
{
"x_mm": 92.5,
"y_mm": 66.849999,
"net": "EFUSE_IN",
"pad_mm": 0.6,
"drill_mm": 0.3,
"lands": [
"Q4:9"
]
},
{
"x_mm": 108.9769,
"y_mm": 72.289499,
"net": "BRAKE_ON",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U15:6"
]
},
{
"x_mm": 83.2,
"y_mm": 112.75,
"net": "SPI_MISO",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U16:17"
]
},
{
"x_mm": 80.25,
"y_mm": 108.8,
"net": "USER_BUTTON_N",
"pad_mm": 0.5,
"drill_mm": 0.3,
"lands": [
"U16:30"
]
}
]
}
}