Why not assume pads with the same number are connected?
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
KiCad |
New
|
Unknown
|
Bug Description
Not bug, but suggestion to consider changing assumptions.
See attached screen shot. It is defined by me touch key placed at PCB.
To have clear DRC I had to connect many physically already connected pads in whole keyboard.
Assuming (didn't checked it) the pads are seen being connected if one of them covers the center of another to make such footprint being internally connected I would need to add many pads just to catch a center and have a new center 1/2 closer to corner and so on till having a center in the corner region. And the same for all pads you see here.
I didn't tried to use custom pads yet. May be it would help me here (I'm not familiar with any CAD program I suppose would be needed in preparing custom shape). But why to use something potentially complicated if my shape is simple set of rectangles - it should be possible to use only standard pads.
Things would be much easier if the KiCad would assume pads with the same number in footprint are just connected even if they are far away one from another. I don't see any serious argument against it.
During more then a year of my watching KiCad forum I sow few times people asking what to do with 4 pin touch buttons as the pin pairs are internally connected in button but KiCad wonts them to connect them again but they need to go across such connection with other traces. They are advised to change 2 layer PCB into 4 layer and make this connections at internal layer and then not send that layer gerber to manufacturer (don't know but may be it is not compatible with Gerber job file if they use it). The other example of such footprint is 3 pin battery to be soldered in PCB.
I would like to suggest considering taking following basic assumptions:
1. Pads with the same number in footprint are just connected - need not to be connected at PCB.
2. In connection line generation such pad set is (at the beginning) understood as one point. Then when drawing each line the nearest pad from set is selected.
3. The connection line disappears if what was pointed by it was connected to any other of pad set (got automatically if point 2 realized correctly).
4. User is allowed to connect pads in such pad set. It is not assumed being a redundant track to be removed even if "Remove redundant tracks" option is active.
tags: | added: pcbnew |
Changed in kicad: | |
milestone: | none → 6.0.0-rc1 |
Changed in kicad: | |
importance: | Undecided → Unknown |
status: | Expired → New |
Your example footprint would be solved by using a complex pad.
I've been thinking about your suggestion to assume same pad numbers are connected in the footprint and I like it. However, there may be some case I can't think of now that would break if we changed the assumption. It also prevents us from requiring board routing between pads where that would be desirable. In generally, it is good to avoid changing existing behavior if it doesn't actively break things.
Instead of a universal joining, I would prefer we do the following:
1) Add a new field for JumperID
2) If 2 pads in the same footprint share a net name and a JumperID, they will be considered joined for the purposes of ratsnest and drc
This would allow us to not only use this for the same pad number but also for dissimilar pad numbers where it is useful for single-sided board routing (e.g. high-power LED boards)