Add rradme
This commit is contained in:
111
README.md
111
README.md
@@ -1,4 +1,111 @@
|
|||||||
# knx_cover_with_inverted_feedback
|
# KNX Cover Control with Inverted Position Feedback (Home Assistant Blueprint)
|
||||||
|
|
||||||
This Home Assistant blueprint allows you to control a `cover` entity via KNX group addresses
|
This Home Assistant blueprint allows you to control a `cover` entity via KNX group addresses
|
||||||
(Up/Down and Stop) and sends an inverted position feedback in percent back to KNX.
|
(Up/Down and Stop) and sends an **inverted position feedback in percent** back to KNX.
|
||||||
|
|
||||||
|
It is designed for installations where KNX uses:
|
||||||
|
- `0 % = fully open`
|
||||||
|
- `100 % = fully closed`
|
||||||
|
|
||||||
|
while Home Assistant uses:
|
||||||
|
- `0 % = fully closed`
|
||||||
|
- `100 % = fully open`
|
||||||
|
|
||||||
|
So the feedback is automatically inverted:
|
||||||
|
- HA `0 %` → KNX `100 %`
|
||||||
|
- HA `50 %` → KNX `50 %`
|
||||||
|
- HA `100 %` → KNX `0 %`
|
||||||
|
|
||||||
|
The feedback is sent whenever the cover position changes, no matter if the movement was
|
||||||
|
triggered from KNX or directly from Home Assistant.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- Control a Home Assistant cover via:
|
||||||
|
- KNX Up/Down group address (1 bit, DPT 1.xxx)
|
||||||
|
- KNX Stop group address (1 bit, DPT 1.xxx)
|
||||||
|
- Send inverted position feedback to KNX:
|
||||||
|
- KNX position feedback group address (DPT 5.001, Percent 0…100)
|
||||||
|
- Optional inversion of Up/Down direction
|
||||||
|
- Optional feedback cooldown to reduce KNX bus traffic
|
||||||
|
- Fully configurable via UI (no YAML editing needed after import)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Copy the blueprint file into:
|
||||||
|
|
||||||
|
'''/config/blueprints/automation/bahmcloud/'''
|
||||||
|
|
||||||
|
Example filename:
|
||||||
|
|
||||||
|
'''knx_cover_with_inverted_feedback.yaml'''
|
||||||
|
|
||||||
|
Then restart Home Assistant or reload automations.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Create an Automation
|
||||||
|
|
||||||
|
1. Go to
|
||||||
|
**Settings → Automations & Scenes → Blueprints**
|
||||||
|
2. Select **"KNX Cover Control + Inverted Position Feedback (%)"**
|
||||||
|
3. Click **Create automation**
|
||||||
|
4. Fill in:
|
||||||
|
- Cover entity
|
||||||
|
- KNX group address Up/Down
|
||||||
|
- KNX group address Stop
|
||||||
|
- KNX position feedback (%) group address
|
||||||
|
- (Optional) Invert Up/Down direction
|
||||||
|
- (Optional) Feedback cooldown
|
||||||
|
|
||||||
|
Create one automation per cover.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## KNX Group Address Mapping (ETS)
|
||||||
|
|
||||||
|
| Function | KNX Object Type | DPT |
|
||||||
|
|----------------------|-----------------|----------|
|
||||||
|
| Up / Down | 1 Bit | DPT 1.xxx |
|
||||||
|
| Stop / Step | 1 Bit | DPT 1.xxx |
|
||||||
|
| Position Feedback % | 1 Byte | DPT 5.001 |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Example Logic
|
||||||
|
|
||||||
|
| Home Assistant | KNX Feedback |
|
||||||
|
|---------------|-------------|
|
||||||
|
| 0 % (closed) | 100 % |
|
||||||
|
| 25 % | 75 % |
|
||||||
|
| 50 % | 50 % |
|
||||||
|
| 75 % | 25 % |
|
||||||
|
| 100 % (open) | 0 % |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
- Home Assistant ≥ 2026.1
|
||||||
|
- KNX integration configured and working
|
||||||
|
- Cover entity with `current_position` attribute
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Use Case
|
||||||
|
|
||||||
|
Perfect for KNX wall switches and touch panels that show the blind position in percent
|
||||||
|
and expect:
|
||||||
|
> 0 % = open, 100 % = closed
|
||||||
|
|
||||||
|
while Home Assistant internally works the opposite way.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
MIT – free to use, modify and distribute.
|
||||||
Reference in New Issue
Block a user