Electronics > KiCad

Best way to implement jumpers in KiCad?

<< < (2/2)

simon mugo:
Well said. You have to ensure that the footprints and the symbols are perfect before you introduce the netlist generation. It is also good to learn to customize your own PCB footprints and symbol. They will go a long way to ensure that you are safe.

Still no good way to achieve this?

There's a not-so-ugly workaround for through hole wire jumpers (mainly used to cross traces on single- or double-layer boards)

Place a two-pad footprint, where the pads are through holes having the same pin number, then manually assign the necessary net to each of the pads manually in the properties dialog, then connect both ends of the trace that has to cross over other traces to the pads.

By this point, it's all fine except that you still have the ratsnest line between the pads: kicad thinks that the pins with the same number are not connected (the reason of which is beyond me). The workaround I mentioned, and that was mentioned in one of the previous posts, is to connect the pads on a virtual layer that will be ignored in fabrication.

But what do we do for SMD jumpers, for which zero-ohm resistors are used? Everything said above applies to them, except that they cannot be connected in a different layer, unless you place vias under the pads, but I'm not sure that's even going to work, and besides, how do we exclude them from fabrication (unless it's a DIY board)?

In Proteus, for example, you can simply place a footprint (doesn't have to be in the schematic, which is correct) with two pads with the same pin number, which are immediately treated as internally connected, and then simply connect a trace to them as you need, and they automatically assume the net of the trace that you connected. It glitches when you use more than one jumper on the same trace, but that's a different story. I imagined something similar would be possible in KiCad, but apparently it takes years (there's that ages old issue) and great courage to decide whether the pins with the same number are connected internally in the device or not. I have an easy answer: check the datasheets. Yes they most definitely are. If you don't want them connected, use different pin numbers, that's it.

Just dropped by, no longer an expert (never was).

How about treating it the way certain antenna patterns are treated.  Make your footprint out of copper and put two pads on the same net.  I know this is easy to do but don't recall how.  Sorry.


--- Quote from: EE-digger on January 18, 2024, 11:08:46 pm ---How about treating it the way certain antenna patterns are treated.  Make your footprint out of copper and put two pads on the same net.  I know this is easy to do but don't recall how.  Sorry.

--- End quote ---
There will still be an unsatisfied ratsnest connection between these pads that DRC will complain about. It wants you to connect both of those pads to the net with actual traces -- avoiding which is exactly the goal of creating wire jumper/link footprints. KiCad does not treat pads with the same number as "internally connected", nor there is a way to assign multiple pads to the same pin.

There is an EIGHT YEARS OLD issue in the KiCad issue tracker: https://gitlab.com/kicad/code/kicad/-/issues/2004

Implementing this is obviously trivial:

--- Code: ---if (pad[a].pin_number == pad[b].pin_number) {
    mark_connected(pad[a], pad[b]);

--- End code ---
, so I believe there is some strong opposition among the developers, which I cannot explain, to this very basic feature that has at least two very obvious real-life use cases, whereas I can barely imagine any use case that would be broken by treating pins with the same numbers as connected.

If having a two-layer board and wanting ti use jumpers...

One way could be to add an extra layer "JUMPERS", define (larger) vias and then use that layer for routing where jumpers is required.

The jumper layer is not used for board fabrication but the traces can be used for documentation purposes with manually added jumper labels.

My 5 cents.


[0] Message Index

[*] Previous page

There was an error while thanking
Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod