3d Models added by hand are lost with "update pcb from schematics"


Any way to attach to the schemacthics component the 3d model? Im doing something wrong?


I think it is in PCB_New that you can associate the 3-d Model to a footprint. Hover over the part and press “e”. That should bring up a menu. How did you ‘add by hand’?


Thanks hermit, my question is if possible to asign a ed model on the compnent on teh schematics. Seems the 3d asociation is deleted every time i do changes in schmetics, generate dnetlist, and update my pcb. Hope to be clear now.

Best regards.


Every time you update the pcb from the netlist you are loading the old footprint, the one you had before editing the footprint and associate the 3D model.

So, edit the footprint as before and save the footprint to its library.
If you save the footprint with a different name, don’t forget to change the footprint field in the schematic with the (new) name of the footprint.

Edit: updating the schematic can be done with the “back import” icon too.


Pedro, How to associate a 3d model to a footptint o schematichs? Im usgin version 5 and theres a lot of borken 3d models.

Best regards


You would need to edit the footprint using the footprint editor.

First of all there is no version 5 as of today. You are using a development snapshot! (=Nightly)

I further assume you are talking about the official library.

If you used the nightlies for a long time, then your footprint library table might still point to the old footprint libs (via the github plugin.) The fp-lib-table is not updated even if the library package is. Check this via the tool found in pcb_new -> preferences (or setup) -> footprint library manager.

As the nightlies some time ago switched over to the new library, your 3d and footprint libs are now out of sync (The symbol lib will also most likely be out of sync with your footprint lib. Meaning pre assigned footprints will not be found.)

Always ensure that all 3 types of libraries are from the same version (or all of them come from master)

Have a look at this FAQ post: How can i install a specific version of the footprint library?


First, reading the manual. :wink:
http://docs.kicad-pcb.org/stable/en/pcbnew.html paragraph 13.13

Second: a 3d model is associated to a footprint. And that footprint is associated to a schematic symbol. There is no shortcut 3d-schematic symbol.


Hi Rene, thanks fr your quick response.

I have all the 4 folders downloaded from github.


I use that method:

Add libs to the fp-lib-table using the library wizard.

The new libraries are active. Some 3d model are detected and some dont exist. Thats the situation with rj-12, this is the default 3dmodel filename, not present on the sources



How must i proceed?

BTW, just as a suggestion from a newbie. Must be great if possible to define the 3d symbol on the schematich, just like is possible to change footprint. In that way will be possible to update that field in PCB. Or im missing something?

Thanjs for your support.
Best regards!


Great, your response was very usefull tahnks!

But no, that not solve what im asking for. Im pretty sure now you dont understand my question. Dont worry. Have a good day.



Here we disagree. The schematic should not be responsible for that. The model is associated with the footprint. (I would not even allow changing it indepenently from within pcb_new to be honest but some people would complain about that restriction.)

As you report there is a model associated, simply place your personal model in the expected folder and using the correct name and it should work. This is why we require that the 3d model settings are filled out for all footprints even if there is as of yet not a model in the official lib. (It makes it easier for users to add personal models.)


I agree we disagree, and theres no problem on this.

I thnik have more sense some grade of flexibility. I have several 3d models from the same footprint available. One is linked one to one in the footprint definition and that will e visible (and editable) when i see the properties on the schemathcis. But if for some reason for this project i want to change only the 3dmodel for a component, have more sense to duplicate the footprint or have more sense to just select another 3dmodel in my schemathics component and replicate trough netlist to the pcb? I think the second option.
In the end of day is the same kicad allow now, on the pcb model.

Sorry, just an idea.

Regarding to this problem then confirmed theres no 3d model for RJ12 onnector on new libraries on github rigth?

Best regards.


I don’t have time to check this. But if you can’t find it then there probably is none. (I am also baffled as to why there still is a generic rj45 footprint. I thought we deleted all these some time ago. Well we seem to have missed one.)


Hi Geman

I know I didn’t solve your question because it is not possible in Kicad assigning 3d models to symbols. Only to footprints as Rene has already pointed out.

And I also explained it in my point “second”.

There are some RJ12 3d models at


What you may think is a wonderful quick way of doing things will lead you straight down a hell hole, longterm.

Your library should be your everything.


My 2 cents:
“Footprint Library” seems to be a legacy name to me from the time KiCad did not support 3D components.
The 3D components are much closer to the physical objects you put on your boards and are the way of the future.
If 2 different 3D objects happen to have the same footprint, it is more of a coincidence than anything else.
So I’m with Rene here, and also disgaree with you.

Something else to be aware of:
If you have for example DB-9 connectors, then the Male and Female footprints may look very similar, but the pins are mirrored on the PCB. So you can insert the “wrong” sex connector in the PCB, but it won’t work.
RJ-45 / RJ-12 have something similar, Pins are often swapped depending on if the conductive tabs or the holding tab faces the PCB during insertion of the male part.

RJ-45 / RJ-12 are also “difficult” connectors because there are many differences in the 3D parts. Pad locations on the Footprints can be very different from one connector to the other. Take for example the RJ-45 with built in magnetics. These are often much longer than the parts without magnetics. Some have LED’s built in, etc…

So to reduce the opportunity for errors, it seems much more sensible to me to keep the 3D object and Footprint together.


Ok, just a suggestion, any approach have pro and cons. The basic problem now is 3d libraries are pretty broke or im dont undesrtand how to manage that. In any case with a little more effort and the help of external 3d libraries have the projects working. I believe kicad is impressive piece of software, amazing and very friendly. I love it and never regret. As always the better the libraries the bettr the final experience and that will be better when version 5 see the ligth as stable (i hope)

best regards.


“Post must be at least 20 characters”.


I go to
3d shape downloader
click on “default 3d path”
download all the stuff…

And “sh** still happens”

The intuitive way dont work. What must i do then?


The correct way is to manually download the libs from the kicad website or from github.

Edit: The 3d shapes downloader should download the correct libs as long as you make sure you choose the correct repository. The one compatible with the new footprint libs is https://github.com/KiCad/kicad-packages3d

Make sure you check that you have the new footprint libs active. If you have any lib with the prefix Housings you still use the old footprint libs. (The fp-lib-table is not updated automatically. I already told you this in this thread!)


Possibly your assessment the libraries are broke is based on the fact there are many footprints that refer to 3d models that don’t exist. That is intentional, there are many 3d models that have not been created yet, but a “placeholder” is put in the footprint to make it easier to add 3d model later. I can see how this policy is confusing for users who won’t be aware of it.

The elephant in the room: KiCad library management is a mess, has always been a mess, and likely will be that way for a while. KiCad libraries are based around concepts such as search paths and macros, which are second nature to developers who deal with them daily, but are pretty much a black art to regular users.