gnetlist ignores symbols without pins
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
gEDA |
In Progress
|
Medium
|
Patrick Bernaud |
Bug Description
I would like to have symbols in a schematic for purely mechanical parts that have no associated footprint or netlist connections, but would be included in the bill of materials. I realize this is "abusing" the netlist in a way, but for projects where there are only one or two such parts (like a snap-together plastic case for the board), being able to capture part attributes visibly in the schematic without having to do something outside the normal process can be very useful. In the process of investigating alternatives for accomlishing this, I've run into what DJ and I both think is a bug in gnetlist.
If you include a symbol in a schematic that has no pins, gnetlist is silent about the existence of the symbol. It is not included in the bill of materials, and is not included in DRC output.
If you include a symbol in a schematic with exactly one pin, and that pin is unconnected, the symbol is included in the bill of materials and the DRC complains about the unconnected pin. If you connect that pin to some net or to an explicit no connect symbol, the part remains in the bill of materials and the DRC goes quiet as expected.
If you include a symbol in a schematic with exactly one pin, where the type of that pin is 'nc', gnetlist is silent about the existence of the symbol. It is not included in the bill of materials, and is not included in the DRC output.
It seems like a bug that gnetlist goes silent on a part that has no pins, or has only pins with type 'nc'. I would have expected all symbols to show up in the bill of materials. I'm not sure what I expected to see in DRC output, but I didn't expect to see nothing at all when a symbol existed with no pins or with only pins of type 'nc'.
tags: | added: gnetlist |
Changed in geda: | |
importance: | Undecided → Medium |
While trying to come up with a minimal test case, I realized that I was wrong. The problem wasn't presence or absence of a pin on the symbol, the problem was that if there's no refdes assigned the symbol is silently ignored. It seems that it would be useful to throw a warning if a symbol is found with no refdes, but I'm not inclined to push that rope.
I also discovered in the process that the scheme for gnetlist -g drc breaks if there are no nets in the schematic. I found this by adding 3 symbols to a schematic page and trying to run drc on the page without connecting anything up. This is probably worth fixing, but isn't really related to my original complaint.