KNX cover position value range

I have Siemens KNX cover actuators (5WG1 523-1AB11) that report their position between 0x00 and 0x20. Therefore, HomeAssistant reports them as 87% open when fully closed. How can I make HomeAssistant adapt for this behaviour? Thanks!

Hi :wave:!

You could try to find out why that actuator acts that way - this definitely doesn’t sound like standard behavior, so it might be some configuration messed up.

Or just don’t configure the position GAs in HA.

Thanks for your reply! I don’t want to reprogram the actuator, as it is working fine with other KNX components and I don’t want to mess things up. However, I often set the cover to a partial position, so having an accurate representation of position in HomeAssistant would be nice. I considered making a pull request to the source, adding parameters position_state_min and position_state_max. What do you think?

I really appreciate your motivation, but imho adding a feature - especially one that requires manual configuration - that are against Knx system specifications and only applicable for one specific device (which still may or may not be a configuration flaw) leads to disproportionately high code complexity and maintenance dept.

Manual configuration would only be needed for those devices that require such a configuration, and KNX devices require manual setup anyways, existing setups would remain unaffected. But I feared such an answer, so I’ll have to find another solution. I found the Compensation integration, can I use that to create a new cover device out of the KNX one with adapted position attribute?

I don’t know that integration. But as a Knx-workaround you could configure the state as a sensor and expose that with a value_template to an internal-GA. This can then be used in the climate config yaml.

Otherwise, just set the times properly and the Knx integration should calculate immediate positions - even without position address.

That said, my first attempt still would be to find out why that actuator reports 32 as closed…