Ansteuerung Garage über Dashboard

Gleich vorab: Ich bin erst seit 3 Tagen oder so hier im Forum und komme von ioB. Leider habe ich aktuell noch null Durchblick und taste mich langsam ran.

In meinen bisherigen Dashboards für ioB habe ich immer mit eigenen Icons gearbeitet. So hatte die Bedienung meiner Garage 3 Bilder, die je nach Zustand “gezeigt” wurden. Geschlossen, Offen und Fehler.
Als Entitäten habe ich einen Homematic Aktor, der wie ein Taster mit 2 Kabeln angesteuert wird. Beispiel: Tor ist geschlossen:
Einmal (für ich glaube 500ms) drücken: Tor geht auf
Drückt man während des Öffnens nochmal, dann stoppt die Bewegung des Tors.
Drückt man erneut schließt sich das Tor.
Zur Überwachung, ob das Tor (auch nur leicht) geöffnet ist habe ich einen Kugelsensor. Steht das Tor leicht schräg melder er “Open”
Um also von Geschlossen auf Offen zu schalten habe ich einfach auf das Icon gedrückt, das Tor öffnet sich und sofort (nach 2 Sekunden oder so) wechselt das Icon/Bild.
Hier meine bisher genutzten Icons. Ich weiss überhaupt nicht, ob man eigene Icons verwenden kann in HA… So wenig also weiss ich
state_closed
state_opened
undefined

Ich muss nicht unbedingt mit diesen Bildern arbeiten. Mir würde für den Anfang eine Mushroom Bubble Card reichen, die mdi:garage_door_open-variant verwendet und bei geschlossen ein grünes geschlossenes Tor dieses mdi verwendet und bei offen ein rotes geöffnetes mdi

Mag sich jemand die Zeit nehmen und mich abholen?
Danke und LG
LEM

Ich benutze dafür die mushroom-template-card. Schau Sie Dir man an, hier kannst Du eigentlich alles dynamisch gestalten:
Zum Beispiel könntest Du unter Symbol folgenden jinja-Code verfassen:

{%- if (states('<Name des Sensors>') | int) > <Grenze> -%}
  mdi:...
{%- else -%}
  mdi:...
{%- endif -%}

Meines Wissens nach, kann man dabei auch eigene Bilder verwenden - dazu habe ich aber keine Erfahrungen.

Gruß
Roland

Lieber Grunzi, danke. lassen wir das erst mal weg mit dem eigenen icon… das ist die Kür… :slight_smile:
Also die mushroom template Karte nehmen werde ich dann gerne testen… aber die ist erstens recht klein in der höhe… und dann habe ich noch das problem, dass das Gerät von Homematic erst mal nur ein Switch ist und nur “Ein” und “Aus” kennt. Er muss aber wie ein taster für 50ms getastet werden… mmmmh

Mit der custom:button-card kannst du dein Ziel ganz einfach umsetzen. Hier ein Beispiel:

image

Neben den Standard-Icons können auch Bilder verwendet werden.

type: custom:button-card
entity: cover.garage_left_door
name: Garage-Links
show_name: true
show_entity_picture: false
size: 100%
grid_options:
  columns: 6
  rows: null
state:
  - value: open
    icon: mdi:garage-open
    entity_picture: /local/images/shys_on.png
  - value: opening
    icon: mdi:garage-open
  - value: closed
    icon: mdi:garage
    entity_picture: /local/images/shys_on.png
tap_action:
  action: toggle

Lieber Cemizm
vielen Dank für Deinen Vorschlag. Leider wird das für meinen Fall so nicht funktionieren. Du hast ja als Entität ein Cover. Vermutlich stellt Dein Garagentor Dir das so zur Verfügung. Meine Ansteuerung des Garagentors ist ein Switch. Der kennt also Ein und Aus. Aber auch das funktioniert so nicht. Ich muss den wie einen Taster ansteuern wie oben beschrieben. Ich denke sowas einbauen wie: Bei Tastendruck schalte den Switch ein, dann nach 50ms aus, damit ich per “knopfdruck” tocggeln kann…
Viele Grüße
LEM

Das Problem löst du aber nicht in der UI. Dafür gibt es sogenannte Templates, mit denen du ein Cover mit eigener Logik erstellen kannst:

Unabhängig davon kannst du mit der custom:button-card beliebige Sensoren und Zustände visualisieren. Je nach Zustand kannst du mit value im state die Darstellung des Buttons anpassen, und mit tap_action lassen sich beliebige Aktionen ausführen. Das erfordert natürlich ein gewisses Maß an Einarbeitung.

Übrigens, ich habe auch noch klassische Garagentore, die über einen einzelnen Taster in beide Richtungen gesteuert bzw. gestoppt werden. Mithilfe des Template-Covers, Fensterkontakt-Sensoren für die Endposition und den Mushroom-Cards sieht das bei mir so aus:

Mit der custom:button-card kannst du natürlich auch eigene Bilder einbinden – wobei ich hoffe, dass deine Wahl etwas geschmackvoller ausfällt als in dem Beispiel. :wink:

Genau da liegt eben der Unterschied.
Bei mir ist die Entität kein Cover und ich kann auch nicht Auf oder Zu wählen, wie du es mit Deinem Schalter im UI machst.
Ich überwache, ob das Tor offen oder zu ist, mit einem Kugelschalter. Sobald das tor auch nur einen Hauch offen ist steht die oberste Lamelle schief und der Schalter geht auf “off”. Damit kann ich das Icon und oder die Farbe des Icons ansteuern. Das habe ich ausprobiert.

Zur Eklärung der Technik:
Eigentlich wird er Motor der Garage mit einem Taster (Tastenhubzeit ca. 50ms) eningeschaltet (ich bezeichne das ab jetzt mal als Kurzschluss).
Also wenn ein beliebiger Taster direkt an den immer unter Strom stehenden Motor des Tors angeschlossen ist (über ein zweiadriges Kabel), wird quasi ein Kurzschluss durch den Taster gemacht.
Bei Kurzschluss wird dem Motor mitgeteilt fahre los entegen der zuletzt gefahrenen Richtung. Beim nächsten Kurzschluss wird halt der Motor gestoppt. Beim nächsten Kurzschluss wieder in entgegengesetzter Richtung gefahren.
Der Motor ist aber nicht steuerbar über HA oder einen anderen “Signalgeber”. Deshalb die von vielen genutzte Lösung, ein Schalter (auf der einen Seite 230V, auf der anderen Seite 2 polig Niedervolt.
Die 230V Seite kann nur “Ein” oder “Aus”.
Die Behelfslösung muss also folgendes machen:
Man schaltet über HA den Schalter auf ein und löst beim Einschalten einen Kurzschluss von 50ms auf der Niedervolt Seite aus. Damit fährt das Tor in die entgegengesetzte Richtung zur letzten Richtung. Wenn man nun den Schalter wieder ausschaltet, dann wird auf der Niedervoltseite kein Kurzschluss ausgelöst, da ja der Strom weg ist. Dann wieder Schalter einschalten, Kurzschluss usw…

In ioBroker bspw. kann man einem Switch sagen (so auch bspw. Grundsätzlich vielen Shellys), dass er den Switch nach 50ms sofort wieder ausschaltet und beim nächsten Drücken des Buttons wieder ein. Dann würde das Verhalten wie gewünscht funktionieren… Mein Schalter, den glaube ich viele nutzen, kann das Ausschalten nicht…Aber wie das in HA geht??? Danach suche ich ja :slight_smile:

Genau so wie mein Garagentor:

Übrigens, ich habe auch noch klassische Garagentore, die über einen einzelnen Taster in beide Richtungen gesteuert bzw. gestoppt werden. Mithilfe des Template-Covers, Fensterkontakt-Sensoren für die Endposition und den Mushroom-Cards sieht das bei mir so aus:

Die notwendigen Bausteine habe ich dir weiter oben schon aufgezeigt. Falls du das übersehen hast, hier noch mal der Link mit allen relevanten Informationen:

Im Abschnitt mit den Beispielen werden auch Skripte vorgestellt, die beim Öffnen oder Schließen ausgeführt werden sollen. Damit kannst du das Ein-/Ausschalten des Schalters mit einer 500-ms-Pause umsetzen. Zusätzlich lässt sich dein Kugelsensor verwenden, um den aktuellen Status des Covers bereitzustellen.

Eine alternative und äußerst einfache Methode wäre, eine Automation zu erstellen, die auf den Zustand des Schalters reagiert und ihn automatisch ausschaltet.

Dadurch wird der Schalter, sobald er eingeschaltet wird (unabhängig von der Quelle), automatisch wieder ausgeschaltet:

description: Garage door
mode: single
triggers:
  - trigger: state
    entity_id:
      - switch.garage_door_a
    to: "on"
    for:
      hours: 0
      minutes: 0
      seconds: 1
actions:
  - action: switch.turn_off
    target:
      entity_id: switch.garage_door_a

Vielleicht ist die Methode besser geeignet für dich?

sorry das hatte ich wirklich übersehen… Ich schaue mir das nachher an. Aktuell überlege ich folgenden Weg. Über eine Automation den Schalter nach 1s wieder auszuschalten. dann passiert in meinen Augen genau das, was ich will :slight_smile: und kann dann eine Karte wählen, die sowohl action als auch Icons in Farbe anzeigen kann oder liege ich mit dem Ansatz total daneben?

Ich habe in meiner Homemtic Zentrale eine virtuelle Taste angelegt. Sobald der Schalter eingeschaltet wird, wird er nach 0,5 s wieder ausgeschaltet. Ich habe es getestet, und auch mit einer Automation in Homeassistant würde es genau so gehen nach dem Motto wenn der Schalter auf “On” geschaltet wird, schalte ihn mit Verzögerung von 0,5 Sekunden auf “Off”.

Und ja, das funktioniert auch wie gewünscht … über eine Kachel kann ich das Tor nun vom Dashboard durch “draufklicken” steuern… nach vielem Nachlesen, auch hier in diesem Forum, sieht die yaml der Karte so aus:

type: custom:button-card
entity: binary_sensor.si_eg_garagentor
icon: mdi:garage-variant
name: Garagentor
tap_action:
  action: call-service
  service: button.press
  target:
    entity_id: button.hm_rcv_50_bidcos_rf_garagentor_rauf_runter_press_short_ch7
state:
  - value: "on"
    icon_color: red
  - value: "off"
    icon_color: green
  - operator: default
    icon_color: cyan

Problem ist nur, dass ich folgendes NICHT wie gewünscht geregelt bekomme. :slight_smile: :

Bei “Geschlossen” ist das Icon das Gewünschte = die “closed” Variante wird angezeigt, aber es ist blau und nicht grün, wie ich hoftte richtig definiert zu haben…

Bei “Offen” ist das angezeigte Icon NICHT das Gewünschte, es wird auch im offenen Zustand die “closed” Variante angezeigt und zudem ist die angezeigte Farbe des (falschen) Icons nicht die gewünschte Farbe (rot) sondern es wird gelb angezeigt…

Kann mir da wer helfen?
Lieben Dank!!

icon_color gibt es imho bei der button-card nicht.
Und das icon zum state hast du gar nicht definiert.

Hi @maxe , schön, dass Du wieder helfen magst!!!
Imho ist doch der state darüber definiert?

icon: mdi:garage-variant

Aber egal Du magst Recht haben und die Card ist nicht geeignet… Ich habe gestern echt vieles probiert…
Was habe ich getestet?
Die “normale” Entitäten Karte funktioniert nicht. Bei offen zeigt sie das Sysmbo in rot richtig ab, bei Geschlossen aber nur einen grünen Punkt (kein Icon)

type: entity
entity: binary_sensor.si_eg_garagentor
name: Garagentor
icon: mdi:garage-variant
tap_action:
  action: call-service
  service: button.press
  service_data:
    entity_id: button.hm_rcv_50_bidcos_rf_garagentor_rauf_runterrf_press_short_ch7
state_color: true

Bspw. die Mushroom Bubble Card mit diesem Yaml ohne Erfolg:

type: custom:mushroom-button-card
entity: binary_sensor.si_eg_garagentor
name: Garagentor
icon: |-
  {% if is_state('binary_sensor.si_eg_garagentor', 'off') %}
    mdi:garage-closed-variant
  {% elif is_state('binary_sensor.si_eg_garagentor', 'on') %}
    mdi:garage-open-variant
  {% else %}
    mdi:garage-variant
  {% endif %}
icon_color: |-
  {% if is_state('binary_sensor.si_eg_garagentor', 'off') %}
    green
  {% elif is_state('binary_sensor.si_eg_garagentor', 'on') %}
    red
  {% else %}
    cyan
  {% endif %}
tap_action:
  action: call-service
  service: button.press
  service_data:
    entity_id: button.hm_rcv_50_bidcos_rf_garagentor_rauf_runterrf_press_short_ch7
layout: vertical  # Alternativ: "horizontal", um Icon und Text nebeneinander darzustellen
fill_container: true  # Passt die Karte dynamisch an

über welche Karte, die am besten nicht nur per yaml bearbeitbar ist, würdest du es machen…?

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)

Ich würde vermutlich erst mal die Mushroom-Template-Card probieren:

type: custom:mushroom-template-card
entity: binary_sensor.si_eg_garagentor
primary: Garagentor
secondary: |
  {{ iif(states(entity) == "on", "offen", "geschlossen") }}
icon: |
  {{ iif(states(entity) == "on", "mdi:garage-open-variant", "mdi:garage-variant") }}
icon_color: |
  {{ iif(states(entity) == "on", "red", "green") }}

@maxe
So sieht dann mein yaml aus…

type: custom:mushroom-template-card
entity: binary_sensor.si_eg_garagentor
primary: Garagentor
secondary: |
  {{ iif(states(entity) == "on", "offen", "geschlossen") }}
icon: >
  {{ iif(states(entity) == "on", "mdi:garage-open-variant",
  "mdi:garage-closed-variant") }}
icon_color: |
  {{ iif(states(entity) == "on", "red", "green") }}
badge_color: ""
tap_action:
  action: call-service
  service: button.press
  service_data:
    entity_id: button.hm_rcv_50_bidcos_rf_garagentor_rauf_runterrf_press_short_ch7
layout: vertical

Geschlossen sieht das Icon so aus:
Bildschirmfoto 2025-01-22 um 15.47.30

Offen so:
Bildschirmfoto 2025-01-22 um 15.47.45

Ergo, wie bei der normalen entitäten Karte. Bei geschlossen kein Icon ;-(

gibt es nicht :innocent:

1 „Gefällt mir“

Man man man…
DANKÖÖÖ

@maxe
nach lesen der github zur custom bubble card habe ich das yaml “gebastelt” und zack… es geht…

type: custom:button-card
entity: binary_sensor.si_eg_garagentor
name: Garagentor
icon: |-
  [[[
    if (entity.state === 'on') return 'mdi:garage-open-variant';
    else return 'mdi:garage-variant';
  ]]]
tap_action:
  action: call-service
  service: button.press
  target:
    entity_id: button.hm_rcv_50_bidcos_rf_garagentor_rauf_runterrf_press_short_ch7
styles:
  icon:
    - color: |-
        [[[
          if (entity.state === 'on') return 'red';
          if (entity.state === 'off') return 'grey';
          return 'cyan';
        ]]]
show_icon: true
show_name: true

:crayon:by HarryP: Zusammenführung Doppelpost (bitte “bearbeiten” Funktion nutzen)

oder halt einfach, wie gestern bereits geschrieben:

type: custom:button-card
entity: binary_sensor.si_eg_garagentor
name: Garagentor
tap_action:
  action: call-service
  service: button.press
  target:
    entity_id: button.hm_rcv_50_bidcos_rf_garagentor_rauf_runterrf_press_short_ch7
state:
  - value: on
    icon: mdi:garage-open-variant
    color: red
  - value: off
    icon: mdi:garage-variant
    color: grey

würde aber wie auch schon von @maxe geschrieben, die Mushroom-Cards nehmen. Die Icons sind zwar kleiner, aber du kannst trotzdem die gesamte Card als Schaltfläche nutzen.

Ich danke auch Dir lieber @cemizm und @maxe für Eure Unterstützung

So nach stundenlamgem Reinkopieren von gesammelten yaml Zeilen, Vor- und Zurück und ein paar gerauften Haaren ist es so geworden, wie ich es mir wünschte…
Ist ein bisschen zu viel Kirmes farblich, werde also wieder einiges zurückbauen aber so habe ich ein Template für mich, dass ich nach belieben erweitern oder kürzen kann mit größe des icons, der Karte ansich, Farben der Ränder und des Hintergrund etc…

Drückt man auf den Knopf macht es was oben gewünscht war.
Wenn das Tor geschlossen ist dann sieht man ein geschlossenes graues Garagentor. Ist es geöffnet, dann ist der Hintergrund der Kachel leicht rot, das Garagenstor Icon mit geöffnetem Tor ist knallrot und das Icon blinkt…
So braucht keiner mehr Angst haben, es zu übersehen LOL, denn die Kachel ist recht groß…

Hier das fertige yaml

type: custom:button-card
entity: binary_sensor.si_eg_garagentor
name: Garagentor
icon: |-
  [[[
    return entity.state === 'on' ? 'mdi:garage-open-variant' : 'mdi:garage-variant';
  ]]]
styles:
  card:
    - display: flex
    - flex-direction: row
    - align-items: center
    - height: 250px
    - padding: 10px
    - border-radius: 15px
  icon:
    - color: |-
        [[[
          return entity.state === 'on' ? 'red' : (entity.state === 'off' ? 'grey' : 'cyan');
        ]]]
    - width: 130px
    - margin-right: 10px
    - animation: |-
        [[[
          return entity.state === 'on' ? 'blink 1s linear infinite' : 'none';
        ]]]
  name:
    - font-size: 16px 
    - font-weight: bold
tap_action:
  action: call-service
  service: button.press
  target:
    entity_id: button.hm_rcv_50_bidcos_rf_garagentor_rauf_runterrf_press_short_ch7

Der nächste Schritt soll sein, meine am Anfang gezeigten, selbstgebauten Glasbuttons einzubinden anstelle der mdi Sachen
Da hoffe ich dann wieder auf Eure Hilfe :slight_smile:

Aber da mache ich einen eignen Thread auf