Homeassistant: Übersetzung des Fronius Wechselrichter Status Code

Vor einiger Zeit habe ich für meinen Fronius Solar Wechselrichter ein Template in Home-Assistant für eine Übersetzung des Status Codes gebaut. Damit bekommt man nicht nur kryptische Zahlen ausgeworfen, sondern kann sogar was damit anfangen ;-) Im Untenstehenden Template musst du nur deinen sensor für den Status Code statt meinem sensor.status_code_fronius_inverter eintragen. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 --- template: - sensor: - name: "Fronius Status Message" state: > {% if is_state('sensor.status_code_fronius_inverter', '102' ) %}AC-Spannung zu hoch {% elif is_state('sensor.status_code_fronius_inverter', '103' ) %}AC-Spannung zu gering {% elif is_state('sensor.status_code_fronius_inverter', '105' ) %}AC-Frequenz zu hoch {% elif is_state('sensor.status_code_fronius_inverter', '106' ) %}AC-Frequenz zu gering {% elif is_state('sensor.status_code_fronius_inverter', '107' ) %}AC-Netz nicht vorhanden {% elif is_state('sensor.status_code_fronius_inverter', '108' ) %}Inselbetrieb erkannt {% elif is_state('sensor.status_code_fronius_inverter', '112' ) %}Fehler RCMU {% elif is_state('sensor.status_code_fronius_inverter', '301' ) %}Überstrom (AC) {% elif is_state('sensor.status_code_fronius_inverter', '302' ) %}Überstrom (DC) {% elif is_state('sensor.status_code_fronius_inverter', '303' ) %}Übertemperatur DC Modul {% elif is_state('sensor.status_code_fronius_inverter', '304' ) %}Übertemperatur AC Modul {% elif is_state('sensor.status_code_fronius_inverter', '305' ) %}Keine Einspeisung trotz geschlossener Relais {% elif is_state('sensor.status_code_fronius_inverter', '306' ) %}Es steht zu wenig PV-Leistung für den Einspeisebetrieb zur Verfügung {% elif is_state('sensor.status_code_fronius_inverter', '307' ) %}DC-Eingangsspannung zu gering für den Einspeisebetrieb {% elif is_state('sensor.status_code_fronius_inverter', '308' ) %}Zwischenkreisspannung zu hoch {% elif is_state('sensor.status_code_fronius_inverter', '309' ) %}DC-Eingangsspannung MPPT 1 zu hoch {% elif is_state('sensor.status_code_fronius_inverter', '311' ) %}DC-Stränge verpolt {% elif is_state('sensor.status_code_fronius_inverter', '313' ) %}DC-Eingangsspannung MPPT2 zu hoch {% elif is_state('sensor.status_code_fronius_inverter', '314' ) %}Timeout Stromsensor-Kalibrierung {% elif is_state('sensor.status_code_fronius_inverter', '315' ) %}AC Stromsensor Fehler {% elif is_state('sensor.status_code_fronius_inverter', '316' ) %}InterruptCheck fail {% elif is_state('sensor.status_code_fronius_inverter', '325' ) %}Übertemperatur im Anschlussbereich {% elif is_state('sensor.status_code_fronius_inverter', '326' ) %}Lüfter 1 Fehler {% elif is_state('sensor.status_code_fronius_inverter', '327' ) %}Lüfter 2 Fehler {% elif is_state('sensor.status_code_fronius_inverter', '401' ) %}Kommunikation mit dem Leistungsteil nicht möglich {% elif is_state('sensor.status_code_fronius_inverter', '406' ) %}Temperatursensor AC Modul defekt (L1) {% elif is_state('sensor.status_code_fronius_inverter', '407' ) %}Temperatursensor AC Modul defekt (L2) {% elif is_state('sensor.status_code_fronius_inverter', '408' ) %}Zu hoher Gleichanteil im Versorgungsnetz gemessen {% elif is_state('sensor.status_code_fronius_inverter', '412' ) %}Der Fix-Spannungsbetrieb ist statt des MPP-Spannungsbetriebes angewählt und die Fixspannung ist auf einen zu geringen oder zu hohen Wert eingestellt. {% elif is_state('sensor.status_code_fronius_inverter', '415' ) %}Sicherheitsabschaltung durch Optionskarte oder RECERBO hat ausgelöst {% elif is_state('sensor.status_code_fronius_inverter', '416' ) %}Kommunikation zwischen Leistungsteil und Steuerung nicht möglich. {% elif is_state('sensor.status_code_fronius_inverter', '417' ) %}ID-Problem der Hardware {% elif is_state('sensor.status_code_fronius_inverter', '419' ) %}Uniqe-ID Konflikt {% elif is_state('sensor.status_code_fronius_inverter', '420' ) %}Kommunikation mit dem Hybridmanager nicht möglich {% elif is_state('sensor.status_code_fronius_inverter', '421' ) %}Fehler HID-Range {% elif is_state('sensor.status_code_fronius_inverter', '425' ) %}Kommunikation mit dem Leistungsteil ist nicht möglich {% elif is_state('sensor.status_code_fronius_inverter', '426' ) %}Möglicher Hardware-Defekt {% elif is_state('sensor.status_code_fronius_inverter', '427' ) %}Möglicher Hardware-Defekt {% elif is_state('sensor.status_code_fronius_inverter', '428' ) %}Möglicher Hardware-Defekt {% elif is_state('sensor.status_code_fronius_inverter', '431' ) %}Software-Problem {% elif is_state('sensor.status_code_fronius_inverter', '436' ) %}Funktions-Inkompatibilität (einer oder mehrere Prints im Wechselrichter sind nicht kompatibel zueinander, z.B. nach einem Print-Austausch) {% elif is_state('sensor.status_code_fronius_inverter', '437' ) %}Leistungsteil-Problem {% elif is_state('sensor.status_code_fronius_inverter', '438' ) %}Funktions-Inkompatibilität (einer oder mehrere Prints im Wechselrichter sind nicht kompatibel zueinander, z.B. nach einem Print-Austausch) {% elif is_state('sensor.status_code_fronius_inverter', '443' ) %}Zwischenkreis-Spannung zu gering oder unsymetrisch {% elif is_state('sensor.status_code_fronius_inverter', '445' ) %}Kompatibilitätsfehler (z.B. auf Grund eines Print-Austausches) oder ungültige Leistungsteil-Konfiguration {% elif is_state('sensor.status_code_fronius_inverter', '447' ) %}Isolationsfehler {% elif is_state('sensor.status_code_fronius_inverter', '448' ) %}Neutralleiter nicht angeschlossen {% elif is_state('sensor.status_code_fronius_inverter', '450' ) %}Guard kann nicht gefunden werden {% elif is_state('sensor.status_code_fronius_inverter', '451' ) %}Speicherfehler entdeckt {% elif is_state('sensor.status_code_fronius_inverter', '452' ) %}Kommunikationsfehler zwischen den Prozessoren {% elif is_state('sensor.status_code_fronius_inverter', '453' ) %}Netzspannung und Leistungsteil stimmen nicht überein {% elif is_state('sensor.status_code_fronius_inverter', '454' ) %}Netzfrequenz und Leistungsteil stimmen nicht überein {% elif is_state('sensor.status_code_fronius_inverter', '456' ) %}Anti-Islanding-Funktion wird nicht mehr korrekt ausgeführt {% elif is_state('sensor.status_code_fronius_inverter', '457' ) %}Netzspannungsrelais-Fehler {% elif is_state('sensor.status_code_fronius_inverter', '458' ) %}Fehler bei der Mess-Signalerfassung {% elif is_state('sensor.status_code_fronius_inverter', '459' ) %}Fehler bei der Erfassung des Mess-Signals für den Isolationstest {% elif is_state('sensor.status_code_fronius_inverter', '460' ) %}Referenz-Spannungsquelle für den digitalen Signalprozessor (DSP) arbeitet außerhalb der tolerierten Grenzen {% elif is_state('sensor.status_code_fronius_inverter', '461' ) %}Fehler im DSP-Datenspeicher {% elif is_state('sensor.status_code_fronius_inverter', '462' ) %}Fehler bei der DC-Einspeisungs-Überwachungsroutine {% elif is_state('sensor.status_code_fronius_inverter', '463' ) %}Polarität AC vertauscht, AC-Verbindungsstecker falsch eingesteckt {% elif is_state('sensor.status_code_fronius_inverter', '474' ) %}RCMU-Sensor defekt {% elif is_state('sensor.status_code_fronius_inverter', '475' ) %}Isolationsfehler (Verbindung zwischen Solarmodul und Erdung) {% elif is_state('sensor.status_code_fronius_inverter', '476' ) %}Versorgungsspannung der Treiberversorgung zu gering {% elif is_state('sensor.status_code_fronius_inverter', '479' ) %}Zwischenkreis-Spannungsrelais hat ausgeschaltet {% elif is_state('sensor.status_code_fronius_inverter', '480' ) %}Funktions-Inkompatibilität (einer oder mehrere Prints im Wechselrichter sind nicht kompatibel zueinander, z.B. nach einem Print-Austausch) {% elif is_state('sensor.status_code_fronius_inverter', '481' ) %}Funktions-Inkompatibilität (einer oder mehrere Prints im Wechselrichter sind nicht kompatibel zueinander, z.B. nach einem Print-Austausch) {% elif is_state('sensor.status_code_fronius_inverter', '482' ) %}Setup nach der erstmaligen Inbetriebnahme wurde abgebrochen {% elif is_state('sensor.status_code_fronius_inverter', '483' ) %}Spannung U (DCfix) beim MPP2-String liegt außerhalb des gültigen Bereichs {% elif is_state('sensor.status_code_fronius_inverter', '485' ) %}CAN Sende-Buffer ist voll {% elif is_state('sensor.status_code_fronius_inverter', '489' ) %}Permanente Überspannung am Zwischenkreis-Kondensator (5x hintereinander Statusmeldung 479) {% elif is_state('sensor.status_code_fronius_inverter', '502' ) %}Isolationsfehler an den Solarmodulen {% elif is_state('sensor.status_code_fronius_inverter', '509' ) %}Keine Einspeisung innerhalb der letzten 24 Stunden {% elif is_state('sensor.status_code_fronius_inverter', '515' ) %}Kommunikation mit Filter nicht möglich {% elif is_state('sensor.status_code_fronius_inverter', '516' ) %}Kommunikation mit der Speichereinheit nicht möglich {% elif is_state('sensor.status_code_fronius_inverter', '517' ) %}Leistungs-Derating auf Grund zu hoher Temperatur {% elif is_state('sensor.status_code_fronius_inverter', '518' ) %}Interne DSP-Fehlfunktion {% elif is_state('sensor.status_code_fronius_inverter', '519' ) %}Kommunikation mit der Speichereinheit nicht möglich {% elif is_state('sensor.status_code_fronius_inverter', '520' ) %}Keine Einspeisung innerhalb der letzten 24 Stunden von MPPT1 {% elif is_state('sensor.status_code_fronius_inverter', '522' ) %}DC low String 1 {% elif is_state('sensor.status_code_fronius_inverter', '523' ) %}DC low String 2 {% elif is_state('sensor.status_code_fronius_inverter', '558' ) %}Funktions-Inkompatibilität (einer oder mehrere Prints im Wechselrichter sind nicht kompatibel zueinander, z.B. nach einem Print-Austausch) {% elif is_state('sensor.status_code_fronius_inverter', '559' ) %}Funktions-Inkompatibilität (einer oder mehrere Prints im Wechselrichter sind nicht kompatibel zueinander, z.B. nach einem Print-Austausch) {% elif is_state('sensor.status_code_fronius_inverter', '560' ) %}Leistungs-Derating wegen Überfrequenz {% elif is_state('sensor.status_code_fronius_inverter', '564' ) %}Funktions-Inkompatibilität (einer oder mehrere Prints im Wechselrichter sind nicht kompatibel zueinander, z.B. nach einem Print-Austausch) {% elif is_state('sensor.status_code_fronius_inverter', '566' ) %}Arc Detector ausgeschaltet (z.B. bei externer LichtbogenÜberwachung) {% elif is_state('sensor.status_code_fronius_inverter', '568' ) %}fehlerhaftes Eingangssignal an der Multifunktions-Stromschnittstelle {% elif is_state('sensor.status_code_fronius_inverter', '572' ) %}Leistungslimitierung durch das Leistungsteil {% elif is_state('sensor.status_code_fronius_inverter', '573' ) %}Untertemperatur Warnung {% elif is_state('sensor.status_code_fronius_inverter', '581' ) %}Setup Special Purpose Utility-Interactive (SPUI) ist aktiviert {% elif is_state('sensor.status_code_fronius_inverter', '601' ) %}CAN Bus ist voll {% elif is_state('sensor.status_code_fronius_inverter', '603' ) %}Temperatursensor AC Modul defekt (L3) {% elif is_state('sensor.status_code_fronius_inverter', '604' ) %}Temperatursensor DC Modul defekt {% elif is_state('sensor.status_code_fronius_inverter', '607' ) %}RCMU Fehler {% elif is_state('sensor.status_code_fronius_inverter', '608' ) %}Funktions-Inkompatibilität (einer oder mehrere Prints im Wechselrichter sind nicht kompatibel zueinander, z.B. nach einem Print-Austausch) {% elif is_state('sensor.status_code_fronius_inverter', '705' ) %}Konflikt beim Einstellen der Wechselrichter-Nummer (z.B. Nummer doppelt vergeben) {% elif is_state('sensor.status_code_fronius_inverter', '721' ) %}EEPROM wurde neu initialisiert {% elif is_state('sensor.status_code_fronius_inverter', '731' ) %}Initialisierungsfehler - USB-Stick wird nicht unterstützt {% elif is_state('sensor.status_code_fronius_inverter', '732' ) %}Initialisierungsfehler - Überstrom am USB-Stick {% elif is_state('sensor.status_code_fronius_inverter', '733' ) %}Kein USB-Stick angesteckt {% elif is_state('sensor.status_code_fronius_inverter', '734' ) %}Update-Datei wird nicht erkannt oder ist nicht vorhanden {% elif is_state('sensor.status_code_fronius_inverter', '735' ) %}nicht zum Gerät passende Update-Datei, zu alte Update-Datei {% elif is_state('sensor.status_code_fronius_inverter', '736' ) %}Schreib- oder Lesefehler aufgetreten {% elif states.sensor.status_code_fronius_inverter and states('sensor.status_code_fronius_inverter') | int < 100 %}OK {% else %}Unbekannter Status {% endif %} icon: > {% if states.sensor.status_code_fronius_inverter and states('sensor.status_code_fronius_inverter') | int < 100 %} mdi:weather-sunset-up {% else %} mdi:alert-octagram {% endif %}

Günstiger KNX Regenmengenmesser mit Home Assistant Integration

Viele Automationsaufgaben lassen sich mit KNX etwas zuverlässiger erledigen als mit anderen Heimautomationssystemen. Leider ist gleichzeitig auch immer der Preis für KNX-Geräte ein Thema. Im Bereich der Regenmengenmesser ist bei KNX leider der Preis definitiv ein Thema - die meisten Wetterstationen sind extrem hochpreisig. Da bietet es sich mal an, etwas zu forschen und eine alternative Lösung zu bauen. Was gilt es zu bestimmen? Ich möchte die Regenmenge bestimmen. Im Gegensatz zu den üblichen Regensensoren möchte ich also nicht feststellen ob Regen fällt sondern wieviel. ...

Homeassistant - binary_sensor Zustand an KNX übertragen

In meiner Heimautomation auf Basis von Homeassistant empfange ich verschiedene binäre Sensoren, welche ich auf dem KNX Bus nutzen möchte. So ist es beispielsweise notwendig, den Zustand der Fensterkontakte der Velux Fenster (also ein binary_sensor Zustand) an die KNX Gruppenaddresse für “Fenster offen” zu senden, um den Rolladen in dem Falle zu blockieren. Ich habe mir dazu einen Homeassistant Automation Blueprint gestrickt:

RGBW LED (SK6812) mit ESPHome betreiben

Heute habe ich mich damit beschäftigt, welche Alternativen zu WLED  zur Verfügung stehen (und gut in Homeassistant eingebunden sind). Dabei ist natürlich ESPHome ein großer Kandidat. Leider wollte das via FastLED nicht so ganz wie ich wollte… ...

Home Assistant: Generation of long term statistics will be suppressed unless the unit changes back

Soeben habe ich ein bisschen mit meinen Stromzählern in Homeassistant experimentiert und bin nach einigem hin und her auf diese Meldung in den Logs gestoßen: Generation of long term statistics will be suppressed unless the unit changes back Hintergrund war dass ich einen Zähler in dem Falle zunächst ohne unit_of_measurement angegeben hatte und dies dann nachgeholt habe. Nun stimmten in der Historie natürlich die Daten nicht. Zu lösen ist dies über die Entwicklerwerkzeuge im Tab “Statistics”. Einfach die entsprechende Zeile aufrufen, einen klick auf “Fix Problem” und die Lösung bestätigen. Easy, right? ;) ...

Homeassistant Lovelace Card für Volvo OnCall Integration

Für einen Volvo habe ich eine Lovelace-Card hier  gefunden, welche ich hier beschreiben möchte. ...

Home Assistant Operating System in VMware ESXi 7 installieren

In diesem Artikel zeige ich die Installation des “Home Assistant Operating System” auf VMware ESXi. Wie viele Technikbegeisterte habe ich einen ESXi-Server zuhause stehen und wollte dort den beliebten Home Assistant (auch bekannt als Hass.io) installieren. Da gibt es viele Möglichkeiten aber die Installation des OS ist aus meiner Sicht die komfortabelste. Den Vergleich zwischen allen Möglichkeiten kann man hier  einsehen. ...

Flashen des WT32-ETH01 - Ein ESP32 mit LAN + WiFi/WLAN

Heute habe ich mich ans Flashen des ESP32 Moduls WT32-ETH01 gemacht. Das Modul ist etwas besonderes, da es einen LAN anschluss hat und der dazugehörige LAN8720 chip in einigen Frameworks auch schon “out of the box” verfügbar ist. Alternativen zu diesem Board ist das WESP32 oder die Boards von Olimex, OpenHacks (was aber wohl irgendwie gerne in den Flash Modus bootet, Vorsicht!) und LILYGO. Preislich ist aber das WT32-ETH01 unschlagbar ( Amazon* / Aliexpress* ) . Das WT32-ETH01 ergänzt den LAN Anschluss aber lediglich zu den vorhandenen Features des ESP32, sodass man weiterhin WLAN auf dem Board hat. ...