I just did my first schematic with Kicad and got the classic “ErrType(3): Pin connected to other pins, but not driven by any pin” error when running ERC on a net between a capacitor and ground symbol.
I’m aware of this FAQ entry and that I can add a PWR_FLAG to resolve the issue but I don’t understand why I should need to do this. It should be clear to the rules checker that the power is obtained from the 5V source.
There is nothing on the schematic saying there is a 5V source. I’m assuming it’s coming in on J2.1 but the ERC doesn’t magically know that connector pin is an input not an output.
That’s a power symbol which in kicad is just a global net across any pages/hierarchical blocks. It still wants to see a source feeding into said global net if you have pins connected to it marked “power input/input”
The bus symbols don’t get any other special meaning. You can’t just assume they are magically power outputs. For example, if you make a design with a regulator and micro, you copy and paste a +5V bus symbol everywhere but then you forget the connect the regulator to it…would be a very unfortunate error to have
Hmmmm… Okay, thanks for the feedback. If I’m understanding correctly, you’re saying just b/c I put a 5V symbol down on the schematic, this isn’t actually showing where power is coming from, right?
You can place the power flag wherever you want but it’s a good idea to place it near the actual source of power. Whether it’s a connector pin or inductor pin of your smps or emitter of your emitter follower based stabilizer or… you get the idea.
You can design your own symbol and set it’s pin to output. But you will only be able to place it on the net once while typically you want to place power rail symbols in multiple places.
It’s a pity that the name is sometimes a misnomer. Here’s a situation where this happens. An IC pin goes to a SPDT DIP switch or jumpers to connect to one of two options, both of which are connected to nets with an output. The ERC doesn’t know that the pin is driven in either position, so the PWR_FLAG is needed but this has nothing to do with power.
But after a while, you instinctively know the situations where it’s needed.
As written before: the power symbol in itself is just a global label connecting pins together in a net, and nothing more.
This is indeed possible, and also normal to do.
For example, if you look at a bog standard 7805 voltage regulator, then you see the output pin has the “Power Output” type:
And a “Power Output” pin is pretty much equivalent to the PWR_FLAG symbol.
The PWR_FLAG symbols are only needed when such a power net does not have a “Power_Output” pin.
If your PCB has an off-board power supply, then I usually put the PWR_FLAG symbols near the connector to give an indication where the power comes from.
Note: that this PWR_FLAG enables extra checks for ERC, which other schematic programs do not have.
A limitation is that it only works on a single net. Sometimes power nets have blocking diodes, filter inductors or input source switches or jumpers, and this separates the voltage source from the power connections of your IC’s. KiCad can not look over this.
But you will only be able to place it on the net once while typically you want to place power rail symbols in multiple places.
Ok, so this means that if I design such a symbol and put 2 on the same net, I will get another error telling me that 2 outputs are tied together. Am I right?
Now I got it. It took me just a bit more than 1 year…
Just getting back to this after a busy week. Designing circuit boards isn’t my fulltime job, but a hobby. Appreciate all of the feedback. I think I understand now.