I was hoping to produce a version of RenumKiCadPCB in a few days but moved things up after I got a bug report (plus fixed code!) from Sean Happel. Long story short a function I wrote to scan for component fields like F0, F1, and so on, didn’t care if the field started on a new line.
V0.205 fixes this bug with Sean’s code and now updates the netlist file. Previously RenumKiCadPCB updated the board and schematics but left the netlist alone since I figured it was trivial to regenerate the netlist. Admittedly this was pretty stupid of me as I often forgot to update the netlist before importing it.
Here is the source, manual, and Windows executable for V0.205: RenumKiCadPCBV0.205
So, now all the relevant files are updated with the proper reference designations.
There may be other bugs in the code: stress testing on Olimex Diylaptop project fails. order to debug a large project like that I have decided to make some relatively significant changes to the code so the updated files will not be committed if there are errors unless directed by the user. In other words, if there are errors in the input files, the user will be asked to commit the changes or abort updating the files.
I hope to release V0.206 once I have fixed that *and* figured out why Diylaptop fails. Of course, if other bugs are reported I’ll fix those first.
The Kicad “pour error” still seems to be present in Kicad V5 nightly builds, however I don’t know how to fix the error in V5.
Also, it seems to me the best time to run RenumKiCadPCB is prior to routing the board rather than just before making the Gerbers, which is what I have been doing. That way any missing component issues will beresolved early. No sense routing a board if the schematic and PCB have different parts!
I have suggested to the folks at KiCad to assign someone to incorporate RenumKiCadPCB into the code base. This should be easy enough to do but I lack c++ and GUI skills so I can’t do it alone. If there is anybody out there willing to do encourage the KiCad development group, please do.
Similarly, I would welcome anybody with c++ or GUI programming skills to put a wrapper on the code. A GUI would likely widen its appeal.
Thanks for using the code, and thanks for the bug reports!