3D models stopped showing up out of the blue in Kicad 6

Howdy ya’ll! I have been using 6.0.0 on OSX Monterey for a couple of weeks now with no issues and designed 2 PCBs which I have been checking in 3D viewer and everything showed up. Today, out of the blue I opened both the boards up and in 3D view it just shows the PCB.

I have “Show through hole models”, “Show SMT models” and all that turned on as usual. They just don’t show up.

I looked in the KiCAD package contents and the models are there.

What did i do??

OH weird, I figured it out. KiCAD 6 does not like if you open your board in PCBNew if that boards Project file is not also open…

I tried to organize the 2 boards as subfolders in a parent folder with a project, which Kicad 5 used to be fine with. The reason being I have 2 boards I want to jump between schematics on and having them as subfolders shows them all up at the same time in the browser window on the left of the main Kicad window.

But apparently opening this “top level” project makes the “child” boards in the subfolders not display 3D models in PCBNew.

Maybe this is a bug?

The 3D models still show up in Kicad 6.0 in my installation, however a little heads up that they just disappeared “out of the blue” in the nightly (6.99, which I only use for testing in a separate folder tree, only sharing the 3D models with 6.0). All of these models in my projects are from my own library separate from the official one.

What happened is that historically in 5.1, the models in my projects had to use the KISYS3DMOD location for root of my own models (with official libraries in the sub-folders) as other substitutions did not work. In Kicad 6.01 I use KICAD6_3DMODEL_DIR for the official libraries and continued with KISYS3DMOD for my own 3D models now with a separate root, which works fine there. However in the latest version of 6.99, KISYS3DMOD has been silently replaced with KICAD6_3DMODEL_DIR in the 6.99 copy of my projects, thus the separate roots for my own and the official 3D models do not work any longer. Apparently KiCad 6.99 thinks that everything previously using KISYS3DMOD must be the official libraries. I could fix this by bringing the root of the private and official 3D model libraries together again, but I like to keep these separate in the future if possible. So I hoped I could keep the KISYS3DMOD designation for the private 3D models.

I really think this substitution in the 6.99 project files should be optional or allow switch to a selectable name, for instance KICAD_USER_3DMODEL_DIR, so that a separate path replacement can be used for the private 3D models. I really do not want this path substitution in my projects to change every time there is a new KiCad version out, and a new substitution is defined for the official libraries.

This silent upgrade so far only applies to the footprints in the projects. The private footprint libraries appear to still contain the KISYS3DMOD designation, so this becomes somewhat messy.

Application: KiCad (64-bit)

Version: (6.99.0-588-g9b3e9082d3), release build

Libraries:
wxWidgets 3.1.5
FreeType 2.11.0
libcurl/7.78.0-DEV Schannel zlib/1.2.11

Platform: Windows 10 (build 19042), 64-bit edition, 64 bit, Little endian, wxMSW

Build Info:
Date: Jan 23 2022 21:36:11
wxWidgets: 3.1.5 (wchar_t,wx containers)
Boost: 1.76.0
OCC: 7.5.0
Curl: 7.78.0-DEV
ngspice: 35
Compiler: Visual C++ 1929 without C++ ABI

Build settings:
KICAD_USE_OCC=ON
KICAD_SPICE=ON

Wait, isn’t 6.0.1 the newest version? How are you getting 6.99?

Oh I see you are playing with development builds.

Yeah, that’s way beyond my pay grade and risk level! :smiley:

No risk as long as one keep separate versions of both libraries and project files in a separate folder trees for ver. 6.01 and 6.99, and use the 6.99 development builds for testing only and not actual work. The 3D models are “read only” so no need to duplicate those, as long as all installs are performed without upgrading libraries.

In this case it was useful to look a little forward: I might consider to eventually do a global search and replace in the 6.01 project files and personal libraries to substitute “KISYS3DMOD” with “KICAD_USER_3DMODEL_DIR” or something equivalent, so that when I finally upgrade to 7.0 perhaps a year from now, I can keep a separate locations for my personal 3D model repository and those in the official library.

Edit: Here is a useful link in this regard:

2 Likes

I did a global search and replace on my 6.99 project folder tree, and the folder for my custom footprints to get the old 3D model path substitutions replaced with KICAD_USER_3DMODEL_DIR. It was almost scary how easy it was to use Notepad++ to do this - only took a few minutes. Good thing to test it out first in a folder tree I could afford to thrash (and eventually in well backed up folders). Of course KICAD_USER_3DMODEL_DIR had to be added under configure paths before it all worked. This seems to be a happy solution forward.

2 Likes

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