Freerouting
What Is Freerouting?
Freerouting is an open-source autorouter for printed circuit boards (PCBs). Its README describes it as "an advanced autorouter for all PCB programs that support the standard Specctra or Electra DSN interface." Your design tool exports the board as a Specctra design (.dsn) file, Freerouting routes it, and Freerouting writes the result to a Specctra session (.ses) file that the design tool imports. Like other autorouters, it routes a board whose components are already placed.
Freerouting is licensed under GPL-3.0. The project provides installers for Windows, Linux, and macOS, and a .jar file that runs on Java. The README's Java instructions specify version 25, so check the requirements for the release you download.
How to Use Freerouting With KiCad
In KiCad 6.0 and newer, you can launch Freerouting from KiCad through a plugin. Freerouting's integration guide lists these steps:
- In KiCad, open Tools > Plugin and Content Manager, search for the Freerouting plugin, and install it.
- Open your board in the PCB Editor. To try a fresh run, work on a copy of the board and remove the existing tracks and vias.
- Start Freerouting from Tools > External Plugins.
- Wait for Freerouting to finish. The plugin imports the routing results into the existing KiCad board.
Freerouting also runs from the command line, for other design tools or scripted runs. Its documentation gives java -jar freerouting.jar -de MyBoard.dsn -do MyBoard.ses to read a design file and write a session file, and --gui.enabled=false to run without the interface. Besides KiCad, the README lists integrations with Autodesk Fusion, Target3001!, EasyEDA, tscircuit, and pcb-rnd.
What to Check After Freerouting Finishes
A routed board connects the nets under the rules in the design file. Before you accept the result:
- Refill the copper zones. Zone fills made before routing are out of date, and KiCad's DRC can report wrong results on stale fills. Its DRC dialog can refill all zones before it runs.
- Run DRC and review unconnected items. Freerouting doesn't always finish. In A6M-Zero's test, it plateaued after 17 passes with 49 connections still open.
- Check the board against the schematic. KiCad's DRC can test for parity between the PCB and the schematic, which catches footprints and nets that don't match.
- Review what the rules don't cover. Impedance, return paths, length matching, and decoupling placement need an engineer's review, because a design rule check only tests the rules written into the file.
Freerouting's API and MCP Support
Freerouting offers a public API, currently in beta, with its root at api.freerouting.app/v1. The README says to request access for full functionality, and you can also host the API yourself. Freerouting also supports the Model Context Protocol (MCP), so AI coding assistants such as Cursor, Cline, or Claude Desktop can "query system status and auto-route boards on your behalf." Its MCP guide describes two setups: a hosted option through the public API that needs no local installation, and a local option that runs the routing engine on your machine. Its tools upload a .dsn file, run the routing job, and return the routed .ses file.
Freerouting's MCP support exposes its routing engine. A KiCad MCP server exposes the KiCad operations its developers implemented, which may include a connection to Freerouting.
Freerouting in AI PCB Layout Workflows
AI assistants can run Freerouting as one step of a larger workflow. In NextPCB's KiCad test, GPT-6 Astra exported a placed board to Freerouting and imported the result, and about 12 minutes later it had a routed board. Working only through KiCad's interface, it had drawn three trace segments in an hour. In A6M-Zero's test, Freerouting plateaued after 17 passes with 69 connections routed and 49 left open, and Claude Fable 5 completed the remaining connections. Part 2 of Quilter's GPT-6 Astra series compares the public Astra tests in detail.
Frequently Asked Questions
Is Freerouting Free?
Yes. Freerouting is open source under the GPL-3.0 license, with installers for Windows, Linux, and macOS and a .jar file that runs on Java. Its public API is in beta, and the README says to request access for full functionality.
Does Freerouting Place Components?
No. Freerouting routes a board whose components are already placed. Placement happens in your design tool before you export the .dsn file.
How Do I Use Freerouting With KiCad?
In KiCad 6.0 or newer, install the Freerouting plugin from Tools > Plugin and Content Manager, open your board in the PCB Editor, and start Freerouting from Tools > External Plugins. When Freerouting finishes, the plugin imports the routing results into the existing board. Refill zones and run DRC before you accept them.
What File Formats Does Freerouting Use?
Freerouting reads Specctra design (.dsn) files and writes Specctra session (.ses) files. From the command line, it can also write a routed .dsn file or an Eagle session script (.scr).
Can an AI Assistant Use Freerouting?
Yes. Freerouting supports MCP, so assistants such as Claude Desktop can send it a board and get the routed result back. In NextPCB's KiCad test, GPT-6 Astra used Freerouting to route a placed board. The routed result still needs zone refills, DRC, and an engineer's review before you accept it.
Does a Fully Routed Board Mean the Design Is Done?
No. Routing connects the nets under the rules in the design file. You still need to refill zones, run DRC, check the board against the schematic, and review requirements the rules don't capture, such as impedance, return paths, and decoupling.
Related Terms
Autorouter · KiCad · KiCad MCP Server · Design Rule Check (DRC) · Net Class
Relevant Resources
- From Freerouting to DRC: Eight Public GPT-6 Astra PCB Tests
- Can LLMs Design PCBs? GPT-6 Astra and AI PCB Layout Automation
- The PCB Autorouter Was the Right Idea. Completion Rate Was the Wrong Target.
Sources
A6M-Zero. "This PCB Is Brought to You by Fable 5." September 4, 2026. https://a6mzero.com/posts/this-pcb-is-brought-to-you-by-fable-5/.
Freerouting. "Command Line Arguments." GitHub. Accessed October 20, 2026. https://github.com/freerouting/freerouting/blob/master/docs/command_line_arguments.md.
Freerouting. "Freerouting." GitHub repository. Accessed October 20, 2026. https://github.com/freerouting/freerouting.
Freerouting. "Integrations." GitHub. Accessed October 20, 2026. https://github.com/freerouting/freerouting/blob/master/docs/integrations.md.
Freerouting. "MCP." GitHub. Accessed October 22, 2026. https://github.com/freerouting/freerouting/blob/master/docs/API/MCP.md.
KiCad. "PCB Editor." KiCad 10.0 Reference Manual. Accessed October 22, 2026. https://docs.kicad.org/10.0/en/pcbnew/pcbnew.html.
Quilter. "From Freerouting to DRC: Eight Public GPT-6 Astra PCB Tests." October 27, 2026. https://www.quilter.ai/blog/gpt-6-astra-pcb-test-results.
Zheng, Carmen. "Can GPT-6 Astra Automate PCB Routing? Don't Panic, AI Isn't Replacing PCB Designers Yet." NextPCB, September 2026. https://www.nextpcb.com/blog/gpt-6-astra-kicad-pcb-routing-test.





.webp)