Sinope Line Voltage Thermostats

Salut tu dois avoir :
-roomSetpointAway pour ta consigne en mode absence. Pour le valider ouvre le bouton de tes parametres où est situé le réglage pour la consigne en mode absent et dans la console tu va voir le parametre qui correspond a ta temperature en mode absent.
-occupancyMode (away/home) pour le mode away. Il est pas dans les parametres de ton thermostat mais dans la page d’acueil avec le bouton Présent/Absent

Si tu mets occupancyMode à AWAY est-ce que setpointMode passe à AWAY dans tes parametres ?

Claude, vraiment ,merci! Est-ce que cela répond?

Si le mode est présent :

Si le mode est absent :

Pour cette question, “Si tu mets occupancyMode à AWAY est-ce que setpointMode passe à AWAY dans tes parametres ?”, on dirait que “setpointmode” est à “MANUAL”.

Avec les appareils mi-wi on a un mode away et un setpoint away. si on met le mode en away le thermostat passe a la consigne en absence.
Avec les zigbee et les wifi on a occupancy mode qui passerait le setpointMode à manual. est-ce que le roomSetpoint de 19 équivaut à ta consigne en absence. Si tu descends ta consigne en absence à 10, est-ce qu’en passant a away ca va changer le setpointmode a manual et le roomSetpoint à 10
Dans ce cas la il faudra trouver comment envoyer la commande à Neviweb pour mettre le occupancy a away car cette commande est indépendante des appareils.
Si le occupancy passe le thermostat en mode manuel alors il suffit de faire la meme chose dans HA et passer le thermostat en mode manuel ??

Hi Claude
I just finished reading all of this !! Very interesting

I have:
TH1300ZB Connected to a conBee II and in HA viz ZHA
TH1124ZB Connected to a SmartThings but will me moving it over to ZHA also

So in ZHA the TH1300ZB I see 4 Entities

  • Sensor electrical_measurement
  • Sensor smartenergy_metering
  • Sensor temperature
  • Climate thermostat

Since I moved the TH1300ZB from the SmartThings to the conBee It now displays the Set temparature on the 2nd display, instead on the outside temp… how Can I change it back
I saw that you mention to create something that will set it every hours with a value from the Meteo
but where ? what value must I change ?

Also why Can’t I see the Energy / Wattage currently used ? it just shows “unknow” for both values…

Also where can I set all the values / configuration of the TH1300ZB, most of them I can do on the device itself, but in SmartThings I used to be able to set it it from there (like the min / max temp values)
How do I accomplish this in HA ?

Edit:
Me agin did some more reading… found the Sinope “API” on Sinope page
https://www.sinopetech.com/us/blog/support-cat/api-interface/
Also found in HA / ZHA how to manage clusters, funny part is that the API mentions the cluster 0xFF01 with a few attributes, but in ZHA I see the cluster, but there is no attributes…

Also read about Quirks… and was reading the thermostat.py file for Sinope …
I see that the cluster 0xFF01 is defined and has 2 attributes… but I can’t access them in ZHA … :frowning:
Also from reading the “API” from Sinope, it looks like the Cluster 0xFF01 should have more attributes.

Bonjour Claude,

L’analyse que tu fais m’apparaît tout à fait juste. J’ai également changé le roomSetpoint à 17.5 pour tous les thermostats. Il semble qu’il faudrait effectivement trouver comment envoyer la commande. Voici des données supplémentaires :

1 - Lorsque Neviweb est en mode “présent”, l’option “away” est indépendante et applicable à la plateforme, pas aux thermostats directement :

2 - Lorsque je mets le mode “away” sur la plateforme, je vois que la sélection d’un mode est impossible et un message me l’indique. Je ne peux pas à partir de HA remettre les thermostats en mode auto. Seule option est de mettre manuel ou de rendre inactif :

3 - Quand Neviweb est en mode away, si je change dans HA la température d’un thermostat, les fonctions demeurent indisponibles, mais le thermostat semble chauffer. On voit alors l’occupancy est “home”, setPointMode est “manual” et ce malgré que neviweb est "away. Les deux autres thermostats demeurent en mode “away” :

4 - Pour répondre à la question “Si le occupancy passe le thermostat en mode manuel alors il suffit de faire la meme chose dans HA et passer le thermostat en mode manuel ??”, je crois que c’est juste, mais cela dépasse mes compétences. :slight_smile:
MErci!

Presently in ZHA you have access to room temperature sensor, setpoint temperature sensor and off, heat mode. The two other sensor to measure power load connected are still not availables in ZHA yet.
I’ve done the quirks to support Sinopé thermostats, light and dimmer. Water detector are also supported with the power load controler.
I just finish with the GT125 devices to have all parameter supported like outside temperature and now I’m going to start implementing the same in ZHA.
With my sinope-GT125 custom component it was more easy as I’m the owner of the code. In ZHA I’ll have to submit pull request so it can be a little longer. Fisrt step is to install ZHA as a custom component so I can play with it locally. As for the other parameter like min and max temp they need to be added to ZHA.
So for now thermostats are working in ZHA and can be added in automations but it is still work in progress.
Note that Sinopé give no support for free platform. SmartThings is paying for the driver and you have to buy something from smartThings. I have many devices but for the one I don’t have I need to work with people like you to get the data I’m missing. I have asome TH1300ZB but no TH1124ZB.

Je vais fouiller un peu en fin de semaine… pas le droit de sortir c’est pratique pour pitonner :slight_smile: e vais fouiller un peu en fin de semaine… pas le droit de sortir c’est pratique pour pitonner :, pour voir si on peut avoir une commande pour mettre les appareil en mode away sur Neviweb

Thanks Claude, if you need me to provide some info / data / logs, just let me know.

Also with my limited knowledge acquired in the last 24h, I don’t understand why in the device’s “Manage Clusters” I can see the “Manufacturer Specific Cluster (x0FF01)”, but I can’t get any attributes from it, even if I do see a couple defined in the quirk…

Let me finish to publish new release in my other custom_components today and I’ll start having a look in the ZHA for sinopé tomorrow.
In ZHA for your TH1124ZB could you post the zigbee information so I can check if something is missing from the quirks
Thank you

Bonne année Claude! Si tu as besoin de n’importe quoi, gêne-toi pas.

Happy New Year Claude,

So Not sure what info you needed so heres what I found in the HA logs about the TH1124ZB

2021-01-01 10:33:26 DEBUG (MainThread) [zigpy_deconz.api] APS data indication response: [98, <DeviceState.APSDE_DATA_REQUEST_SLOTS_AVAILABLE|2: 34>, <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0x0000>, 1, <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0x7cbf>, 1, 260, 0, b'\x18+\x01\x04\x00\x00B\x1fSinope Technologies\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00B\x1fTH1124ZB\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00', 0, 175, 255, 118, 72, 1, 0, -28]
2021-01-01 10:33:26 DEBUG (MainThread) [zigpy.zcl] [0x7cbf:1:0x0000] ZCL deserialize: <ZCLHeader frame_control=<FrameControl frame_type=GLOBAL_COMMAND manufacturer_specific=False is_reply=True disable_default_response=True> manufacturer=None tsn=43 command_id=Command.Read_Attributes_rsp>
2021-01-01 10:33:26 DEBUG (MainThread) [zigpy_deconz.api] 'aps_data_indication' response from <DeconzAddress address_mode=ADDRESS_MODE.NWK address=0x7cbf>, ep: 1, profile: 0x0104, cluster_id: 0x0000, data: b'182b01040000421f53696e6f706520546563686e6f6c6f67696573000000000000000000000000050000421f5448313132345a420000000000000000000000000000000000000000000000'
2021-01-01 10:33:26 DEBUG (MainThread) [zigpy.endpoint] [0x7cbf:1] Manufacturer: Sinope Technologies
2021-01-01 10:33:26 DEBUG (MainThread) [zigpy.endpoint] [0x7cbf:1] Model: TH1124ZB
2021-01-01 10:33:26 DEBUG (MainThread) [zigpy.quirks.registry] Checking quirks for Sinope Technologies TH1124ZB (50:0b:91:40:00:02:57:06)
2021-01-01 10:33:26 DEBUG (MainThread) [zigpy.quirks.registry] Considering <class 'zhaquirks.sinope.thermostat.SinopeTechnologiesThermostat'>
...
2021-01-01 10:33:26 DEBUG (MainThread) [homeassistant.components.zha.core.gateway] device - 0x7CBF:50:0b:91:40:00:02:57:06 entering async_device_initialized - is_new_join: True
2021-01-01 10:33:26 DEBUG (MainThread) [homeassistant.components.zha.core.gateway] device - 0x7CBF:50:0b:91:40:00:02:57:06 has joined the ZHA zigbee network
2021-01-01 10:33:26 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0x7CBF](TH1124ZB): started configuration
2021-01-01 10:33:26 DEBUG (MainThread) [homeassistant.components.zha.core.channels.base] [0x7CBF:ZDO](TH1124ZB): 'async_configure' stage succeeded
...
2021-01-01 10:33:27 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0x7CBF](TH1124ZB): completed configuration
2021-01-01 10:33:27 DEBUG (MainThread) [homeassistant.components.zha.core.device] [0x7CBF](TH1124ZB): stored in registry: ZhaDeviceEntry(name='Sinope Technologies TH1124ZB',

If you need other info, let me know where to get it from

Thank you all for your support, I wish you an happy new year full of domotic

Bonjour/hi , bonne année/happy new year,
I read a good part of the discussion about the integration of Sinope in HA.
I am interested in ZHA, I have a TH1300ZB and two TH1124ZB which are currently working quite well. the one in the bedroom had too much light and I had a lot of pressure from my wife to find a solution. As I have found nothing here about it, I looked by myself and I am proud to have succeeded.
first I found the concerned cluster ID and attribute in the smartthings handle device:

if(backlightAutoDimParam == "On Demand"){ 	//Backlight when needed
    traceEvent(settings.logFilter,"Backlight on press",settings.trace)
    cmds += zigbee.writeAttribute(0x0201, 0x0402, 0x30, 0x0000)
}
else{										//Backlight sensing
    traceEvent(settings.logFilter,"Backlight Always ON",settings.trace)
    cmds += zigbee.writeAttribute(0x0201, 0x0402, 0x30, 0x0001)
}  

But nothing happened when I ‘zha.set_zigbee_cluster_attribute’ service in the developer tools. so after weeks on research :stuck_out_tongue_winking_eye: I decide to modify the hvac.py file content in /usr/local/lib/python3.8/site-packages/zigpy/zcl/clusters/ folder
simply add the 0x0402 attibute in the thermostat attribute list (line 300):

    0x0010: ("local_temperature_calibration", t.int8s),
    0x0011: ("occupied_cooling_setpoint", t.int16s),
    0x0012: ("occupied_heating_setpoint", t.int16s),
    0x0013: ("unoccupied_cooling_setpoint", t.int16s),
    0x0014: ("unoccupied_heating_setpoint", t.int16s),
    0x0015: ("min_heat_setpoint_limit", t.int16s),
    0x0016: ("max_heat_setpoint_limit", t.int16s),
    0x0017: ("min_cool_setpoint_limit", t.int16s),
    0x0018: ("max_cool_setpoint_limit", t.int16s),
    0x0019: ("min_setpoint_dead_band", t.int8s),
    0x001A: ("remote_sensing", RemoteSensing),
    0x001B: ("ctrl_seqe_of_oper", ControlSequenceOfOperation),
    0x001C: ("system_mode", SystemMode),
    0x001D: ("alarm_mask", AlarmMask),
    0x001E: ("running_mode", RunningMode),
    0x0402: ("backlightAutoDimParam", t.enum8),
    # ...

after just restart HA. not sure if i had too delete the ./pycache/ folder. Go to manage the device cluster in the ZHA integration, select thermostat from the list and find the backlightAutoDimParam cluster and set it to 0.

I know that is not a permanent solution but it save my couple / or the thermostat :face_with_raised_eyebrow:

I then looked for the integration of the outside temperature which is present in the thermostat.py file but as @Buhric mentioned there is no cluster in the list.
also, I think cluster 0x0011 is missing for display activation (set to 10800, seen in ConBee integration.
Anyway, the ‘SinopeTechnologiesManufacturerCluster’ seems not to be concidered.
that’s it for my first post
Voila pour ma premiere participation

Thank you @emericM the most important is to have a High WAF.
I’ll check to see if I can send a PR to add this permanently in Zigpy.
I’m finishing with the other custom_component for sinopé devices and will work on ZHA and zigpy to implement what we need for all Sinopé devices.
Happy new year to all of you.

Yesterday I’ve added some custom services to the neviweb custom_component so it is not necessary to go to Neviweb portal to change some devices parameter. It could be done directly in HA devtool/services:

  • neviweb.set_backlight_idle, to set backlight intensity for thermostats
  • neviweb.set_timer, to be able to set cut off delay when device is turn_on, on light, dimmer and switch
  • neviweb.set_keypad_lock, to be able to lock keypad on thermostat, light, dimmer and switch
  • neviweb.set_second_display, to switch from setpoint to outside temperature for thermostat second display line
  • neviweb.set_led_indicator, to change led indicator intensity and color for on and off state, for light and dimmer. This one is still buggy but the other one work fine.

Next I’ll do the same for neviweb130 component for zigbee and wifi devices

Salut Claude,

Since your last update, I lost 6 thermostats in HA. Any idea ?

Using integration via Neviweb only

2021-01-05 11:40:27 ERROR (MainThread) [homeassistant.components.climate] neviweb: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 359, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 466, in async_device_update
    await task
  File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/neviweb/climate.py", line 277, in update
    self._away_temp = float(device_data[ATTR_AWAY_SETPOINT])
KeyError: 'roomSetpointAway'

or

2021-01-05 11:40:30 ERROR (MainThread) [homeassistant.components.climate] neviweb: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 359, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 466, in async_device_update
    await task
  File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/neviweb/climate.py", line 287, in update
    self._backlight_idle = device_data[ATTR_BACKLIGHT]
KeyError: 'backlightIntensityIdle'

Hi @ironslow, The only error I have in my log is
requests.exceptions.ReadTimeout: HTTPSConnectionPool(host='neviweb.com', port=443): Read timed out. (read timeout=30)
It’s Neviweb that do not respond. All my 10 thermostats are ok. I have lots of those Read timed out until 8:15 this morning. Then everything is back to normal

KeyError: 'roomSetpointAway'

is when device_data return nothing. I try to update device but data is empty. I should have a protection for this with a warning.

KeyError: 'backlightIntensityIdle'

is for the same reason device_data[ATTR_BACKLIGHT] = None

Hi there,

I also have issues with the last update, the last working version was 1.2.5.
Interesting fact 2/4 thermostats are still working, probably because they are more recent.

Here is the log:

2021-01-05 21:19:33 DEBUG (MainThread) [custom_components.neviweb.climate] Setting up neviweb climate Bureau: {'id': 13467, 'identifier': '001EC0C14F33-000020C5-0-000076CA', 'name': 'Bureau', 'family': '1122', 'location$id': 4254, 'parentDevice$id': 13464, 'group$id': 1017, 'orderIdx': 0, 'sku': 'TH1120RF-3000B', 'vendor': 'Sinopé', 'url_en': 'http://www.sinopetech.com/en/boutique/products/neviweb-en/thermostat-for-electric-heating-wireless-communication/', 'url_fr': 'http://www.sinopetech.com/boutique/produits/thermostat-pour-chauffage-electrique-communication-sans-fil/', 'signature': {'protocol': 'miwi', 'type': 10, 'model': 1122, 'modelCfg': 3, 'hardRev': 1, 'softVersion': {'major': 1, 'middle': 7, 'minor': 0}, 'softBuildCfg': 3, 'family': '1122'}}
2021-01-05 21:19:33 DEBUG (MainThread) [custom_components.neviweb.climate] Setting up neviweb climate Grande chambre: {'id': 13465, 'identifier': '001EC0C14F33-000020C5-0-00004888', 'name': 'Grande chambre', 'family': '1120', 'location$id': 4254, 'parentDevice$id': 13464, 'group$id': 43608, 'orderIdx': 0, 'sku': 'TH1120RF-3000', 'vendor': 'Sinopé', 'url_en': 'http://www.sinopetech.com/en/boutique/products/neviweb-en/thermostat-for-electric-heating-wireless-communication/', 'url_fr': 'http://www.sinopetech.com/boutique/produits/thermostat-pour-chauffage-electrique-communication-sans-fil/', 'signature': {'protocol': 'miwi', 'type': 10, 'model': 1120, 'modelCfg': 82, 'hardRev': 0, 'softVersion': {'major': 1, 'middle': 3, 'minor': 1}, 'softBuildCfg': 0, 'family': '1120'}}
2021-01-05 21:19:33 DEBUG (MainThread) [custom_components.neviweb.climate] Setting up neviweb climate Petite chambre: {'id': 13466, 'identifier': '001EC0C14F33-000020C5-0-000046DF', 'name': 'Petite chambre', 'family': '1120', 'location$id': 4254, 'parentDevice$id': 13464, 'group$id': 1018, 'orderIdx': 0, 'sku': 'TH1120RF-3000', 'vendor': 'Sinopé', 'url_en': 'http://www.sinopetech.com/en/boutique/products/neviweb-en/thermostat-for-electric-heating-wireless-communication/', 'url_fr': 'http://www.sinopetech.com/boutique/produits/thermostat-pour-chauffage-electrique-communication-sans-fil/', 'signature': {'protocol': 'miwi', 'type': 10, 'model': 1120, 'modelCfg': 82, 'hardRev': 0, 'softVersion': {'major': 1, 'middle': 3, 'minor': 1}, 'softBuildCfg': 0, 'family': '1120'}}
2021-01-05 21:19:33 DEBUG (MainThread) [custom_components.neviweb.climate] Setting up neviweb climate Salon: {'id': 13468, 'identifier': '001EC0C14F33-000020C5-0-00011053', 'name': 'Salon', 'family': '1122', 'location$id': 4254, 'parentDevice$id': 13464, 'group$id': 43601, 'orderIdx': 0, 'sku': 'TH1120RF-3000B', 'vendor': 'Sinopé', 'url_en': 'http://www.sinopetech.com/en/boutique/products/neviweb-en/thermostat-for-electric-heating-wireless-communication/', 'url_fr': 'http://www.sinopetech.com/boutique/produits/thermostat-pour-chauffage-electrique-communication-sans-fil/', 'signature': {'protocol': 'miwi', 'type': 10, 'model': 1122, 'modelCfg': 3, 'hardRev': 1, 'softVersion': {'major': 1, 'middle': 7, 'minor': 0}, 'softBuildCfg': 3, 'family': '1122'}}
2021-01-05 21:19:33 DEBUG (SyncWorker_1) [custom_components.neviweb.climate] Updating neviweb climate Bureau (0.652 sec): {'roomSetpointMin': 15, 'roomSetpointMax': 23, 'roomSetpointAway': 15, 'earlyStart': 'on', 'lockKeypad': 'unlocked', 'secondaryDisplay': 'outsideTemperature', 'backlightIntensityIdle': 0, 'wattage': {'error': None, 'value': 988}, 'setpointMode': 'autoBypass', 'rssi': 54, 'roomSetpoint': 21, 'outputPercentDisplay': 34, 'roomTemperature': {'value': 21.02, 'error': None}, 'alarmsActive0': {'type': 'none', 'severity': 'indication', 'duration': 0, 'configIdx': 0}}
2021-01-05 21:19:34 DEBUG (SyncWorker_0) [custom_components.neviweb.climate] Updating neviweb climate Grande chambre (0.421 sec): {'roomSetpointMin': 15, 'roomSetpointMax': 23, 'earlyStart': 'on', 'lockKeypad': 'unlocked', 'secondaryDisplay': 'outsideTemperature', 'backlightIntensityIdle': 0, 'wattage': {'error': None, 'value': 1500}, 'setpointMode': 'autoBypass', 'rssi': 39, 'roomSetpoint': 17.5, 'outputPercentDisplay': 0, 'roomTemperature': {'value': 17.5, 'error': None}, 'alarmsActive0': {'type': 'none', 'severity': 'indication', 'duration': 0, 'configIdx': 12}, 'hardwareRev': 5}
2021-01-05 21:19:34 ERROR (MainThread) [homeassistant.components.climate] neviweb: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 359, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 466, in async_device_update
    await task
  File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/neviweb/climate.py", line 277, in update
    self._away_temp = float(device_data[ATTR_AWAY_SETPOINT])
KeyError: 'roomSetpointAway'
2021-01-05 21:19:34 DEBUG (SyncWorker_2) [custom_components.neviweb.climate] Updating neviweb climate Petite chambre (0.496 sec): {'roomSetpointMin': 15, 'roomSetpointMax': 23, 'earlyStart': 'on', 'lockKeypad': 'unlocked', 'secondaryDisplay': 'outsideTemperature', 'backlightIntensityIdle': 0, 'wattage': {'error': None, 'value': 750}, 'setpointMode': 'auto', 'rssi': 54, 'roomSetpoint': 17, 'outputPercentDisplay': 0, 'roomTemperature': {'value': 17.34, 'error': None}, 'alarmsActive0': {'type': 'none', 'severity': 'indication', 'duration': 0, 'configIdx': 12}, 'hardwareRev': 5}
2021-01-05 21:19:34 ERROR (MainThread) [homeassistant.components.climate] neviweb: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 359, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 466, in async_device_update
    await task
  File "/usr/local/lib/python3.8/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/config/custom_components/neviweb/climate.py", line 277, in update
    self._away_temp = float(device_data[ATTR_AWAY_SETPOINT])
KeyError: 'roomSetpointAway'
2021-01-05 21:19:35 DEBUG (SyncWorker_1) [custom_components.neviweb.climate] Updating neviweb climate Salon (0.397 sec): {'roomSetpointMin': 15, 'roomSetpointMax': 23, 'roomSetpointAway': 15, 'earlyStart': 'on', 'lockKeypad': 'unlocked', 'secondaryDisplay': 'outsideTemperature', 'backlightIntensityIdle': 0, 'wattage': {'error': None, 'value': 2284}, 'setpointMode': 'autoBypass', 'rssi': 39, 'roomSetpoint': 20.5, 'outputPercentDisplay': 30, 'roomTemperature': {'value': 20.46, 'error': None}, 'alarmsActive0': {'type': 'none', 'severity': 'indication', 'duration': 0, 'configIdx': 0}}
2021-01-05 21:28:35 DEBUG (SyncWorker_6) [custom_components.neviweb.climate] Updating neviweb climate Bureau (0.6 sec): {'roomSetpointMin': 15, 'roomSetpointMax': 23, 'roomSetpointAway': 15, 'earlyStart': 'on', 'lockKeypad': 'unlocked', 'secondaryDisplay': 'outsideTemperature', 'backlightIntensityIdle': 0, 'wattage': {'error': None, 'value': 988}, 'setpointMode': 'autoBypass', 'rssi': 54, 'roomSetpoint': 21, 'outputPercentDisplay': 36, 'roomTemperature': {'value': 21, 'error': None}, 'alarmsActive0': {'type': 'none', 'severity': 'indication', 'duration': 0, 'configIdx': 0}}
2021-01-05 21:28:36 DEBUG (SyncWorker_8) [custom_components.neviweb.climate] Updating neviweb climate Salon (0.333 sec): {'roomSetpointMin': 15, 'roomSetpointMax': 23, 'roomSetpointAway': 15, 'earlyStart': 'on', 'lockKeypad': 'unlocked', 'secondaryDisplay': 'outsideTemperature', 'backlightIntensityIdle': 0, 'wattage': {'error': None, 'value': 2284}, 'setpointMode': 'autoBypass', 'rssi': 35, 'roomSetpoint': 20.5, 'outputPercentDisplay': 31, 'roomTemperature': {'value': 20.48, 'error': None}, 'alarmsActive0': {'type': 'none', 'severity': 'indication', 'duration': 0, 'configIdx': 0}}