Configuring the grid sizes

I searched a lot, but couldn’t find some complete explanation of how grid sizes are configured in KiCad/pcbnew. I found the “grid settings” and the user defined grid settings. But it seems to allows only one entry? I may be doing it wrong, but when I tried to add another it overwriten the previous one.
The way I understand it (the only way it made sense to me) is, that there is this one “user” slot for ad-hoc sizes which I need only temporarily, so I don’t want to add them permanently into the list, making it too long, but rather type them into this ad-hoc one slot, losing the previous temporary size (which I don’t needed by then). And the rest of the list is for sizes that I use often.
Is that correct? Or incorrect and I’m overwriting instead of inserting entries because I’m doing it wrong?
Now, if that “user” setting is indeed for only one temporary ad-hoc size, then where do I configure the permanent entries of grid size list?
I don’t see anything like that in preferences nor in the grid settings window where it should be, which makes me thing it’s not runtime configurable and I need to edit some .ini file and restart, but tried searching for it and no luck :frowning:
I would also like to remove some entries, as there are too many which I will never use (or rarely => rather using that ad-hoc slot which seems like a cool feature for keeping the list tidy).

I tried to workaround, by using the one ad-hoc “user” entry, but after 15 minutes I gave up, as it wasn’t a workaround but madness, as 3 of the 4 most needed sizes in my current project are not in the default list. Combined with the fact that it’s not allowed to keep the “grid settings” window open while working so I could just retype the size and apply, but instead go to menu, reopen grid settings, type new sizes and close the window so I can re-open it again one minute later.

2 Likes
1 Like

There are two possible, persistent user settings for fast grid changes

  • Pcbnew | View | Grid Properties… | Fast Switching
    or
  • Pcbnew | dropdown grid menu | Edit user grid…

I am using Alt+1 and Alt+2 to fast switch between 2 most often needed by me grids (set in View - Grid Settings…). From time to time I select other grid from long list.

Yes.
The list of fixed grids is not editable.
There is only one user (or custom) grid that is overwritten by a new user grid.
A user grid cannot be added to the fixed grid list.

So what I need is not allowed in KiCad at all. I remember such thought crossing my mind for few seconds before I asked, but it seemed too absurd and surreal.

They are pre-defined in here. Starting at currently line 125

1 Like

KiCad (as any program) is limited in its possibilities. If some feature is needed by many users then it is placed by designers on the ‘road of work to be done’ in front of feature no one needs.
Are you sure you really need so often to have another grid? What so complicated do you design? In my designs really only few holes, sockets and LEDs have to be placed at specified positions to fit to openings in case. It takes me short time after getting the netlist to PCB to place that elements. All other can be placed whenever there is place for them so for the rest of work I switch to grid 0.1mm - the same used for all my elements CrtYd to have possibilty to place on next to another.

And if there are more then a few then it might be better to have some parametric design options instead of using the direct design principle of kicad. Luckily kicad stepup allows for this sort of work to be handled from within freecad using all of freecads powerful tools. Kicad StepUp: a Seamless ECAD/MCAD PCB Data Integration

There is also talk about adding some (limited) parametric design options to kicad in some future. Most importantly to the footprint editor.


And if one does not want to leave kicad then the array tool and snap to object as well as position relative, align and distribute, … are other powerful options to get something done.

We really do not know enough about the usecase to really give good advice about what the best tool is in this case. (This is yet another “solution” based complaint which in most cases do not lead to satisfactory results for anyone involved.)

Thanks Jos, that seems like a solution. Clumsy, but doable.

Hi and yes, I have many panel components which are at some specific grid. Also when I have parts with some pitch, I want 1/2 and 1/4 grid sizes in my list. But the predefined grid sizes doesn’t allow that. They are 1 2 5 and sometimes also 2.5 but only sometimes (just to make it totally irregular and confuse the audience?:).

First of all, I strongly disagree that this is “solution” based complaint which could lead to unsatistfactory results for other people. How could making grid sizes configurable cause trouble to anybody?
" We really do not know enough about the usecase " - Instead of trying to imagine every possible usecase, it would be enough to just imagine that various people will have various workflows and will use various parts with various pitches and footprints, and thus making this configurable is the way to go. I can’t see how that could compromise workflow of somebody who is happy with the status quo.
I don’t want to leave kicad, but this issue would be a dealbreaker. I own a commercial software too, so going back would be easy, but I would like make some of my projects openHW and it wouldn’t feel right to share sources in format, which is not open.
Would be easy for me to leave KiCad, but I really like the idea of open software, so I will stubbornly try to make it work for me, even if it takes rewritting sources and learning how to compile them. And will rather donate than buy upgrade for the commercial one… Would be cool, if there was an option to make a donation to support some specific new feature or some specific bug solved… naturally a non-binding way, knowing that programmers still wouldn’t have an obligation to just do it, but would consider it with a higher priority if it was something which made sense to them anyway and were going to do it anyway.

Maybe what KiCad can do already would be even better suited (more efficient, faster, less error prone, …) to your task than the feature you think you need would be able to. Ever thought of that possibility?


Or even better, maybe what you want to solve would be best solved with something completely different not yet in KiCad and your usecase was the trigger for an amazing innovative solution that will bring KiCad to the next level.


By the way i did not state that your request would be invalid. We can however not magically make this feature appear in the past such that it is in the current version. It can only be added to some future release. The next release with new features will be version 6 which is expected to be at least a year if not two away.

The grid settings form could be extended to something like below.

  • Two grid size columns are pre-populated. One column for mm and one for mil.
  • The user then can make any changes as needed to those two grid size lists.
  • The check box to the left of each value defines which values actually should show up in the pcbnew grid selection drop down box.
  • ‘Grid Origin’ and ‘Fast Switching’ would stay.
  • The ‘User Defined Grid’ selection may not be required anymore.

The user defined grid allows for non standard grids that do not have the same x and y value (very useful for footprint design or if you make a board outline)

1 Like

See https://www.kipro-pcb.com/

They accept donations, better said charge you, for specific needs.

2 Likes

But you will still only “get” it at the next release. So if @SonicNinja would detail their usecase as i requested then we might be able to give them advice on how to solve their problem as efficient as possible.

1 Like

I have a similar use case for just about every board I layout. For many of the BGA parts on a board, I need a unique “user” grid - that is, a unique spacing and origin that aligns to the pins of that BGA. This is so I can route traces and place vias and capacitors equally spaced between BGA pads. Some BGAs even require multiple grids because even though the right and left half of the part have the same grid spacing, they use a different grid origin.

As of Kicad v.5.1.4, I spend a great deal of time in View > Grid Settings changing the user grid between the various grids that I utilize in different regions of the board. At the present, I keep a text document in the Kicad project folder that is loaded with all the grid origins and spacings that I frequently reuse. I am keeping my fingers crossed for a Kicad update that allows for the storage of multiple user grids (both spacing and origin). These grids would be very much specific to a single project.

The absolute best update would be one where multiple user grids could be permanently applied to specific regions of the board. That way there’s no need to manually switch between grids as traces cross from one region to another. But even storing multiple user grids would be a huge time saver.

I’ll check out kipro-pcb.com as was suggested!

Again, I suggest that everyone interested upvotes the bug report https://gitlab.com/kicad/code/kicad/issues/2295. @jos could add the mockup UI screenshot there.

1 Like

Where is yours? …20