Lights on anzeigen lassen

Moin

ich versuche einen Sensor zu machen der mir anzeigt wieviele Lichter an sind habe ich einen Fehler hier drin ?

- platform: template
  sensors:
    current_lights_on:
      friendly_name: lichter_an
      unit_of_measurement: "on"
      value_template: >
       {% set lights = [
        'states.light.stehlampe',
        'states.light.deckenlampe',
        'states.light.eckstrahler',
        'states.light.bodenstrahler',
        'states.light.badezimmer_licht',
        'states.light.badezimmer_ambiente',
        'states.light.lampe_sebastian',
        'states.light.lampe_verena',
        'states.light.nkleidezimmer_licht',
        'states.light.kuchenarmatur',
        ] %}
        {{ expand(lights) | selectattr('states','eq','on') | list | count }}

Heißt es nicht eigentlich nur state? :thinking:

1 „Gefällt mir“

Ich habe mir eine Helfer-Gruppe (light.all_lights)) erstellt, wo ich alle Lights reingepackt habe, die ich “überwachen” will.

Dann habe ich folgenden Sensor angelegt:

# Total Lights On
- sensor:
  - name: Lichter
    unique_id: b587f685-2064-43ba-a2d0-d1aee6349962
    icon: mdi:lightbulb-group
    state: "{{ expand('light.all_lights') | selectattr('state','eq','on') | list | count }}"
    attributes: 
      Lichter: >-
          {% set entities = expand('light.all_lights') | selectattr('state','eq','on') | map(attribute='name') | list | join(', ') %}
          {%- for s in entities -%}
          {{ s }}
          {%- endfor %}
1 „Gefällt mir“

Danke wenn ich die code kopiere kommt kein sensor muss ich noch was beachten ? :slight_smile:

meine code hatte ich in die templates.yaml ausgegliedert.
Wenn du ihn direkt in der configuration.yaml setzen willst, fehlt noch ein template:

template:
# Total Lights On
  - sensor:
    - name: Lichter
      unique_id: b587f685-2064-43ba-a2d0-d1aee6349962
      icon: mdi:lightbulb-group
      state: "{{ expand('light.all_lights') | selectattr('state','eq','on') | list | count }}"
      attributes: 
        Lichter: >-
            {% set entities = expand('light.all_lights') | selectattr('state','eq','on') | map(attribute='name') | list | join(', ') %}
            {%- for s in entities -%}
            {{ s }}
            {%- endfor %}

Schreibst du den direkt in die configuration.yaml, dann musst du so anfangen:

template:
  - sensor:
      - name: 

Bedenke das in der configuration.yaml nur einmal template: vorkommen darf.

Wenn du eine templates.yaml in der configuration.yaml bereits ausgelagert hast, gehört der Code von @maxe dort hinein.

2 „Gefällt mir“

danke für deine Hilfe :slight_smile: es klappt top

vllt kannst du mir ja noch mal helfen oder jemand anderes: ich will meine HomeKit config in eine Homekit.yaml übertragen um etwas aufzuräumen aber jedes mal packt der Sachen seit dem rein die ich nicht möchte ohne HomeKit.yaml klappts


  - name: HASS Bridge Wohnzimmer
    port: 21063
    filter:
      include_domains:
        - climate
        - light
      include_entities:
        - alarm_control_panel.aqara_hub_m1s_8974_security_system
        - binary_sensor.fenster_ankleidezimmer_2
        - binary_sensor.fenster_badezimmer_5
        - binary_sensor.fenster_kuche
        - binary_sensor.fenster_schlafzimmer_3
        - binary_sensor.fenster_wohnzimmer_7
        - binary_sensor.tur_wohnzimmer_6
        - binary_sensor.briefkasten_8
        - binary_sensor.klingel_4
        - switch.waschmaschine
        - switch.sync_box_power
        - vacuum.roborock_s7
        - fan.dyson_luftreinigertm
        - switch.ladestation_wohnzimmer
        - switch.macbook
        - switch.schlafzimmer_tv
        - switch.pc
        - switch.ladestation_sebastian
        - switch.sonos_soundbar
        - switch.sonos_hinten
        - binary_sensor.eingangstur_hinten_sensor_bewegung
        - binary_sensor.eingangstur_vorne_sensor_bewegung
        - sensor.eingangstur_hinten_sensor_temperatur
        - sensor.eingangstur_vorne_sensor_temperatur
        - sensor.eingangstur_vorne_sensor_beleuchtungsstarke
        - sensor.eingangstur_hinten_sensor_beleuchtungsstarke
        - binary_sensor.ankleidezimmer_sensor_bewegung
        - sensor.ankleidezimmer_sensor_temperatur
        - sensor.ankleidezimmer_sensor_beleuchtungsstarke
        - binary_sensor.kuche_sensor_bewegung
        - sensor.kuche_sensor_beleuchtungsstarke
        - sensor.kuche_sensor_temperatur
        - binary_sensor.badezimmer_sensor_bewegung
        - sensor.badezimmer_sensor_beleuchtungsstarke
        - sensor.badezimmer_sensor_temperatur
      exclude_entities:
        - light.awtrix_6f0a88_indicator_1
        - light.awtrix_6f0a88_indicator_2
        - light.awtrix_6f0a88_indicator_3
        - light.awtrix_6f0a88_matrix
        - light.ankleidezimmer_licht
        - light.ankleidezimmer
        - light.badezimmer_deckenlampe
        - light.badezimmer
        - light.flur_licht
        - light.kuche
        - light.schlafzimmer_nachttisch
        - light.eingangstur
        - light.flur_licht
        - light.wohnzimmer
        - light.schlafzimmer
        - light.steckdosen
        - light.all_lights
        - light.badezimmer_licht
  - name: Bridge TV Schlafzimmer
    port: 21064
    mode: accessory
    filter:
      include_entities:
      - media_player.lg_webos_tv_uj6519
  - name: Bridge TV Wohnzimmer
    port: 21065
    mode: accessory
    filter:
      include_entities:
      - media_player.lg_tv_wohnzimmer

Wie sieht dein Eintrag in der configuration.yaml aus?

1 „Gefällt mir“

Hi,

homekit: !include homekit.yaml

Problem ist halt das die Geräte die im Filter: exclude_entities gepackt habe trotzdem im Komekit sind wenn ich direkt in der config alles schreibe ist es genauso wie ich es möchte.

Kann mir einer sagen, wie ich nur die Lichter in einer Gruppe dimmen kann, die auch eingeschaltet sind?

Ich glaube hier im Thread bist du irgendwie falsch gelandet.

Trotzdem kurz:
Wenn du die Lichter runter dimmen willst, werden eh nur die runter gedimmt, die an sind.
Wenn du Lichter in der Helligkeit erhöhen willst, könntest du das über Bedingungen machen: nur wenn Licht an, dann Helligkeit erhöhen.

In einer Gruppe sagen wir 6 Lichter sind 3 an.
Jetzt möchte ich Dimmen. Aber nur diese 3. Ich könnte natürlich jetzt jedes Licht einzeln prüfen, aber dann muss ich das jedes mal anpassen wenn ich der Gruppe Lichter hinzufüge.

Schau mal hier rein.

Gruß
Osorkon

service: light.turn_on
target:
  entity_id: >
    {{ expand('light.wohnzimmer') | selectattr('state','eq','on') | map(attribute='entity_id') | list  }}
data:
  brightness_step_pct: -25