Hörmann garage door via MQTT

I’ve got an answer from Stephan in https://github.com/stephan192/hoermann_door/issues/18#issuecomment-2093638043https://github.com/stephan192/hoermann_door/issues/18#issuecomment-2093638043
He described why is switching data bits to 7 is not required in his code.

I’ve also asked the this question at Github: Read Photocell status and block it? · Gifford47/HCPBridgeMqtt · Discussion #70 · GitHub

but maybe I have more luck here as the solution might lie in Home Assistant.

So I have my Hörmann Supramatic E4 configured so that is closes after 1 minute. This is the default that I want to have to make sure my garage doesn’t stay open.

However; sometimes when I’m working in the garage I want the door to stay open. I want to do this from HA (instead of putting an object in front of the sensor).

Ideally I would like to do this over MQTT from HA to the Tyson gateway I use.
Would it be possible to do this software-based instead of adding hardware like an external relay to block the sensor?

Why not just write to auto close after 1 minute after opening as HA automation. That way you can add conditions to it in what cases to not auto close.

1 Like

That’s possible. but then when HA doesn’t work, the gate stays open…

I’d rather not rely on HA for this.

you could also handle this in esphome port. there you get an cover.on_open Trigger
event every time the door gets fully open.
on this event you can put a condition based on a binary sensor set in homeassistant. based on the value of can then use the delay after the which you can call the close action
your yaml will begin with something like this.

esphome:
  name: hcpbridge
  libraries:
    - emelianov/modbus-esp8266
  platformio_options:
    board_build.f_cpu: 240000000L
    board_build.flash_mode: qio
    monitor_speed: 9600
    monitor_filters: esp32_exception_decoder
    lib_ldf_mode: deep+
    # board_build.f_flash: 40000000L

external_components:
    source: github://mapero/esphome-hcpbridge
    refresh: 0s

esp32:
  board: adafruit_feather_esp32s3
  framework:
    type: arduino

hcpbridge:
  is_connected:
    name: "HCPBridge Connected"
  rx_pin: 18 # optional, default=18
  tx_pin: 17 # optional, default=17

binary_sensor:
  - platform: homeassistant
    name: "Leave Cover Open"
    entity_id: input_boolean.cover_stay_open

cover:
  - platform: hcpbridge
    name: Garage Door
    id: garagedoor_cover
    on_open:
      then:
        if:
          condition:
            binary_sensor.is_off: my_binary_sensor
          then:
            - delay: 60s
            - cover.close: garagedoor_cover
1 Like

I solved it like this:


I have added:
A helper Toggle for the auto close
A helper input_number for the delay
A helper timer for the countdown

when the gate opens and the toggle
Is ON, i start the timer with the duration of the delay.

As soon as the timer is done AND the toggle is still ON, the gate closes.

The reason I use a timer is so that:
I can see the countdown in the UI.
I can still stop it just by disabling the Auto Close helper
I can reset it when I do something with the gate.

The Helpers:

Auto Close Automation:

Timer Event Automation: