HowTo: Node Red – SMA Sunny Home Manager Daten auslesen

Seit einiger Zeit befindet sich in meinem Netzwerk (neben einer SMA EV Charger 22 Wallbox) auch ein SMA Wechselrichter für eine Photovoltaikanlage und ein dazugehöriger SMA Sunny Home Manager. Letzterer ist so verbaut, dass er nicht nur die ins Netz eingespeiste Energie messen kann. Zusätzlich misst er auch die Verbräuche. Damit kann man sich also jederzeit den aktuellen Bezug elektrischer Energie angucken. Dies ermöglicht es jederzeit einen guten Überblick darüber zu haben wieviel Energie erzeugt bzw. verbraucht wird.

So kann man durch einen hohen Eigenverbrauch der erzeugten Energie möglichst viel Energie selbst nutzen (anstatt sie ins Netz einzuspeisen).

Dies ist bei SMA bereits über eine spezielle App möglich. Allerdings lassen sich damit nur bedingt Vorgänge automatisieren. Letztendlich möchte ich diese Daten auch für mein eigenes SmartHome System auslesen und nutzen können.

Der im folgenden vorgestellte Node Red Code ist ein erster Anfang. Damit lassen sich bereits die gängigsten Verbrauchs- bzw. auch Erzeugerdaten auslesen. Ich muss auch dazu sagen, dass der Code nicht alleine von mir erstellt wurde. Ich habe mich an verschiedenen (leider nicht mehr bekannten) Quellen inspirieren lassen. (Wer seinen Code hier wiederfindet soll mir bitte bescheid geben. Dann füge ich die Info hier hinzu. :))

Aber nun erstmal zu meinem aktuellen Node Red code um die Daten eines SMA Sunny Home Manager auslesen zu können.


Sicherheitshinweise

Ich weiß die folgenden Hinweise sind immer irgendwie lästig und wirken unnötig. Aber leider haben schon viele Menschen die es "besser" wussten aus Leichtsinnigkeit Augen, Finger oder anderes verloren bzw. sich verletzt. Im Vergleich dazu ist ein Datenverlust fast nicht der Rede Wert, aber auch diese können echt ärgerlich sein. Deswegen nehmt Euch bitte fünf Minuten Zeit um die Sicherheitshinweise zu lesen. Denn auch das coolste Projekt ist keine Verletzung oder anderen Ärger wert.
https://www.nerdiy.de/sicherheitshinweise/

Affiliatelinks/Werbelinks

Die hier in aufgeführten Links zu Online-Shops sind sogenannte Affiliate-Links. Wenn Du auf so einen Affiliate-Link klickst und über diesen Link einkaufst, bekommt Nerdiy.de von dem betreffenden Online-Shop oder Anbieter eine Provision. Für Dich verändert sich der Preis nicht. Falls Du Deine Einkäufe über diese Links tätigst unterstützt Du Nerdiy.de dabei auch in Zukunft weitere nützliche Projekte anbieten zu können. 🙂 


Voraussetzungen

Hilfreiche Artikel:
Damit Ihr NodeRed nutzen könnt sollte NodeRed natürlich schon auf Eurem Raspberry Pi installiert sein.
Wie ihr einen Raspberry Pi dazu vorbereitet und dann NodeRed darauf installiert, ist in den folgenden Artikeln beschrieben.

In der folgenden Listen findet Ihr alle Teile die Ihr zur Umsetzung dieses Artikels benötigt.

Benötigtes Werkzeug:

NumberLink
1xSchraubendreher Set  Bei Amazon kaufen
1xSD Kartenleser  Bei Amazon kaufen

Benötigtes Material:

NumberLink
1x Raspberry Pi  Bei Amazon kaufen
1x Raspberry Pi Netzteil  Bei Amazon kaufen
1x Raspberry Pi Gehäuse  Bei Amazon kaufen
1x Micro SD Karte 64GB  Bei Amazon kaufen
1xSMA Sunny Home Manager 2.0


SMA Sunny Home Manager Voraussetzungen

Damit die Daten Eures SMA Sunny Home Manager ausgelesen werden können sollte dieser bereits in Betrieb und mit Eurem Netzwerk verbunden sein. Wenn Ihr die Daten Eures Wechselrichters bereits mit der App von SMA auslesen könnt sollte alles korrekt eingerichtet sein.


Node Red code importieren

In diesem Abschnitt findet Ihr den Node Red code den Ihr benötigt. Wie ihr diesen in Eure NodeRed Umgebung importieren könnt ist im Artikel NodeRed – Node-Code importieren und exportieren beschrieben.

Um den unten verlinkten Node Code nutzen zu können, müsst ihr keine Änderungen vornehmen. Die Daten werden aus den Multicast Nachrichten des Home Managers ausgelesen und sollten demzufolge direkt verfügbar sein.

Den Node Red code findet Ihr im Nerdiy-Git-Repository unter folgendem Link:

Ansicht des Node Red Flows in der Konfigurationsoberfläche.

Ansicht des Node Red Flows in der Dashboardansicht.

Die ausgelesenen Daten werden gruppiert ausgegeben. Aktuell werden sie „nur“ auf dem Dashboard angezeigt. Ihr könnt Sie aber natürlich auch anderweitig weiterverarbeiten und so zum Beispiel den passenden Zeitpunkt herausfinden um Eure Waschmaschine einzuschalten. 🙂


Weitere Artikel zum Thema Node Red

In den folgenden Kategorien findet Ihr weitere Links zum Thema Node Red.


Viel Spaß mit dem Projekt

Ich hoffe bei euch hat alles wie beschrieben funktioniert. Falls nicht oder ihr Fragen oder Anregungen habt lasst es mich in den Kommentaren bitte wissen. Ich trage dies dann ggf. in den Artikel nach.
Auch Ideen für neue Projekte sind immer gerne willkommen. 🙂

P.S. Viele dieser Projekte - besonders die Hardwareprojekte - kosten viel Zeit und Geld. Natürlich mache ich das weil ich Spaß daran habe, aber wenn Du es cool findest, dass ich die Infos dazu mit Euch teile, würde ich mich über eine kleine Spende an die Kaffeekasse freuen. 🙂

Buy Me a Coffee at ko-fi.com       

26 Kommentare

  1. Vielen Dank für die großartige Arbeit. ich habe den Code in meine Node-Red meines Home Assistant Systems importiert. Leider bekomme ich ein Fehler beim buffer-parser. Dieser wäre unbekannt.
    Ich bin leider an blutiger Anfänger in Node-Red.
    Haben Sie irgend ein Tipp was ich prüfen könnte?

  2. Hallo Fabian,
    ich mal wieder. Mir ist aufgefallen das die Firmwareversion leider nicht exakt passt. Bei mir ist diese 2.12.3.R (ist eine neue Beta Version). Angezeigt wird leider 2.0c.3.R.
    0C sollte ja eigentlich eine 12 sein.
    Wenn ich den Type im buffer-parser Measurements von hex auf byte umstelle wird es bei mir richtig angezeigt.
    Kannst es bei dir ja mal prüfen und ggf. das Template aktualisieren.

  3. Hallo,
    Zuerst einmal super Arbeit, genau das was ich gesucht habe.
    Ich habe jedoch eine Frage zu dem Flow.

    Vorweg: Ich bin absoluter Neuling was Home Assistant und Node-Red angeht.
    Wie bekomme ich denn einen Teil der Messwerte wieder in Home Assistent zurück, um diese dort zu visualisieren bzw. weiter zu verarbeiten.

    Ich schaffe es nicht eine Node zu erstellen, welche nur einen Wert (Z.B. Grid-feed total) beinhaltet.

    Gruß
    Rico

  4. Hallo Fabian,
    Als Messwerte wollte ich erstmal nur den aktuellen Bezug und Einspeisung

    Wie gesagt, ich scheitere aber schon daran, nur einen einzelnen Wert aus der Funktions-Node einzeln abzugreifen und als debug-msg auszugeben.

    Gruß Rico.

    1. Hi Rico,
      welchen einzelnen Wert würdest du denn gerne aus einer Funktions-Node rausbekommen? Dann kann ich dir konkret helfen. 🙂
      Du weißt, dass du die SMA Geräte auch direkt über die Integration in HomeAssistant einbinden kannst? Dann brauchst du nicht den Umweg über NodeRed gehen. 🙂
      Beste Grüße
      Fabian

  5. Hi Nerdy ,
    retrieving the data from the HomeManager works fine , but I notice , as soon as I enable the UDP node on port 9522 in Nodered , the SMA chain doesn’t like it , and for example the SunnyBoyStorage is not longer able to connect to the HomeManager , and I get serious connection issues , as I read the log files.
    My config is Sunny Home Manager 2.0, Sunny Boy Storage 3.7, Sunny Tripower 6.0
    Do you have any suggestions regarding this ?
    Kind Regards , Peter

    1. Hi Peter,
      hm that sounds strange. I couldnt observe something like this. Might be that this is due to the different setup since I do not have the battery storage in my setup. :/ Do you mind sharing some of the (anonymized) log entries?
      Best regards
      Fabian

  6. Hallo,
    das sieht ja klasse aus und scheint genau die Basis zu sein um mit meiner „Homematic IP CCU3“ den PV-Überschuss zu messen und dann wiederum Verbraucher über Homematic IP zu steuern.
    Allerdings wird bei mir ständig „Verbindung wird hergestellt“ angezeigt.
    Woran könnte das liegen?

  7. Hallo,
    Ich hoffe du kannst mir auch als HA neuling helfen.
    Ich habe alles integriet nach deiner Anleitung, leider steht bei mir im Flow nicht wie bei dir verbunden.
    sondern verbindung wird hergestellt.
    Muss man eine IP Adresse eintragen oder was mache ich Flasch.
    Der SMA Home Manager ist im Sunny Portal und schreibt dort schon lange daten
    Ich habe ein SMA Home Manager 2.0 kann das daran liegen?
    Gruß Mathias

  8. Hallo,
    ein super Script! Wie kommuniziert denn der SunnyBoy mit dem Home Manager? Gibt es eine Möglichkeit das Ladelevel und die Laderate auszulesen?
    Grüße

  9. Hi,

    ich habe den Home Manager 2.0 und SUNNY TRIPOWER 8.0 SE verbaut. Die Payload Length ist hier 58. Hast du vielleicht eine Idee wie man an die entsprechende Spezifikation kommt?

    Vielen Dank und Grüße

    1. Hi Andi,
      die genaue Spezifikation habe ich leider nicht.
      Hattest du schon versucht die Werte anhand von Trial&Error zuzuordnen? 🙂

      Beste Grüße
      Fabian

    2. I am also trying to understand the message that comes in. Did you already had any luck? My setup looks similar to yours and I’m also receiving 58 payload length.

  10. Hi Fabian,
    thanks for the great flow. I’m a beginner, but I really managed to display the data I wanted in HA. However, sending the data every 1s is too often for me. How can I change the flow so that the data is only sent every 2 or 3s
    Greetings
    Ren

    1. Hi Ren,
      actually there is no way to limit the reception interval of the data by manipulating the source itself since this is based on the received broadcasts. But you can use a limit node to limit the data. You have to put it between the „SMA EM“ and the function node. In this you can then define the rate that fits best for you. 🙂
      Best regards
      Fabian

  11. Hi Fabian,

    danke für die tolle Arbeit! Läuft sehr fein! Eine Frage habe ich noch. Wenn ich das richtig verstehe, wird der Solarertrag nicht erfasst, richtig? Ich habe erst Einspeisung als solchen interpretiert, da erhalte ich aktuell aber mangels fertiger Anlage und Testaufbau mit nur 2,7kwp aktuell immer nur 0, weil ich nichts in das öffentliche Netz einspeise. Ist meine Annahme richtig? Den Solarertrag würde ich dann direkt vom Inverter erhalten und nicht über den Homemanager?

    Danke und viele Grüße
    Thomas

      1. Hi Fabian,

        danke dir, hab die schon alle im Test. Beim Inverter schmiert allerdings meine Node Red Instanz laufend ab. Allerdings nur beim Tripower 10 SE. Bei meinem Sunny Boy 5.0 klappt es.

        Mal gucken, ob ich den Fehler finde, aber erstmal spiele ich weiter. 😉

        Viele Grüße

        Thomas

  12. Hallo,

    Ik heb alles gedaan zoals omschreven maar ik krijg geen verbinding met mijn SMA omvormer.
    Krijg steeds error ; Zie hieronder

    24 Feb 20:54:38 – [error] [sma-webconnect:b8b980a02554e555] Error: ETIMEDOUT
    24 Feb 20:54:32 – [info] [mqtt-broker:Server-Mqtt] Connection failed to broker: mqtt://localhost:1883

    Wat zie ik over het hoofd? iets wat ik nog moet instellen?

    Alvast dank voor de hulp

    Groeten Mathias

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.