Mein neues, dynamisches Home Assistant Dashboard

Haben deine Entitäten denn die device_class: shutter ?

1 „Gefällt mir“

Perfekt ich danke dir, ich hatte es als Jalousien hinterlegt (Blinde)

Es hat super geklappt, habe oben noch einen titel geschrieben der sich ständig ändert. Vielen Dank für eure hilfe Jungs und herzlichen Dank an Simon für das Dashboard

Hallo, hatte keiner ne Idee bitte

Ich würde sagen es ist wirklich schwer anhand der Screenshots zu bestimmen ob eventuell deine Einrückungen nicht passen.
Poste doch deinen Code mal gesamt als Code Block in dem du das mit </> hier reinstellst. Vielleicht kann dir dann jemand helfen.

Ich hab da mal eine Frage zu. Ich habe neben Lampen die auch tatsächlich Lampen sind auch noch Geräte die die Domain Schalter haben, aber dennoch Lampen sind bzw. Lichter an und aus schalten. Wie kann ich die am besten mit einbeziehen? Gibt es da die Möglichkeit über Labels zu arbeiten. Sprich ich hab eine Entität der verpass ich das Label “Lampe” und deren Zustand wird mit gezählt.

Du kannt den Entitäten Typ ändern.

Einfach die Entität öffnen, die du möchtest. Dann findest du unter Steuerelemente den Schalter.
Diesen anklicken. Oben rechts auf das Zahradsymbol. Und dann bei “Anzeigen als”. Auswählen was du benötigst. Zum Beispiel Leuchte.
Der Original Schalter wird dabei versteckt und es gibt nur noch die Leuchte.

Ändert es dadurch die Benennung lights.meine_lampe? Kann ich den original Schalter noch benutzen oder ist der dann deaktiviert?

Den kannst du ganz normal benutzen. Ändert nur die Anzeige. Der Schalter wird dann als Lampe behandelt und gehört dann in die Domäne Light.
Der bleibt als Schalter auch in der Ansicht weiter sichtbar.

Ist das eine Gruppe? Wenn ja, müssten da die neuen light-Entitäten rein

Wie hast du das Schalten umgesetzt?

Damit hab ich die Entitäts ID gemeint. Die soll nicht geändert werden. Wenn ich aber den Typ einer Entität ändere und sie somit in einer anderen Domain (nicht mehr Schalter sondern dann Licht) ändert es ja dann auch die Entitäts ID oder? Meine eigentliche Frage zielte eigentlich darauf ab wie ich das vorhandene Template ändern müsste wenn ich andere Entitäten zusätzlich mit einbeziehen möchte und ob ich dies über Labels regeln kann

Das ist so.
Die alte heißt nach wie vor Switch.XYZ. Die neue heißt light.XYZ.
Wenn du die bereits irgendwo verwendet hast müsstest du das anpassen.

Weitere Domains filter wäre wahrscheinlich so:

filter:
  include:
    - domain: light
      options:
        ...
      attributes:
        ...
    - domain: switch
      options:

In der Doku für die auto_entities findest du auch einge Beispiele:
https://github.com/thomasloven/lovelace-auto-entities

@simon42 vielen Dank für Deine tolle Arbeit - dieses dynamische Dashboard ist der Hammer, aber Du hast mir über die Jahre hinweg schon sehr häufig geholfen! Ich hoffe, meine kleine Spende via “buymeacoffee” reicht bei den aktuellen Kaffeepreisen noch aus… :grinning_face_with_smiling_eyes:

Da mein Zuhause deutlich kleiner ist als Deins, habe ich recht viele Anpassungen machen müssen. Dank Deiner tollen Anleitung hab ich auch fast alles hingekriegt.

Falls jemand meine Anpassungen mag und Fragen hat, gerne her damit.

Das ist bei mir die Handy-Ansicht. Auf dem Tablet oder einem PC ist bei mir lediglich das Wetter rechts daneben. Ich will immer ein Dashboard, das mir ohne zu scrollen alles anzeigt und sich eben auf die Display-Größe anpasst. Bei einer Zwei-Zimmer-Wohnung plus Küche, Bad und Flur ist das aber auch noch machbar.

Meine Anpassungen im Detail: Rolläden, Garage und Uhrzeit hab ich einfach gelöscht, da entweder nicht vorhanden oder für mich unnötig (Uhrzeit). Ebenso ist der Alarm und der Hausmodus bei mir rausgefallen. Beim Wetter hab ich die mittlere Anzeige mir der Stundenanzeige gelöscht, weil mir die Information auch die obere Ansicht anzeigt (ja, muss mal auf die Karte tippen und kann dann zwischen stündlich und täglich wechseln). Sonnenauf- und -untergang hab ich in den Header der Karte gepackt. Die Info reicht, ich brauche dazu keine grafische Darstellung.

Was mir fehlt oder was ich einfach noch nicht hingekriegt hab.

  • Wetter: Sonennauf- und -untergang hätte ich gerne als Uhrzeit und nicht mit “in 11 Stunden”.
  • Wetter2: Die erste Zeile “Wolke, ‘Regnerisch’, ‘9,7 °C’” könnte für meinen Geschmack kleiner sein, aber da hab ich keine Optionen für die Größenanpassung gefunden.
  • Die Thermostate (alle Aqara E1) bieten mir leider keine Entität, die den Status einfach nur stumpf “ON” oder “OFF” anzeigt. Dann hätte ich nämlich in der ersten Reihe mit den Lampen, Fenster/Türen, Bewegungsmelder auch eine Anzeige mit den Thermostaten erstellen können.
  • In der ersten Reihe mit "Lampen, Fenster, Bewegungen” wäre noch interessant, statt einer Zahl, “Geöffnet” oder “Ein” eine Option mit der aktuellen Entität toll. Gerade bei den Präsenz- und Bewegungssensoren wäre eine Anzeige, welcher Sensor zuletzt reagiert hat, interessant.
1 „Gefällt mir“

Dank dir aber meine Frage bezog sich nicht auf die auto_entitis sondern auf das Template:

{% set exclude = label_entities('no_dboard') %}
{{ states.light
| selectattr('state','eq','on')
| rejectattr('entity_id','in', exclude)
| list 
| count }}

Ich möchte das dieses Template nicht nur die angeschalteten Lampen sondern auch die angeschalteten Entitäten den ich das Label “Lampe” gegeben habe zählt. Kann ich zum Beispiel statt nach states.light auch nach label_entities(‘lampen’) filtern?

Ich denke dein Filter ist falsch. Einfach hier mal nachlesen was geht:

Versuch es mal so

{{ label_entities("lampen")   
   | list
   | count
}}

hier noch der komplette Code. Es geht hauptsächlich darum das bei den options der fehler kommt, lass ich die optins leer funktionieren die auto-entities. Sobald ich type: tile schreibe kommt der Fehler.

type: vertical-stack
cards:
  - type: markdown
    content: " 💡 Eingeschaltete Lichter Obergeschoss"
    text_only: true
  - type: custom:auto-entities
    card:
      card_param: null
    filter:
      include:
        - options:
            type: tile
            features_position: inline
            vertical: false
            state_content: last_changed
            features:
              - type: light-brightness
              - type: toggle
          domain: light
          state: "on"
          floor: obergeschoss
      exclude:
        - options: {}
          label: no_dboard
          floor: obergeschoss
    show_empty: true
  - type: markdown
    content: 🌙 Ausgeschaltete Lichter Obergeschoss
    text_only: true
  - type: custom:auto-entities
    card:
      type: entities
    filter:
      include:
        - options: {}
          domain: light
          state: "off"
          floor: obergeschoss
      exclude:
        - options: {}
          label: no_dboard
          floor: obergeschoss

Es kommt ja drauf an, was für eine Card du nutzt. Nutze z.B. den type: entities, dann kannst du unter options auch die Optionen einer Entitäten-Card setzen.

card:
  type: entities
  state_color: true
filter:
  include:
    - options:
        secondary_info: last-changed

Ansonsten musst du grid als type setzen, dann kannst du mit der tile-card arbeiten

card:
  type: grid
  columns: 1
  square: false
card_param: cards
filter:
  include:
    - options:
        type: tile
        features_position: inline
        vertical: false
        state_content: last_changed
        features:
          - type: light-brightness
          - type: toggle
      domain: light
      state: on

Ich habe das gleiche problem. keine ne Idee?

Hallo zusammen,

ich habe es eigentlich genau nach Simons Anleitung gebaut, aber irgendwo hat sich ein Fehler eingeschlichen oder ich bin einfach zu doof.

Meine YAML-Configuration sieht so aus:

type: vertical-stack
cards:
  - type: custom:bubble-card
    card_type: pop-up
    hash: "#lichter-popup"
    button_type: state
    entity: sensor.angeschaltete_licher
    name: eingeschaltete Lichter
  - type: heading
    icon: ""
    heading_style: title
    heading: eingeschaltete Lichter
  - type: custom:auto-entities
    card:
      type: entities
    filter:
      include:
        - options:
            type: null
            features_position: inline
            vertical: false
            features:
              - type: light-brightness
              - type: toggle
          domain: light
          state: "on"
          sort:
            attribute: {}
      exclude:
        - options:
            type: tile
            features_position: inline
            vertical: false
            features:
              - type: light-brightness
              - type: toggle
          label: no_dashboard
    sort:
      method: friendly_name
  - type: heading
    icon: mdi:fridge
    heading_style: title
    heading: ausgeschaltete Lichter
  - type: custom:auto-entities
    card:
      type: entities
    filter:
      include:
        - options:
            features_position: inline
            vertical: false
            features:
              - type: light-brightness
              - type: toggle
          domain: light
          state: "off"
      exclude:
        - options: {}
          label: no_dashboard
    sort:
      method: last_changed
      reverse: true

Das ergibt folgendes Bild:

Soweit so schön, Wenn ich aber im Code unter “- options” den type: tile setze, erhalte ich:

Ausschnitt des Codes

 type: custom:auto-entities
    card:
      type: entities
    filter:
      include:
        - options:
            type: tile
            features_position: inline
            vertical: false
            features:
              - type: light-brightness
              - type: toggle
          domain: light
          state: "on"
          sort:
            attribute: {}
      exclude:
        - options:
            type: tile
            features_position: inline
            vertical: false
            features:
              - type: light-brightness
              - type: toggle
          label: no_dashboard
    sort:
      method: friendly_name

Was mich hier verwundert, das er sich im Bereich “Exclude” nicht am type: tile stört, es hier aber auch augenscheinlich nicht angezeigt.

Kann mich hier wer erleuchten?

Danke!