π― v0.18.0 is out β the router now honors your netclass clearances (for real) #413
drandyhaas
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hey everyone! π
New release β v0.18.0. Where the 0.17.x line was about making the AI planning tab match the command line, 0.18.0 fixes something the router has quietly gotten wrong on multi-netclass boards for a long time: it now routes to your actual netclass clearances, instead of routing everything at one flat clearance and then rewriting your design rules so DRC wouldn't notice.
If your boards only use the Default netclass, nothing changes for you β this is the exact same router you already have. But if you use netclasses like SMA, USB, 50Ξ©, or a wider power class with their own clearances, this is a real correctness upgrade.
π¦ How to get it: 0.18.0 isn't in the Plugin & Content Manager yet β that update has to be approved by the KiCad maintainers and propagate out to their servers. For now, download KiCadRoutingTools-0.18.0.zip from the Releases page, then in KiCad open Plugin and Content Manager β Install from Fileβ¦ and pick that zip. (If you're on an older version, you can update to the latest 0.17.x the normal way through the PCM, then drop the 0.18.0 zip on top.)
π― Your netclass clearances are now respected
KiCad lets you give each net class its own clearance β maybe your SMA nets want 0.35 mm while your ordinary signals are happy at 0.1 mm. The router now reads those clearances straight from your board (its
.kicad_profile) and honors them the way KiCad's own DRC does: between two nets it keeps the larger of their two clearances. Route a signal past an SMA trace and it automatically backs off to the SMA clearance β no setup required.You can also set them explicitly from the command line with
--net-clearances, and nets from different classes can now be routed together in a single call.π§Ύ No more rewritten design rules
Here's the part that matters even if you never think about clearances. Previously, on a multi-class board the router would route everything at one flat clearance and then quietly clamp your netclass rules down in the output file so that DRC would pass. The board looked clean β but it actually violated your own design rules, sometimes in a hundred-plus spots, hidden behind rewritten rules.
That's gone. The router no longer edits your netclasses. What DRC shows you is now the truth about your board. And if a net genuinely can't be routed at your real clearance, the router leaves it for you rather than shipping a rule-violating board that grades green.
π§° Also in this release
--keep-input-copperβ tells the cleanup passes to treat copper that was already in your input file as read-only, so hand-routed traces you feed in are left exactly as you drew them.A note on honesty: on a very dense multi-class board this release can look like a small step back β a few nets it used to "complete" may now be left unrouted. That's the point: those nets were never actually routable at your real clearances, and the old behavior was hiding shorts under rewritten rules. We'd rather show you the true state of the board. (Closing the genuine routing-quality gap on those dense boards β routing all of them at spec, like a careful human does β is tracked for a future release.)
As always, bug reports and feedback are hugely welcome β open an issue or just reply here. Happy routing! π
All reactions