asantaga / wiserHomeAssistantPlatform

Platform and related climate/sensors to support the Drayton Wiser Home Heating System
MIT License
231 stars 44 forks source link

One of the two heating channels is unavailable on a 3 channel hub after updating to 3.4.4 #450

Closed robertwigley closed 7 months ago

robertwigley commented 7 months ago

On a three channel hub, it appears that one of the channels is going unavailable after the update to 3.4.4. Reverting to 3.4.3, brings back nomal operation and availability. Strangely, this is Channel 1, rather than Channel 3.

333c67ab90b03856246e913d272a111cf81f9fc8

This is on my Dad's system, rather than miine. He has a 3 channel hub. Channel 1 is ‘Downstairs’, channel 2 is “Hot Water” and Channel 3 is “Upstairs”. There are no iTRVs in either room/zone, just a room thermostat in each.

He has one other room called “Kitchen”, which is an Electrical Heat Switch and room thermostat controlling a plinth heater. There are no other rooms related to the central heating though.

Demand for all three channels also becomes “Unknown”:

d2c11c49eebf29ed21884585473d1a07f07aaf1b

Diagnostics file attached as requested: config_entry-wiser-f557d97c366c528cca5a6c3f0fd2ef6f.json

msp1974 commented 7 months ago

OK, so I have run your diag file in my mock hub against v3.4.4 and it works fine. Not really sure why not working for you. Are there any log errors?

msp1974 commented 7 months ago

AH, actually, yes I can recreate. It is related to the issue with heating actuators in v3.4.4 per #449, stopping other sensors loaded. Will have this fixed shortly.

I also saw another issue with the naming of the heating on/off sensors with multiple channels, so thanks.

robertwigley commented 7 months ago

I also saw another issue with the naming of the heating on/off sensors with multiple channels, so thanks.

Please be aware that I have renamed the default names for a lot of the provided sensors, so this is not representative of a default installation.

If you need anything else or want me to test a beta release before pushing it to production, please let me know.

msp1974 commented 7 months ago

Yes but when I set it up, the default names were the same for channel 1 & 3 and they should be like the demand sensors. Thanks for offer of testing but think I have this covered with diag file from you and @LGO44 for his hub2 and fancy bits.

Release will be out in about 15 mins

robertwigley commented 7 months ago

Sorry to say it, but no change in 3.4.5. It's still showing unavailable and the demand sensors unknown.

The following is shown in the log, so it looks like it's related to the Electrical Heat Switch issue.

Logger: homeassistant.components.climate
Source: helpers/entity_platform.py:599
Integration: Climate (documentation, issues)
First occurred: 14:00:06 (1 occurrences)
Last logged: 14:00:06

wiser: Error on device update!
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 599, in _async_add_entity
    await entity.async_device_update(warning=False)
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1259, in async_device_update
    await self.async_update()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 530, in async_update
    await self.coordinator.async_request_refresh()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 263, in async_request_refresh
    await self._debounced_refresh.async_call()
  File "/usr/src/homeassistant/homeassistant/helpers/debounce.py", line 93, in async_call
    await task
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 289, in async_refresh
    await self._async_refresh(log_failures=True)
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 412, in _async_refresh
    self.async_update_listeners()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 183, in async_update_listeners
    update_callback()
  File "/config/custom_components/wiser/sensor.py", line 1196, in _handle_coordinator_update
    self._state = self._data.wiserhub.devices.get_by_id(self._device_id).get(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: '_WiserHeatingActuator' object has no attribute 'get'
msp1974 commented 7 months ago

OMG! Think I need a holiday. Do you want to redownload the update - forgot to push dev branch!

robertwigley commented 7 months ago

Appears to be resolved now redownloaded with the updated API. Thanks Mark. 👍