How to change pads and their holes, globally?

I created a breadboard PCB. Meaning, it has no components. When it came back from the manufacturer, I realized that I had made the rookie mistake of making both the pads and their holes too small. So, I would like to know how to change all of the pads and holes with a single action. (All pads and holes are identical.)

If this will require a command line action, please give me step-by-step instructions and the exact sentences to enter. I have never used the command line function and I have no idea of how to use it. (I don’t code, but I know enough that I think I can follow your instructions.)

Thank you for your help.

how did you get holes? “via”?

You can open the PCB file in a text editor like Notepad and do some simple search and replace.

As we don’t know how you defined the holes and pads (maybe vias or testpoint components?) we can’t give you exact instructions. We would need to see the PCB file for that.

There are at least three methods.
Hacking into the PCB file as Jonathan suggested is one of them, and this used to be common several years ago, but it’s rarely needed these days, as most of the gaps in KiCad’s GUI have been fixed. (But it still can be a quick option do do a search & replace in a text editor).

If you’ve made your holes out of via’s, as ronsimpson guessed, then have a go at: Pcbnew / Edit / Edit Track & Via proterties.

If you have used footprints for your breadboard look-alike, then the best way probably is to first modify the footprint, and then update all footprints on your PCB with that new footprint. If you’ve used some default footprint then you first have to copy it into a (probably best: a project specific) new library, because KiCad’s default libraries are read-only.

After that, it depends a bit whether you first made a schematic or just placed footrpints on the PCB.
For more on library management, the FAQ part of this forum has a quite big list of tutorials on specific subjects.

https://forum.kicad.info/search?q=library%20management%20category%3A19

1 Like

All great answers; thank you.

It’s been a long while since I made the project, but I am pretty sure I used PCBnew and just created the board using the component list there. I just added a pin header, duplicated it to create groups, then copied and pasted to create blocks. Then, I just ran traces.

I have edited the pin header pad and hole to what sizes I want and saved that to my personal library. What I need, now, is to know how to update all of the pads to the new pad, all at once.

I looked up my KiCad version information, before originally posting. Then, I forgot to include it. My apologies. It is version 5.1.6.

I have uploaded my project files. I hope I uploaded them correctly. If I was successful, I think that you can find all of the information that you need by looking at it. If the files are not there, please tell me how to post them.

Thank you, all, again. You are most gracious.

Breadboard.kicad_pcb (912.5 KB) Breadboard.kicad_pcb-bak (912.5 KB) KiCad5TestNew.pro (688 Bytes) fp-info-cache (2.9 MB)

Breadboard.kicad_pcb (909.5 KB)

  1. Use Ctrl+e to open the Footprint with the editor.
  2. Change the hole drill and anular ring sizes.
  3. Save the changes into the library.
  4. Use “e” to edit the Footprint on the board.
  5. Select “Change footprints matching value:”
  6. If needed, navigate “New Footprint identifier:”
  7. Click “Change”

Looks good. I use a “5-pin header” not a 1 pin. Then modify it to get rid of silks and part number etc.

My last 10 boards are not simple rectangles but complicated patterns. There is a area of through away. I some time fill that with “perf” and use it later.

Ahhh, there’s the trick. Thanks, Sprig!

Thanks, Ron. It would be too much trouble to enlarge the small pin holes for every discrete Through-Hole component. But, SMD/1206s can be persuaded to sit on the pads over the holes. ICs will require enlarging the holes.

That would have been a little faster, when first beginning. Come to think of it, I may have used the Array function.

Clever and interesting. I have also made “Vero”/“Strip” board.

I have not used enough Perf, Breadboard PCBs and Vero Board, yet, to decide which I like better. Mainly because I have trouble mentally inverting the board. I made so many mistakes that I just switched to ordering manufactured PCBs.

Thank you all for your great help, answers and support!

Apparently you’ve managed to do it yourself already.

I also tinkered a bit with your project:

  1. Create “Breadboard” directory, and put the PCB file in it (other files are not needed).
  2. Open it in KiCad / Pcbnew.
  3. [Ctrl + e] to edit one of the pins in the Footprint editor.
  4. Change the hole and size of square a bit.
  5. Footprint Editor / File / New Library
  6. Footprint Editor / File / Save As (Give it a new name, Save it in the library).
  7. Save & Exit the Footprint Editor.
  8. Pcbnew / Edit / Change Footprints with these settings:
  9. Click [Change] and wait a bit.
  10. Admire your work.
  11. Save project & Exit.
  12. Delete the 6MB Footprint-info-cache (It’s not needed).
  13. Zip the project & upload.
    Breadboard_2021-08-12T23:26.zip (15.6 KB)

[Edit] In retrospect.
It’s pretty much the same way as Sprig did it, I just used another method to trigger the same “Change Footprints” dialog, and I explicitly put the project in it’s own directory, so all files stay together.

[Edit 2]
It looks like your project is not finished yet…
One thing that is missing is the outline of the PCB. You have now drawn a rectangle on F.SilkS, but the outline of the PCB should be drawn on Edge.Cuts. So I changed that for you (select a line by dragging a small box over it from right to left, then e for edit and change the layer to Edge.Cuts, repeat for the other lines).

Thanks, Paul, for your help. The Edge Cut was on the Front Silkscreen, because the design was included on a panel. I used the Front Silkscreen design to cut the board out of the panel, with my DIY PCB cutter, which I fashioned from a tile cutter saw.

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