Drayton Wiser Home Assistant Integration

I can also see these stats seperately, its only when they are combined under the “Wiser Lounge” entity that they only give 10 days of history.

Hi all, apologies if this is not the correct place to post - but I’m having issues with the wiser integration.

Following an update to the latest version of HA, and despite attempting to delete and reinstall multiple times, I’m seeing error messages with “failed to set up: check the logs”. The logs are as follows;

Logger: homeassistant.config_entries
Source: config_entries.py:762
First occurred: 20:07:35 (5 occurrences)
Last logged: 20:17:13

Error setting up entry WiserHeat03D46E for wiser
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 762, in __async_setup_with_context
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/wiser/__init__.py", line 139, in async_setup_entry
    await moodule_register.async_register()
  File "/config/custom_components/wiser/frontend/__init__.py", line 29, in async_register
    await self._async_wait_for_lovelace_resources()
  File "/config/custom_components/wiser/frontend/__init__.py", line 55, in _async_wait_for_lovelace_resources
    await _check_lovelace_resources_loaded(0)
  File "/config/custom_components/wiser/frontend/__init__.py", line 48, in _check_lovelace_resources_loaded
    await self._async_register_modules()
  File "/config/custom_components/wiser/frontend/__init__.py", line 77, in _async_register_modules
    if self._get_resource_version(resource["url"]) != module.get(
       ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/config/custom_components/wiser/frontend/__init__.py", line 116, in _get_resource_version
    if version := url.split("?")[1].replace("v=", ""):
                  ~~~~~~~~~~~~~~^^^
IndexError: list index out of range

As you can possibly tell, I have no idea what this means or how to fix it, but any help would be appreciated.

This is seems to be an issue with the js resource installed by the integration for the 2 cards.

If you delete it from resources and restart it should readd it correctly again.

To delete from resources is Edit dashboard → 3 dots menu top right → resources.

Appreciate the response Mark, I have deleted the js resource from the resources but the issue persists. There is another error on the log now however;

Logger: homeassistant.config_entries
Source: config_entries.py:762
First occurred: 19:08:16 (9 occurrences)
Last logged: 19:08:16

Error setting up entry WiserHeat03D46E for select
Error setting up entry WiserHeat03D46E for button
Error setting up entry WiserHeat03D46E for number
Error setting up entry WiserHeat03D46E for light
Error setting up entry WiserHeat03D46E for cover
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 762, in __async_setup_with_context
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/binary_sensor/__init__.py", line 139, in async_setup_entry
    return await hass.data[DATA_COMPONENT].async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 210, in async_setup_entry
    raise ValueError(
    ...<2 lines>...
    )
ValueError: Config entry WiserHeat03D46E (01KF5TTWM0V0SBVKP6SPTY9DTB) for wiser.binary_sensor has already been setup!

It looks as though the main controller is showing up twice in the list of devices, do you think this could be part of the problem? One has no entities or sensors associated with it, so I can’t understand what it’s there for.

Does this integration work with the 1st generation hub?

I.E Multi Zone Smart Thermostat Kit 1 for Combi Boiler | Wiser

And does anyone know if the device is happy being firewalled from the internet? I am looking for something completely local.

Yes it is v1 and v2 hubs are supported. It will work completely local, however, you can get into issues by being behind on firmware updates (which are pushed by Wiser to the hub and cannot be forced)

Apologies for asking again, I’m tearing my hair out with this! I’ve completed a full factory reset of the Wiser devices and re-paired everything and the issue still persists.

There are three logs:

Logger: homeassistant.helpers.frame
Source: helpers/frame.py:350
First occurred: 23:43:04 (5 occurrences)
Last logged: 23:43:05

Detected that custom integration 'wiser' calls `device_registry.async_get_or_create` referencing a non existing `via_device` ('wiser', 'WiserHeat03D46E'), with device info: {'identifiers': {('wiser', 'WiserHeat03D46E Wiser Kitchen')}, 'manufacturer': 'Drayton Wiser', 'model': 'Room', 'name': 'Wiser Kitchen', 'via_device': ('wiser', 'WiserHeat03D46E')} at custom_components/wiser/climate.py, line 138: async_add_entities(wiser_rooms, True). This will stop working in Home Assistant 2025.12.0, please create a bug report at https://github.com/asantaga/wiserHomeAssistantPlatform/issues
Detected that custom integration 'wiser' calls `device_registry.async_get_or_create` referencing a non existing `via_device` ('wiser', 'WiserHeat03D46E'), with device info: {'identifiers': {('wiser', 'WiserHeat03D46E Wiser HeatHub (WiserHeat03D46E)')}, 'manufacturer': 'Drayton Wiser', 'model': 'Controller', 'name': 'Wiser HeatHub (WiserHeat03D46E)', 'sw_version': '3.18.3', 'via_device': ('wiser', 'WiserHeat03D46E')} at custom_components/wiser/sensor.py, line 241: async_add_entities(wiser_sensors, True). This will stop working in Home Assistant 2025.12.0, please create a bug report at https://github.com/asantaga/wiserHomeAssistantPlatform/issues
Detected that custom integration 'wiser' calls `device_registry.async_get_or_create` referencing a non existing `via_device` ('wiser', 'WiserHeat03D46E'), with device info: {'identifiers': {('wiser', 'WiserHeat03D46E Wiser HeatHub (WiserHeat03D46E)')}, 'manufacturer': 'Drayton Wiser', 'model': 'Controller', 'name': 'Wiser HeatHub (WiserHeat03D46E)', 'sw_version': '3.18.3', 'via_device': ('wiser', 'WiserHeat03D46E')} at custom_components/wiser/switch.py, line 232: async_add_entities(wiser_switches). This will stop working in Home Assistant 2025.12.0, please create a bug report at https://github.com/asantaga/wiserHomeAssistantPlatform/issues
Detected that custom integration 'wiser' calls `device_registry.async_get_or_create` referencing a non existing `via_device` ('wiser', 'WiserHeat03D46E'), with device info: {'identifiers': {('wiser', 'WiserHeat03D46E Wiser HeatHub (WiserHeat03D46E)')}, 'manufacturer': 'Drayton Wiser', 'model': 'Controller', 'name': 'Wiser HeatHub (WiserHeat03D46E)', 'sw_version': '3.18.3', 'via_device': ('wiser', 'WiserHeat03D46E')} at custom_components/wiser/button.py, line 47: async_add_entities(wiser_buttons, True). This will stop working in Home Assistant 2025.12.0, please create a bug report at https://github.com/asantaga/wiserHomeAssistantPlatform/issues
Detected that custom integration 'wiser' calls `device_registry.async_get_or_create` referencing a non existing `via_device` ('wiser', 'WiserHeat03D46E'), with device info: {'identifiers': {('wiser', 'WiserHeat03D46E Wiser HeatHub (WiserHeat03D46E)')}, 'manufacturer': 'Drayton Wiser', 'model': 'Controller', 'name': 'Wiser HeatHub (WiserHeat03D46E)', 'sw_version': '3.18.3', 'via_device': ('wiser', 'WiserHeat03D46E')} at custom_components/wiser/number.py, line 55: async_add_entities(wiser_numbers). This will stop working in Home Assistant 2025.12.0, please create a bug report at https://github.com/asantaga/wiserHomeAssistantPlatform/issues
Logger: homeassistant.helpers.frame
Source: helpers/frame.py:395
First occurred: 23:43:06 (1 occurrence)
Last logged: 23:43:06

Detected code that calls `device_registry.async_get_or_create` referencing a non existing `via_device` ('wiser', 'WiserHeat03D46E'), with device info: {'identifiers': {('wiser', 'WiserHeat03D46E Wiser Living Room')}, 'manufacturer': 'Drayton Wiser', 'model': 'Room', 'name': 'Wiser Living Room', 'via_device': ('wiser', 'WiserHeat03D46E')}. This will stop working in Home Assistant 2025.12.0, please report this issue
Logger: homeassistant.config_entries
Source: config_entries.py:762
First occurred: 23:45:24 (27 occurrences)
Last logged: 23:49:53

Error setting up entry WiserHeat_03D46E for select
Error setting up entry WiserHeat_03D46E for button
Error setting up entry WiserHeat_03D46E for number
Error setting up entry WiserHeat_03D46E for light
Error setting up entry WiserHeat_03D46E for cover
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 762, in __async_setup_with_context
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/binary_sensor/__init__.py", line 139, in async_setup_entry
    return await hass.data[DATA_COMPONENT].async_setup_entry(entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 210, in async_setup_entry
    raise ValueError(
    ...<2 lines>...
    )
ValueError: Config entry WiserHeat42_03D46E (01KF9QV6RGK18WPP9S5C98HE2Y) for wiser.binary_sensor has already been setup!

It seems the issue is due to the name of the controller? There are two instances of it in the integration, one with the entities associated with it labelled as ‘controller’ and another with nothing associated with it labelled as ‘WT714R1S0902’.

I note when I connect to the hub there are multiple different names, “WiserHeat08_03D46E”, “WiserHeat55_03D46E”, “WiserHeat42_03D46E”, etc. could this be what is causing the issue?

What version of the integration are you running? Im sure that error was fixed.

I’ve tried with the latest version, as far as I can tell (v3.4.18).

I have to confess I’d not updated the integration or my HA for a while though, previous to this I was running a much older version.

Ok. Given the original issue you had, i think a full removal of the integration and re-setup (by redownloading from HACs) would be a good step.

So, remove any entry in the Wiser integrarion. In HACs, remove the integration. In the reources, ensure the js module has gone…if not delete it.

Then, install again from HACs. No need to do any reset on the hub etc.

Then re-add your hub and lets see where we get to.

I’ve tried again, full removal of everything including the js module, then reinstallation via HACS. Still getting the ‘Failed to set up’ message with the same logs.

Hello all … I upgraded to the V2 hub not long after they came out, partly to escape the irritating 5 minute WiFi dropouts. It’s been completely solid since then - until last night. At around 23:00 it stopped responding to my ping sensor, and fell off the WiFi. The unit itself was showing a rapid flashing red light, ie no connection to WiFi. It stayed like that all night. In the morning I didn’t have much time to play, so just tried restarting the WiFi (Deco triband mesh) but that had no effect. This afternoon I had more time: my first step was to cycle the power on the heating circuit - it took a little while but eventually it came back and now seems ok again. WiFi signal (on 2.4GHz) is good. Has anyone else seen this? I’m concerned that this might happen again: and even more concerned that, unlike the V1 hub, this V2 unit didn’t have the ability to kick itself back into life.

How are you establishing that the WiFi signal is “good”?

Try charting the signal strength by creating a template entity in HA using a template like this:

  - unique_id: 'wiser_hub_signal_strength'
    name: 'Wiser Hub WiFi Signal Strength'
    unit_of_measurement: 'dB'
    device_class: 'signal_strength'
    state_class: 'measurement'
    state: "{{ state_attr('sensor.wiser_heathub_signal','wifi_strength')}}"

This lets you identify any patterns in the signal strength which will help identify intermittent interference (e.g. microwave ovens or cordless phones) or if the signal is consistently on the threshold of disconnection.

My theory is the Hubs don’t have a particularly good antenna for a device that is usually mounted in a location where you otherwise wouldn’t need a wifi signal, leading to a higher threshold for disconnections. Since the hub will still carry out its primary functions when disconnected, this may not be considered as big a deal by the manufacturer as we do.

Thanks for the response. The Wiser Hub reports signal strength as “Very Good” nearly all the time, with occasional drops down to “Good” for 30 seconds at a time. There was no such drop at the point where the WiFi disconnected.

In my opinion, the text descriptions in the Hub Signal strength just aren’t sufficient when you are experiencing problems.

Compare my wifi signal strength stats (using the template entity) with the text version over the same period.

“Very good” hides a lot of variation.

My recommendation is to verify if the disconnects correspond with moments of low signal strength. If they do, try figuring out if there is a removable cause for the signal strength dropping.

I had a lot of dropouts in the past. It was weak wifi signal. When i remodelled my kitchen there was no longer a wall and a fridge between the Wiser hub and the access point. I swear at some point opening the fridge door caused a disconnect of the hub.

1 Like

Fair enough, I will give that sensor a go and see if I can spot anything useful. I guess my main question, though, is about the V2 Hub’s apparent inability to reset its WiFi. Was my event a one-off fluke, or is it happening to others? Hence asking here.

I had an outage yesterday (2026-01-21) which was the first unexplained outage I have had with this 2nd generation HeatHub, which I upgraded to in June 2025.
The HeatHub stopped talking to HA around 10.40am.

In the HA logs I see this message repeating every 55 seconds.
2026-01-21 10:40:17.997 WARNING (MainThread) [custom_components.wiser.coordinator] Error fetching wiser (wiser-WiserHeat05C4FD) data. Connection error trying to communicate with Wiser Hub 192.168.1.132 for url https://192.168.1.132:443/data/v2/domain/. Error is Cannot connect to host 192.168.1.132:443 ssl:default [Connect call failed ('192.168.1.132', 443)]

I restarted the Drayton Wiser HA integration, to no effect.
At 15.06 I power cycled the HeatHub and it burst back into life.

I don’t think the HeatHub was entirely dead, as the WiFi didn’t see the HeatHub’s connection drop until I power cycled it at 15:06, and the heating was still running somehow - although perhaps not entirely correctly, as the house temperature increased by about 1 degree over the period of the outage, and I see the gas usage logged, and the weather here was cold (7 degrees C) and it was cloudy so no warming from sunshine.

I don’t know what the light on the HeatHub was doing as I didn’t look.

A mystery, and something I had hoped was a one-off glitch, but I offer it since you asked.

Thanks for that comment. It does sound superficially similar - my hub definitely carried on running and would accept inputs from TRVs but just fell off the WiFi. Next time this happens check the lights on the hub - there’s a flashing red light.

I have just had to power cycle my version 2 hub to regain connectivity, this is the second time I have seen this behaviour. What I notice is errors in HA logs reporting no response from hub which over the course of a day become more and more frequent until a total loss of connection. The wiser app also could not see the hub either locally or via the cloud, I checked the hub before the power cycle and for the first time ever there were no lights on at all!

I have the v1 hub and saw two incidents (solid red light with brief periods of flashing) that each lasted ~90 minutes, late 22/01/26 into 23/01/26. Other than the odd failed ping and integration network error, it has been running well for many months.
I wondered if there’d been a firmware update. However my v1 hub is still at 3.18.3.
After messing with access point and wireless channels, I thought I’d finally cracked it months ago with a scheduled AP radio restart once a week.
One strange behaviour I saw once - whilst pinging the hub and seeing no reply - I ran nmap against the hub and immediately started seeing replies to the pings. I haven’t been able to reproduce that.