XKNX / xknxproject

ETS project parser written in python
GNU General Public License v2.0
81 stars 16 forks source link

cannot find any reference to what version of ets projectfile can be imported. #440

Open koenbroumels opened 1 month ago

koenbroumels commented 1 month ago

i have a ets3 project file (a *.pr5) but it seems that that doesn't work. But on the infoscreen in Homeassistant i don't see any reference to what versions are supported.

farmio commented 1 month ago

Hi 👋! ETS 4, 5 and 6 .knxproj files are supported.

koenbroumels commented 1 month ago

I’m gonna try to use this exporter.. will report if succes, you could add this info to readme or faq for future users?

https://support.knx.org/hc/en-us/articles/360001690379-ETS-Project-Exporter

farmio commented 1 month ago

I did think it says "knxproj file" somewhere... but maybe that got missing in an update or translation. Anyway, ETS 3 is EOL since almost 14 years; I wouldn't expect this to be supported in any recent software, let alone non-commercial 😬

koenbroumels commented 1 month ago

It still works for me.. and ets had some really fast follow-up releases imho..

farmio commented 1 month ago

4 and 7 years for the major versions... yeah for Knx standards that's quite fast 🤣

Did the exporter app work for you?

koenbroumels commented 1 month ago

no time yet.. i'll let you know in 2 to 4 years.. lol

--edit booting my windows95 vmware takes time too... :-)

koenbroumels commented 1 month ago

Should I backup my own added knx parts from the “yaml"?

will this import overwrite the current :knx ?

farmio commented 1 month ago

No, your yaml isn't touched in any way.

koenbroumels commented 1 month ago

Schermafbeelding 2024-08-10 181219

nope.. but i had errors with converting too.. so that might be related.

farmio commented 1 month ago

There should be more detailed error messages in your HA logs. But yes, converting without errors probably helps.

koenbroumels commented 1 month ago

logs show:

`Logger: homeassistant.components.websocket_api.http.connection Bron: components/knx/project.py:122 integratie: Home Assistant WebSocket API (documentatie, problemen) Eerst voorgekomen: 17:43:11 (1 gebeurtenissen) Laatst gelogd: 17:43:11

[547584849760] Error handling message: Unknown error (unknown_error) koen from 127.0.0.1 (Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36) Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py", line 28, in _handle_async_response await func(hass, connection, msg) File "/usr/src/homeassistant/homeassistant/components/knx/websocket.py", line 156, in ws_project_file_process await knx.project.process_project_file( File "/usr/src/homeassistant/homeassistant/components/knx/project.py", line 124, in process_project_file project = await self.hass.async_add_executor_job(_parse_project) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, **self.kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/knx/project.py", line 122, in _parse_project return xknxproj.parse() ^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/xknxproject/xknxproj.py", line 42, in parse project = XMLParser(knx_project_content).parse(self.language) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/xknxproject/xml/parser.py", line 143, in parse self._load(language=language) File "/usr/local/lib/python3.12/site-packages/xknxproject/xml/parser.py", line 165, in _load ) = ProjectLoader.load( ^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/xknxproject/loader/project_loader.py", line 54, in load with knx_proj_contents.open_project_meta() as project_file: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/xknxproject/zip/extractor.py", line 59, in open_project_meta return self._project_archive.open( ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/zipfile/init.py", line 1604, in open zinfo = self.getinfo(name) ^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/zipfile/_path/init.py", line 125, in getinfo return super().getinfo(name) ^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/zipfile/init.py", line 1532, in getinfo raise KeyError( KeyError: "There is no item named 'P-00C8/Project.xml' in the archive"`

koenbroumels commented 1 month ago

I tried again with exports without any export errors but it keeps getting stuck on the same item..

i opened the knxproj without trouble in ets6.. going outside for a swim.

farmio commented 1 month ago

Hm.. I've never seen such a conversion result, so can't really say what schema version this is / why the Project.xml isn't found there. But when you can import it to ETS 5 / 6, you should be able to export it again and get a supported format.