[Track: Use Net Class Width] does not enable [Use net class widths]

When laying a track with [Track: Use Net Class Width] set,
opening up the track properties shows that the [Use net class widths] is disabled.

Setting [Use net class widths] and clicking okay is a one-time setting.

Is it possible to set tracks to autoupdate on the next Fill if the class track width changes,
without needing to go to Edit: Edit Track and Via Properties and update everything in the class,
whcih I believe overwrites any existing custom/non-conforming spacings as well.

Try it again when you start a track from a pad.
I’m not sure whether the “no net” is even assigned to the “default net class”, and for the moment I assume a net must have a netclass before you can set it’s with to the netclass it belongs to.


I’m having a related issue.
I would like to use net classes to put a thicker trace on power lines.
My understanding is that the trace width would be set automatically when
starting a trace to either the net class or to the width of the trace that has already
What I tried:

  • Set the trace width to Track: use netclass width
  • Add a “Power Input” net class.
    In this case, if I start a trace on VCC of any chip, it should use the thickness of the
    Power Input net class, right?
    → It doesn’t work in my case, although the pin I use is VCC, declared as a power input
    in my symbol lib.

Any hint!


Power input is a pin type, not a net label. You also need to associate VCC with the Power input netclass, which you have confusingly named. This can be done by assignment, or pattern matching, or on the schematic.


Thanks for your reply!
I see. So if I want to define a net class, I have to use the name of that particular net, right?
I tried:

  • From the width menu, top left, I have used Track: use netclass width.
  • In the pulldown menu, I have chosen “Edit predefined sizes”
  • It calls the board setup, and in the left column, I have chosen net classes.
  • In the line I had previously defined, I changed to VDD (instead of power input).

But it doesn’t work, my default width is 0.1, VDD class width is 0.3, and when I start
a trace from VDD pin, it’s 0.1, not 0.3 as I expected.

Thanks for any hint!

Have you created an assignment from VDD net to VDD netclass (still confusing, you should use a name like Power or HighCurrent for the netclass)? Select the copper you want to start a trace from. What is the name of the net in the status bar?

Thanks for your reply.
Here is what I did, in images:

Is there any problem in calling this net list as VDD?
Now if I create a net class “power”, for example, how will Kicad know that VDD traces belong to power netclass?

Thanks for any hint.

It’s alright to call the netclass VDD also, but it’s confusing. Also later you may want to add other nets like VCC to the netclass.

In the bottom half of the dialog window you showed you need to add an assignment with the + button where the net VDD is in the netclass VDD. See why I suggest another name like POWER for the netclass?

independend from other answers: look at the statusbar during routing - there you can find useful statusinformation regarding your current selection/action (in this case: your currently routed track).
This allows you to check:

  • netclass of the current track (–> so was the netclass-assignment in the schematic correct? And was the schematic–>board update correct?)
  • real used track-width and the source of this value (this is especially useful if you manually switch between different width-settings. And if you have the mode “use existing trackwidth” set)
  • same for clerance


Thanks for your reply.
Yes, I see why calling it power. I’m fine with naming it power, but my question is: how do I let Kicad know that VCC or VDD or GND belong to the class “power”.

  1. Is the above panel right? I mean: to define a new class, I added one with + and renamed it VDD but OK, let’s call it power.
  2. How do I add nets to the class “power”? (so that kicad understands that nets in this class have to be drawn thicker)
    → From this panel?
    → From somewhere else? (in which case: where?)

@ mf_ibfeew:
I have looked at the footer information, but unfortunately, although I have created a VDD class, my new trace still belongs to the class “default”
Beside this, everything is correct, 0 errors, 0 warnings when updating the board.


See the bottom 2/3rds of the panel which is empty in your screenshot? It’s labelled Netclass assignments. To create one use the bottom + button. Then you can put net VDD in the netclass Power.

although I have created a VDD class, my new trace still belongs to the class “default”

As said by others the name of the netclass is completely unimportant. I would recommend a generic name (“POWER” was a good suggestion).
After the creation of your netclasses (which you have already done) you have to assign some nets to that netclass.
Read the netclass-chapter in the documentation. This covers dialog-based assignment as well as graphical assignment. Recommendation: test both workflows, but than choose one as your preferred workflow and don’t mix both.

And only than you should start the next routing-attempt. In the board-editor check first if the track really belongs to your choosen netclass.


Sorry for the delay.

And sorry for the silly question. This was obvious, I didn’t notice the second “+” for adding
nets to a netclass. It works fine.

Thanks again!

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.