Some problems setting up kicad version 5


#1

Hi all, i have started a few months ago using KiCad, i saw that current stable version was 4.0.7 and sticked to that one despite there were insisting news of the imminent release of v5. When a stable v 5.0.0 came out i gave it a try and got really stunned by the fantastic job, but to be honest i also came across a few surprises, not all good; this is the reason i am posting to ask a bit of help; before I start with the questions, I would like to highlight that I run KiCAD from a virtual machine and i always start from a deep clean status (that is, I made a Win 10 x64 VM with no KiCAD and saved it, then every time i tried a new version of KiCAD I started from that one, to be absolutely sure that there are no interferences between versions. Questions about v5:

  1. some components from MicroChip libraries have gone, but to my knowledge they are not obsolete (e.g. MCP23017 and MCP23S17). Is it possible to use v4 Microchip library, which has them? How can it be done (sorry instructions are a bit unclear to me)? Or should I try to download latest v5 libraries from gitHub instead? How do i install them? (sorry again instructions a bit unclear to me).

  2. While using v4 I downloaded a couple of 3rd party libraries, can i still use them in v5? Probably the installation process is same as previous question?

  3. PCB autorouter is gone and also button to FreeRoute. Really? Maybe i have to study plugins in order to have some autorouting back?

I am currently trying to get v4.0.7 and 5.0 side by side (again: clean Windows VM, installed v4 in Kicad407 specifying no environment vars, installed v5 in Kicad500 also without environment vars, but i dont like this approach. I’d rather end with a v5 with autorouters and v4 libs if possible.

I would really appreciate some advice on how to get everything working on a v5 only installation.
Thanks alot for your support and best regards


Installing multiple versions on Windows
#2

Use the normal spectra netlist export here. (The freerouting button did call the same dialog. This duplication has been removed. The reasoning is reduced maintainance and most importantly the devs do not want that users think that freerouting is an official auto router supported by the developers of the KiCad project.)

They are still there in the v5 libs. But as they are of very bad quality they got banished into the microchip lib found in the legacy subdirectory. Maybe somebody can clean them up to get them to the standard such that they can be included in the normal libs.

Yes. Just add them using the library manager like you would any other libs (the library manager is found in the preference menus of eeschema and pcb_new.)


#3

Hi Rene,

Thanks for the quick reply, much appreciated.

About the MCP23x17, i have 2 more small questions:

-When you wrote “they are of very bad quality” you were talking about the library objects, not the actual chips, right?

-I couldnt find the Microchip “legacy” subdirectory, i looked in:

C:\Program Files\KiCad500\share\kicad\library

and in

%userprofile%\AppData\Roaming\kicad

…where are they?

Thanks and regards

nomadic


#4

Yes

To get both the obsolete and legacy libs you need to download the library directly from github. (I did not know that this is not included in the installers.)


#5

Hi Rene,

Following your indications, i did a clean install of Kicad 5, downloaded the latest libraries + footprints + 3d models, replaced them straight away and fired up KiCad again.

I found that i had to add the legacy Microchip library manually, and got my MCP23x17 again. So far so good, then i came across the following nuisances which i hope you can help me fix:

  1. Is there a way to import a collection of symbol libraries (an entire directory like the legacy one) in one shot? What about footprints and 3D models?

  2. I imported one of my v4 projects and found that the 3D view shows only the PCB, but not the components. I made a new test project with some of the same components (just placed the footprints on the PCB) and voila, the 3D shapes were there. I tried again by cleaning up my v4 project (I deleted everything except the pro, sch, net and pcb files) and got the same result. How can i restore the 3D view of the components?

  3. About 3D rendering: is it possible to specify the color of the LED in the 3D rendering?

  4. I imported 4 small Eagle files known to be OK (they belong to 3rd party commercial boards) and got some errors in the PCB: ground terminals not connected because the ground fills disappeared.

The copper fill was easily restored, but in 3 out of 4 cases (the most complex boards) I ended up with a few ground “islands” which is not easy to connect manually (they are quite dense 2 sides SMD boards).

Thank you very much for your support, you are really making my transition from v4 to v5 easier!

Best regards,

“nomadic”


#6

BTW, this thread is going really offtopic, it should be split…


#7

Using the library manager you can do it. After pressing the browse button a file browser opens. In it you can use shift plus leftclick to make multiple selections. (crtl plus left click also works if you want to have more control.)

Footprints work exactly the same. 3d models do not need to be imported. Just store them wherever KISYS3DMOD points to. Or if you have personal footprints that use them, setup your own path variable.

Depends on the exact files. On their scaling and how the footprint intended to use them is setup.

A lot of version 4 footprints had a scaling factor of 1/2.54 set in the 3d model options. We now do no longer allow the use of this scaling factor in the official library. This means all footprints are now setup to work with 1:1 scaling now. (This means the footprints expect the 3d model to be scaled 1:1)
If your own 3d models are not scaled that way you will either need to correct them or make your own footprints that define a scaling factor.

Might just be that the footprints now have a slightly different name. (P2.54mm instead of Pitch2.54mm for example) If this is the case then you will need the old 3d model lib for v4 projects and the new v5 3d model lib for new projects. (“Simply” switch the KISYS3DMOD variable depending on which project you currently work on. Sadly there is no way to define this variable for a project so you really need to either manually switch it or use batch files for setting up kicad with v4 libs while working on old projects. Another easy option is to run kicad setup for v4 libs in a vm for maintaining old projects.)

Not directly. but you can add a 3d file per color and manually assign it in pcb_new. Or make a footprint per color.

Did you try to refill the zone? (Shortcut “B”)
Kicad does not allow for orphaned fills, is it possible that your design had such orphaned zones?
Is it possible that the zone settings are different then originally in eagle (min width setting and clearance setting.) If this is the case then the importer did screw up and you could raise a bug report about that.


#8

Done (The title could use work but i could not think about anything better)


#9

Standing ovation to Rene and his commitment! We are narrowing down all issues, and most likely we will close them soon. I hope this discussion will help also other users.

  1. Multiple library import: i was trying to import the folder, didn’t think of standard multi-selection of the individual files. My bad, sorry.

  2. 3D shapes disappeared: my v4 troublemaking project was developed by using only v4 default libraries, including the (in) famous 23017. Migrating to v5 I lost all the 3d components. For the moment I am only with KiCad libraries. Is it feasible to try renaming all footprints?

  3. 3rd party libraries: what happens in case of non 1:1 scaling? error message? wrong rendering? object not displayed? Can i correct the problem objects from inside KiCad or do i need an external software? (which one can i use?)

  4. Eagle import: yes i tried to refill the zone and i ended up in a few islands with unrouted connection. I would like to PM these files to you if you want to have a look. I was also suspecting different settings between Eagle and KiCad but i dont have Eagle so i dont know if i can retrieve them (i didnt look into the files so i dont know if they contain binary or text)

Conclusion: the temptation of using Kicad 5 with v4 libraries is strong, but this isn’t a clean solution, sounds like a quick (and possibly dirty) hack. Maybe it is all what is needed, specially with the rumors of v6 coming soon. But i would like to investigate better the path of a clean upgrade.
I hope that i will not end up in re-drawing my projects from scratch, even if they are just a handful.

I will keep you informed.
Thanks and greetings


#10

Renaming footprints will not bring back the 3d files. (The 3d files have been renamed to fit the new footprint names.)
You could update the pcb with the new version 5 footprints or use dual setup as i have already suggested.

Simply scaled wrong. (The package will simply be displayed as the wrong size)
The fix depends on how you want to fix it. If you only want 3d models for nice renderings you can change the scaling in the footprints settings (so this can be done from within kicad)
If you however want to use 3d models for communicating with mechanical engineers you need to use correctly scaled 3d models preferably in step format.

V6 is at least 2 years away. (possibly 3 depending on how long it takes for 5.1 to be ready.)

I would really suggest you run a dual setup till you no longer need to maintain your old projects. Otherwise you will be stuck with old libs and it will become increasingly harder to convert over to newer setups. (That is the problem with legacy stuff. The longer one waits the higher the conversion costs.)
As i stated safest way is to use v5 with the v4 libs in some virtual machine (or even run v4 it self with the v4 libs in said vm. This would make it possible to work on old projects without the need to remap the schematic.)

Sorry i have no access to eagle either.


#11

Dear all, i am here again to write the walkthrough of a complete migration of the software and one of my projects from v4 to v5 under Windows OS, summarizing all the lessons i learned on my own and the helpful indications i got from Rene_Poschl. I hope you will find it useful.

KiCad v5: i have found that the best way is to explicitly uninstall v4 before installing v5: reason: v5 installer doesn’t uninstall v4 first, and if one stays with the default options he will end with a mixup of v4 and v5 files, specially in the libraries. I don’t think it is really necessary to clean up the registry before installing v5, but if you know what to do why not? After installing the software, it is better to download all libraries (symbols, footprints and 3d models) from repository and replace the ones that came with the installer.

From now on i assume working only with the original libraries, possibly adding something from the Legacy subfolder. Installation of 3rd party libraries requires individual in-depth checking that everything is as expected (specially footprints and 3d models)

Project migration: I made a copy of a 100% complete v4 project and deleted the -cache.lib and the sym-lib-table files, thus keeping only the pro, sch, net and kicad_pcb files.

Schematic: a few symbols disappeared because of class renaming, e.g:

conn:Conn_01x02 -> Connector_Generic:Conn_02x05_Odd_Even
conn:Screw_Terminal_01x16 -> Connector:Screw_Terminal_01x16
opto:PC817 -> Isolator:PC817

All components are in v5 the libraries, just temporarily add a new one, look at its name and replace the name in the old symbol placeholder (a square with a ?? in it). This way you wont need to re-annotate the schematic.

Footprints: open CVPCB and repeat the footprint association from scratch.

Netlist: as always, after filling in footprint data in CVPCB you need to regenerate the netlist.

PCB: open the pcb, read the updated netlist selecting the option of replacing the changed footprints.

Job done! Now the project is 100% v5.


#12

Why would you delete the cache library? It is the only place where kicad stores symbol data of a schematic. Without it your project will be invalid if anything changes in the library. Remapping will also do strange things if the cache library is missing.


#13

Hi Rene,
my objective was to upgrade the project completely, ensuring to get totally rid of the v4 legacy. Although keeping the cache library is possible, this would result in keeping v4 legacy objects.


#14

The better way is to use the remap process as intented and clean up afterwards using the tools build into kicad.
As the libs are completely different between the two versions you will kill your project by deleting the cache lib. (assuming you run official libs as it seems from your previous post. For personal libs this is not the case as you are in control over which changes are made.) And with kill your project i mean every symbol will be replaced by question marks.

To reconnect symbols to the new version 5 symbols use tools -> edit symbol library references


So my suggested workflow is as follows:
Before opening a version 4 project in version 5 make a backup.
Ensure the cache lib is valid
Ensure kicad 5 is setup with the libs you want to use in it
open the schematic and use the rescue and remap dialogs to get it to a usable state (every symbol not found in your current library setup will be copied from the cache lib into a so called rescue lib. This ensures that your schematic stays unchanged even if you change stuff in the library.)
If you then want to get rid of the references to the rescue lib do it with the tool mentioned above. Change it one by one and ensure everything still works and is connected the same way. (We did not only change symbol names. A lot of them got their pins moved around. Some multi unit symbols now have their power pins on a separate unit as visible pins instead of having invisible power input pins)


Another option would be to acknowledge the role of the rescue lib and embrace it. No need to change old schematics if it is not really necessary.


#15

Today I tried the “edit symbol library references” from the tools menu and it generated a wxWidgets error and crashed Kicad. I tried it on a couple projects. Has anyone else experienced this problem? I am running a nightly:

Version: (5.0.1-dev-154-gb0b1c4378), debug build
Libraries:
wxWidgets 3.0.4
libcurl/7.54.0 LibreSSL/2.0.20 zlib/1.2.11 nghttp2/1.24.0
Platform: Mac OS X (Darwin 17.7.0 x86_64), 64 bit, Little endian, wxMac