I recently switched from FHEM to home assistant and ran into a problem. Under FHEM you can use a virtual endstop in KNX under cover. A stop command is sent after the uptime has expired. Unfortunately, I have a lot of broken endstops in the shutters, which then cause them to stop. homeassistant saved my position at all times
I think you can already do this with automations and/or template covers, but I do not quite understand what you mean.
My KNX electrician set the running times for a very long time when setting it up. that all roller shutters receive electricity for a very long time. I have over 20 roller shutters and on some of them the motor continues to run even when the roller shutter is up and breaks. Under FHEM, a stop (up/down short) was always sent after virtual drive up time. the shutter stopped before the end stop was reached. This worked very well and I was able to protect my roller shutters from destruction. no stop is sent under homeassistant.
When controlling the blind, have developer tools open, showing the cover entity. Then you can see what states the cove goes through when running. You can then write an automation to trigger on detection of that state, and after a delay send a stop. If the cover supports positions, you could even calculate a delay based on the starting position. If the position gives live updates, you could also trigger a stop on that position.
On the other hand, if the technician didn’t set things right, you might ask him/her to fix their mistake?
If I remember correctly, the HA Knx cover acts exactly that way if you don’t configure a position_address
. (But I’m not sure if it does when you travel to end positions - so 1-99% should do that, for 0 and 100 you’d have to try).
But tbh you should just correct your actuator settings - setting the correct times in ETS should be trivial if you (or your installer) have the project file.
Not a nice solution but I have now created an automation. Thanks
alias: Stop Any Roller Shutter
description: Stoppt den Rollladen, der entweder auf 0 % oder auf 100 % ist.
trigger:
- platform: state
entity_id:
- cover.eg_bad
- cover.eg_eltern_fenster
- .....
attribute: current_position
condition:
- condition: template
value_template: |
{{ trigger.to_state.attributes.current_position == 0 or
trigger.to_state.attributes.current_position == 100 }}
action:
- service: cover.stop_cover
target:
entity_id: "{{ trigger.entity_id }}"
But I don’t have a KNX position_address . I could see 0% on the web interface but the motor continued to hit the endstop.
Well, I think this is a very nice solution.
Tbh. I don’t think this feature request is a concern of the Knx integration as it is a workaround for actuator misconfiguration and not a general need for any Knx cover actuator.