1
\$\begingroup\$

I have PCB with a clearance rule for nets that can be exposed for higher voltages:

enter image description here

In the schematic I put a blanket around the area I need to be assigned as higher voltages nets (I called this class "Line"):

enter image description here

However the unconnected pin (pin 12 of K2 relay) has no net assigned - no net class consequently. So in the topology the clearance is not corret:

enter image description here

Until I put some arbitrary net label (NC1).

This can be solved for simple cases like mine. But if there will be an IC with many unconnected pins needed to have a net class - it will be a tricky thing.

Any thoughts?

UPDATE

As Matt suggested I tried to put Net Class directive directly to the pin as the following: strange but this didn't work, the pin still has wrong clearance.

enter image description here

\$\endgroup\$
  • \$\begingroup\$ Does putting a directive assigning the pin to a class not work? \$\endgroup\$ – Matt Young May 13 at 14:10
  • \$\begingroup\$ Does the clearance rule work if you use a pad class for the pad instead of a net class for the net? \$\endgroup\$ – The Photon May 13 at 16:16
  • \$\begingroup\$ @MattYoung please see the UPDATE \$\endgroup\$ – Roman Matveev May 13 at 18:43
  • \$\begingroup\$ @ThePhoton, there is no such directive in the chematic editor. Could you make your idea more clear? \$\endgroup\$ – Roman Matveev May 13 at 18:44
  • \$\begingroup\$ Because the pin is "No Net" I don't think you can put a Net Class on it unless you can change all "No Net" pins to have that class (but that's probably not what you want). You can assign pad classes in the layout editor, or maybe in the pcb library editor. \$\endgroup\$ – The Photon May 13 at 18:56
1
\$\begingroup\$

Short answer: You can't assign a net class to something that has no net.

But, there are potentially some workarounds; unfortunately, none of them are perfect.

  1. Add an additional rule that looks for non-connected pads and give them additional spacing, using the custom query ((Not InAnyNet) And IsPad)1.

    In addition to this, you could make the first object more specific, such as to a particular net. The downside to this approach is that it will add the additional spacing to ALL the unconnected pads in your board. Is that a big deal? Up to you.

Custom Query

  1. As others mentioned (and I think yourself), you could add an arbitrary net to each unconnected pin on connectors you are interested in. In addition, to be a little more elegant, and to catch mistakes, you could add a DRC check that gives you a warning whenever a pin is unconnected - and then for pins you are actually not interested in adding a net or an arbitrary net to, you can place the DRC error nullifier (the red 'X') on those pins.

    In this photo you can see that my connector J24 has unconnected pins 1, 2, 6 and 7. Pad 2 has a non-specific DRC no error marker on it (Red 'X'). See how warnings are thrown for Pins 1, 6 and 7, but now pin 2? The matrix in the photo is found under Project/Project Options/Connection Matrix.

DRC Check Method

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.