Is there any way of replacing components symbols systematically in KiCad?
Replacing symbols

Although KiCad has no specific tool to perform that, you can try the following. Let's say you want to replace all resistor symbols R with a photo resistor, whose symbol is R_PHOTO.

Just open your schematic file project.sch with a text editor, replace all instances of Device:R with Device:R_PHOTO, save and close it. Just make sure that the replacement's symbol has the same amount of connections and match the replaced symbol. For resistors and non-polarized capacitors should work just fine.

Replacing footprints

You can use a python library kifield for that as follows:


Install the library


pip install kifield


Copy all fields of a schemactic project.sch to a csv file


kifield -x .\project.sch -i design_fields.csv


The table should look like the following:


Refs,datasheet,footprint,value
C1,~,Capacitor_SMD:C_0603_1608Metric_Pad1.05x0.95mm_HandSolder,22u
C2,~,Capacitor_SMD:C_0603_1608Metric_Pad1.05x0.95mm_HandSolder,1n
C3,~,Capacitor_SMD:C_0603_1608Metric_Pad1.05x0.95mm_HandSolder,100n
D1,~,custom-footprints:SMA_DO-214AC,SS14
D2,~,LED_SMD:LED_1206_3216Metric_Pad1.42x1.75mm_HandSolder,YELLOW



Replace let's say the 0603 cap size with an appropriate 0805 one using the replace all function of any text editor. save and close the csv file.


Refs,datasheet,footprint,value
C1,~,Capacitor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder,22u
C2,~,Capacitor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder,1n
C3,~,Capacitor_SMD:R_0805_2012Metric_Pad1.15x1.40mm_HandSolder,100n
D1,~,custom-footprints:SMA_DO-214AC,SS14
D2,~,LED_SMD:LED_1206_3216Metric_Pad1.42x1.75mm_HandSolder,YELLOW



Import it back into KiCad


kifield -x design_fields.csv -i .\project.sch

Now your footprints should be updated