How bad is the rescue lib after remapping? (FAQ article discussion)

I updated my FAQ to make it clear that the easy way out is to simply accept the default values and use the rescue dialog. (I also included a note about the question mark bug of 5.1.2)

The easy way should be more than enough for most users. (And it really is not more than click ok twice, save, restart eeschema and check the result.)

As stated above i am aware that the advanced option is a bit more involved. (Maybe more involved than it could be. Especially the “I want to reuse version 4 libs” workflow could be made easier.) This is why i specifically excluded it from my comment about this process being straight forward.

2 Likes

I completely disagree with that; so I guess we will have to agree to differ. :wink:

Would you consider adding to your FAQ the suggestion to consider running KiCad v4 and v5 in parallel? Although it also takes some setting up, it could be an option for users with lots of legacy projects.

Not really viable on most platforms. And not really the right FAQ.

I am not sure that we are really on a different page. I am aware that i am an advanced user and therefore have higher expectations of the software (Which is why I do exactly what you do and transfer my projects to version 5 libs.)

I simply do not think that the small benefits of doing this is worth the hassle for joe normal (and by extension for newbies).

Do you also transfer footprints to the new library? If not why would the rescue lib be bad news? (The footprints included in the pcb file are nothing more than the rescued symbols. Only the way it is saved is different.)

I split this off the other project as i feel we get off topic.

Also i completely re organized the FAQ article.

Nonsense!

Clearly not, so it’s not worth discussing further. A useful dialog relies on agreement of basic facts, which doesn’t appear to be present.

Anyway, you handle most of the support questions, so good luck with that :wink:

I just updated an old V4 project on Linux and found the remapping failed for R and C.
These two could do with some extra hard coded assist. Manually changing them took two hours

What do you mean with failed in this case? Where they replaced by question marks or was there a different problem?

I ended up with question marks as I did not want them to use the rescue library.
Afterwards I was able to go symbol by symbol selecting R and C from Device
I always finding clearing up symbols that have used rescue-lib more of a pain than its worth, best done with a text editor

That is kind of what the library reference editor workflow would make a lot faster. See my FAQ article Converting KiCad version 4 projects to version 5 (Remap a project)

All of this non-sense remap not needed if some one listen to me about ability 5.x to read “Cap_123:Cap” and “Cap_123” as the same one when library configuration correctly!

If you think it is a good idea to misuse the program that way then go ahead. I am not gonna be surprised if it will bite you sometime in the future. (Investing a few minutes now can save you hours later. But hey everyone needs to learn it for themselves.)

It seems that the whole resque thing works pretty OK.
However, The resque dialog that pops up is very confusing and unintuitive.
I mean, you get presented with a “cache” and a “library” option and then get to select [Cancel] or [OK]. ???

In KiCad V4 I regularly used to rename the “-cache” file into a project specific library, (and add it to the top of the library list) because especially when archiving projects, I do not want them to be dependent on external libraries.

The way the resque dialog is presented could be much improved, by communicating better to the user what it actually does. For example:

KiCad has detected that you opened an old schematic, and the libraries with which this schematic was made are missing. This project does however has a cache file with a backup of your schematic symbols.
Do you want to copy these symbols to a project specific library?
[Yes] [No]

An improvement for me would be to add a library name for those symbols to be saved. Most of my old projects already have a project specific library, and I would much prefer to add those symbols to the already existing project specific library.

The other thing I may have mentioned earlier:
I do not really understand why anything needs to be resqued in the first place. If I were to write Kicad then the symbols in the “-cache” library would have precedence over some external library.
How can it ever be usefull if an existing good cached library symbol gets replaced by a defective library link, which results in questionmarks in your schematic?

Sometimes I think about filing a bug report about this, as I am convinced this could never have been intended behaviour. But for me the details of what actually goes wrong are to vague to file a decent bug report.

At the moment the “-cache” lib is an important part of the schematic, especially when reviewing a project from someone else (such as another forum member here). Just now I’ve been experimenting a bit more with it to get a better Idea of how it actually works. KiCad can re-construct the schematic if I delete either the “-cache” or the “-rescue” lib, but not if both are deleted. I find the whole resue thing weird and unnesaccary, as it has about the same info as the “-cache” lib.
Simply giving symbols in the -cache lib precedence over external libraries would make the whole resque thing unnecaddary.
I suspect this is the way V6 is going to work. I assume it integrates the “-cache” into the schematic file, and give it precedence over external libraries.


The first time I got confronted with a schematic full of square boxes with question marks I Panicked, and did not know how to recover.
It does not happen often, but I think I completely redrew a few schematics from the PDF’s I made of the schematics.
Later I learned I can edit the properties of those question mark symbols and can select other symbols from them from one of the libraries.
Other people probably feel the same, it may be a good idea to add a chapter about recovering a schematic from those questionmark symbols. They are quite frightening the first time you see them, while it is actually just a nuisance and not such a big deal, because the library and symbol names of the symbols are preserved.


I also like the: " Eeschema / Tools / Edit symbol fields" spreadsheet like editing of the symbol fields. It would be a nice addition if the library reference of the symbols could also be shown and edited here.
At the moment however, the question mark symbols do not even show up on this spreadsheet grid. This would make repairing damaged schematics a lot easier.

They are also ignored by annotation, which I find strange, but it does not matter much, as the first step should be to repair the library links anyway.

The rescue dialog is as good as it will ever get. Not because the dialog or the rescue concept is good but because it will be replaced with embedded symbols by v6. (Meaning it does not make sense to discuss how it could be improved. We can only document how it works and move on.)

2 Likes

Well, after spending another couple of hours trying to clean up my project to V5 level, I gave up. Remapping seems to leave the project back at square one… a sea of “???”. Possibly there are bugs in 5.0.0 which have been fixed in later versions.

Anyway, I decided to spend some time writing my own code to perform both “rescue” and “remap” functions, and work exactly the way I want. I didn’t take long as I already have library functions to read/write most of the KiCad files. So far it works really nicely, and is also much quicker than KiCad. which is odd because I would expect C++ to be quicker than C#.

Hopefully by v6 it will all be sorted… but I will still want to convert pre-v5 projects.

This should only happen if the cache lib is damaged. Otherwise the rescue dialog should take care of it (unless you cancel rescue.)

There is however a bug in some versions that means that one needs to reload the schematic after rescue for kicad to correctly read that library. (Meaning: save file, close eeschema, reopen.) If the problem persists after this and the cache lib was ok then you have found a bug in the rescue process. (If you can share the project in question then we can test if the bug persists in 5.1.2. If it does then we might want to report it.)

I think this is the method that I prefer. Your “advanced” option is overly complicated in my opinion.

What happened to me is that some of my early projects got started in V3. During the time up till now, I was changing the way that I managed my custom local libraries. The end result is that some of my older projects have wrong official libraries and wrong local libraries. Your “advanced” method does not work with this combined difficulty.

The above is why it is my opinion that the Rescue Dialog should include a selection method for the pathway/library location that the “rescued symbol” should be placed.

It turns out that I need to re-map some symbols out of the “rescue library” on a project yet again. This really should be a one-and-done operation.

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