In general, the direction we are going is for the human user to “plot a course” and for KiCad to take care of the details. So, we’re working on features that make it easier and faster to use the router, to route multiple things at once, and to add automation where that automation is relatively straightforward, predictable, and can be implemented without a bunch of settings that need to be configured.
It’s on the agenda. It would be relatively straightforward to add today and perform similarly to the diff pair router, but there are some key issues with the diff pair router that need to be resolved first in order to get a nice user experience and reliable routing.
My comment was re-enforcing Davidsrsb’s comment in reply to Pedro_uno.
A decent autorouter requires a lot of setting up, and to set up, requires a lot of knowledge and experience and time. Using an autorouter is a trade-off. The question asked by the experienced user is: which is easier and quicker, setting up the autorouter to do its thing, then fine tuning at the end (if the result is satisfactory), or just laying out the board?
A beginner, seeing an autorouter button, will probably just press the button and expect magic to happen.
When the magic doesn’t happen, the questions will start, questions reflecting a lack of knowledge and experience in PCB design.
This is certainly not a comment condemning unknowing beginners, it is a comment that the beginners should learn how to design a PCB before they learn how to drive an autorouter.
Hi @jmk thank you for the clarification. now it makes sense and it has full of common sense as well.
yes I have experience , in my far-past, in the use of Autorouting at industrial level. Yes it’s not done with the wizard stick. So these kind of questions will certainly arise.
Placement takes up far far more time than routing. It’s actually enjoyable for me as it’s a multi-dimensional constrained optimisation problem which sometimes requires going back to the circuit design and choice of components.
I mention it because it seems if you’re were hoping to ward off dementia by sudoku it’s not good enough. Neither is manual or guided routing I suspect. But placement might exercise enough areas of the brain. At least I hope so.
My point, which I didn’t make clear, is that autorouters are in fact actively bad at the kind of over-constrained boards that represent the majority of projects that KiCad gets used on (2-6 layer boards with large through vias). This is true even for the Big Name™ PCB programs–there is no amount of programming skill that will fix that.
So, the question is: Do the developers want to spend an extraordinary amount of time on an autorouter that will benefit a very small subset of users (those with 10+ layer PCBs and blind/buried vias) or do they want to spend that same amount of time on things like human-guided bus/array routing that could be used by a lot of users?
Yes I understand your points. Although why not also invest in the “few” but important users that are using that 10+Layers? I mean, I understand that’ snot the case for many hobbyists, but also many OpenSources projects didn’t expect to become an important reference with which one can really makes his choice. Even small companies that can’t afford Zillions and perhaps they are happy making donations. I just told my opinion. So, it’s not a “law of physics”
I wouldn’t compare an autorouter with just some Open Source project which happens to become a realistic choice. Autorouting requires knowledge of problem domain and programming techiques – AI – which few have. I would compare it with image or speech recognizion or natural language processing. These are developed by multibillion companies, not by enthusiasts or even average software professionals or companies.
I agree with @eelik here. Also take into account that back in the day (and maybe now) those multibillion companies would buy-out other companies with the sole reason (or a major contributing reason) of getting their hands on the autorouter. Good autorouters are a specialized enough discipline that the big guys know that even they may not have the in-house talent for them so they have to buy the talent.
I just tried and discovered that using Kicad 6.0.6 I could copy a laid track (meaning a piecewise linear set of straight-line track segments that had already been routing in pcbnew) by first highlighting each segment with the mouse and the < Shift > key and copying and pasting the entire set of segments in one copy and one paste. So making 3 parallel tracks could be as easy as copying one big track once, pasting it twice, and editing the individual pieces for a long, long time to make them close and parallel but not intersecting. (I just did the copy and paste, but not the editing.)
I edited my comment above to explain it was the < Shift > key that I held down, not the < Ctrl > key as I had first thought.
Thank you, paulvdh, for your alternate method.
I am wondering if the market for these high end autorouters is shrinking.
I first met autorouters in the days of 4 layer triple Eurocards stuffed full of glue logic.
Then the industry was grabbed by designs with big data buses, like PC motherboards.
Lately, I see far fewer PC motherboard suppliers and a shift to SoCs with far less tracking on the PCB.
In this context, impedance modeling is a greater priority
For many users this route one track at a time assistance is more useful than the effort of setting up a good autorouter rules with track priorities. There is no magic software that can examine the schematic and identify the critical tracks to route first automatically.