HKS mit HA - Die Anleitung zum Nachbauen - #02.04 Grundkonfiguration von HA

  • Zurück zur Startseite und zum Inhaltsverzeichnis

    Voriges Kapitel: #02.03 Grundlagen Teil 2 - HA Core

    Nächstes Kapitel: #02.05 Grundlagen Teil 3 - HA Dashboards

    Version: 2024-03-12


    Als nächstes konfigurieren wir unseren HA-Server.

    Das wird jetzt ev. etwas mühsam, bitte durchhalten! Ab dem nächsten Kapitel wird es dann spaßiger! Versprochen!


    Also:

    • wir werden das Benutzerprofil anpassen
    • Dinge aus HA entfernen die wir nicht brauchen.
      ZB. das Energy-Dashboard zur Steuerung der Solaranlage und der Heizung.
    • Und Add-ons/Ressourcen hinzufügen, ohne die wir nicht weiter kommen.
      File Editor, Terminal und Custom Button-Card


    User Profile anpassen

    (links-unten im Sidebar auf den User-Namen klicken)

    • Theme auf "Dark" stellen
      Das ist die Grundlage des Farbschemas meiner Dashboards.
      Später könnt ihr gerne euer eigenes Farbschema und Theme erstellen
    • Sprache auf "Englisch" stellen
      (Sofern ihr das beim ersten Anmeldebildschirm noch nicht umgestellt habt.)
      Hintergrund: Die deusche Übersetzung in HA ist eigenlich sehr gut, aber spätestens sobald man im Internet etwas zu einem Thema sucht findet man mit den deutschen Begriffen nur einen Bruchteil der Artikel bzw. man findet sich in den englischen Texten nur mühsam zurecht. Das gilt aber generell und nicht nur für HA.
    • Advanced Mode aktivieren

    Entfernen nicht benötigter Integrationen

    => Settings => Device & services => Integrations

    • Discovered Integrations
      Ihr könnte alle von HA automatisch gefundenen Geräte ignorieren => IGNORE
      Sollte ein der AppleTV oder ein HarmonyHub anzeigt werden könnt ihr diese auch belassen.
      Ignorierte Geräte sind in dieser Ansicht nur ausgebeldet und können über das Menu-Icon (...) rechts-oben wieder angezeigt werden.
    • Configured Integrations
      Alle (bis auf die folgenden) bereits installierten Integrationen löschen:
      • Shopping List
      • Bluetooth
      • Home Assistant Supervisor
      • Raspberry Pi Power Supply Checker
      Das Löschen geht so:



    Erforderliche Add-Ons installieren

    => Settings => Add-ons => ADD-ON STORE

    • "File editor"
    • "Advanced SSH & Web Terminal"

    Vorgang:

    • Das Add-on im ADD-ON STORE suchen (Suchfeld verwenden!)
    • Das Add-on anklicken
    • <INSTALL> klicken
    • <Show in sidebar> aktivieren
    • <START> klicken

    Hinweis zum "Advanced SSH & Web Terminal":

    Damit dieses Add-on starten kann, muss man vor dem Starten unter <Configuration> ein Passwort eintragen.

    (Wer möchte kann auch ssh-keys nutzen. Ich sehe dazu hier jetzt aber keinen Bedarf)



    Bevor wir die nächsten Dinge entfernen ein Einschub zum HA-Dateisystem und dem "File editor"

  • Wenn wir jetzt im Sidebar auf den neuen <File editor> klicken und im <File editor> dort links-oben auf <Browse Filesystem> sehen wir den Benutzerbereich der HA-Konfigurationsdateien.

    (Auf versteckte HA- und Systemdateien kann man mit diesem <File editor>, soweit ich weiss nicht zugreifen, aber das brauchen wir auch nicht.)




    Kurze Info zu den hier sichtbaren Dateien und Ordnern:

    Info:

    - Ein Klick auf die Dateien zeigt diese im Editor an
    - Die für uns hier wichtigen Dateien habe ich inf folgender Liste hervorgehoben

    • .HA_Version
      => Aktuell installierte Version des HA-Core
      => interessiert uns nicht
    • .shopping_list.json
      => Hier hat die Integration "Shopping List" nach unserem Test von zuvor seine Daten im JSON-Format abgelegt.
      => bitte kurz ansehen, sonst nicht mehr relevant.
    • automations.yaml
      => Die Datei ist jetzt noch leer.
      => Hier speichert HA die vom User generierten Automations ab.
      => HA mag es gar nicht, wenn man diese Datei editiert. Also Automations immer nur über das GUI bearbeiten!
    • blueprints (Ordner)
      => enthält Vorlagen für Automations und Scripts. Brauchen wir hier nicht.
      => interessiert uns nicht
    • configuration.yaml
      => Früher der Kern der HA-Benutzerkonfiguration.
      => Einige wesentliche Dinge sind aber noch in der aktuellen HA-Version hier einzutragen
    • home-assistant.log
      => Das eine und zentrale Logfile von HA
      => Wichtig bei der Fehlersuche!
      => Mit jedem Restart wird eine neues Logfile begonnen und das alte in home-assistont.log.1 unbenannt
    • home-assistant.log.fault
      => gefilterte Fehler aus home-assistant.log
    • home-assistant_v2.db
      => Die SQLite-Datenbank von HA.
      => Hierin sind alle aktuellen und historischen Daten der Entities gespeichert.
      => mit dem Add-on "SQLite Web" kann man sich diese gut überschaubare Datenbank ansehen und auch Einträge nach belieben verändert. Also Vorsicht!
      => interessiert uns sonst nicht weiter
    • scences.yaml
      => Die Datei ist jetzt noch leer.
      => Hier speichert HA die vom User generierten Szenen ab.
      => Ich verwende keine Szenen, daher bleibt diese Datei auch leer.
    • secrets.yaml
      => Hier werden wir später IP-Adressen und TCP-Ports der Geräte eintragen
      => Diese Daten könen wird dann in der configuration.yaml nutzen
    • tts
      => Ordner für Text2Speech
      => sonst kann ich zZ nichts dazu sagen.
  • Da wir jetzt schon im <File editor> sind und uns in der Dateistruktur auskennen, machen wir gleich folgende Anpassungen in HA:

    • In der Datei configuration.yaml deaktiveren wir die Zeile "default_config: " indem wir ein Hash "#" an den Beginn dieser Zeile schreiben.
      Zum Speichern der Änderung rechts-oben auf die rote Diskette klicken!
    • Wir erstellen einen neuen Ordner names "custom_components"
      Darin werden wir später die selbst erstellen Integrationen ablegen.
    • Wir erstellen einen neuen Ordner names "www"
      Das ist Root-Ordner der HA-WebServers.
      Wir werden darin zB. die Bilder unserer Geräte ablegen, damit diese in den Dashboards angezeigt werden.
      Inhalte dieses Orders können wir auch über den Web-Broswer unter folgender Adresse abrufen
      http://myha-server:8123/local/....
      Unter dem Ordner "www" erstellen wir noch die Unterordner "community" und "images"
    • Wir speichern jetzt noch die custom_button_card im www-Ordner ab:
      Dazu: Download der java-script Datei mit deinem Browser von
      http://www.github.com/custom-c…t/download/button-card.js
      Mit dem HA-<File editor> den Ordner "www/community" öffnen,
      auf den <Upload Button> klicken und
      die Datei "button-card.js" hochladen.


    Unsere HA Datenstrukur sollte nun so aussehen:

    (Die für uns nicht relevanten Dateine und Ordner lasse ich hier aus)


    • /homeassistant
      • /custom_components
      • /www
        • /community
          • button-card.js
        • /images
      • configuration.yaml
      • secrets.yaml
      • home-assistant.log


    Zeit für einen Restart oder doch ein Reboot?

    Damit HA alle unsere Änderungen übernimmt, müssen wir unsern Server oder zumindest HA neu starten.

    Die Restart-Optionen finden wir über

    => Settings => (...) Drei Punkte rechts oben => Restart Home Assistant




    Wenn wir auf <Advanced options> klicken werden uns alle möglichen Restart-Varianten angezeigt.

    • Quick reload
      => besser nie verwenden.
    • Restart Home Assistant
      => generell unsere Option zur Übernahme von Änderungen
      => Auf meinem RPI4 Produktivsystem dauert das schon mal gute 30 Sekunden
      => Am leeren RPI5 jetzt nur ca 5 Sekunden
    • Reboot system
      => Nach Updates des OS macht HA eine kompletten Reboot
    • Shut down system
      => ist klar.
    • Restart Home Assistant in safe mode
      => habe ich noch nie verwendet


    Wir haben es gleich geschafft! Nur ein Schritt noch! CUSTOM: BUTTON-CARD !


    Wir müssen die "button-card.js"-Datei noch als Dashboard-Ressource registrieren.

    Das geht ganz einfach wenn man weiss wie (ganz ohne HACS)


    Wie wir später beim Erstellen der Dashboads sehen werden, mache ich in den Dashboards praktisch alles mit dieser Ressource. Ohne "button-card.js" wäre diese HKS so wie ich mir das vorstelle nicht möglich!

    Großer Dank an die Entwickler!


    Also bitte wieder folgen:

    => Settings => Dashboards => (...) Drei Punkte rechts-oben => Resources

    => ADD RESOURCE

    • URL: /local/community/button-card.js
    • Resource type: JavaScript module

    => CREATE


    Jetzt haben wir alles zusammen, um im nächsten Kapitel unser erstes Dashboard zu erstellen!


    Danke fürs durchhalten !! :freu:


  • Viele der CustomCards und Integrationen kann man auch recht einfach über den sogenannten HACS finden und installieren. Da passiert vieles dann automatisch und zusätzlich wird angezeigt wenn es entsprechendes Updates oder Beta Versionen gibt.


    https://hacs.xyz/

    Danke ist bekannt.

    Ich nutze hier bewusst HACS nicht!

  • Da passiert vieles dann automatisch und zusätzlich ....

    Bin kein Freund von automagisch.

    Mit dieser Anleitung möchte ich versuchen auch nicht IT-Freeks abzuholen, das geht imho nicht wenn man gleich von Beginn an von zig exteren Quellen abhängig ist die sich laufend ändern oder nur zu 50% funktionieren.

    Aber natürlich spricht nichts dagegen auch andere als die von mir vorgestellten Integrationen zu nutzen.

  • Vielen Dank für die Anleitung.

    Bis hier her habe ich geschafft.

    Leider fehlt einfach die Zeit, aber gerade Custom Button-Card scheint sehr wichtig zu sein, aber gleichzeitig ist es nicht sehr einfach besser gesagt intuitiv umzusetzen.

    Ich bin hier schon beim ersten (kurzen) Versuch eines einfachen Buttons der einen Status darstellen soll gescheitert.


    Also dass es "funktioniert" geht halbwegs, dass es dabei auch noch schön aussieht, naja.


    mfg

  • Mit dieser Anleitung möchte ich versuchen auch nicht IT-Freeks abzuholen, das geht imho nicht wenn man gleich von Beginn an von zig exteren Quellen abhängig ist die sich laufend ändern oder nur zu 50% funktionieren.

    Ist was dran! Wobei ich auch sagen muss, dass ich eigentlich fast nur gute Erfahrungen mit HACS gemacht hab. Und am Ende ist es für Anfänger über HACS fast einfacher. Aber stimmt natürlich von Hand angelegt weiss man zumindest wo alles liegt! Am Anfang gings ja eh nicht ohne. :big_smile:


    Ich wollte das auch nur als Anmerkung hinzufügen. :sbier:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!