Drayton Wiser Home Assistant Integration

Android companion app and see how you get on.

In case anyone wants to try and get their dumb gas meter to be a little smarter to help corelate wiser heating and gas use, I have put together a post in the hardware forum of my solution.

4 Likes

Thanks for sharing this. Iā€™m very interested in trying this myself, particularly as my Gas and Electricity meters are both old-school rotary ones. Where did you buy your Frient devices from?

Amazon but see out of stock. Vesternet seem to have some but more expensive. Was about Ā£60.

Very interesting.

I have smart meters, but they donā€™t work, have been talking to EDF for 7 months to get them fixed, but itā€™s the same old story ā€œwe are working on itā€ when in fact they are doing nothing at all :slight_smile:

Anyway I know itā€™s not as accurate, but as a poor-manā€™s solution, could you not accumulate the time that the boiler is activated, and monitor the gas units consumer over say a few weeks and determine a units / hour value based on this empirical data ??

That way you could determine how many units (approx) were used, and of course knowing the unit rate & standing charges calculate the (approx) costs.

It would not be as accurate as getting the values directly from the meter, but might provide values that are good enough ?

Thank you, I appreciate the help. I think I was hoping for an on/off toggle, rather than a time-limited boost, but it looks like that may not be possible in the API. Iā€™m sure I can find a way to work with it. Thanks again.

The wiser system is really meant to work with at least one trv or roomstat. If you have a roomstat you can set it to 30C in manual mode to turn on heating and then 5C to turn off. You need to be careful you are not firing the boiler with your other trvs closed though.

As a note, not sure of the boost will work without trv or roomstat either as it sets a room temp to plus 2C.

1 Like

It really depends on your boiler. Most boilers will vary rate of gas burn based on return temp of water and as such, the gas used per hour of boiler on can vary a lot. An opentherm boiler is even more variable as it heats water to different temps based on demand from hub.

You could certainly rough ball this but not sure it would be detailed enough to pinpoint issues and could take considerable time to see any benefits/degredation of changes made.

That is something that I was considering monitoring, my boiler is not opentherm and has a fixed heat flow setting on the front panel, but there seems to be no way of really determining what this should be set to

Thanks for this Mark. I have an old Schlumberger R5 gas meter. Iā€™m guessing this method may work with those.
I did, for a while, track the boiler firing time with a pi zero and camera stuck on the pilot window. It worked to some extent and since my boiler is constant, somewhat indicative of gas use. but it doesnā€™t measure actual consumption nor did it account for the gas cooker! That project also employed bluetak :grinning:

@msp1974 - There are sensors for sensor.wiser_hot_water and sensor.wiser_heating, but is there a sensor for boiler_demand ?

I can create a template sensor to combine these, but that sensor is not recognised / calculated using history_stats:

- platform: history_stats
  name: Boiler Today
  entity_id: sensor.wiser_boiler_demand
  state: 'On'
  type: time
  start: '{{ now().replace(hour=0).replace(minute=0).replace(second=0) }}'
  end: '{{ now() }}'

- platform: template
  sensors:
    wiser_boiler_demand:
      value_template: >-
        {%- if states('sensor.wiser_hot_water') == "On" or states('sensor.wiser_heating') == "On"  -%}
        {{ "On" }}
        {%- else -%}
        {{ "Off" }}
        {% endif %}

Update
Oh, this template sensor does work, but thereā€™s no history as it was just added and it does not actively calculate the historical data from water & heating :slight_smile:

I am also with EDF and currently have SMETS1 meters. I have spoken to them and they said they are going to upgrade SMETS1 meters to SMETS2 at some point, but they are prioritising customers without any form of smart meter over upgrading those of us that have only semi-functional SMETS1 meters (that do not report back to the supplier) after having moved from the original provider that installed them (British Gas in my case). Itā€™s incredibly frustrating, but all we can do is wait. :confounded:

One thing Iā€™m confused about regarding the disconnections is that 9/10 times I have a solid red, which according to the wiser manual means I have lost cloud access but can still access the hub from the same Wi-Fi network, however I canā€™t but I remember I use to be able to.

If this is the case shouldnā€™t HA still be able to access the hub?

Not HA related question but about WIser TRVs.
Iā€™ve noticed that on some radiators TRVs only work properly while batteries are full. Once battery indicator is no longer full (not low I mind), TRV doesnā€™t have enough power to fully close valve and heating is wasted. Surely valve on those radiators are harder to close hence requiring full batteries.
Does anyone know how much voltage Wiser TRV can handle?
Iā€™m thinking of using: single lithium battery (4.2v-3.5v), 3 NiMh batteries (4.2v-3.4v) or 3 AA batteries which are already indicated as ā€œlowā€ (4v-3v).
I know I can buy AA lithium batteries, but itā€™s decent investment requiring 12 batteries :smiley:

I found out the hard way that some thermostatic radiator valves have stronger springs than others. I had to change 4 of my thermostatic radiator valves as the Wiser ITRVā€™s were unable to fully close them, even with new batteries fitted. They were an unknown make, were over 30 years old, and they had very strong springs. But the valves worked perfectly with their original thermostatic heads.

So itā€™s possible that yours also have stronger springs fitted to them than the Wiser ITRVā€™s are designed for.

Just thought Iā€™d share some automations I wrote to create a ā€œstoredā€ manual setpoint temperature, as Iā€™m not a fan of the current temperature + offset behaviour. An automation is used to dynamically store the setpoint in a variable whenever it is manually changed (e.g. not from a schedule or comfort mode etc).
Another automation listens for a custom button press, which passes the stored setpoint temperature to the wiser.boost_heating service. I also created a custom variable to allow me to set the boost time period using a slider.

Peek 2022-11-14 22-07

input_number:
  wiser_heating_boost_hours:
    name: Wiser Boost Duration
    min: 1
    max: 3
    step: 1
    unit_of_measurement: h
    icon: mdi:av-timer

  wiser_heating_set_point:
    name: Wiser Set Point
    min: 10
    max: 25
    step: 0.5
    unit_of_measurement: Ā°C
    icon: mdi:thermometer

input_button:
  wiser_boost:
    name: Wiser Boost Heating
    icon: mdi:fire 

automation:
  - alias: Update Wiser set point
    trigger:
      - platform: state
        entity_id: climate.wiser_lounge
        attribute: temperature
    condition:
      and:
        - condition: template
          value_template: >-
            {{
              state_attr('climate.wiser_lounge', 'temperature') is not none
            }}
        - condition: template
          value_template: >-
            {{
              state_attr('climate.wiser_lounge', 'target_temperature_origin')
              not in ['FromSchedule', 'FromComfortMode', 'FromEcoIQ' ]
            }}
    action:
      - service: input_number.set_value
        entity_id: input_number.wiser_heating_set_point
        data:
          value: "{{ state_attr('climate.wiser_lounge', 'temperature') }}"

  - alias: Wiser Boost button pressed
    trigger:
      - platform: state
        entity_id: input_button.wiser_boost
    action:
      - service: wiser.boost_heating
        data:
          time_period: >-
            {{
              (states('input_number.wiser_heating_boost_hours') | float * 60)
              | int
            }}
          temperature: >-
            {{
              states('input_number.wiser_heating_set_point') | float
            }}
        target:
          entity_id: climate.wiser_lounge

Thanks for the great integration!

3 Likes

For those of you wanting to monitor and be alerted about battery levels on the TRVs (or any other device) you might want to try this, works well for me:

Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

alias: Batteries Low
description: ""
use_blueprint:
  path: sbyx/low-battery-level-detection-notification-for-all-battery-sensors.yaml
  input:
    actions:
      - service: notify.my_mail
        data:
          title: Batteries Low ({{sensors.split(',')|length}})
          target:
            - [email protected]
            - [email protected]
          message: |
            Low Battery Levels for {{sensors.split(',')|length}} devices:
            ---------------------------------
            {%- for sensor in sensors.split(',') %}
            {{ loop.index }}) {{ sensor|trim -}}
            {% endfor %}
    threshold: 35
    exclude:
      entity_id:
        - sensor.ipad_battery_level

Nice thnig about it is it just needs one automation for all battery devices.

2 Likes

@jamiebennett - Iā€™m interested too in how you bring the Insights+ data into HA - thanks

In my experience the light goes solid red for about half an hour before it starts flashing, even though the hub has been disconnected from WiFi the entire time.

Nothing too clever, the geotogether API can give you this information and there are a few projects out there to retrieve it like GitHub - OliverCullimore/geo-energy-data: A Go application that periodically retrieves energy data from the geotogether.com API and stores it in an InfluxDB database. . We have this data in Wiser too but it is not exposed to HA at the moment unfortunately.