Cutting and pasting part in schematic makes new part in PCB

I made a mistake on connectors so I needed to reverse them. So, an 8 pin header goes 87654321 instead of 12345678. Space was tight so when I mirrored it, the part moved up and tied wires together. So, I cut the part, pasted it somewhere else, mirrored it, then put it back where it belongs. After doing that with 4 connectors, I import the changes into the PCB editor. The changes add 4 new parts instead of updating the existing parts. How can I fix this?

UPDATE: I tried Ctrl-Z to undo all the changes I made in the schematic, saved, then re-imported in the changes. The added footprints are still there! After experimenting I now have 6 parts I can’t get rid of.
Thanks!

Assign the new footprints to their respective symbols then update PCB.

That’s the odd thing. The new footprints look identical to the old footprints. Designation is the same.

In the schematic, the designation of the pasted parts are the same as the original.

  • The procedure is to “save as” the original footprint as a new footprint, using the footprint editor, into a personal library.
  • Modify the new footprint to suit your use and save.
  • Open the properties of the symbol, in the schematic, that needs the new footprint.
  • Replace the link of the old footprint with a link to the new footprint (they will be different libraries or different footprint names or both).
  • Update the PCB from the Schematic using Tools.

At the moment you do this in the Schematic Editor:

… then right at that moment, the link between the schematic symbol and it’s footprint on the PCB is broken. If you then paste it again, KiCad treats it as a new schematic symbol with a new footprint.

You have completely lost me here:

RChadwick7 has two sets of footprints for his headers, so there is no need to assign new footprints to schematic symbols.

Other parts that confuse me:

Mirroring a schematic symbol does not change the wiring. (You can also move a schematic symbol by hovering and pressing m). Rubber banding of wires only happens during dragging of schematic symbols. Your troubles would not have started if you:

  1. Hover over a schematic symbol.
  2. Press m to move it (It is now attached to the mouse cursor)
  3. Press y to mirror in the Y axis (or X for the X axis).
  4. Move the mouse and place the symbol in it’s new position.

To start fixing it. Start with making a backup, so if you make mistakes in the following steps, you can always restore the backup and try again.

When you updated the PCB, you added new footprints for the newly pasted schematic symbols, and those don’t go away when you change the schematic afterwards. So just open the PCB Editor, select the new footprints and delete them. But that is only half the work. You also have to restore the links between the new schematic symbols and the old PCB footprints. To do that, press [F8] to update the PCB again, and then use the option to Re-Link footprints to schematic symbols …

That was it! Re-Ink footprints kept the duplicate parts from appearing. However, it seems my netlist is pretty messed up. I saw lines going between pads that already had traces run between them. Then I realized the vias were now on a different net. I changed a few manually and things looked good. However, I’m now at a point where too many netlists are wrong, some are duplicated between parts that are supposed to be separate. I’d like to wind back and start over. Is there something I should look for?
Thanks!

As an update, I did manage to fix all the nets manually. My best guess is that on the vias, and some other parts, I unchecked ‘Automatically update via nets’. I did this as I was having problems getting a via to connect to the trace I wanted to connect.
Thanks again!

As your netlist problems seem to persist…
This Re-link option should only be used once to correct mistakes, and you should turn if off after that. Did you do that?

This gives technical background for linking between schematic and PCB.

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