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

docs/power-routing-check.json

{
  "board": "dist/manufacturing/kicad-project/pd1180-epr-r0.3.kicad_pcb",
  "fabrication_basis": {
    "layers": 4,
    "finished_thickness_mm": 1.6,
    "copper_oz": 1,
    "signal_minimum_mm": 0.09,
    "power_corridor_nominal_width_mm": 2.4,
    "power_corridor_clearance_mm": 0.16,
    "parallel_via_size_mm": 0.6,
    "parallel_via_drill_mm": 0.3
  },
  "ipc_2221_external_estimate": {
    "temperature_rise_c": 20,
    "current_a": 6.12,
    "note": "Analytical screening only; inner-layer sharing, clipped geometry, connectors, and thermal environment require prototype validation."
  },
  "thermal_via_tie_segments": 40,
  "nets": {
    "PD_VBUS": {
      "routed_segments": 130,
      "thermal_via_tie_segments": 0,
      "verified_sense_branch_segments": 0,
      "corridor_eligible_segments": 130,
      "segment_layers": [
        "F.Cu",
        "B.Cu",
        "In1.Cu",
        "In2.Cu"
      ],
      "reinforced_corridors": 111,
      "corridor_eligible_length_mm": 161.784,
      "corridor_covered_length_mm": 148.475,
      "corridor_coverage_ratio": 0.918,
      "vias": 20
    },
    "EFUSE_IN": {
      "routed_segments": 35,
      "thermal_via_tie_segments": 4,
      "verified_sense_branch_segments": 0,
      "corridor_eligible_segments": 31,
      "segment_layers": [
        "F.Cu",
        "B.Cu"
      ],
      "reinforced_corridors": 32,
      "corridor_eligible_length_mm": 30.617,
      "corridor_covered_length_mm": 30.617,
      "corridor_coverage_ratio": 1,
      "vias": 4
    },
    "VMOTOR": {
      "routed_segments": 437,
      "thermal_via_tie_segments": 16,
      "verified_sense_branch_segments": 0,
      "corridor_eligible_segments": 421,
      "segment_layers": [
        "F.Cu",
        "B.Cu",
        "In1.Cu",
        "In2.Cu"
      ],
      "reinforced_corridors": 383,
      "corridor_eligible_length_mm": 391.285,
      "corridor_covered_length_mm": 363.624,
      "corridor_coverage_ratio": 0.929,
      "vias": 37
    },
    "MOTOR_A1": {
      "routed_segments": 86,
      "thermal_via_tie_segments": 4,
      "verified_sense_branch_segments": 11,
      "corridor_eligible_segments": 71,
      "segment_layers": [
        "F.Cu",
        "B.Cu",
        "In1.Cu",
        "In2.Cu"
      ],
      "reinforced_corridors": 71,
      "corridor_eligible_length_mm": 83.078,
      "corridor_covered_length_mm": 83.078,
      "corridor_coverage_ratio": 1,
      "vias": 13
    },
    "MOTOR_A2": {
      "routed_segments": 85,
      "thermal_via_tie_segments": 4,
      "verified_sense_branch_segments": 0,
      "corridor_eligible_segments": 81,
      "segment_layers": [
        "F.Cu",
        "B.Cu",
        "In1.Cu",
        "In2.Cu"
      ],
      "reinforced_corridors": 79,
      "corridor_eligible_length_mm": 94.016,
      "corridor_covered_length_mm": 92.875,
      "corridor_coverage_ratio": 0.988,
      "vias": 10
    },
    "MOTOR_B1": {
      "routed_segments": 44,
      "thermal_via_tie_segments": 4,
      "verified_sense_branch_segments": 11,
      "corridor_eligible_segments": 29,
      "segment_layers": [
        "F.Cu",
        "B.Cu"
      ],
      "reinforced_corridors": 33,
      "corridor_eligible_length_mm": 60.099,
      "corridor_covered_length_mm": 60.099,
      "corridor_coverage_ratio": 1,
      "vias": 13
    },
    "MOTOR_B2": {
      "routed_segments": 27,
      "thermal_via_tie_segments": 4,
      "verified_sense_branch_segments": 0,
      "corridor_eligible_segments": 23,
      "segment_layers": [
        "F.Cu",
        "B.Cu",
        "In1.Cu"
      ],
      "reinforced_corridors": 26,
      "corridor_eligible_length_mm": 40.555,
      "corridor_covered_length_mm": 40.358,
      "corridor_coverage_ratio": 0.995,
      "vias": 8
    },
    "MOTOR_A1_OUT": {
      "routed_segments": 23,
      "thermal_via_tie_segments": 0,
      "verified_sense_branch_segments": 11,
      "corridor_eligible_segments": 12,
      "segment_layers": [
        "F.Cu",
        "B.Cu",
        "In1.Cu"
      ],
      "reinforced_corridors": 10,
      "corridor_eligible_length_mm": 25.32,
      "corridor_covered_length_mm": 25.32,
      "corridor_coverage_ratio": 1,
      "vias": 7
    },
    "MOTOR_B1_OUT": {
      "routed_segments": 22,
      "thermal_via_tie_segments": 0,
      "verified_sense_branch_segments": 12,
      "corridor_eligible_segments": 10,
      "segment_layers": [
        "F.Cu",
        "In1.Cu"
      ],
      "reinforced_corridors": 10,
      "corridor_eligible_length_mm": 16.4,
      "corridor_covered_length_mm": 15.624,
      "corridor_coverage_ratio": 0.953,
      "vias": 4
    },
    "SENSE_A": {
      "routed_segments": 54,
      "thermal_via_tie_segments": 0,
      "verified_sense_branch_segments": 17,
      "corridor_eligible_segments": 37,
      "segment_layers": [
        "F.Cu",
        "B.Cu",
        "In2.Cu"
      ],
      "reinforced_corridors": 36,
      "corridor_eligible_length_mm": 45.571,
      "corridor_covered_length_mm": 45.571,
      "corridor_coverage_ratio": 1,
      "vias": 4
    },
    "SENSE_B": {
      "routed_segments": 46,
      "thermal_via_tie_segments": 0,
      "verified_sense_branch_segments": 10,
      "corridor_eligible_segments": 36,
      "segment_layers": [
        "F.Cu",
        "In2.Cu"
      ],
      "reinforced_corridors": 36,
      "corridor_eligible_length_mm": 46.529,
      "corridor_covered_length_mm": 46.529,
      "corridor_coverage_ratio": 1,
      "vias": 5
    },
    "BRAKE_RETURN": {
      "routed_segments": 40,
      "thermal_via_tie_segments": 4,
      "verified_sense_branch_segments": 16,
      "corridor_eligible_segments": 20,
      "segment_layers": [
        "F.Cu",
        "B.Cu",
        "In1.Cu",
        "In2.Cu"
      ],
      "reinforced_corridors": 24,
      "corridor_eligible_length_mm": 27.92,
      "corridor_covered_length_mm": 22.712,
      "corridor_coverage_ratio": 0.813,
      "vias": 7
    }
  },
  "errors": []
}