Drayton Wiser Home Assistant Integration

I had same thing happening, put a wiser smart switch in bedroom 1 after 1/2 hour powered hub off for 10mins powered back on and most trv migrated to plug.
have fixed ip addresses for most devices and importantl put the zigbee network on channel away from hubs no11 , also turned of smart auto channel on router

image

Hi guys,

Have started to use the set schedule from string quite a lot but have a question.

When using the below:

    Type: Heating

    Weekdays:

    - Time: {{ timeam }}
      Temp: {{ tempam }}
    - Time: '15:30'
      Temp: {{ temp }}  
    {% set sunset = as_timestamp(states('sensor.sun_next_setting'))|timestamp_custom('%H') | round %} 
    {% if sunset >= 21 %}
    - Time: '20:00'
      Temp: {{ temppm }}  
    {% else %}
    {% set sunset =
    as_timestamp(states('sensor.sun_next_setting'))|timestamp_custom('%-H:%M')%}
    - Time: '{{ sunset }}'
      Temp: {{ temppm }}  
    {% endif %}

    - Time: '23:00'
      Temp: 16
      
    Weekends:

    - Time: {{ timeam }}
      Temp: {{ tempam }}
    - Time: '15:30'
      Temp: {{ temppm }}      
    - Time: '23:00'
      Temp: 16

I get the following error:

Failed to call service wiser.set_schedule_from_string. Error setting schedule from yaml data - mapping values are not allowed here in ā€œā€, line 7, column 11: - Time: ā€˜16:12ā€™ ^

The {{timeam}} and {{ tempxx }} part works as I have been using them for a while,
Its this part that is causing the error:

    {% set sunset = as_timestamp(states('sensor.sun_next_setting'))|timestamp_custom('%H') | round %} 
    {% if sunset >= 21 %}
    - Time: '20:00'
      Temp: {{ temppm }}  
    {% else %}
    {% set sunset =
    as_timestamp(states('sensor.sun_next_setting'))|timestamp_custom('%-H:%M')%}
    - Time: '{{ sunset }}'
      Temp: {{ temppm }}  
    {% endif %}

Any ideas why that might be?

**** EDIT ****

Figured out it was indentation issue, all sorted now

Thanks @msp1974 I had completely forgotten to look at the history, since Iā€™ve tended to put everything in Grafana first.

Looking at the history it does indeed look like the data is there.
And if I look in InfluxDB I can also see all the data, so it must be something stupid I am doing in Grafana (which does not surprise me since Iā€™ve only just scratched the surface of what it can do)

As to the getting the signal strength % from the attributes of the signal sensorā€¦ I think that will have to wait until I have levelled up in my HA knowledge first :wink:

Once again, thanks for pointing me in the right direction :slight_smile:

Its very simple, especially with the recent addition of the template helper.

Add a template helper (Settings ā†’ Devices and Services ā†’ Helpers tab).

Add this as the state parameter and set uom to %. Clearly change the sensor name for your specific room name. Controller_reception_percent is the signal strength of the device seen by the hub. You can also use the device_reception_percent to create a sensor for the devices signal strength from the hub.

{{state_attr('sensor.wiser_itrv_lounge_signal','controller_reception_percent')
1 Like

Does anyone know if the Electrical Heat Switch has energy/power monitoring? I havenā€™t been able to find that information anywhere.

Additionally, is anyone using it with Under Floor Heating (UFH)? My Dad has recently had Wiser installed for his central heating, replacing a faulty and unreliable Netatmo system, and has a seperate Warmup system, that also seems very unreliable and buggy, controlling his underfloor heating, which he is now also considering replacing.

It would be good to get some insight into how this works with UFH. For example, do you have to use the Wiser remote temperature probe, or can it be used with any UFH manufacturers probe? Unfortunately, rewiring a new probe under the floor is probably out of the question as itā€™s a stone floor.

Yes it does have energy monitoring. I use it through zigbee2mqtt with an aqara sensor providing the room temperature to the heat switch. Current power is provided but not energy so this must be calculated in HA.

1 Like

The device provide both Power and Energy by the integration

1 Like

I finally decide replacing all my EER53000 with the CCTFR6100 main reason being that the logic of the TRV seemed quite different at least comparing them on the HA interface (z2m) .
While the EER has the capability to calibrate room temperature, that the CCT isnā€™t, the heating demand , the sampling time for sending the data , and the capability to mantain the setpoint seemed to me more accurate on the CCT (which is also new generation of TRV compared to EER)

I also have a v2 hub (previously not supported by this integration but now happily yes) so i will look forward installing it and testing it.

I will then have a dedicated zigbee network for these devices , and another one for more generic appliances, managed directly from the z2m coordinator on the raspi.

My setup for wiser will be TRVs only on radiators running low temps, and the heating system being on heatpump.

I will not control the heatpump with the boiler rele, i will let it run based on the measurment made on the puffer.

I keep you posted.

I donā€™t have the heat switch but thereā€™s a manual here:
https://www.draytoncontrols.co.uk/sites/default/files/Wiser%20Electrical%20Heat%20Switch%20Installation%20Guide%20Drayton%20-%2006490327001%20Iss%20F.pdf. It says it supports 3 specific temperature probe models and that others are not recommended. (33kĪ©, 15kĪ© and 10kĪ©). All other UFH thermostats Iā€™ve used have simply allowed me to configure the resistance of the probe. Iā€™m fairly sure all my floors are fitted with 12kĪ© sensors so might not be compatible.

Could someone check the configuration menu for the heat switch in the app and see what resistances are shown?

1 Like

Iā€™ve just got round to updating to 2024.1.x, as they have brought in the Show current temperature as primary information option for the new thermostat card, which is my biggest bugbear with 2023.12 solved.

Iā€™m just wondering if anyone has worked out how to use card_mod to modify the colours of the elements of the new thermostat card yet, particularly the central elements of the labels and the temperatures? It will probably save me spending hours reinventing the wheel if anyone has made any progress on this yet that they can share?

I have been using passive mode while at home and wondered if it is possible to also use passive in away mode.

The same theory could apply whereby for example one room is heated and all other rooms are passive.

I realise that this could be achieved by turning off away mode and setting up as above, but just wondered if any consideration had been given to this ?

It does not work in away mode by design as when developing it didnt make sense to do that as you are just keeping rooms at a min temp and didnt have a use case where you would want to heat them above that (as it still uses more energy if you do).

Happy to understand more why you would want this.

Thanks.

I guess my thoughts are that if the boiler is on. and the flow and return pipes are hot, any excess heat may as well be used to heat the other rooms.

What I have done fopr testing is to set the coldest room as active and all other rooms as passive, and see how that effects the overall temperature and boiler demand vs the away mode defaults.

Also, have you considered making the water heating a passive zone as well, so that when the boiler was on providing heating, it would also heat the water passively. But I guess that would require a temp sensor to be fitted to the water tank which would not be difficult.

The water heating cannot be passive as a valve needs to open to allow the HW tank to heat. Thatā€™s done by the HW being active on the hub and the tank temperature being below itā€™s attached thermostat value.

You could argue that the HW is sort of passive anyway, the wiser hub is not controlling the boiler operation for HW like it does for roomstats/iTRVs.

1 Like

Thanks.

The diverter valve can both heat water and the radiators. I guess I could create an automation that boosts / cancels water whenever there is a demand for heating.

Hi Robert,

Below is my WIP, I am still trying to finalise the the arc colours for passive in HVAC auto mode.

type: thermostat
entity: climate.wiser_conservatory
show_current_as_primary: true
card_mod:
  style:
    ha-state-control-climate-temperature:
      $:
        .: |
          .buttons { visibility: hidden; }
          {% if state_attr(config.entity, 'is_passive') %}
            .label { color: var(--energy-non-fossil-color) !important; }
          {% elif state_attr(config.entity, 'is_boosted') %}
            .label { color: var(--red-color) !important; }
          {% elif state_attr(config.entity, 'preset_mode') == 'Comfort' %}
            .label { color: #c7a604 !important; }
          {% endif %}
        ha-control-circular-slider:
          $: |
            .high { --control-circular-slider-high-color: #757575 !important; }
            {% if state_attr(config.entity, 'is_passive') %}
              .background {
                stroke: var(--amber-color) !important;
                opacity: 0.8 !important; 
              }
              .low {
                stroke: #fa8907 !important;
              }
            {% else %}
              .background { opacity: 1 !important; }
            {% endif %}
        ha-big-number:
          $: >
            {% if state_attr(config.entity, 'is_heating') and
            state_attr(config.entity, 'is_passive') %}
              .value { color: var(--state-climate-heat-cool-color); }
            {% elif state_attr(config.entity, 'is_heating') %}
              .value { color: var(--state-climate-heat-color); }
            {% elif state_attr(config.entity, 'percentage_demand') | float(0) >
            0 %}
              .value { color: var(--state-climate-heat-cool-color); }
            {% endif %}
    .: >-
      {% if state_attr(config.entity, 'is_passive') and is_state(config.entity,
      'heat') %}
        ha-card {
          --state-climate-heat-color: #fa8907;
        }
      {% endif %} 

It looks like this in passive ā€˜heatā€™ mode.
image

And like this for normal ā€˜autoā€™ mode - the yellow temperature is because the valves are still open (percentage_flow > 0).
image

3 Likes

Fantastic! I have made a bit of progress today, but got nowhere near as far as this! This will save me loads of time. Many thanks. I will share my config once I get closer to what I am trying to acheive.

I would welcome seeing your results and yaml.
It has taken hours over a few days to get where I am. Mainly because, in my case, its trial and error and steep learning curve using the browser ā€˜inspectorā€™ :slight_smile:

I can imagine! It would have taken me many hours over multiple days too. I am no expert with card_mod or with the brower inspector and CSS. I am now making steady progress thanks to the work youā€™ve already put in. It certainly looks like I can replicate what I had on the old cards and maybe improve on it actually. It may take me a couple of days to hone this, but I will be sure to share my YAML config once I am done. :slight_smile: :+1:

1 Like

Hereā€™s what I have got so far, based almost entirely on your work with just a few minor tweaks, so many thanks again for that.

Iā€™ve simplified your configuration somewhat. Idle and the target temperature is set to be shown in orange if the percentage_demand > 0 i.e. there is heat in the system and the TRV valve is open even though it is not actively calling for heat. I felt that colouring the current temperature in the middle as well was a little bit overkill. I am going for minimalistic, but clear display of whatā€™s happening and trying to keep it in line with the non passive thermostats so it doesnā€™t look like itā€™s been hacked on.

The only thing left to do is change the colour of the heating controls to match the state i.e. light green for Passive Automatic and amber for Passive Manual. I donā€™t suppose you, or anyone else knows how to address those items? I am really not very good with identifying this stuff in CSS and the code inspector.

Expanded Passive Automatic Idle (Valve Open):

Expanded Passive Manual Idle (Valve Open):

Expanded Passive Manual Heating:

Expanded Passive Manual Idle (Valve Closed):

Collapsed Passive Manual Idle (Valve Closed):
image

type: custom:vertical-stack-in-card
cards:
  - type: thermostat
    entity: climate.spare_room_climate
    name: Spare Room
    show_current_as_primary: true
    features:
      - type: climate-hvac-modes
        hvac_modes:
          - auto
          - heat
          - 'off'
    card_mod:
      style:
        ha-state-control-climate-temperature:
          $:
            .: >
              .buttons { visibility: hidden; } {%- if state_attr(config.entity,
              'percentage_demand') | float(0) > 0 -%}
                .label { color: var(--state-climate-heat-color) !important; }
              {%- endif -%}
            ha-control-circular-slider:
              $: >
                .high {
                  stroke: var(--light-grey-color) !important;
                  opacity: 0.3 !important;
                } {%- if state_attr(config.entity, 'is_passive') and
                is_state(config.entity, 'auto') -%}
                  .background {
                    stroke: var(--light-green-color) !important;
                    opacity: 0.75 !important; 
                  }
                  .low {
                    stroke: var(--light-green-color) !important;
                    opacity: 0.5 !important;
                  }
                {%- elif state_attr(config.entity, 'is_passive') and
                is_state(config.entity, 'heat') -%}
                  .background {
                    stroke: var(--amber-color) !important;
                    opacity: 0.75 !important; 
                  }
                  .low {
                    stroke: var(--amber-color) !important;
                    opacity: 0.5 !important;
                  }
                {%- endif -%}
  - type: entities
    entities:
      - type: custom:fold-entity-row
        head:
          entity: binary_sensor.spare_room_climate_passive_mode
          name: Passive
        card_mod:
          style: |-
            :host {
              {%- if is_state('climate.spare_room_climate', 'auto') -%}
                --state-binary_sensor-on-color: var(--light-green-color)
              {%- endif -%}
            }
        entities:
          - entity: switch.spare_room_climate_passive_mode
            name: Passive
          - entity: sensor.spare_room_setpoint
            name: Setpoint
          - entity: sensor.spare_room_climate_heating_demand
            name: Demand
    state_color: true
2 Likes