Externe yaml pro Raum erstellen [gelöst]

hallo ins Board,

seit 03/2023 benutze ich HA und habe seither sehr viel gelernt.

Jetzt möchte ich mein System neu aufsetzen auf einem yellow inkl influx, Grafen, zigbee2mqtt usw.
Natürlich möchte ich auch mein system nun geordnet gestalten was das Thema Datensicherung angeht.
Daher habe ich mich entschieden die kleinen Helferlein in eine yaml zu schreiben.

sensor.yaml
binary_senor.yaml usw.

schnell aber merkte ich, das gibt auch wieder durcheinander, also versuchte ich eine yaml Datei pro Raum, Inder dann die einzelnen Sensoren liegen (eine Datei).

mein problem ist nun, ich komme beim besten willen nicht darauf, wie ich eine eigene yaml Datei in der configuration.yaml verankern kann.

schreib ich z.b.:
zimmer1: !include /config/wohnung_yaml/zimmer1.yaml
wird das angemerkt weil es keine Integration ist.

habs mit
customize: !include /config/wohnung_yaml/zimmer1.yaml
versucht, ebenso nix geworden.

ich weis echt nicht weiter.
Vielleicht hat mir jemand einen Tip wie ich yaml Dateien mit willkürlichem Namen die in einem Ordner liegen in der configuration.yaml verankern kann.

schon mal Danke für eure Tips.

Lg Alex

Der Gedanke an sich ist nicht schlecht aber das wird so nicht funktionieren meines Wissens.
Du kannst das mit include usw schon machen dann würde ich halt einfach das so schreiben und aufteilen dass du dazwischen ## Raum## oder wie auch immer machst.

das ist ja mein Problem, die Systemprüfung der confuration.yaml schlägt fehl, wenn ich auf eine zimmer1.yaml in einem Unterordner verweise.
Zunächst hatte ich Probleme die richtige Pfadoption einzugeben, das hat dann geklappt.
Aber dann wurde angemerkt, dass es keine integration sei.
Egal was ich versucht habe, hat alles nicht funktioniert.

… findig bin ich im Netz noch nicht geworden wie das gehen könnte.

Was du suchst ist glaube ich das hier:

benutze ich selber aber nicht.

Bei mir sieht das so aus.
group: !include groups.yaml
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
sensor: !include_dir_merge_list sensor/
notify: !include notify.yaml
template:
  sensor: !include_dir_merge_list template/sensor/
  binary_sensor: !include_dir_merge_list template/binary_sensor/
mqtt:
  cover: !include_dir_merge_list mqtt/cover/
  sensor: !include_dir_merge_list mqtt/sensor/
  binary_sensor: !include_dir_merge_list mqtt/binary_sensor/
rest: !include_dir_merge_list rest/

Packages hatte ich auch versucht, hat nicht geklappt.

Wie bei dir hatte ich das auch so.
Aber bei so viel Helfern für jedes Zimmer hat man schnell den Überblick verloren.

Ich denke ich muss mir das Packages nochmal genauer anschauen.
Hatte eigentlich auch gedacht, dass das dann funktioniert.

Das könnte eventuell mit einem Befehl wie !include_dir_merge_named funktioniren. Bei ‘SmartHome yourself’ gibt es dazu ein gutes Video. Er teilt die Dateien seeehr weit auf. Er fängt klein an, also bis zum Ende schauen.

Das ganze “packages” habe ich mir jetzt nochmal angeschaut.
Da jetzt nicht Samstagabend ist, hat mein Hirn auch besser funktioniert :joy:

Warum es bei mir beim ersten Versuch nicht geklappt hatte, war mein fehlender Eintrag “homeassistant:” in der configuration.yaml.
Jetzt funktioniert das alles so wie ich mir dass auch vorgestellt habe.

configuration.yaml
# Loads default set of integrations. Do not remove.
default_config:

# Load frontend themes from the themes folder
frontend:
  themes: !include_dir_merge_named themes

automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml


homeassistant:
  # yaml Dateien ausgelagert
  packages: !include_dir_named wohnung_yaml
        # there includes
        #   - abstellraum.yaml
        #   - alex.yaml
        #   - bad.yaml
        #   - balkon.yaml
        #   - flur1.yaml
        #   - flur2.yaml
        #   - hausgang.yaml
        #   - kueche.yaml
        #   - wohnung.yaml
        #       - influxdb:
        #       - input_boolean: 
        #           rauchmelder:
        #           wohnung_lueftungsmodus:
        #   - wohnzimmer.yaml
        #   - zimmer1.yaml
        #   - zimmer2.yaml

einen Ordner “wohnung_yaml” erstellt, indem dann verschiedene yaml Datei liegen.
Benennung so wie die Räume eben sind oder der Bereich.

Beispiel
# alex.yaml
# last change:
#  - 28.01.2024 
#        add binary_Sensor: alex_gruppe_bewegung
#.       add helper: Alex Lüftungsmodus:
#.       add sensor:
#           alex_gruppe_themperatur
#           alex_gruppe_feuchtigkeit
#           alex_gruppe_helligkeit
#        add light: alex_lichtgruppe


# - start binary_Sensor ----------------------------------------
binary_sensor:
    - platform: group
      name: alex_gruppe_bewegung
      unique_id: alex_gruppe_bewegung
      entities:
        - binary_sensor.alex_bewegung_decke_motion # Philips HUE
# - end binary_Sensor -------------------------------------------

# - start helper ---------------------- start helper ------------
input_boolean:
    alex_luftungsmodus:
        name: Alex Lüftungsmodus
        icon: mdi:alert
        initial: off
# - end helper ------------------------ end helper ---------------
        
# - start sensor ---------------------- start sensor -------------
sensor:
    # Zimmer Alex Gruppe Themperatur 
    - platform: group
      name: alex_gruppe_themperatur
      unique_id: alex_gruppe_themperatur
      type: mean
      entities:
        - sensor.alex_themperatur_ture_temperature # Bosch
        - sensor.alex_bewegung_decke_temperature # Philips HUE
        - sensor.alex_themperatur_temperature # Aquara Monitor
    # Zimmer Alex Feuchtigkeit Gruppe
    - platform: group
      name: alex_gruppe_feuchtigkeit
      unique_id: alex_gruppe_feuchtigkeit
      type: mean
      entities:
        - sensor.alex_themperatur_ture_humidity # Bosch
        - sensor.alex_themperatur_humidity # Aquara Monitor
    # Zimmer Alex Helligkeit Gruppe
    - platform: group
      name: alex_gruppe_helligkeit
      unique_id: alex_gruppe_helligkeit
      type: mean
      entities:
        - sensor.alex_bewegung_decke_illuminance # Philips HUE
# - end sensor ------------------------- end sensor ------------------

# - start lieght ----------------------- start light -----------------
light:
    # Alex Gruppe Licht
    - platform: group
      name: alex_lichtgruppe
      unique_id: alex_lichtgruppe
      entities:
            - light.alex_deckenlicht_1 # Philips HUE
            - light.alex_deckenlicht_2 # Philips HUE
# - end light -------------------------- end light -------------------


#------------------------
# ---- End Of File ------
# -----------------------

Danke Dir jedenfalls, mich nochmals dazu zu bringen das “Packages” zu lesen :+1: