HOME

Home Assistant Konfiguration

Den Home Assistant(fortan nur noch HA genannt -.-) ruft man im Browser mit http://homeassistant.local:8123 auf.
Man KANN versuchen sich via https zu verbinden, aber bei mir gab es da nur Fehlermeldungen aber keine Verbindung..

Nachdem man sich mit bei dem schicken Begrüßungsbildschirm(bewegliche Sternzeichen!) eingetragen hat..
Bild: Ein aufgeräumter Home-Assistant..
Ein recht aufgeräumter HA, leider in Denglisch. Entweder Deutsch ODER Englisch, kann doch nicht so schwer sein?

Ein beherzter Klick auf den User "Hejn"..
Bild: Englische Vorgabe ergibt Denglisch
Und die Sprache umstellen..
Schon wird noch mehr in Deutsch angezeigt.

Aber.. wo wir gerade mal hier sind.. noch einen Punkt ändern:
Bild: Erweiterter Modus für erweiterte Einstellungen!

Aber wozu ist die orange-farbene EINS denn gut?
Bild: Immer noch Denglisch..
Wann immer neue Geräte entdeckt werden.. oder das Passwort nicht akzeptiert wurde.. landen diese Meldungen hier.
Die Sprachumstellung erfolgte NACH dem Eintrag in die Logdateien/Benachrichtigungen. Somit bleibt das noch in Englisch..

Folgt man dem Link bei der bunten Eins:
Bild: Automatisch entdeckte Geräte..
Klickt man nacheinander die einzelnen Konfigurieren Buttons an werden weitere Daten(meist Passwörter/IP-Adressen/Ports) abgefragt und die Geräte aktiviert.

Ein Fehler bei einem UPnP Dings.. verschwindet nach einem Neustart:
Bild: Viele neue Entitäten..

Um einige Kernkomponenten zu installieren sucht man via Einstellungen-Addons-Addon-Store den Addon-"Store" auf:
Bild: Ein paar Addons..
Terminal & SSH ist essentiell für Bastelarbeiten notwendig! (nicht vergessen: Addon zur Seitenleiste hinzufügen!)
Samba Share (habe es IMMER noch nicht genutzt ^^)

Ein paar Ärgernisse vorweg abschalten:
Der Befehl ls muss eigentlich immer als ls -ahl eingegeben werden um auch versteckte Dateien und vor allem ordentliche Listen anzuzeigen.
Der Pfad wird dämlicherweise beschnitten, so weiß man nie WO man eigentlich unterwegs ist..
nano /data/.bash_profile öffnet die Datei zum editieren..
und man fügt folgende Zeilen ein:
export PS1='${debian_chroot:+($debian_chroot)}\[\033[31m\]\u@\h\[\033[m\]:\[\033[36m\]$PWD\[\033[m\]$ '
alias ls="ls -ahl"
Dann via STRG+o zum Speichern(mit ENTER bestätigen)
Nano wird mit CTRL+x beendet.
Das Terminal einmalig mit "exit" schließen.. Beim nächsten geöffneten Terminal sind diese äusserst bescheuerten Fehler behoben..

Nichtunterstützte Geräte können durch "selbstgebastelte" Lösungen eingebunden werden, z.B. Microinverter des Herstellers Deye:
Unter github.com/StephanJoubert kann man eine Zip-Datei herunterladen.
Dazu startet man das Terminal(s.o. Terminal & SSH) und befindet sich zuerst einmal im Ordner /root
Falls er noch nicht existiert muss einmalig der Ordner /config/custom_components/ erstellt werden:
mkdir /config/custom_components/
cd /config/custom_components/ in das neue Verzeichnis wechseln.
wget https://github.com/StephanJoubert/home_assistant_solarman/archive/refs/heads/main.zip die aktuelle Datei(solarman Integration) herunterladen
unzip -d "weg" main.zip entpackt den Kram in einen neuen Unterordner namens "weg"
cd /config/custom_components/weg/home_assistant_solarman-main/custom_components/ In den neu erzeugten Unterordner wechseln..
mv solarman/ /config/custom_components/solarman Die entpackten Dateien zum korrekten Pfad kopieren..
rm -r /config/custom_components/weg Den unnötigen Entpack-Ordner löschen..
rm /config/custom_components/main.zip Und die nun überflüssige main.zip löschen
So, einmal die Konfiguration von HA neu starten lassen(oder komplett neu starten?)


Via Einstellungen-Dienste-Suche kann die neue Integration NICHT gefunden werden.
Man MUSS auf Integration hinzufügen klicken!
In der dortigen Suche kann nun "solarman" eingetragen werden!


VORHER überlegen wie man die Microinverter benennen will!
MUSS es die komplette Typenbezeichnung sein oder will man die nach Standort benennen? (Deye SUN600EU3G/Süddach)?
Diese Bezeichnungen BLEIBEN quasi das ganze Leben so.. auch wenn man die umbenennen kann..

Abgefragt wird unscheinbar der PreFix für die Einheiten. Statt Solarman sollte man dann doch zumindest den Hersteller benennen.
Also z.B. Deye-600 bzw. Deye-2000.
Die Device Serial kann abgefragt werden:
curl -u user:passwort 192.168.1.1/status.html | grep "$dat ="
(Daten anpassen: username:passwort und die IP-Adresse im Netzwerk)
Port bei 8899 und "slave/master" bei 1 belassen.
Die KORREKTE!! yaml auswählen: Microinverter deye_2mppt.yaml bzw. deye_4mppt.yaml


Für weitere Microinverter KEINESFALLS den bereits konfigurierten Dienst Solarman aufrufen und die Werte ändern!!
Stattdessen einen weiteren Dienst via Integration hinzufügen-Solarman,..


Falls die fehlerhafte deye_4mppt.yaml IMMER noch nicht gefixt wurde dies von Hand erledigen(es fehlen die Einträge für Statistik bei PV1,2,4!)

nano /config/custom_components/solarman/inverter_definitions/deye_4mppt.yaml

Die verschiedenen "Karten"

Unter "Dashboard" wird wohl die gesammelte Darstellung von Sensoren verstanden.
Das erste(bereits gefüllte) Dashboard ist die Übersicht. Solange man dieses nicht anrührt werden neu erkannte Geräte automatisch irgendwie dort angezeigt.
Es ist HÄSSLICH, aber dafür kann man in dem Gewusel an Sensoren schnell eigene Inspirationen sammeln.
Weitere "Dashboards" erstellt man über Einstellungen-Dashboards-Dashboard hinzufügen.

Zuerst fügt man ein Dashboard namens "Solar" hinzu, wählt ein ICON das irgendwas mit Solar zu tun hat und fertig.
Schon sollte im linken Menü dieses neue "Dashboard" erscheinen, zuerst ist es genauso zugemüllt wie das aus der Übersicht, aber..

Um Ordnung in das entstehende Chaos zu bringen kann man auf drei "Überkarten" zurückgreifen:
* Horizontale Stapel(nebeneinander)
* Vertikale Stapel(übereinander)
* Raster (man kann die Spaltenanzahl angeben 1..4(je mehr Spalten umso kleiner und unbrauchbarer sind die Unterkarten..)
In diese Karten kann man dann Unterkarten einfügen.

Wer die Gauge-Karte nutzt findet schnell die Besonderheiten heraus:
Zeiger darstellen? Klar!
Schwellwerte definieren? Ja! (je nach Einstellungen sind farbige Bereiche möglich von blau-grün-gelb-rot)
Karten als Quadrate darstellen? Nicht unbedingt, die rechteckigen sparen Platz!
Minimum und Maxima vorgeben.. Klar, kann ich aber nicht erklären, selber probieren ;)

Im folgenden Beispiel die "Grenzwerte" jeweils von den kleinen 600W und den mittleren 2kW Invertern:
Entitätmin.max.grüngelbrotMinimumMaximum
PV1/PV2/PV3/PV4 voltage20.0V60.0V20556070
PV1/PV2/PV3/PV4 current0.0A12.5A1121315
AC Voltage184.0V256.0V207*195253184265
AC Grid Current0.0A9.6A0910012
Output Frequency49.8Hz50.2Hz4948514852
Total Output Power(active)0W2200W102000220002300
Radiator Temperature-40°C65°C1020002200-4070
Für die kleineren Microinverter(600G3 EU) sieht das Datenblatt maximale Werte vor, die man gleich in die Gauges einbaut:
Die nominale maximale Leistung liegt bei 600W, die totale maximale Leistung endet bei 660W.
10 W Leistung sollte als unterster Wert angegeben werden, also wird grün auf 10 gesetzt.(alles darunter ist dann blau).
Ab 580W Leistung wird gelb hinterlegt und ab 640W wird rot eingestellt.
Was noch fehlt ist das Maximum, ohne Eintrag wird hier 100 angenommen was doch etwas zu gering ist also auf 700 setzen.

Auch für current(Ampere) gibt es ein Maximalwert, hier liegt er be 10.5A was man so nicht eingeben kann da keine Kommazahlen angenommen werden.
Egal:

Code-Editor


Der Code hat einen SEHR ungewohnten Syntax.. und pieselt sich schon an wenn man versehentlich TAB genutzt hat statt Leerräume mit Leerzeichen zu füllen..
Dennoch ist ein geübter Umgang damit Gold wert.. WENN man denn den Syntax erfasst hat: Eben mal ein paar Karten des Typs "Gauge" kopieren MIT deren Grenzwerten?
Kein Problem, wenn man damit umzugehen weiss..

Bild: Mehrere Code-Editoren?
In diesem Beispiel öffnet der obere "Code-Editor" die gesamte gerade ausgewählte Karte(nicht die übergreifende "Bedingunggen" sondern deren "Karte")
Der mittlere "Code-Editor" öffnet die gerade ausgewählte Unterkarte(hier 1 von 17).
Und der untere "Code-Editor" öffnet die Gesamtansicht

Terminal

Veränderungen können auf drei Wegen erfolgen:
*1) Physisch entnimmt man die Speicherkarte(bei einem RaspberryPi-Aufbau, etc.) und beschreibt die in einem anderen Rechner und stopft die dann wieder zurück
*2) IRGENDWIE(k.A. klappte nicht -.-) via FTP im Netzwerk
*3) via emuliertem Terminal AUF dem RaspberryPi über das lokale Netzwerk von einem anderen Computer aus(Browser)

Alle drei Lösungen haben Vor- und Nachteile..
Arbeiten mit BEKANNTEN Editoren sind toll, aber dafür ständig die Karte rausnehmen, hin und her laufen?
Das SEHR gewöhnungsbedürftige Terminal zwingt zum Umdenken, da die einzigen installierten(installierbaren!!) Editoren vi und nano sind..

Eigene "Sensoren" definieren

Allen Ernstes soll man das von Hand in die configuration.yaml eintragen?!!
Ein paar Codebeispiele:

# Loads default set of integrations. Do not remove. default_config: # Load frontend themes from the themes folder frontend: themes: !include_dir_merge_named themes # Text to speech tts: - platform: google_translate automation: !include automations.yaml script: !include scripts.yaml scene: !include scenes.yaml template: - sensor: # Gesamtverbrauchsberechnung Shelly aus der Summe der drei Phasen - name: phase_total unit_of_measurement: "W" state: "{{ (states('sensor.l1_power') | float) + (states('sensor.l2_power') | float) + (states('sensor.l3_pv_power') | float) }}" state_class: "measurement" icon: "mdi:solar-power-variant-outline"


Diese Definitionen sind sehr.. pingelig. Einrückungen MÜSSEN eingehalten werden. Ein Leerzeichen zu viel oder zu wenig..
Anführungszeichen weglassen KANN funktionieren. Leitet jedoch ein Anführungszeichen z.B. einen Namen ein und das "Abschluss"-Zeichen fehlt.. FEHLER.
Doppeltes oder einfaches Anführungszeichen?

Der obere Teil ist Standartvorgabe der configuration.yaml.
template: leitet die Template-Definition eingeleitet(EINMALIG zu verwenden!).
- sensor: PREFIX für die folgenden Variablen, EINRÜCKUNG und das Leerzeichen zwischen dem - und sensor: beachten!
- name: der Name der neu definierten Eintität, KEINE Leerzeichen im Namen erlaubt!
# leitet Kommentare ein die ignoriert werden
unit_of_measurement: "W" Angabe der Maßeinheit(hier eben W für Watt)
state: leitet die Berechnung ein die in der "Variablen" angegeben unter - name: gespeichert werden soll.
Die etwas WIRRE Definition dahinter berechnet sensor.l1_power + sensor.l2_power + sensor.l3_pv_power, also die Summe aller Phasen.


Der Shelly zeigt(bei korrekt gesetzten Stromzangen) bei Verbrauch NEGATIVE Werte an.
Erscheint seltsam da der Zähler im Schaltschrank ja auch "positiv" summiert.
Gutgläubige Menschen die einen Fehler bei der Installation vermuten suchen im Internet nach diesem Phänomen und glauben an einen Installationsfehler -.-
Lässt man also gegen klingende Münze diese Zangen umdrehen(von der freundlichen Elektrikkraft) sind die Werte nun positiv.

Braucht man die Werte aber UNBEDINGT negiert bleiben nur zwei Lösungswege:
1.) Stromzangen ERNEUT umdrehen lassen und vor den Elektrikern als Volldepp dastehen.
2.) Oder neue Entitäten definieren und dort die (falschen) Messwerte umkehren lassen

# Invertierungsdefinition wenn die Messzangen nicht gedreht werden können - name: "l1_inverted_name" unique_id: "l1_inverted_unique" unit_of_measurement: "W" state: "{{ -1* (states('sensor.l1_power') | float) }}" state_class: "measurement" icon: "mdi:solar-power-variant-outline"


Diese Seite wurde zuletzt am 30.07.2023 um 21:03 geändert.

(c) 2024 DHLF ☮🇺🇦