Select by component type? (PcbNew)

Hi all!

FIrst post so be gentle haha. I’ve searched but can’t find anything, is there a way to click on (for example) a resistor and then select ALL the same types of component (so all the resistors in the layout) - to move them all at the same time? I know theres “get and move” is there a wildcard option? such as “R” or something? (i can’t work it out if there is haha).

(build: 5.1.8)

Thanks in advance!


I think - no.
I came to KiCad from Protel 3. I was used to use that expansion of any my function to other items by using many filter possibilities present there. But after some time I got used to lack of it.

How useful were those filter possibilities to you? Do you miss them?

I imagine it would could be a time saver if you could select R[5…12] then rotate them to the same orientation, distribute them over some distance (or to a fixed pitch between them) and place the whole row in one go.

At the moment my workflow is to first set the grid to something appropriate and then place them all one by one.

KiCad-nightly V5.99 can “group” items. With this you can for example make a block of a row of resistors, and then the whole group is treated as a single item during selection, move, rotation, etc.

I didn’t used that feature for moving or rotating footprints but for other tasks that are in KiCad solved different way but I’m not sure if for all mu usages there I would find easy way in KiCad.

Example 1.
I like to have elements numbered in logical groups. The easiest way is to draw schematic part by part and annotate each new part. Assume we have 4 such parts.
Now assume defining new schematic based on that one and you need to delete part 3 and add part 5.
If you just annotate it you will have in part 5 elements with numbers lower then in part 4 and higher (assume there are more elements in part 5 then in part 3).
So the best would be to renumber part 4 before inserting part 5. I want to not change numbers in part 1 and 2.
In Protel I:

  1. Select block 4.
  2. Click at any resistor in that block.
  3. Extend my action to all elements that:
    a. have the reference of R*,
    b. have the selection status ‘on’ (to not touch resistors in parts 1 and 2).
  4. I set new reference to R? and click [OK] - all resistors in selected block get R?.
  5. I do the same (steps 2,3,4) for capacitors.
  6. Other elements are only few so I delete their numbering manually.

Now I can annotate schematic and elements in part 4 will got right reference numbers.

Example 2.
I don’t need such actions and probably in KiCad you can do it in footprint assignment stage.
If you decide to change all resistors footprints from 0805 to 0603 you do it that way:

  1. Open resistor properties window (click, or double click, not remember well),
  2. Change footprint to 0603.
  3. Click button to extend your action for other elements (you can extend many properties but as you just changed footprint only the footprint update checkbox is checked).
  4. What you need is to restrict your update to resistors so you enter that you are interested only in elements with R* reference.
  5. Click [OK] - done.

Example 3.
At PCB you decide that you want to change reference texts height from 60 mils to 40 mils to be able to fit all of them.

  1. Double click at any footprint.
  2. Replace 60 with 40.
  3. Click button to extend action (as you already know right checkbox is already checked).
  4. Click [OK] - done.

For many parameters by which you can extend action you have 3 possibilities.
For example Selection - 1. The same, 2 Other, 3 All.
So you can for example:

  • extend your action on all elements except that in selected block.
  • change text height only for elements that had 60 mils, or that had any other than 60 or all

and so on.

For PCB documentation we use:

  • one picture with references written inside elements,
  • second picture with values written inside elements.

In Protel before exporting pictures I just:

  1. Double click any footprint.
  2. Uncheck Hide checkbox for reference.
  3. Click Extend button (what I will extend is already checked).
  4. Click [OK]
    Fast and simple.

In KiCad that was my biggest problem I tried to solve before doing my first PCB.
Flags switching visibility of Values and References don’t work in File-Export-SVG and File-Print (I planned to use PDF Creator to print PCB as PDF).
So to get (in one step) the picture with gray copper and black elements once with reference and once with value you have to have reference and value at separate layers.
I have done some experiments and decided at what layers my footprints will have references and values. As one of them there was CrtYd then I could’t print the second one with CrtYd so I had to have the same picture as at CrtYd at another layer.
When I wanted to do documentation for first PCB I hit a bug with colors in Exporting or Printing and some other problem when drawing the picture for elements at bottom. I reported a bug but couldn’t
wait for it to be fixed so I decided to change way I got my pictures and use File-Plot. Here I have a flags for reference and value, but I can’t get many layers together. So even I wanted to avoid it I had to learn how to combine layers.