Add HM-PB-6-WM55 Wandtaster Blueprint (6 Tasten, CCU2)

This commit is contained in:
martin 2026-07-27 14:55:44 +00:00
parent 5c48e1c2a5
commit df43edc5c4

View file

@ -0,0 +1,307 @@
blueprint:
name: Homematic Wandtaster HM-PB-6-WM55 (CCU2)
description: >
Ordnet den 6 Tasten eines Homematic-Wandtasters HM-PB-6-WM55 (angebunden
über eine CCU2) jeweils eine Zielentität und eine Aktion (Umschalten,
Einschalten, Ausschalten) zu. Kurzer und langer Tastendruck (PRESS_SHORT /
PRESS_LONG) lösen dieselbe Aktion aus.
Passt für normale Schalter/Lampen genauso wie für ein Garagentor als
cover-Entität: "Umschalten" öffnet bzw. schließt das Tor dann automatisch
passend zum aktuellen Zustand ganz ohne Sonderlogik. Ungenutzte Tasten
einfach leer lassen, dann passiert bei ihnen nichts.
Für jedes physische Taster-Gerät wird eine eigene Automatisierungs-Instanz
aus diesem Blueprint angelegt. Der Gerätename lässt sich über
Entwicklerwerkzeuge → Ereignisse (Event-Typ homematic.keypress) ablesen,
z. B.:
event_type: homematic.keypress, data: {name: "Taster Garage", param:
PRESS_SHORT, channel: 1}
domain: automation
input:
device_name:
name: Taster-Gerätename
description: >
Name des Homematic-Geräts, wie er im Event homematic.keypress unter
"name" steht (z. B. "Taster Garage"). Muss exakt übereinstimmen
zu finden über Entwicklerwerkzeuge → Ereignisse.
selector:
text:
button_1_entity:
name: Taste 1 Zielentität
description: Entität, die bei Taste 1 (channel 1) geschaltet wird. Leer lassen für keine Aktion.
default: ""
selector:
entity:
domain:
- switch
- light
- cover
- fan
- input_boolean
- lock
- valve
- siren
button_1_action:
name: Taste 1 Aktion
description: >
Umschalten passt für normale Schalter/Lampen und für ein Garagentor
(cover-Entität, öffnet/schließt automatisch je nach Zustand).
Ein-/Ausschalten eignet sich z. B. für Wippen-Tastenpaare.
default: toggle
selector:
select:
mode: dropdown
options:
- value: toggle
label: Umschalten
- value: turn_on
label: Einschalten
- value: turn_off
label: Ausschalten
button_2_entity:
name: Taste 2 Zielentität
description: Entität, die bei Taste 2 (channel 2) geschaltet wird. Leer lassen für keine Aktion.
default: ""
selector:
entity:
domain:
- switch
- light
- cover
- fan
- input_boolean
- lock
- valve
- siren
button_2_action:
name: Taste 2 Aktion
description: >
Umschalten passt für normale Schalter/Lampen und für ein Garagentor
(cover-Entität, öffnet/schließt automatisch je nach Zustand).
Ein-/Ausschalten eignet sich z. B. für Wippen-Tastenpaare.
default: toggle
selector:
select:
mode: dropdown
options:
- value: toggle
label: Umschalten
- value: turn_on
label: Einschalten
- value: turn_off
label: Ausschalten
button_3_entity:
name: Taste 3 Zielentität
description: Entität, die bei Taste 3 (channel 3) geschaltet wird. Leer lassen für keine Aktion.
default: ""
selector:
entity:
domain:
- switch
- light
- cover
- fan
- input_boolean
- lock
- valve
- siren
button_3_action:
name: Taste 3 Aktion
description: >
Umschalten passt für normale Schalter/Lampen und für ein Garagentor
(cover-Entität, öffnet/schließt automatisch je nach Zustand).
Ein-/Ausschalten eignet sich z. B. für Wippen-Tastenpaare.
default: toggle
selector:
select:
mode: dropdown
options:
- value: toggle
label: Umschalten
- value: turn_on
label: Einschalten
- value: turn_off
label: Ausschalten
button_4_entity:
name: Taste 4 Zielentität
description: Entität, die bei Taste 4 (channel 4) geschaltet wird. Leer lassen für keine Aktion.
default: ""
selector:
entity:
domain:
- switch
- light
- cover
- fan
- input_boolean
- lock
- valve
- siren
button_4_action:
name: Taste 4 Aktion
description: >
Umschalten passt für normale Schalter/Lampen und für ein Garagentor
(cover-Entität, öffnet/schließt automatisch je nach Zustand).
Ein-/Ausschalten eignet sich z. B. für Wippen-Tastenpaare.
default: toggle
selector:
select:
mode: dropdown
options:
- value: toggle
label: Umschalten
- value: turn_on
label: Einschalten
- value: turn_off
label: Ausschalten
button_5_entity:
name: Taste 5 Zielentität
description: Entität, die bei Taste 5 (channel 5) geschaltet wird. Leer lassen für keine Aktion.
default: ""
selector:
entity:
domain:
- switch
- light
- cover
- fan
- input_boolean
- lock
- valve
- siren
button_5_action:
name: Taste 5 Aktion
description: >
Umschalten passt für normale Schalter/Lampen und für ein Garagentor
(cover-Entität, öffnet/schließt automatisch je nach Zustand).
Ein-/Ausschalten eignet sich z. B. für Wippen-Tastenpaare.
default: toggle
selector:
select:
mode: dropdown
options:
- value: toggle
label: Umschalten
- value: turn_on
label: Einschalten
- value: turn_off
label: Ausschalten
button_6_entity:
name: Taste 6 Zielentität
description: Entität, die bei Taste 6 (channel 6) geschaltet wird. Leer lassen für keine Aktion.
default: ""
selector:
entity:
domain:
- switch
- light
- cover
- fan
- input_boolean
- lock
- valve
- siren
button_6_action:
name: Taste 6 Aktion
description: >
Umschalten passt für normale Schalter/Lampen und für ein Garagentor
(cover-Entität, öffnet/schließt automatisch je nach Zustand).
Ein-/Ausschalten eignet sich z. B. für Wippen-Tastenpaare.
default: toggle
selector:
select:
mode: dropdown
options:
- value: toggle
label: Umschalten
- value: turn_on
label: Einschalten
- value: turn_off
label: Ausschalten
variables:
channel: "{{ trigger.event.data.channel | string }}"
button_1_entity: !input button_1_entity
button_1_action: !input button_1_action
button_2_entity: !input button_2_entity
button_2_action: !input button_2_action
button_3_entity: !input button_3_entity
button_3_action: !input button_3_action
button_4_entity: !input button_4_entity
button_4_action: !input button_4_action
button_5_entity: !input button_5_entity
button_5_action: !input button_5_action
button_6_entity: !input button_6_entity
button_6_action: !input button_6_action
trigger:
- platform: event
event_type: homematic.keypress
event_data:
name: !input device_name
action:
- choose:
- conditions:
- condition: template
value_template: "{{ channel == '1' and button_1_entity not in [none, ''] }}"
sequence:
- action: "homeassistant.{{ button_1_action }}"
target:
entity_id: "{{ button_1_entity }}"
- conditions:
- condition: template
value_template: "{{ channel == '2' and button_2_entity not in [none, ''] }}"
sequence:
- action: "homeassistant.{{ button_2_action }}"
target:
entity_id: "{{ button_2_entity }}"
- conditions:
- condition: template
value_template: "{{ channel == '3' and button_3_entity not in [none, ''] }}"
sequence:
- action: "homeassistant.{{ button_3_action }}"
target:
entity_id: "{{ button_3_entity }}"
- conditions:
- condition: template
value_template: "{{ channel == '4' and button_4_entity not in [none, ''] }}"
sequence:
- action: "homeassistant.{{ button_4_action }}"
target:
entity_id: "{{ button_4_entity }}"
- conditions:
- condition: template
value_template: "{{ channel == '5' and button_5_entity not in [none, ''] }}"
sequence:
- action: "homeassistant.{{ button_5_action }}"
target:
entity_id: "{{ button_5_entity }}"
- conditions:
- condition: template
value_template: "{{ channel == '6' and button_6_entity not in [none, ''] }}"
sequence:
- action: "homeassistant.{{ button_6_action }}"
target:
entity_id: "{{ button_6_entity }}"
mode: single
max_exceeded: silent