claudegel/sinope-130

Integration Neviweb - ne vois plus les thermostats, ni les switchs de lumières

Closed this issue · 18 comments

Entre hier et ce matin, tous mes thermostats et toutes mes switchs de lumières sont tombé "unavailable".
Si je clic sur une entité "This entity is no longer being provided by the neviweb130 integration. If the entity is no longer in use, delete it in settings.".

Ha 2024.5.5
Pas effectué de mise à jours depuis quelques jours.

Prise de courant, GT130 et contrôleur multifonction toujours visible.
thermostats, switch, Calypso => unavailable.

Suis-je le seul avec ce problème ?

Dans les logs HA :
Logger: homeassistant.components.climate
Source: helpers/entity_platform.py:707
integration: Climate (documentation, issues)
First occurred: 5:49:15 AM (12 occurrences)
Last logged: 5:49:31 AM

neviweb130: Error on device update!
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 707, in _async_add_entity
await entity.async_device_update(warning=False)
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1295, in async_device_update
await hass.async_add_executor_job(self.update)
File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/neviweb130/climate.py", line 1737, in update
self.get_sensor_error_code(start)
File "/config/custom_components/neviweb130/climate.py", line 1514, in get_sensor_error_code
self._code_compensation_sensor = device_error_code["compensationSensor"]
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
KeyError: 'compensationSensor'

image

J'ai le même problème, ça commencé hier en PM.
Il semble que Sinopé ont fait des modifications à leur API...

Source: helpers/entity.py:950
First occurred: June 3, 2024 at 13:55:59 (1240 occurrences)
Last logged: 07:32:08

Update for climate.neviweb130_climate_corridor fails
Update for climate.neviweb130_climate_cuisine fails
Update for climate.neviweb130_climate_salle_de_bain fails
Update for climate.neviweb130_climate_salle_de_lavage fails
Update for climate.neviweb130_climate_salon fails
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 950, in async_update_ha_state
    await self.async_device_update()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1295, in async_device_update
    await hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/neviweb130/climate.py", line 1737, in update
    self.get_sensor_error_code(start)
  File "/config/custom_components/neviweb130/climate.py", line 1514, in get_sensor_error_code
    self._code_compensation_sensor = device_error_code["compensationSensor"]
                                     ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^
KeyError: 'compensationSensor'```

Oui Sinopé a changer certaines options. je vais faire une branche pour corriger. En attendant vous pouvez commenter la ligne 1514 de climate.py en ajoutant un # au début. Dites-moi quel thermostats font cet erreur svp.

Aussi pouvez-vous m'envoyer la ligne de vos log contenant ceci:
Error code set1 updated

Pour les lumières est-ce qu'il y a un message d'erreur dans vos log?

la branche suivante devrait fonctionner pour les thermostats. seulement remplacer climate.py par celui de cette branche
https://github.com/claudegel/sinope-130/tree/error-code-fix/custom_components/neviweb130

Ha c'est plus grave que je pensais. neviweb n'envois plus rien pour device_error_code. Possible que ce soit le même bug pour les lumières

OK j'ai tout enlevé les call pour device error code. je vais en savoir plus ce soir. En attendant si vous pouvez m'envoyer les erreurs pour les lumières ce serait bien
merci,

J'ai le même problème, voici un extrait de log pour une des lumières:

2024-06-04 00:06:52.737 DEBUG (SyncWorker_9) [custom_components.neviweb130.light] Updating neviweb130 light Atelier (1.162 sec): {'onOff': 'on', 'errorCodeSet1': {'raw': 0}, 'lockKeypad': 'unlocked', 'powerTimer': 0, 'statusLedOnIntensity': 50, 'statusLedOffIntensity': 50, 'statusLedOnColor': {'red': 0, 'green': 255, 'blue': 255}, 'statusLedOffColor': {'red': 75, 'green': 10, 'blue': 0}, 'rssi': -44, 'loadWattOutput1': {'status': 'on', 'value': 0}}
2024-06-04 00:06:52.739 ERROR (MainThread) [homeassistant.components.light] neviweb130: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 707, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1295, in async_device_update
    await hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/neviweb130/light.py", line 361, in update
    self._temp_status = device_data[ATTR_ERROR_CODE_SET1]["temperature"]
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^
KeyError: 'temperature'

Problème semblable avec contrôlleur de chauffe-eau, voici l'extrait

2024-06-04 00:06:53.341 DEBUG (SyncWorker_4) [custom_components.neviweb130.switch] Updating neviweb130 switch Chauffe eau (1.694 sec): {'onOff': 'on', 'roomTemperature': 55.45, 'errorCodeSet1': {'raw': 0}, 'drStatus': {'drActive': 'off', 'optOut': 'off', 'onOff': 'off', 'optOutReason': 'off'}, 'waterLeakStatus': 'ok', 'loadConnected': 3709, 'wattageInstant': 0, 'coldLoadPickupStatus': 1, 'drConfigWaterTempMin': 45, 'drWTTimeOn': 240, 'drConfigWaterTempTime': 2, 'rssi': -41, 'drProtectionLegStatus': {'temperature': 'ok', 'consumption': 'ok', 'consumptionOverTime': 'ok'}, 'coldLoadPickupRemainingTime': 65535, 'tankSize': 40}
2024-06-04 00:06:53.342 ERROR (MainThread) [homeassistant.components.switch] neviweb130: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 707, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1295, in async_device_update
    await hass.async_add_executor_job(self.update)
  File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/neviweb130/switch.py", line 1138, in update
    self._temp_status = device_data[ATTR_ERROR_CODE_SET1]["temperatureSensor"]
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^
KeyError: 'temperatureSensor'

Et les entrées de log 'Error code set1 updated' (que je vois seulement pour les thermostats)

2024-06-04 00:06:58.000 WARNING (SyncWorker_5) [custom_components.neviweb130.climate] Error code set1 updated: {'raw': 0}

Ok dans la branche j'ai commenté les lignes d'error code pour les thermostats, sensor, lumières et switch.

ce soir je vais regarder ce que Sinopé a changé

J'ai mi a jour la branche et ca fonctionne de mon cote pour tous les appareils.
Il va me rester a trouver les valeur des codes d'erreur de Sinope

J'ai mi a jour la branche et ca fonctionne de mon cote pour tous les appareils. Il va me rester a trouver les valeur des codes d'erreur de Sinope

Merci beaucoup ! Chez moi aussi le même problème avec tous mes thermostats Zigbee et Calypso.

Si vous copiez les fichiers de la branche error-code-fix pour remplacer ceux dans custom_components/neviweb130, ca va corriger le problème . En fin de semaine je vais faire une mise a jour pour rendre les changements disponibles pour tous.

J'ai finalisé les modifications pour valve.py, switch.py et sensor.py
Vous pouvez tester si possible
Demain je fini climate.py et light.py

J'ai terminé les modifications pour climate.py et light.py
Je vais publier une nouvelle version ce soir si personne ne trouve de bug
Merci

J'ai terminé les modifications pour climate.py et light.py Je vais publier une nouvelle version ce soir si personne ne trouve de bug Merci

Je l’ai installé et tout est Ok, pas de messages d’erreurs dans le log. 😀

Merci

J'ai terminé les modifications pour climate.py et light.py Je vais publier une nouvelle version ce soir si personne ne trouve de bug Merci

Bonjour @claudegel , je viens de déployer la modification et tout est de retour à la normal sans erreur.

Merci énormément

J'ai terminé les modifications pour climate.py et light.py Je vais publier une nouvelle version ce soir si personne ne trouve de bug Merci

Je l’ai installé et tout est Ok, pas de messages d’erreurs dans le log. 😀

Merci

ici aussi pas de problèmes

Ok alors je publie une nouvelle version.
merci de votre aide pour tester

Done v2.7.7