kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #29482
Fwd: [RFC] new connectivity algorithm - testers needed
---------- Forwarded message ----------
From: Heikki Pulkkinen <hei6mail@xxxxxxxxx>
Date: Sat, May 20, 2017 at 1:49 PM
Subject: Re: [Kicad-developers] [RFC] new connectivity algorithm - testers
needed
To: Tomasz Wlostowski <tomasz.wlostowski@xxxxxxx>
Hi Tomasz,
Just tested, sorry to say, that it was hard. Mouse wheel zoom and clicks
does not work at all.I am using Fedora 24. One notice is, that It is taking
so much processor time.Of course screen recorder is taking it's own part,
but even without it it is doing something all the time and taking 100% of
one processor time. I can only remove one via with my viastitching testing
board, and it seems to work same way as my tool so, connectivity seems to
work, but hard to say without another tests.And I am not going to say that
if it is working same way as my tool, it is the right way. If there is
possibility just pull from branch that is based current master branch and
only connectivity algo is changed, it would be good to see what happens
when it is rebased.
Regards
Heikki
https://youtu.be/tBiOYDFt5D0
On Tue, Apr 25, 2017 at 6:23 PM, Tomasz Wlostowski <
tomasz.wlostowski@xxxxxxx> wrote:
>
> Hi all,
>
> I've pushed the branch [1] containing a rewrite of the pcbnew's
> connectivity algorithm. By this algorithm, I mean:
> - computing the ratsnest and checking if all connections are complete
> - propagating net codes from the pads to the tracks/vias
> - removing unconnected copper islands in zones
>
> Compared to the old algorithm, it introduces several new
> features/improvements:
> - no limitations in via/zone connections - you can have loose (stitching
> vias), overlapping copper zones or zones connecting pads/vias without
> direct track connections.
> - items no longer loose their nets when not connected to any pad.
> connecting to a new pad causes automatic net code propagation.
> - the algorithm makes zero assumptions about connectivity of the items,
> vias in particular. This removes another obstacle importing designs from
> other tools (neither Eagle nor Altium make difference between stitching
> and 'ordinary' vias).
> - ratsnest can be calculated between any sort of copper items (not only
> pads). This is a must-have if we want to have copper arcs or arbitrary
> copper shapes in the future.
> - show local ratsnest works for the GAL
> - marking missing connections between overlapping objects on different
> layers
> - free via placement tool
>
> The branch also contains a bit of refactoring of the base pcbnew code:
> - hidden DLISTS behind iterators. Now you can use ordinary C++11 range
> based for to iterate over board's primitives. This is the first step
> towards cleanin up the storage model.
>
> As with all new stuff, there are some still some issues to sort out:
> - the legacy autorouter is currently disabled, as it relies a lot on the
> old connectivity algorithm's data model. We're working to migrate it to
> the new one alongside porting it to the GAL canvas.
> - there's no automated via stitching tool yet. I'm waiting to review
> Heikki's patches for the automagic via stitcher.
> - the message panel does no longer show the 'links' and 'nodes' counters
> as the new ratsnest has no direct counterpart for these. Is there any
> purpose for these counters other than diagnostics/debug?
> - some code formatting/cleanup may still be necessary
>
> @Heikki - once again, the sooner you'll publish your entire via
> stitching code, the higher the chance you'll get it integrated in Kicad.
> We can help with that.
>
> I encourage you to check out the branch, build it and test with your
> designs. In particular, if you tried zone stitching with single-pad
> components, try replacing them with vias and check if the board
> connectivity is correctly resolved and there are no DRC errors.
>
> I'll send some boards demonstrating the new features soon.
>
> Your feedback will be greatly appreciated!
>
> Cheers,
> Tom
>
> [1] https://github.com/twlostow/kicad-dev/tree/tom-connectivity-apr24
>
> PS. The final branch will also support per-net rat line visibility and
> colors as a bonus ;-)
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help : https://help.launchpad.net/ListHelp
>
References