Can I integrate Hive Active Heating into HA without the Hive Hub?

Quick addition: @Steveuk, if you decide to use or follow my scheduling automation above - I have amended the package.yaml in my earlier post, to use mqtt.publish service rather than climate.set_temperature, as the first method was a bit finicky, sometimes it just doesn’t work, so directly controlling the device through mqtt (including the "temperature_setpoint_hold":"1" command) without HA translation from the climate entity works flawlessly.

1 Like

Thanks again.
I’m gonna go on the laptop later to try and set this method up looks great.
Is it easier using packages ? I’ve never used it before but I’ve heard of it, am I right in thinking it’s a way of grouping all different things into 1 Yaml file like automation, sensors etc.
So you have all this heating code in 1 file and not spread around ?
My HA automations stopped working a few months ago and I’ve not looked into why yet as I normally use Node Red.
With you scheduling does it set the heating to the desired temp at the set time no matter what is set to on the Hive thermostat ?
I’m just thinking of a situation like I had yesterday when the house was too warm so I just turned out off on the Hive thermostat.
So say on this set up if I turn the heating off say 30 mins before the schedule is about to kick in it would then turn it back on wouldn’t it ? Or is there a way where it can ask me if I want the schedule re activating if it’s off ?
Sorry I’m useless at the logic side… And the other side of things lol

I much prefer it, as I spend a lot of time tinkering with a few automations which need input helpers, and template sensors/binary sensors, etc, so when (regularly!!) my latest and greatest automation doesn’t work I can then just delete the package.yaml and all the different entities I’ve made for that are wiped together - I used to just write them in the relavent files but ended up with 100s of useless and out of date entities!

you have this right yes. All the entities and automations etc that I need for this schedule are in that single package yaml file. Now that I’m happy with it all, I will keep it there, but it allows the flexibility of removing it and doing things a different way - I also like the file structure way of organising things. Finally, I write with VS Code, which can search across whole directories so I can easily search for entities/automations without needing to know which package its in.

Not sure what this might be, my first guess is to check you have default_config: or automation: (just one of them) in your configuration.yaml… Might need to ask around if this isnt it…

I’ve just had a think about this, and one way to do this, which is a bit clunky, is to make a binary sensor which checks whether the SLR last_changed time is equal to the schedule automation’s last_triggered time, and then, use that to trigger an automation to disable the scheduling automation. You would then need to turn the automation back on again (either automated with a further automation to reset it at midnight for example, or perhaps with a button/entities card in the frontend).

## Binary sensor to check whether the SLR was last changed by the schedule automation
template:
    ## append this to the template: section in the package file above
  - binary_sensor:
      - name: climate_schedule_automated
        state: >-
          {% set last_changed = states.climate.house_thermostat_receiver.last_changed %}
          {% set last_triggered = state_attr('automation.house_thermostat_schedule','last_triggered') %}
          {% if last_changed == last_triggered %}
          on
          {% endif %}

## An extra automation to disable the scheduling automation when the binary_sensor.climate_schedule_automated is turned off - through a manual temp change
automation:
  - id: auto_disable_house_thermostat_schedule
    alias: Auto-disable House Thermostat Schedule
    description: 'Disables the House Thermostat Schedule automatically with manual override of the heating_setpoint_temperature on the SLT or in frontend' 
    trigger:
       - platform: state
         entity_id: binary_sensor.climate_schedule_automated
         to: 'off'
    action:
        - service: automation.turn_off
          target:
            entity_id: automation.house_thermostat_schedule

There are a few ways I can think of where you could have it ask you if you wanted to turn the schedule automation back on again when the next scheduled time comes around… Maybe, another automation, which runs at the scheduled times only if the main automation is off which sends an actionable notification to your phone asking if you want to set the temperature to X degrees… Happy to try to help with that if its something you wanted to do and don’t know where to start!

Edit: I modified and added an extra automation to allow the schedule to run again - glaring error previously!! & added another answer to the last post’s questions

Hi i think i’ve messed up already lol
so what i’ve done so far is…

  • Set my automations back to default ( no !include_dir_merge_list anymore)

  • Added packages: !include_dir_named packages to my configuration.yaml (under home assitant)

  • Created the yaml file called house_thermostat in the packages folder

  • Added your code from from above and replaced “climate.house_thermostat_receiver” with my “climate.hive_receiver” and your “zigbee2mqtt/house_thermostat_receiver/set” with my “zigbee2mqtt/hive_receiver/set”
    So then i saved and restarted and it seems to have created all the sensors/switch and automations etc, But i get a error on startup saying unable to setup input_datetime & default_config.
    From reading it seems i need to add something to my main config but i’m not sure if i do if i’m now using these packages.
    And also a side note that i hope you might be be able to help with is the automations, so like i said i set back to default with just the automations.yaml file in my config folder and when i restarted your new automations do appear there but my existing ones are greyed out with me unable to toggle them lol
    Sorry for waffling on heres some screenshots trying to explain.
    Thanks
    homeassistant


Also this has confused me how have you got a climate sensor for the SLT3 ?
It says on Here that it only creates battery and link sensors
Cheers
Also i’m in no rush for a reply whenever you are free lol

It could be this - you might not have unique ID’s for each of the automations in the automations.yaml file?

What do the logs say for these two errors?

Apols, mistake here, you’re right there isnt a climate entity for the thermostat (though the SLR local_temperature actually comes from the SLT). Only relevance is the climate.house_thermostat_receiver = climate.hive_receiver in your case.

Thanks it looks like the automation problem could be that i’ll have a go afterwards.

No worries just thought i was going mad looking for a extra climate :slight_smile:

They don’t really say much just this

2021-10-04 19:46:54 ERROR (MainThread) [homeassistant.setup] Unable to set up dependencies of default_config. Setup failed for dependencies: input_datetime

2021-10-04 19:46:54 ERROR (MainThread) [homeassistant.setup] Setup failed for default_config: Could not set up all dependencies.

@vonagio
Ok it seems I’m back on track everything is added and seems to be running ok.
My input_datetime issue was cause by the lack of quotes in the names.
Someone on GitHub pointed it out to me and when I changed it to this is worked straight away.

input_datetime:
  thermsched_01:
    name: "Thermostat Schedule 1"
    icon: "mdi:numeric-1-circle-outline"
    has_time: true
    initial: "06:00:00"
  thermsched_02:
    name: "Thermostat Schedule 2"
    icon: "mdi:numeric-2-circle-outline"
    has_time: true
    initial: "09:00:00"
  thermsched_03:
    name: "Thermostat Schedule 3"
    icon: "mdi:numeric-3-circle-outline"
    has_time: true
    initial: "16:00:00"
  thermsched_04:
    name: "Thermostat Schedule 4"
    icon: "mdi:numeric-4-circle-outline"
    has_time: true
    initial: "21:00:00"

I just want to try and style it so it fits into my working mobile dashboard and work my boost buttons.
I want 3 independent buttons for boost that will boost the heating for 30,45 or 60 mins as that’s what I have at the moment but I want the flame icon to change red when the boost is running but as all 3 buttons use the same sensor they all turn red lol
I’m hoping to hard wire my receiver this afternoon after work, just want to make sure I have the wiring correct as I’m going from a dual channel to a single channel
I never used the dual water side anyway as I have a combi boiler.
Thanks for help.

1 Like

@HarvsG Thanks! My Hive hub was stuck in the initialising phase and BG wanted me to purchase a replacement hub.

Using zHA I have cut over all my Hive accessories (lights, plugs. contact and motion sensors) and thanks to these instructions I now also have my thermostat in HA.

However, whilst it reports status (temp/state etc) I don’t seem to be able to control either the heating or the hotwater. Any ideas/suggestions?

Have you paired the thermostat to the receiver ?
So they both need adding into ZHA individually but they also need pairing to each other.
If not reset both so they start searching (the receiver needs to flash orange not light purple) then they should connect to each other.

1 Like

Glad you got this sorted - I just checked mine and I don’t have the speech marks… yet it still works!!! I won’t fiddle with it now, but will update the post above to include them just incase anyone else comes by.

Did you get it installed? How’s it working for you?

Really interested to see how you integrate this - it feels a bit complicated to me, might need to find a way (template?) to see the last/current input_datetime so HA knows the original temperature to return to after boost is over…

1 Like

Thanks I messaged you not been great so far since hard wiring but I think that’s another issue.
Can I ask you’ve done these input_datetimes and I’ve added the sliders like you have with the initial numbers.
If I change the numbers in that card from the initial number it works bit after time it defaults back to the initial number is that how it’s meant to work or once I change the number in the card it should stay that value ?

Hi @Steveuk Indeed, that was how I paried it. I could read values ok but couldn’t manage the devices. I decided that I have had enough with Hive (would have been my 4th hub for one reason or another) so junked it for an alternative,

1 Like

Strange, mine stays at the number until i move the slider again… I’m afraid I don’t really know what is happening for it to revert to the initial numbers… is it after a HA reboot perhaps?

I’m in the market for a new way to control my central heating and hot water and I’m trying to avoid any system that has cloud dependencies.

I already run zigbee2mqtt so hive looks like the way to go.

Reading this thread I just wanted to clarify a few points.

If I get the SLR2 on its own can I use one of my temperature sensors in home assistant and use it with the generic climate component?

If I get the SLT as well, is the temperature it reads available in home assistant?

Again, if I get the SLT and I adjust the target temperature in the home assistant ui, is that reflected on the SLT?

And finally, if my internet goes down will this keep working as normal?

Thank you

As far as I know, unless something has changed recently, you need BOTH the receiver and thermostat. the receiver reports the temperature, but it actually comes from the thermostat - I think there’s some direct communication between the two. I guess there may be a way to send a MQTT payload to the receiver from your server, but this direct communication isn’t documented and is way above my ability to find!

Yep, but as above, its a bit strange, the receiver reports this as local_temperature.

Yep, it all works two way. The boost mode is a bit finicky to get to work, but @Steveuk and I have both implemented this.

Yes, if you connect the SLT and SLR to your z2m instance it works direct. I’ve not got, nor have ever had, the hive hub.

Scheduling is a bit fiddly, there is a schedule mode on the thermostat, but this doesn’t play nice with HA control… see a long post further up the thread where I’ve set this up - you could also try something like Schedy.

Overall I’m pretty happy with the hive thermostat/receiver now, though, now I understand more (and am much much better at esphome than I was) I might next time go with an ESPHome relay instead…

The redeeming feature of this hive system, in my head at least, is that if my server goes off, i lose local wifi/z2m/everything goes wrong… at least then the SLT and SLR are still working together…

1 Like

Ahhh, that makes sense, thank you

For scheduling I was going to try using the google calendar component orchestrated by nodered to control everything, which is something that worked really well for me with my esphome based boiler control system in my old house.

Is that likely to work here do you think?

This is exactly my train of thought as well, that plus it’s easy for the wife to use

In terms of buying this, Hive have the “Hive Active Heating without Hive Hub” available for £99 from their site but it’s not clear what version of the SLR is included…

Is it better for me to source this from ebay as others in this thread have done?

I really appreciate your quick reply. Thank you

Yes I think it should, I haven’t used NR but I think it should be fine if your automations can send this mqtt payload to the receiver:
{"system_mode":"heat","temperature_setpoint_hold":"1","occupied_heating_setpoint":"DESIRED_TEMPERATURE"}

I got mine separately on eBay, I think they were about 15 each plus postage, whole thing was less than £40! Just had a look and there’s a few on there now at similar prices.

Nothing much I can add as @vonagio covered it all.
I’m really happy with mine also ,it’s been working perfectly for about a month now,
I dropped really lucky on eBay as was wanting a second set besides my wired in hive to do the testing on and I found a old British Gas branded version receiver and thermostat £10.50 for both.

That’s insane! tbh I’m perfectly Ok with spending ~£100 but the new model numbers don’t show up as supported in z2m so it would be a bit of a gamble.

I’ll monitor ebay for a few days and see if I can get lucky