autoroute_pcb
Automate PCB trace routing by exporting board to Specctra DSN, running Freerouting, and importing results into a new untouched PCB file.
Instructions
Autoroute PCB traces using the Freerouting autorouter.
Exports the board to Specctra DSN format, runs Freerouting for automated
trace routing, and imports the results into a new PCB file. The original
board is never modified.
Requires Java 17+ and KiCad's pcbnew Python bindings. On first run,
the Freerouting JAR is auto-downloaded (~20MB).
Args:
pcb_path: Path to .kicad_pcb file
max_passes: Maximum autorouter optimization passes
num_threads: Thread count for routing
timeout: Max seconds to wait for routing (default: 600)
output_dir: Directory for output files (default: same as PCB)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| pcb_path | No | ||
| max_passes | No | ||
| num_threads | No | ||
| timeout | No | ||
| output_dir | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| routed_path | Yes | ||
| traces_added | Yes | ||
| vias_added | Yes | ||
| text_fields_fixed | Yes | ||
| drc_violations | No | ||
| drc_unconnected | No | ||
| keepouts_promoted | No |