Via stitching tracks

Hi folks,

I know I can stitch zones but what about stitching tracks ?

I have some 3mm wide tracks on top and bottom layers, I can stitch along the centre line of the track no problem but when I try and go off the centre line the track is moved to line up with the via I just added.

Is this a configuration/setting issue or just a limitation of KiCAD ?

I just experimented a little bit with this, and KiCad likes to put vias on the center line of tracks very much, even when I turn Pcbnew / Preferences / Preferences / Pcbnew / Magnetic Points off for both pads, tracks & graphical.

I made a 5mm wide track and as soon as I place a via that is inside the track boundaries, the via snap to the centerline of the tracks.

I have never seen behavior that a track is moved just by placing via’s. Tracks can be moved by the interactive router, but I assume that is not what you mean.

What does work is placing some via’s in empty space, (or with the array tool) and then move them afterwards.

Another simple workaround is to not draw a single 3mm wide track, but draw a few narrower and overlapping tracks. It is a bit of an ugly workaround, and KiCad likes to clean this up, so if you want to keep it as you draw it, you have to turn off KiCad / Route / Interactive Router Settings… / Options / Remove Redundant Tracks.

But when tracks get to 3mm wide it may be getting time to start using zones instead of tracks. A screenshot of what you are trying to achieve can be useful here. Maybe somebody here has a better solution for the overall problem.

Are you aware there are scripts for via stitching? I have not used them myself, but from what I’ve read on this forum they are apparently useful.

1 Like

I experimented, too. Snapping can be suppressed by keeping Shift pressed. However, the tracks are indeed broken.

Hi Paul,

I’ve not tried any of the scripts at all, to be honest I think I would be OK even without the vias, it was just a belt and braces measure really. I have a row of vis added long the centre line of the track. I didn’t want to miss the opportunity to learn a quick trick if there was one available.

Placing the via in empty space and then moving over my track seems to work very well for my needs, thanks for that suggestion.

I noticed that too and also noticed that the track is then snapped to the via, at least in my case it did.

Placing vias in the track center and then selecting and moving them also works and they are in the line.

Ah yes, good point, and I can also make a stitch pattern off track and then duplicate it onto my track :smile: that gives me just what I was looking for, thanks for the help

I am not sure how DRC will react to stitching vias on tracks. Vias for stitching zones were introduced to v5 but they might assume a zone on both sides.

Not sure what will happen if you now have a track on both sides but the via is not really connected to it by being placed off center (and without a track endpoint in it). It could be that the via will loose its net connection this way.

Didn’t checked that fully, but if I put via out of track (because there is GND zone via gets GND net) and then move on the track then even I place it not at track center via gets net from track.
So probably KiCad assumes it is connected.

But the premise of OP is that there is no Zone right? Just two tracks and the via is placed off center for both of them.

Correct, the vias are marked with the correct net when I move them onto the track, so it looks OK as far as I can tell.

Right. But I just said that even via gets net from zone, later, when moved onto track (not its center) it gets net from track (different net then zone net). It just happened that at PCB I have open to do some checks I have zone. I assumed that for via it is more difficult to change net that only to get net.

This can get frustrating when I am trying to take high currents across layers
http://circuitcalculator.com/wordpress/2006/03/12/pcb-via-calculator/

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.