Nets have gone haywaire

The real bug report (this specific problem in this project) was confirmed and marked with High priority. But it’s difficult to know if a possible fix would have prevented your problem, because no one knows how it actually happened. JP seems to have done some guesswork.

You may be also interested in:

  • place the wire to bus entry symbol,
  • add wire from its one end,
  • add next wire from the same end.

You have no dot but you have connection.

Edit:
Of course it is not a connection of 3 wires but looks for me like there should be a dot.

I am unsure i understand what you describe. Could you post a screenshot?

I had to put holes in two QTouch keys so I have to connect them to keys.
I could extend (at schematic) all keyboard to have a place at wire not under the net name but simpler was to connect as is.
H1 and H2 are connected even at schematic you don’t see dots.

BUS stubs are something of a special case, as they are a visual helper, rather than a connection.
The Net name is what gives the connections here, the whole BUS graphics can be deleted, and the electrical info does not change.

If you start treating a bus stub as a literal wire, you would join K6,K11, K7,K10 etc, unless you add even more tests…

Yes, usually you would delete a wire, which would then remove the dot.
If the Sw allows any dot removal, then clean-ups seem to be required & they differ for 3 & 4 ways.
Auto-cleanup would remove the corners on the straight line, & join them, which leaves the lone wire.
Should that delete to the next corner, or maybe smarter is to shorten by 1 grid unit, so the end is now clearly dangling ?
Users can then delete or extend, depending on what they need.

Default cleanup on 4 way, would be to remove corners to make 2 now crossing wires.
That suggests : doing all possible corner cleanups first, then checking if a dangling end is created, and if so, nudge the end 1 grid unit shorter.

This case was discussed a while ago and we decided that bus-wire connections as well as bus-bus connections would not generate junction dots. They also do not break the wire they connect to.

2 Likes

Thanks for that info, I might have made a bug report…

Amazing!! @Sparky_Labs found a serious bug, but quite the corner case and everybody scrambled around to see what was going on, 15 Hours ago the bug got fixed, really cool job guy!!! This is why I love KiCAD and the community!

Take that Eagle, Altium, OrCAD ! :stuck_out_tongue:

https://forum.kicad.info/t/kicad-growth-numbers/19138/27

2 Likes

This is why I abandoned circuit studio having paid ÂŁ1000 for the licence and ÂŁ100 for a further subscription. I decided that KiCad was about as good and that contrary to CS KiCad IS being developed. CS has been abandoned effectively, but they are still selling licences.

1 Like

I have to remind that we still can’t be sure if the way how JP could reproduce a similar situation is the same way Sparky_Labs did it. But at least one bug was fixed, and if the problem comes again, we can go through the same process :slight_smile:

1 Like

Lets hope v6 will get rid of the “connection” entity in the file format and determine where to draw junction dots based on the connectivity information. This would be the full fix.

That is the most radical move which I have proposed. As far as I can see, the only caveat would be that there might be situations when the user wants to force a junction where one can’t be inferred implicitly, for example with non-horizontal/vertical wires which don’t hit every grid (or even coordinate) point. Even that could be taken care of if junctions would be found by “near enough” principle instead of “same coordinates”. Or a forced junction could be a property of a wire end and use “near enough” principle.

I can’t see any reason to allow free-floating junction dots. But they aren’t a very big problem. The biggest problem is an implicit junction which isn’t marked with a dot. The second one is a dot on top of two wires which actually doesn’t form a junction. Those two situation just MUST not happen IMO. Everthing else is secondary from a user’s point of view. But how that would be achieved is another question. Getting rid of dedicated junction items in implementation level would be the cleanest but also most far-reaching and radical solution, touching everything from UI to file format.

I know. That is why I have written:

But it is not 100% true. Bus stubs are not only graphics - there is some connection logic behind them. If net label is not at the wire end then you have a square at wire end showing it is not connected. When you put bus stub there then square disappears - in that sense bus graphics is not only graphic.
I think it would be possible that if bus stub touches two wire segments then dot is placed there. Of course bus stubs would still not be a wires so if they touches each other at bus that makes no connection.
But I have written about that dot only by association with what is discussed here and what I noticed last week. I don’t think it is in any way important.

You write:
Wire touches bus - no dot.
Bus touches bus - no dot.

But my case is:
Two wires touches bus stub.
From what you write I’m not sure if that case was also discussed. From my point of view it has a very little importance. I have written it only because I noticed the discussion about dots and remind what I noticed last week.

That’s worth considering.

  • One wire end and a bus end: no dot.
    • Similar to two wires ends: no dot.
  • Two wire ends and a bus end: no dot.
    • Similar to three wire ends: YES dot.
  • Three wire ends and a bus end: YES dot.
    • similar to four wire ends: YES dot.

So there’s some inconcistency in the “two wire ends and a bus end” case because the dot comes from wire ends and the bus end doesn’t count.

This one is more serious:
image

“a” doesn’t form a continous net, the bus entry is separate. “b” is one net, there are 3 endpoints in the same coordinates.

EDIT: well, isn’t it strange… I highlighted the nets, and in “b” the bus entry was highlighted, too. Now I can’t get it highlighted anymore.

EDIT2: Oops, 5.1 and 5.99 behave differently. Only 5.99 does what I described. No wonder because the bus system has changed.

I found another way to create a no-dot 4-way junction, reported here: https://bugs.launchpad.net/kicad/+bug/1848714.

Another problem with implicit junctions without dots: https://bugs.launchpad.net/kicad/+bug/1848720.

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