Scary thing with pin-names and net list

I made a part.

some pins where named GND

i did put tthe part in the schematic.

i did not connect one single pin to anything, i just wanted to see the footprint in layout.

so i generate netlist
go to layout import the netlist

and voila

all my GND pins (pin name = GND) became part off the GND net even tough not connected anywhere in schematic.

this surely must be a bug.

dangerous assumption that makes the tool start to live its own life.

anyone else noticed this ?

Hidden pins using global signal names has long been an issue, eg

I personally donā€™t like hidden pins at all

2 Likes

it is of course a major bug

someone was just not correct in their thinking if they consider this a feature

scares the living daylight out of me.

Now i realize that I have no idea anymore what other pin-names i unknowingly have named to ā€œglobalā€ names before i came aware that kicad had a life on its own and wanted to secretly take part in the design decisions behind the scenes.

this just sucks big time.

Relax - just donā€™t hide the pins and those pin labels/names wonā€™t become global nets when you import the symbolā€¦

You must have placed a GND symbol in your schematic, power symbols are made with hidden pins to work how they do.
Just donā€™t name pins in your symbols with the same label/name as the power symbol pins labels youā€™re going to use if you donā€™t want those surprisesā€¦

It was/is quite useful for people and as with the cvpcb hack we have a choice here and if you chose wisely you wonā€™t get into trouble.

1 Like

ok

but i have not hidden them

made symbols the way i always had done,

not that i have done it for a long time in kicad

fully visible.

i double check what visible flag this could be.
never seen it

yes I use the GND symbol in schematic, but not hidden bins afaik

What kind of pin on a device is labeled ā€˜GNDā€™ btw?
They have numbers or letters or a mix of thoseā€¦ but ā€˜GNDā€™?

pin name
not pin-number

Open it with the symbol editor and check the properties of the pinā€¦ itā€™s grey, isnā€™t it?

nope

i found the visible flag (never noticed it before)

its visible, not grey

normal pin

it still took a trip to lala land

Is the pin of your device set up like this or different?

That there is a global net called GND is because of this (yours should be similar):

But pin names should never cause the pins to connect to a global netā€¦

Try it.

Normally you would not notice if you connect before forward annotate the netlist.

Not within the next 8 hoursā€¦ gotta catch some sleep nowā€¦ already past 2 hereā€¦ :worried:

:sleeping:

1 Like

This is a bit more complicated. I have been used BZR6651 (recent source).

I have made test component with two visble GND pins. Even if they had Power Input pin type, they are not tied to the one GND net. However, KiCad create two separate default nets: Net-(U1-Pad1) and Net-(U1-Pad2). This can be avoided by setting netlist importer option Single Pads Nets as Delete. Lonely nets then will be removed.

Situation has change when these pins will became not visible and(!!) have Power Input pin type. This way both will be tied to GND net. In further investigation, I didnā€™t observe this automatic behavior when pins have Power Output type, even when they were hidden.

2 Likes

complicated indeed

mine are power inputs as they are gnd pins

but, i closed kicad and opened it again and now the problem is gone by itself

seems kicad only made this association (showing ratsnets to gnd) directly after i imported the new netlist and got to place the new footprint.

well, its not unusual, that pcbnew changes his opinions if you exit and enter.

seems the ā€œbugā€ was temporary

2 Likes

Happened again but i was aware this time.

brand new unconnected (pulse W3006 wlan BLE antenna)
not connected anywhere,
no GND pins or something reserved names

ratsest show directly after import of new netlist.
see picture.
exit and enter pcbnew and its gone.

Thatā€™s OpenGLā€¦ do you have the same behavior in Default canvas?

I use Cairo

I try to remember to test next time a component comes in.

1 Like