3D models are not visible other pc

Hello everyone,

In the project I created on my computer, the 3D models are visible, but they are not visible when opened from a different computer. When I examine the layout, the 3D models in the kicad libraries are visible, but the 3D models in the footprints I created are not visible.

How can I solve this problem?

Thanks everyone.

KiCad does not do anything special with 3D models in a project. You have to decide how to handle them yourself. If you want to use a global approach for your own projects, then using a separate environment variable for all your own 3D models is a good Idea.

If you you want to cache all used 3D models inside each project, then you have to copy them and manage the footprint paths / links inside your symbols manually.

1 Like

hi @paulvdh ,

Thanks for reply.

I created a nice library layout for my own projects. Symbol, footprint and 3d model files are in separate folders. Symbol, footprint and 3d models are defined in the same directory. There is no problem when working on my own computer.

If I send the project files to a friend; he can see the layout but he cannot see the 3d model files I created. (There is no problem with the 3d models in kicad’s own library)

Please show how one of those 3D models is defined in your footprint Properties which is used in a board layout.

1 Like

Did you actually copy the library with the 3D models to that other computer?
And of course, the links inside the footprints have to point to the location where they are actually stored.

In my own libraries, I store datasheet links inside schematic symbols with a KICAD_DATASHEET_DIR variable, and make that point to where I store my own datasheets. It’s a bit of a mess to do this manually, and for over half of my projects I have not fixed this.

For your 3D links, those are also the 2 conditions:

  • Footprints have to have links to a 3D model. (That does not change when you copy a project).
  • The actual 3D models have to be in the location specified by the above links.

Environment variables can help a bit here, but there is no automation at all in KiCad itself. There are some scripts made outside of the KiCad project which can help with these things.

Edit: / Addition

You are using a hard coded path in your 3D model links:

I would replace the D:/Umut_Kicad_Lib_3D/ part with an environment variable. That way all your own libraries can use the same environment variable, and you just set up a single environment variable to point to wherever those libraries are stored.

1 Like

@paulvdh

I understand now. As a solution; I will create another folder with the project files. I will add the 3D models to this folder. I will share these files when sharing the project files.

thanks…

From your reply I don’t know if you have understood how this system works and if your solution actually works. I’m not sure if you have an external folder for your libraries, or do you have project specific libraries inside your project folder or in the possible zip file which you may share.

If you want have a completely self-contained project folder, you have to include your libraries, also the 3D library, inside the project and use them as Project Specific Libraries. Then you can have a pointer in a footprint file to a 3D file like this: $KIPRJMOD/[your_3d_library_subfolder]/xxx.stp.

There are other options, but rather than find a working option by trial and error, you should understand how the paths work in the KiCad library system.

1 Like

@eelik I will try your suggestions.

thanks for reply.