very specific rule to define - Page 1
Forum section: electronics / general

author: majdgh
author_rank: Contributor
timestamp: January 24, 2021, 12:18:50 pm
content: Hello,I have a net for example 15V and this pin goes to the Mosfet so I would like to have at least 30 mil of width of track but It goes also to LED so I don’t want to have this track width but 10mil.Now off course I can route this manually but I was trying to define this in Altium automatically, but I couldn’t even with custom query.When I define a net class on the 15V net, it will apply it on all tracks, even on the track between the 15v and the led. So it there anyway to define a track width between pins instead of nets. Or make exception of the rule to apply it only on one component pins and the others! Using InNet('+15') AND InComponent('Q1') didn’t help.Thanks in advance,

author: cgroen
author_rank: Unknown
timestamp: January 24, 2021, 01:59:08 pm
content: How about doing 2 separate rules, and use priority to solve it ?

author: majdgh
author_rank: Contributor
timestamp: January 24, 2021, 02:43:00 pm
content: Hello thanks for reply, can you explain more, because i didn't get the idea to solve it, because both pins schare the same net name, so how to seprate the rules, Thanks

author: cgroen
author_rank: Unknown
timestamp: January 24, 2021, 03:27:35 pm
content: Maybe I was too quick, just did some experimentation and does not seem to workI will keep experimenting a little here. Maybe others have an idea?

author: T3sl4co1l
author_rank: Super Contributor
timestamp: January 24, 2021, 05:25:21 pm
content: One net seems a rather trivial case, just hand route it. Or if not doing the layout personally, add a note to do such.In general, to get the autorouter to use different sizes on a given net, either:- Use a net bridge to split the net- Use, well they used to be called From-Tos but there's a new system now, anyway, routes can be controlled by region, associated components, topology, etc. I think.Tim

author: majdgh
author_rank: Contributor
timestamp: January 24, 2021, 09:54:18 pm
content: Thanks for reply, i think there is no way to do this automatically, i used net tie but its very long way because you have to make a lot of changes depending on the size of the net and pcb..etc.so i would do it as always with hand!

author: ANTALIFE
author_rank: Frequent Contributor
timestamp: January 24, 2021, 10:39:04 pm
content: Play around with "Find Similar Objects" and see what is generated in the "PCB Filter" tab (see attached)

author: cgroen
author_rank: Unknown
timestamp: January 25, 2021, 09:17:01 am
content: That was a good idea to get the query correct, thanks for that!I tried it, but with no success.I basically connected two 0603 and one 0402 using the same net ("15V"). I then used the "find similar items" one the pad of the 0402.That gave me: (ObjectKind = 'Pad') And (Net = '15V') And (Name = 'C38-1')Using the "Test Queries" in the rules dialog, the specific pad is highlighted as expected. However, if I make a width rule based on that, it will not be taken into account. I set the width rule to 10 mil, but whenever I add a track from that specific pad, it will only go with the "default" rule (that has lower priority than the new one).

author: ANTALIFE
author_rank: Frequent Contributor
timestamp: January 25, 2021, 12:50:41 pm
content: Quote from: cgroen on January 25, 2021, 09:17:01 amYou probably want ObjectKind to be "track" (or whatever the correct term is) rather than 'Pad'

author: cgroen
author_rank: Unknown
timestamp: January 25, 2021, 01:19:12 pm
content: Quote from: ANTALIFE on January 25, 2021, 12:50:41 pmI can't get it to select the correct one. But, I think this is a dead end, the expression needs to be for a specific net, I don't think this can be done at all

author: T3sl4co1l
author_rank: Super Contributor
timestamp: January 25, 2021, 05:46:49 pm
content: If it only needs to be on pad entry, try a SMD Neck-Down rule.Tim

author: ajb
author_rank: Super Contributor
timestamp: January 25, 2021, 06:56:43 pm
content: You might be able to make this work using xSignals, although I don't know if that will be able to do what you want specifically, and would be kind of tedious to set up if you have a lot of instances of this requirement since I think you would need to define each one manually.

author: cgroen
author_rank: Unknown
timestamp: January 26, 2021, 09:29:32 am
content: Quote from: T3sl4co1l on January 25, 2021, 05:46:49 pmThanks Tim,this will give me a DRC error when running (t d) but for some reason it does not show up when routing even when "online" is checked. Oh well, I give up.(at least there is a way of getting a DRC error, but I'm not sure OP was after that.)

author: T3sl4co1l
author_rank: Super Contributor
timestamp: January 26, 2021, 10:03:57 am
content: It's kind of a weird rule, I think? It doesn't stop you from putting traces on pads arbitrarily (e.g. P, L) or by dragging, but it does (or should?) work with routing (P, T) and the auto kind.Tim