3 ms·
Kicad dev here, the autorouter was never part of KiCad. It was a third party tool that had to be separately installed, KiCad's only integration was a button. (T
by delfinom 4y ago
Kicad dev here, the autorouter was never part of KiCad. It was a third party tool that had to be separately installed, KiCad's only integration was a button. (There is one GPL-violating fork of that autorouter that has a kicad plugin that adds that button back)
The real problem is that third party tool went abandoned for years due to a major CAD company claimed copyright ownership due to the author's former employment with them (the traditional ownership of IP in employment).
That former author of the router, even though he disputed the timeline of the code's creation being outside employment, basically said "I'm in retirement on a fixed income, fuck this I ain't dealing with it" and abandoned the router. Then over the last 8 years there were random forks that quickly petered out because well, it's all very very niche software.
The KiCad project isn't touching that code due to (a) it being in Java when everyone is a C/C++ domain expert (b) the legal claims by that big company basically make that specific codebase poison so we need to stay away from it.
As for creating a new autorouter, it has come up multiple times. The problem is, anyone can create a autorouter but a good one is a whole different ballgame The best way to describe the problem is while the PCB layout is 2D. Routing is actually a multi-dimensional problem requiring input of all kinds of parameters to do it good. It's just we are a small group of electrical engineering oriented guys and we just don't have the interest in spending our limited free time on it.
We are totally open to somebody contributing it, but alas, everyone expects us, the active contributors to do it instead. You know, that horrible pitfall of open source.