Eiko Wagenknecht
Softwareentwickler, Freiberufler & Gründer

Events von Homematic und Homematic IP Tastern

Eiko Wagenknecht

Ich bin aktuell dabei, mich mit Home Assistant vertraut zu machen und binde dort meine Homematic sowie Homematic IP Taster ein. Dabei ist mir eine Kuriosität aufgefallen, die ich gerne dokumentieren möchte: Die verschiedenen Taster senden unterschiedliche Events bei langem Tastendruck, was zu unerwarteten Verhaltensweisen führen kann. In diesem Artikel erkläre ich die Unterschiede und zeige, wie man das Verhalten der Taster anpassen kann, um eine konsistente Steuerung zu ermöglichen.

Inhaltsverzeichnis

Hardware

Ich beschränke mich hier einmal auf die relevante verwendete Hardware:

Taster drücken

In Home Assistant kann man schön sehen, welche Events die Taster versenden beim Drücken, indem man in den Entwicklerwerkzeugen auf das homematic.keypress Event hört. Es zeigt sich, dass die Taster hier ganz unterschiedliche Events senden:

HM-PBI-4-FM Taster (Standardeinstellungen)

Kurzer Tastendruck: Es wird ein „PRESS_SHORT” Event auf dem entsprechenden Kanal (1-4) gesendet.

Langer Tastendruck: Es wird nach 0,4s einmal das Event „PRESS_LONG” gesendet, danach alle 0,4s das Event „PRESS_CONT” und sofort beim Loslassen das „PRESS_LONG_RELEASE”. Die genaue Zeitspanne ist hier von der Option „Mindestdauer für langen Tastendruck” in der CCU abhängig. Standardwert sind diese 0,4s.

HmIP-FCI1 / HmIP-FCI6 Taster (Standardeinstellungen)

Kurzer Tastendruck: Es wird ein „PRESS_SHORT” Event auf dem entsprechenden Kanal (1 beim FCI1, 1-6 beim FCI6) gesendet.

Langer Tastendruck: Es wird nach 0,4s einmal das Event „PRESS_LONG” gesendet, danach alle 0,4s wiederholt das Event „PRESS_LONG” und sofort beim Loslassen das „PRESS_LONG_RELEASE”. Die genaue Zeitspanne ist hier von der Option „Mindestdauer für langen Tastendruck” in der CCU abhängig. Standardwert sind diese 0,4s. Die wiederholten „PRESS_LONG” Events kommen maximal so lange wie bei „Timeout für langen Tastendruck” eingestellt ist (Standardwert 2min).

HmIP-FCI1 / HmIP-FCI6 Taster (ohne Wiederholungen)

Das Standardverhalten hat mir nicht gefallen, da es z.B. bei einem Dimmer zwar sinnvoll ist, das Event alle x Sekunden auszulösen und dann z.B. einen Schritt zu erhöhen, bei einem Schalter, der nur eine „An/Aus” Funktion mit einem langen Druck darstellen soll, aber fehl am Platze ist. Da wäre dann entweder die Möglichkeit, auf das erste „PRESS_LONG” zu hören (was nicht ganz trivial herauszufischen ist) oder auf das „PRESS_LONG_RELEASE”, das dazu führt, dass erst beim Loslassen des Schalters etwas passiert. Beides nicht so toll.

Zum Glück gibt es eine ziemlich versteckte Möglichkeit, das Verhalten anzupassen: Wenn man in der CCU3 den „Timeout für langen Tastendruck” auf „Nicht aktiv” setzt, dann verhält sich der Schalter plötzlich ganz anders:

Kurzer Tastendruck: Es wird ein „PRESS_SHORT” Event auf dem entsprechenden Kanal (1 beim FCI1, 1-6 beim FCI6) gesendet.

Langer Tastendruck: Es wird nach 0,4s einmal das Event „PRESS_LONG” gesendet und nach weiteren 0,4s das „PRESS_LONG_RELEASE”, mehr nicht. Also explizit keine wiederholten Events. Damit kann ich nun einfach auf „PRESS_LONG” hören und direkt die gewünschte Aktion ausführen lassen!

Weitere Schalter

HmIP-DSD-PCB (Klingelsensor): Sendet ausschließlich „PRESS_SHORT”, egal was bei „Timeout für langen Tastendruck” eingestellt ist.

HM-PB-2-WM55-2: Identisch zu HM-PBI-4-FM.

Mehr Schalter habe ich nicht zur Verfügung, mit denen ich das Verhalten ausprobieren könnte. Lasst mir gerne einen Kommentar da, wenn ihr dazu noch mehr Datenpunkte habt, dann ergänze ich den Beitrag gerne.

Keine Kommentare? Kein Problem.

Dieser Blog unterstützt keine Kommentare, aber deine Gedanken und Fragen sind immer willkommen. Du erreichst mich mich über die Kontaktdaten im Footer unten.

Unterstützung

Wenn diese Seite für dich hilfreich war und du dich bei mir bedanken möchtest, dann freue ich mich ganz außerordentlich darüber, wenn du für deinen nächsten Einkauf bei amazon.de über diesen Link gehst. Ich bekomme dann eine kleine Provision, für dich kostet es keinen Cent extra. Wenn du mich lieber anders unterstützen möchtest, findest du hier weitere Möglichkeiten.