Best way to read garage door status with HA, HomeKit, http, IFTTT?

Hello, I have an Insiginia HomeKit garage door opener that’s currently paired to my normal HomeKit setup, and it works fine for my family as it is. I would like to bring its open/closed status into Home Assistant while keeping control in HomeKit, and being new to this, I am not sure the best way.

In case it helps, my HA install is in Docker on a QNAP NAS, on the same network as the opener.

I considered:

  • HomeKit automation to fire an HTTP sensor, but those seem ephemeral and I don’t know if that’s right for this status
  • HomeKit automation to send a Webhook to IFTTT to set a variable, but I don’t know if that’s overkill to receive just a simple boolean value
  • Add a secondary open/close sensor to the door to get status separate from HomeKit altogether. That is my last resort

I read through Open Sesame: Garage Door Automation with HomeKit and was able to add a Garage Door Trigger to HomeKit, and have a HomeKit automation turn it on or off when opening or closing, but I haven’t been able to get this working to show me state in HA. I have a Garage Trigger “Script” element on my dashboard, but I don’t know how to have it understand states.

I brought in a Template Cover to my configuration, but that seems to be about controlling, and not just showing status.

Can someone set me on the right path here please?

Thanks,

-jim

I would create an input_boolean element in Home Assistant (you can do this using the ‘Helpers’ section in the Home Assistant configuration screen if you are on >0.108). Expose this to HomeKit. This input_boolean element will then show as a switch in HomeKit.

Then you can do the following:

  1. Create two automations in HomeKit: when the garage door opens, it turns the input_boolean on. Similarly, if the garage door closes, set the input_boolean off.
  2. If you want control from Home Assistant to function: create two more automations in HomeKit: if the input_boolean turns on and the garage door is closed, open the garage door. same but in reverse to close it
  3. You can then create a template cover in your configuration using that input_boolean if you want it to be properly represented as a “garage” in Home Assistant.
2 Likes

Thank you! Of course it makes sense once you spell it out. I added the boolean, linked it to HomeKit, and have the automation making it work.

I now have this in Helpers: input_boolean.garage_door and the status is changing with the garage door.

The last part I am struggling with is having it shown as a garage with the template cover. I will keep working on that now. If you could post an example of what I would need for my configuration, I’d really appreciate it. All the cover examples call scripts, and I think I just need to set the boolean value. Once I have that, I’m golden. Right now I have a separate entry for a cover:

# Template Cover
cover:
  - platform: template
    covers:
      garage_door:
        friendly_name: "Garage Door"
        value_template: "{{ states('input_boolean.garage_door') > 0 }}"
        open_cover:
          service: script.open_garage_door
        close_cover:
          service: script.close_garage_door

Thanks again!

You can do something like this:

# Template Cover
cover:
  - platform: template
    covers:
      garage_door:
        friendly_name: "Garage Door"
        value_template: "{{ states('input_boolean.garage_door') }}"
        open_cover:
          service: homeassistant.turn_on
          data:
            entity_id: input_boolean.garage_door
        close_cover:
          service: homeassistant.turn_off
          data:
            entity_id: input_boolean.garage_door
1 Like