I’m currently trying to pass ERC on my Kicad schematics. I had few “normal” mistakes which I manage to solve.
Now I currently get 19 warnings , which are all the same :
ErrType(2): Pin not connected (use a “no connection” flag to suppress this error)
@(XXX,XX mm, XXX,XX mm): Pin X (Passive) of component XXX is unconnected.
The problem here is that my pins is connected. I’m well aware of the 50mils grid problem in Eeschema because I have to face it in a previous project. But the components that appears in ERC are all drawn with a 50mils grid. My schematics is also in 50 mils grid. I have used power flags on power supplies.
I really don’t understand what is happening and it is driving me mad because I cannot go on with my project without a clean netlist.
Grab one of the symbols affected with [G] and move it around with your mouse… do all tracks stay attached to their respective pins in a rubber-band fashion?
Very important: Only on pins that are intended to be left unconnected!
KiCad does not always point to where the connection is broken. It points to the pin that can not find another pin on the same net. So use the highlight net tool and check how far the connection goes.
In general screenshots or the project files would help us help you.
Well what did you expect? But well not accept is stated wrong. NC pins connect to wires but ERC will complain (This is an important distinction. Especially as it also applies for stacking pins. Stacking NC pins means kicad assumes you want them to be connected. This is in contrast to how eagle uses NC pins with more than one pad assigned.)
Makes me think why define a NC pin in the first place.
In my experience so far they like to create ERC ‘confusion’.
I tend to leave them out of a symbol defintion as connection point and use only the pad/pin itself to pass through to the pcb for physical connection to solder it down.
I found ~ useful to ‘ignore’ symbol name/pin settings.
Are there other ways to say ‘you are a pad/pin’ but only for physical(solder) connection?
If you intent them to be left completely unconnected than don’t include them in the symbol.
If you want to be able to connect them then either give it pin type passive and be prepared to place a not connected on purpose flag for the cases where you do not want it connected. Or make it type NC and need to ignore the warning about connecting NC pins. (Depending on which of the two usecases you expect to need more often.)
Another option is to do it like we did in the official lib for connectors. Give the pad a very unique number. We chose “MP” (for mounting pad). We then have a symbol with mounting pad for when you want to connect that pin and one without for when you do not want to do that (A symbol is allowed fewer pins than its assigned footprint. But be aware that footprint filter by number of pins no longer works for the second case so you might want to design your footprint filters carefully. In the official lib we did not set the non MP symbol up for this use as we think it is better to be clear about the fact that you do not want it connected by placing the not connected on purpose flag.)
For me, the reason to define and include an NC pin is because I design my schematics for both creating a PCB and for later troubleshooting when my design doesn’t work as intended. I want to show all pins so when I’m probing around a faulty circuit (either something died or I messed up the design) I have positive confirmation that a particular pin can be ignored because it doesn’t have any function. If the NC pin is omitted from the schematic I would waste time trying to find it.
But then I’m that oddball who likes to show pin numbers on non-polarized components so I can document “R1-1” instead of “the pin of R1 closest to the big chunky transformer”…
I have had a similar problem to OP and have not had a chance to track it down - but your comment intrigues me - Does rubber banding work in Eschema? I could not get that effect when selecting traces with a mouse - but will try with the “G” command later today to see if that sheds some light on my issue - thanks for the suggestion.
In my current project I’m adding a bank of optocouplers to electrically isolate my micro-controller from my motors. The output side of the opto’s will be NC because they will not be electrically connected to the rest of the PCB. I will also add two switches: the switch for the motor power source will be defined NC.
How are you connecting the motors to the output of the optocouplers? If the optocouplers are DIP style, you will want connectors for the motors. (And may as well put the fly-back diodes on the PCB as well between the optos and connectors.)
Joan
I have not found the rubber banding to be a good indicator of broken connections. I’ve had parts that do rubber band just fine but are still bad in ERC. Wish I could figure that one out.
Barry
I suspect it would be a waste of my time to ask your opinion about “hidden pins” in schematic symbols. (Nevertheless, I promise to refrain from insulting or ridiculing any inexperienced Forum member who can’t infer what your response would be, and feels compelled to ask.)
Well, to each his own. I think those hundreds of “1” and “2” digits (and “E”, “B”, “C” characters around perfectly unambiguous transistor symbols) not only clutter the drawing aesthetically, but distract my train of thought from understanding the design. Yeah, I’ve made reference to the “big, chunky transformer”, but only when I can’t refer to “the junction of R1 with C3 and U5-Pin2”.
Dale
P.S. - When I was first learning electronics, on radios that glowed in the dark, There usually WAS a “big, chunky transformer” to serve as a landmark. But I’ll wager that almost nobody under 30 has seen a “big, chunky transformer” inside a piece of electronic gear. Now you probably have to use “that big processor with the zillion pins” as your reference point.
As I’m sure you suspected, I eschew hidden pins. I also don’t stack pins. If there is a physical pin on the device, especially if I can touch it, I want it on my schematic. I have no problem making my own symbols for my own idiosyncrasies.
I generally don’t have a problem with all the extra pin numbering. I’m used to is so it doesn’t look cluttered to me, and I’m glad it’s there when I need it. But I can see how it might look to someone not used to it (especially considering the fuss over something as simple, useful, and basic as connection dots on another thread). I don’t bother labeling the names of transistor, fet, or thyristor pins as the symbol indicates their function already. (Same with any other part where the glyph describes the function of the pin.) But I do number those pins based on the expected footprint (what’s the pinout on the SOT-23 again?).
LOL! Or maybe more generic “that big, black square with the zillion pins”.