claudegel / sinope-130

Neviweb130 custom component for Home Assistant to manage devices connected via a GT130 and wifi devices from Sinopé
GNU General Public License v3.0
62 stars 13 forks source link

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

Closed andguay closed 1 month ago

andguay commented 1 month ago

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](https://github.com/claudegel/sinope-130/assets/170878657/3166d43e-f3e7-44c2-9c34-03b6a8697002)
Guyohms commented 1 month ago

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'```
claudegel commented 1 month ago

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

claudegel commented 1 month ago

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

claudegel commented 1 month ago

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

claudegel commented 1 month ago

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

claudegel commented 1 month ago

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,

bertah commented 1 month ago

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}
claudegel commented 1 month ago

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é

claudegel commented 1 month ago

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

xetalx commented 1 month ago

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.

claudegel commented 1 month ago

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.

claudegel commented 1 month ago

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

claudegel commented 1 month ago

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

MichelJourdain commented 1 month ago

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

karco commented 1 month ago

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

andguay commented 1 month ago

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

claudegel commented 1 month ago

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

claudegel commented 1 month ago

Done v2.7.7