Some KiCad schematic symbols have "invisible" pins.
They are at the heart of a system to reduce clutter in schematics, but they require KiCad users to master extra concepts.
Invisible pins are also important in how KiCad handles chips with multiple gates, e.g. the 7400. The "shared" pins on one of those chips, i.e. pins not part of the duplicated elements, can be dealt with using invisible pins. However, some users feel that invisible pins are a Bad Idea, and prefer to create alternative schematic symbols with no invisible pins.
This page has been checked to see that confusion in my brain (before 9 November, 2011) about the roles of pin names and pin and pad numbers hasn't led to errors here. I have a page with more on the pin/pad name/number confusion if you are really curious.
This is a slightly unusual page for the series with names beginning "co". Most of them are shorter than this one. But then again, most address simpler issues!
While an invisible pin does not show on the schematic, connections to it can be mandated. The mandate's requirements are met with power ports. Once power ports are properly attached to lines in the schematic, then rat's nest lines will be present when PCBnew is launched. The pins remain invisible on the schematic, but the rat's nest lines are visible indications of their existence.
What is the pin's name? You will need to know this, for an invisible pin. The pin number will also be important. For invisible pin, (apart from one in a power port), just as with visible pins, the pin's number determines where on the footprint the corresponding connection will be made, as us usual. A pin's number will determine that it maps to a pad of the same number.
(For the moment, our discussion continues to be about invisible pins excluding those on power ports.)
With invisible pins, the name of the pin is key to the extra twist which arises with invisible pins. As you cannot use a line to specify what attaches to the invisible pin, you need a different mechanism.
What connects to the (visible) pad (on the PCB) associated with an invisible pin (in the schematic) depends on the pin's name. Somewhere on the schematic, you create a line with a power port connected to it. Power ports usually (always?) have only one pin. (The line connected to the power port will often connect various not-invisible things, too.) That power port's pin should have the same name as the invisible pin. (A power port is usually (always?) given the same name as its pin. The number of a power port pin is largely irrelevant, unlike the number on all of the pins, visible and invisible, on an "ordinary" schematic symbol. Those numbers determine which pads will be used for which signals. The schematic symbol, remember, is "mapped" to a footprint by the .cmp file CVpcb creates.)
Anything connected to the line the power port is connected to will be interconnected, of course, as usual. In addition all of the pads associated with invisible pins (on non-power port schematic symbols) bearing the same name as the power port's pin will also need to be connected to the same net before the design will pass the DRC tool's tests. (Rat's nest lines will appear to encourage you to make those connections.)
Once you have digested that rather heavy meal, you have to press on, and take on board a further "complication"….
Even in "simple" situations involving invisible pins, there will probably be more than one invisible pin. A common case would be where, as in a 7400, you have an invisible pin named "Vcc" and another named "GND". (If you have several invisible pins with the same name, i.e. several pins named "GND", this is no problem. The things that take care of the first one, take care of the rest of the pins of the same name.)
To accommodate multiple invisible pins, with multiple names, you need multiple (unconnected) lines in the schematic, e.g. one bearing the "Vcc" power port, another bearing the "GND" power port.
Not "rocket science", but a lot of details to take in at first.
There will be times when you have, say, a 7400 with its "Vcc" and a 4011 which calls a comparable invisible pin "Vdd". Both of those invisible pins need to be connected to the positive side of the circuit's power supply. No problem! Just put a Vcc and a Vdd power port onto a single line on the circuit diagram. (When you encounter Vdd, you may aslo encounter Vss… which is another name for "GND", and the solution is the same, if you have both "GND" and "Vss" requiring chips in the same circuit.
We've looked at "two names for one signal". Now we'll look at "two signals, one name".
In some circuits, different parts of the circuit have separate (from each other) grounds. (And separate positive voltage supplies, too.)
KiCad comes with a power port named "GND" and one named "GNDA". (Those are the names of the power ports' pins, too, as you would expect.) So two separate grounds are not a problem, as long as you aren't dealing with invisible pins on schematic symbol from the stock libraries.
The circuits which need separate grounds often have different voltages associated with them so: one part of the circuit may operate from +5v and the other form +12v. There are power ports for both… but remember that it is the name on the invisible pin that matters. If you want, say, two 7400s, one on each side of the separate grounds, you are going to have to clone the ordinary 7400, and, unless you want to make the Vcc something specific, like +5v, you will need to create your own VccB so that you can name the power pin of your supplementary 7400 "VccB" as well. Not a big hassle. Do-able. And not likely to arise… but now you know the problem can be dealt with, if it arises! (You could also make the power and ground returns on the cloned 7400 visible, which has a number of advantages.)
Getting out of jams…
The ERC tool of eeSchema is there to help you. If you use it, and have errors associated with an invisible pin, there will be a little arrow pointing to a part of the symbol on the schematic, a part not associated with one of the visible pins….
That arrow, pointing to a "pin-less" part of the symbol tells you the problem is associated with one of the invisible pins. (You get the same sort of arrow, pointing to a pin, when there's a problem associated with one of the visible pins.)