Created: 18.03.2022 | Updated: 18.03.2022
Содержание
- Summary
- Constraints
- How Duplicate Rule Contentions are Resolved
- Rule Application
- Note
Полное содержание
Rule category: Electrical
Rule classification: Binary
Summary
This rule tests for short circuits between primitive objects on the copper (signal and plane) layers. A short circuit exists when two objects that have different net names touch.
Constraints
Default constraints for the Short-Circuit rule.
- Allow Short Circuit — defines whether the target nets falling under the two scopes (full queries) of the rule can be short-circuited or not. If you require two different nets to be shorted together, for example when connecting two ground systems within a design, ensure that this option is enabled.
How Duplicate Rule Contentions are Resolved
All rules are resolved by the priority setting. The system goes through the rules from highest to lowest priority and picks the first one whose scope expressions match the objects being checked.
Rule Application
Online DRC, Batch DRC, and during autorouting.
Note
In a Printed Electronics design when different nets cross over on different layers, they are flagged as a short circuit. These cross-overs are isolated by placing a dielectric patch on a non-conductive layer.
Обнаружили проблему в этом документе? Выделите область и нажмите Ctrl+Enter, чтобы оповестить нас.
We’re sorry to hear the article wasn’t helpful to you.
Could you take a moment to tell us why?
Вы сообщаете о проблеме, связанной со следующим выделенным текстом
и/или изображением в активном документе:
Topic: Custom Pad with ‘No Net’ causes short circuit rule violation (Read 10545 times)
0 Members and 1 Guest are viewing this topic.
Hi,
I’ve made some custom pads to better match a manufacturers recommended land pattern.
Every thing is fine unless the pad has no net,
Altium will then report a short circuit between ‘pad on top layer and region on top layer’. (see attached image).
I’ve followed free_electrons advice here
Invoking «Design -> Netlist -> Update Free Primitives From Component Pads…» works,
the regions are assigned the same net as the pads, «No Net»….. 
so the violation is still valid.
I’ve tried allowing short-circuits between ‘No Net’ and ‘No Net’, (see attached image)
I’ve also tried Non-Specific No ERC directives in the schematic, (see attached image)
any ideas on how to get around this without assign names nets to every unused pin?
thanks so much for reading!

Logged
Per your layout screen capture, you still have left over objects connected to the pads. Delete them and you should be fine.

Logged
I am available for freelance work.
From recollection, ‘No Net’ is not actually a net, so using it as an a argument to the InNet() function doesn’t work. You need to use «Not InAnyNet» to return objects that are not assigned to a proper net. That’s why your design rule didn’t work, and may be why Altium throws a design rule violation with the default rules in the first place.

Logged
any ideas on how to get around this without assign names nets to every unused pin?
If you are not philosophically opposed to the nets being named and just don’t want to have to do it yourself, you can select the «Allow Single Pin Nets» project option. Beyond what the name suggests it will also assign named nets to the unused pins for you. I would think that would make your problem go away with very little effort on your part.

Logged
all fantastic suggestions, I’ll see how I go tomorrow and report back.

Logged
If you are not philosophically opposed to the nets being named and just don’t want to have to do it yourself, you can select the «Allow Single Pin Nets» project option. Beyond what the name suggests it will also assign named nets to the unused pins for you. I would think that would make your problem go away with very little effort on your part.
This solves my problem, but I think I am philosophically opposed to the nets being named, or more so, allowing single pin Nets,
by highlighting all net objects with ‘No Net’ I can quickly find faults in the schematic,
e.g. three components are in series and two of them have ‘No Net’ pins, somethings up!
From recollection, ‘No Net’ is not actually a net, so using it as an a argument to the InNet() function doesn’t work. You need to use «Not InAnyNet» to return objects that are not assigned to a proper net. That’s why your design rule didn’t work, and may be why Altium throws a design rule violation with the default rules in the first place.
This works and I like it the most,
I assume because this is a short circuit constraint rule,
it won’t stop clearance constraint rules applying to other non net objects?
I’m pretty sure it won’t, but tell me if I’m wrong!
thanks all

Logged
Invoking «Design -> Netlist -> Update Free Primitives From Component Pads…» works,
the regions are assigned the same net as the pads, «No Net»…..![]()
I had the exact problem and doing as you suggested did solve it for me — the nets were all assigned to a common one (GND) in my case, not «no net». It is possible that I had already manually assigned the pad in the middle of the copper poly region a net name of GND in past edits, so Altium took that as the new net name for the copper poly primitive.
« Last Edit: September 05, 2016, 06:37:41 am by wireworker »

Logged
Why bother adding regions to unused pads ?
If I am not happy with a supplied footprint I copy it to my custom PCB library and edit to my liking, then link it to the part schematic.

Logged
Facebook-free life and Rigol-free shack.
$begingroup$

I created a board outline, then wanted to add a polygon pour as a GND plane in the bottom layer of my 2-layer PCB. Altium’s design rule checker raises the following error:
Short-Circuit Constraint: Between Board Cutout (Multi-Layer) Region (0 hole(s)) Multi-Layer And Polygon Region (76 hole(s)) Bottom Layer Location : [X = 0mil][Y = 0mil]
Does anyone know a solution to this? There doesn’t appear to be any short-circuits within the circuit schematic or routing.
![]()
ocrdu
7,62019 gold badges27 silver badges42 bronze badges
asked Oct 16, 2021 at 14:58
$endgroup$
4
$begingroup$
Solution:
Delete board outline, create polygon pour, then create board outline from primitives again. The polygon pour must be the outer outline.
answered Oct 16, 2021 at 15:41
KevinKevin
555 bronze badges
$endgroup$
$begingroup$
Your board outline should occupy another mechanical layer on your board. You can do this by opening ‘View configuration’ tab and create a new mechanical layer as board outline. Then you can draw board outlines using primitives, Design > Board shape > Create primitives from board shape and set layer to ‘board shape’

answered Oct 21, 2021 at 12:04
$endgroup$
Modified by Jason Howie on Feb 16, 2015
Contents
- Summary
- Constraints
- How Duplicate Rule Contentions are Resolved
- Rule Application
Rule category: Electrical
Rule classification: Binary
Summary
This rule tests for short circuits between primitive objects on the copper (signal and plane) layers. A short circuit exists when two objects that have different net names touch.
Constraints

Default constraints for the Short-Circuit rule.
- Allow Short Circuit – defines whether the target nets falling under the two scopes (full queries) of the rule can be short-circuited or not. If you require two different nets to be shorted together, for example when connecting two ground systems within a design, ensure that this option is enabled.
How Duplicate Rule Contentions are Resolved
All rules are resolved by the priority setting. The system goes through the rules from highest to lowest priority and picks the first one whose scope expressions match the objects being checked.
Rule Application
Online DRC, Batch DRC and during autorouting.
Skip to main content
![]()
![]()
Welcome to EDAboard.com
Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals… and a whole lot more! To participate you need to register. Registration is free. Click here to register now.
-
Hardware and PCB Design
-
PCB Routing Schematic Layout software and Simulation programs
You should upgrade or use an alternative browser.
altium errors on pad with vias in it
-
Thread starterpanfilero
-
Start dateFeb 27, 2012
- Status
- Not open for further replies.
-
#1

- Joined
- Jul 30, 2007
- Messages
- 6
- Helped
- 0
- Reputation
-
0
- Reaction score
- 0
- Trophy points
- 1,281
- Activity points
-
1,325
I have a surface mount component (8-pin soic) in altium with a thermal pad in the middle, the thermal pad in the footprint has 4 thermal vias in it. I need to connect these to my ground plane, but I’m getting several errors, and it wont connect. I’m getting Clearance Constraint Errors from the via to the pad, and short circuit constraint errors between the via and the pad as well. Does anyone know what I need to do to make these go away and have my via’s connect to my ground plane? I’m attaching a pic
much thanks!

-
#2
-
#3

- Joined
- Jul 30, 2007
- Messages
- 6
- Helped
- 0
- Reputation
-
0
- Reaction score
- 0
- Trophy points
- 1,281
- Activity points
-
1,325
you need to assign the vias to the ground net as well. also make sure you do not have a via to pad rule that might give you the error.
I’m not sure how to access the via’s in order to assign them to the net, they are part of this component’s footprint. I think the rule that keeps getting violated is the electrical clearance rule, I’m just using the default rules. On my ground plane it looks like this

thanks
-
#4

- Joined
- Dec 26, 2006
- Messages
- 516
- Helped
- 88
- Reputation
-
178
- Reaction score
- 58
- Trophy points
- 1,308
- Location
-
India
- Activity points
-
3,974
Also you have to make «direct connect» option for vias if you want full contact of GND copper with vias.
-
#5

I’m not sure how to access the via’s in order to assign them to the net, they are part of this component’s footprint. I think the rule that keeps getting violated is the electrical clearance rule, I’m just using the default rules. On my ground plane it looks like thisView attachment 69829
thanks
Hey, I know this is an old post but it’s the only one describing the problem I’ve found from a quick google search.
At any rate, I found a way to access the vias in the thermal pad and thought I might as well add the solution to this thread for future googler’s.
From what I understand of the problem it’s that the thermal pad itself can have a net set on it, but the vias within it are stuck on «no net» and are unable to be selected for some reason.
Use the «Shift + V» key combination to explore through the violations when you’re hovering over the component. This brings up a window of the component and all the «violating» pins/vias. From here you can expand each option and change the properties of the vias that were unselectable before (a quick right-click away)!
Hopefully that’ll help someone else, and it wasn’t just me not seeing any obvious solutions.
-
#6
I used the SHIFT-V + properties method first to see if it solved the violations. Which it did.
And for those future googlers looking for an even lazier solution, I came up with the following method.
Assume the QFN component is ‘U1’, and the thermal pad is pin number 33. Not an unreasonable assumption for a QFN-32 with thermal pad.
Use the following query in PCB Filter: InComponent(‘U1’) AND (IsVia OR (IsPad AND (Name LIKE ‘*-33’)))
Apply filter, and verify that you indeed have now selected the thermal pad and the thermal vias.
Then go to PCB Inspector, and change Net to whatever value you need, GND for example.
Hopefully this helps one of those future googlers.
- Status
- Not open for further replies.
Similar threads
-
Hardware and PCB Design
-
PCB Routing Schematic Layout software and Simulation programs
-
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.