Can a project edited with version 5.99 (or 6) opened with 5.x?

In short: no, and there’s no reliable way to convert the project back.

(At the time of writing this the version 6 isn’t ready yet, the current development version is 5.99, but the file formats of the current 5.99 and 6 will be essentially the same, so I’ll talk about version 6 for the sake of simplicity.

The KiCad developers have decided to not support back conversion officially because it would require way too much work for little benefit for the project. The possible conversion process is yet uncharted territory, especially for the schematic and symbol formats. Details will be added when found.)


There are some major file format changes between versions 5 and 6.

  • The schematic file format has been changed completely from one “language” to another.
  • The symbol file format has been changed completely from one “language” to another.
  • The symbols used in a schematic are saved into that schematic file in v6, so there’s no need for a symbol library cache file in the project.
  • A schematic file is standalone, it should be possible to share it for viewing, unlike in v5.

The layout and footprint file formats haven’t changed so radically. There are new features, though.

When a project made with v5 is opened with v6 and the schematic is opened, KiCad converts the schematic to the new format. The old schematic and symbol files will be kept. Saving saves the new files only. All further changes go to the new files.

The new files (schematic and symbols) can’t be converted back to the old formats. It may be theoretically possible to write a converter script or program, but at least at the moment there isn’t any. In any case, if the files were edited with v6, many things would be lost in the conversion process, depending on the new features used in the symbols/schematic. A converter would require considerable efforts to make, it’s yet to be seen if anyone will do it.


When the old layout file is opened with v6 it will be converted to the new format and the old file is overwritten on save. That shouldn’t be done without having a backup. Make a backup first if you open a v5 project with v6!

Some changes in file format will be realized only if you use the new features. However, certain things are changed immediately when opening the old file. Therefore you can’t open it anymore with v5 even when you don’t edit the layout at all before saving.

Because there are only additions in the layout and footprint formats (and some things are moved from the layout file to other project files) it’s easier to go back to the old format. If the layout hasn’t been edited by the user it should be possible to do some automatic edits, removing some new data, and recover the old file format. It may be as simple as removing some sections and using a simple script, like

cat nightly.kicad_pcb | sed -r "s/\(tstamp [^\)]*\)//" | sed -r "s/\(pinfunction [^\)]*\)//" > stable.kicad_pcb

(see the post Downgrade kicad_pcb to stable from nightly? by halachal.)

Design rules and netclass information is project-wide files in v6, so they also should be moved back to the v5 layout file if there’s need to continue editing the project with v5, but unfortunately they are in different format than they were in v5.

If the layout has been edited and new features have been used there will necessarily be some data loss. It’s not known yet how easy such conversion would be.


Other project files have been changed, too. Project wide configuration was in .pro file in v5. Now there are .kicad_pro – where design rules and netclasses are moved to – and .kicad_prl with certain configuration data which is may differ between users but belong to the project. Version 5 can’t open a project created with v6 at all, but the old .pro file is kept if an old project is opened with v6.


As a conclusion we can say that at the moment people haven’t tried to backport whole projects from v6 to v5 and we don’t know yet how that could be done and how good the result would be. Backporting the layout may be relatively easy if it hasn’t been edited with new features. Backporting the schematic is much more difficult and hasn’t been attempted yet.

2 Likes