home-assistant / addons

:heavy_plus_sign: Docker add-ons for Home Assistant
https://home-assistant.io/hassio/
Apache License 2.0
1.56k stars 1.51k forks source link

6.11.0 update breaks DeconZ API #2317

Closed Kllrv closed 2 years ago

Kllrv commented 2 years ago

Describe the issue you are experiencing

I believe the issue discussed in https://github.com/home-assistant/core/issues/62388 originates in this addon update.

Updating to 6.11.0 causes the Phoscon app and HA to lose connection to the DeconZ API. I believe this is because the update doesn't include the REST API plugin - it's missing from the plugin list in the DeconZ GUI when viewed through VNC.

As seen in version 6.10.0: image

Broken update: image

What type of installation are you running?

Home Assistant OS

Which operating system are you running on?

Home Assistant Operating System

Which add-on are you reporting an issue with?

deCONZ

What is the version of the add-on?

6.11.0

Steps to reproduce the issue

  1. Update addon
  2. Take notes of broken items: Observe whether Phoscon App finds the gateway, see whether DeconZ GUI displays the API plugin.

Anything in the Supervisor logs that might be useful for us?

Update task completes nominally, no errors

Anything in the add-on logs that might be useful for us?

Add-on logs look ordinary, except that the API plugin isn't listed where expected

Additional information

No response

tmttn commented 2 years ago

Nicely spotted. I was experiencing the same symptoms but I didn't notice the missing Rest API menu item in DeconZ.

scorpinus commented 2 years ago

I keep seeing: Device TTL 3235 s flags: 0x7 in de log of the add-on.

Going to the phoscon web UI gives: Please wait until the search for gateways has finished.

lancer73 commented 2 years ago

Just rolled back the update to 6.11. The Phoscon app couldn't find the gateway and alle devices were unavailable in HA.

Relevant logs:

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] firmware.sh: executing... 
[15:34:30] INFO: GCFFlasher V3_17 (c) dresden elektronik ingenieurtechnik gmbh
Path             | Vendor | Product | Serial     | Type
-----------------+--------+---------+------------+-------
/dev/ttyACM0     | 0x1CF1 | 0x0030  | DE0000000  | ConBee II 
/dev/ttyUSB0     | 0x0403 | 0x6015  |            | ConBee 
[cont-init.d] firmware.sh: exited 0.
[cont-init.d] nginx.sh: executing... 
[cont-init.d] nginx.sh: exited 0.
[cont-init.d] novnc.sh: executing... 
[cont-init.d] novnc.sh: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
[15:34:31] INFO: Running the deCONZ OTA updater...
[15:34:31] INFO: Running the IKEA OTA updater...
[15:34:31] INFO: Running the OSRAM LEdvance OTA updater...
[15:34:31] INFO: Websockify waiting for VNC to start
[15:34:31] INFO: Starting VNC server (local/yes)...
[15:34:31] INFO: Starting websockify...
WebSocket server settings:
  - Listen on 127.0.0.1:5901
  - Flash security policy server
  - Web server. Web root: /usr/share/novnc
  - No SSL/TLS support (no cert file)
  - proxying from 127.0.0.1:5901 to 127.0.0.1:5900
[15:34:34] INFO: deCONZ waiting for VNC to start
[15:34:34] INFO: Starting the deCONZ gateway...
libpng warning: iCCP: known incorrect sRGB profile
libpng warning: iCCP: known incorrect sRGB profile
[15:34:35] INFO: Starting Nginx...
2021/12/20 15:34:35 [notice] 321#321: using the "epoll" event method
2021/12/20 15:34:35 [notice] 321#321: nginx/1.14.2
2021/12/20 15:34:35 [notice] 321#321: OS: Linux 5.10.83
2021/12/20 15:34:35 [notice] 321#321: getrlimit(RLIMIT_NOFILE): 1048576:1048576
2021/12/20 15:34:35 [notice] 321#321: start worker processes
2021/12/20 15:34:35 [notice] 321#321: start worker process 1458
15:34:35:400 HTTP Server listen on address 0.0.0.0, port: 40850, root: /usr/share/deCONZ/webapp/
15:34:35:436 COM: use stable device path /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE2427625-if00
15:34:35:463 COM: /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE0000000-if00 / serialno: DE2427625, ConBee II
15:34:35:463 ZCLDB init file /data/.local/share/dresden-elektronik/deCONZ/zcldb.txt
15:34:35:517 found node plugin: libde_signal_plugin.so - Signal Monitor Plugin
15:34:41:308 found node plugin: libstd_otau_plugin.so - STD OTAU Plugin
15:34:42:398 COM: /dev/serial/by-id/usb-dresden_elektronik_ingenieurtechnik_GmbH_ConBee_II_DE0000000-if00 / serialno: DE2427625, ConBee II
PROTO: CRC error
PROTO: CRC error
15:34:44:047 Device firmware version 0x26660700 ConBee II
15:34:44:049 unlocked max nodes: 512
15:34:44:067 Device protocol version: 0x010C
15:34:44:104 Current channel 11
15:34:44:107 CTRL got nwk update id 1
15:34:44:108 CTRL ANT_CTRL 0x03
15:34:44:117 Device protocol version: 0x010C
15:34:44:140 CTRL ANT_CTRL 0x03
parse error: Invalid numeric literal at line 1, column 34
15:35:03:614 saved node state in 0 ms
15:35:03:615 sync() in 0 ms
reinierjh commented 2 years ago

Also after updating, it looks like all the custom naming is gone. only ID's are shown.

Kllrv commented 2 years ago

Also after updating, it looks like all the custom naming is gone. only ID's are shown.

The names and many other functions are provided by Phoscon, which relies on the API

Mimiix commented 2 years ago

It looks like the RestAPI Plugin isn't in the [ackage.

@pvizeli Is there something we can do from deCONZ to help get this sorted?

frenck commented 2 years ago

@Mimiix We don't build the package, it is downloaded from upstream servers. It seems like those are already missing it?

I've looked for clues on things like "Maybe packages have been separated", but that doesn't seem the case.

I don't see a reason that may cause this. We might totally mis something maybe?

Mimiix commented 2 years ago

@Mimiix We don't build the package, it is downloaded from upstream servers. It seems like those are already missing it?

I've looked for clues on things like "Maybe packages have been separated", but that doesn't seem the case.

I don't see a reason that may cause this. We might totally mis something maybe?

Could it perhaps be due to the new dependency requirement introduced?

https://github.com/dresden-elektronik/deconz-rest-plugin/releases/tag/v2.13.0-beta mentioned:

Under Linux libqt5qml5 and qtdeclarative5-dev need to be installed.

frenck commented 2 years ago

Hmm that might be it, will take a look (PS, odd it doesn't report it missing in that case). Thanks!

Mimiix commented 2 years ago

Sure!

Can we keep this issue for tracking ? Or do you want to open one in the deCONZ repository?

MiguelCosta commented 2 years ago

If we read the official documentation from dersden-elektronik, I think HA doesn't support the new deConz versions

https://github.com/dresden-elektronik/deconz-rest-plugin/wiki/Update-deCONZ-manually

This method cannot be used for the Home-Assistant add-on and no current workaround is known. This also includes the button in Phoscon within the addon.

Mimiix commented 2 years ago

@miguelcosta Thats unrelated as it is about firmware, not software .

matata86 commented 2 years ago

Same problem for me :-(

frenck commented 2 years ago

I find it kinda odd to add qtbase5-dev, as it is a development package. Nothing is compiled here. So this makes me wonder if this package is here for one of its subdeps instead of the development headers.

To me, it makes no sense to install qtbase5-dev (which is a dep of qtbase5-dev).

Mimiix commented 2 years ago

I find it kinda odd to add qtbase5-dev, as it is a development package. Nothing is compiled here. So this makes me wonder if this package is here for one of its subdeps instead of the development headers.

That's something @manup just told me too. My bad there. I've copied it from the release notes of the 2.13.0 beta.

My appologies!

manup commented 2 years ago

Versions above v2.13.0 need to have libqt5qml5 installed, when installing via dpkg it should throw an error as missing dependency :thinking:

The -dev package is only needed when the plugin needs to be self compiled, it's not required for normal usage.

Note that the compiling OS was raised from Stretch to Buster since for the OpenSSL library we needed newer functionality.

frenck commented 2 years ago

Thanks for the response @manup šŸ‘

We are on buster with the add-on, so that requirement was already satisfied.

The dependency of libqt5qml5 is correctly listed here:

image

However, we do a force install, not sure why actually...

So, that would have made it ignore it.

manup commented 2 years ago

Looks like the right spot, when the libqt5qml5 is not found deCONZ will start but the REST plugin doesn't load as it depends on it. Does your Docker Image already have libssl installed? This is optional but needed for Alarm Systems and ZGP proxy support.

frenck commented 2 years ago

Does your Docker Image already have libssl installed? This is optional but needed for Alarm Systems and ZGP proxy support.

Will check to make sure. I've confirmed adding the libqt5qml5 fixes the issue. I will check libssl and open a PR to get it out.

Edit: Confirmed, libssl1.1 is installed (pulled in as a dependency of another package).

thecem commented 2 years ago

@frenck is this in the picture libqt5qml5 or libqt5qnl5 is there a typo m to n?

frenck commented 2 years ago

@thecem bad resolution screenshot, that is all šŸ˜‰

pfefferCode commented 2 years ago

The new version 6.11.1 is not shown as an available update in the preferences :-( grafik

dieugab commented 2 years ago

@pfefferCode it can take a while to propagate. You should be seeing it soon, it just showed up for me

pfefferCode commented 2 years ago

@gvssr Thank you for answering so quickly! From where is the update information fetched? Is there a way to tell HA to check for add-on updates? I rebooted the RaspberyPi and it does not show the update.

dieugab commented 2 years ago

@gvssr Thank you for answering so quickly! From where is the update information fetched? Is there a way to tell HA to check for add-on updates? I rebooted the RaspberyPi and it does not show the update.

You could try this: https://community.home-assistant.io/t/supervisor-add-ons-manual-update/231673/12

pfefferCode commented 2 years ago

thanks, that worked :-) It is updating now :-)