Schema file migration

Hi Folks,

I started using Kicad a few months back, but unfortunately started with a “Nightly build”.

Having finished the first iteration of my project, I thought I should get off the nightly build, and use a stable version of KiCad. So I downloaded 5.1.8 and optimistically, hoped I’d be able to open/import/convert my schematic file from the old project.That doesnt seem to be the case.

My file format looks like:

(kicad_sch (version 20200827) (generator eeschema)
(page 1 1)
(paper “A4”)
(title_block
(title “MyProject”)
(rev “2”)
)
(lib_symbols

Is there any way I can save the work ? or is it just start from scratch again ?

This is one of the documented limitations of nightly builds. There is generally no way back from them to any older build (which by definition includes stable).

My suggestion is to stay on nightly for this one project but use stable for future ones.

If you’re adventurous, you could try to edit the version string and open and save with a nightly build where saving in the old file formats has not been disabled yet (before !217).

Gee, that seems a bit odd. I expected someone would have a Python script to read one format and write back out to the stable format.

… or better yet, look at schema evolution and allow the file format to evolve without breaking.

oh well, thanks anyway, I just uninstalled the stable release #NightlyForLyfe I guess.

Thinking back, I actually ended up on the Nightly builds because someone else used it, so the problem continues to propagate.

Why do you find it so odd?

The whole addition of the string “-nightly” should at least have made you suspicious about what that means, and it is a common term for software that is under heavy development.

One of the common properties for software that is under heavy development is that some features do not work properly, or are bluntly absent at all.

I think the file format is now frozen (KiCad is getting close to a V6.0 release) Having a file converter for a file format that is still changing is a lot of extra work, and there are plenty of things that developers of KiCad find both more important and more useful than this. But still it’s possible someone already started on a module (in probably Python) to read the new file format for use in scripting. (And a module for writing in the old format probably also exists.) If you’re good at Python those are probably relatively easy to knit together.

On top of that. Because KiCad is an open source project, everybody can update to the latest stable version for free. This means that there is generally much less need to write older versions of file formats.

Two related links from the FAQ section:


How big is your schematic?
Designing a schematic is much more work then re-creating it, especially when it was your first schematic in KiCad and you also had to learn to use Eeschema itself for the first schematic.

You also wrote that you had just made your first iteration of the schematic. Maybe it is a good idea anyway to redraw it, and do some cleanup at the same time.

Just for completeness:
For the PCB, there is a partial way to convert to any KiCad version, even if the orignal PCB was not made in KiCad, by opening the Gerber files in Gerbview, and then: Gerbview / File / Export to Pcbnew

I find it odd that the nightly build is literally segregated from the stable release. I have not seen this in other open source projects before.

As I eluded, I first downloaded and installed the stable release, but the project which inspired me to give it a go, was built on a nightly build, so I switched. It seems that now whatever I do with that project, it is now bound to the nightly release.

Other people I have spoken to about the project, and who have expressed an interest in contributing, are now also bound to the nightly release. I think this is odd, just my opinion.

Recreating - I think your right, it would be good to clean it up, but there’s probably a few weeks of effort to do this. It is not physically big (20mm x 20mm) but has 4 microchips on it so there is a bit of work to do this.

The change in file format is not that odd. The old file formats (starting from 1992) in KiCad were the odd thing, and replacing them with better understandable, easier to parse and more robust file formats is a good thing.

You also should not have expectations that the “-nightly” versions work well, or would be complete.

The biggest problem is probably that it has taken several years between KiCad V5 and V6, which make people impatient and get tempted by all the new features that are not yet ready. For the last few months there are about 10 to 20 issues which get opened and closed / fixed on github every day. KiCad is the fastest paced Open Source project I know.

Two weeks for a 20mm * 20mm PCB?
If you upload the project here I’ll have a look at it. My first guess would probably be up to two hours for the schematic, and less for the PCB, because most of the PCB can be back ported via Gerber files.

But staying with the nightlies probably ain’t too bad either. Most of the remaining bugs seem quite small. It has a pretty good backup system built in that zip’s the old project upon save, and it’s also in “feature freeze” for some time. So it’s unlikely that big things break, and a stable V6.0 is expected in several months time.

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