Seite 1 von 2

SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 8:53 am
von Becker
Hallo,
ich würde gern mit Node-Red im Sekundentakt die Werte vom HM abfragen / anzeigen.

Das Multicast Datagram kriege ich ohne Probleme abgefragt, ich bekomme es nur nicht dekodiert:
443.png
323.png
Hier ist eine Erklärung: http://www.eb-systeme.de/?page_id=3005

Jetzt bräuchte ich eine Starthilfe, wie ich "raw Buffer" mit dem Buffer Parser dekodiert kriege.

Gruß


bisher frage ich meine SMA WR mit Modbus ab, und dekodiere die Modbuswerte mit dem Buffer Parser, siehe:
hier habe ich das mal beschrieben
http://hausbau-becker.blogspot.com/2020 ... n-sma.html
hier mein aktueller Flow:
https://drive.google.com/file/d/1LlDHU8 ... 2zXje/view

Re: SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 10:25 am
von hominidae
Becker hat geschrieben: Mo Mär 22, 2021 8:53 am Hallo,
ich würde gern mit Node-Red im Sekundentakt die Werte vom HM abfragen / anzeigen.

Das Multicast Datagram kriege ich ohne Probleme abgefragt, ich bekomme es nur nicht dekodiert:

443.png
323.png

Hier ist eine Erklärung: http://www.eb-systeme.de/?page_id=3005

Jetzt bräuchte ich eine Starthilfe, wie ich "raw Buffer" mit dem Buffer Parser dekodiert kriege.
->https://github.com/Steve-Mcl/node-red-c ... fer-parser benutzen.

Re: SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 10:30 am
von Becker
ja genau den, nur weiß ich nicht wie ich den einstellen muss um an die "Nutzdaten" zu kommen, habe schon viel rum probiert aber bekomme es nicht hin.

Re: SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 11:52 am
von hominidae
Also ich hab es damit und dem Telegramm auch noch nicht gemacht, aber den Buffer hast Du doch schon.
Dieser steckt schon in der MSG in msg.payload und ist 608 Bytes lang.
Die Bitreihenfolge ist Big-Endian, also im Buffer Parser (be)

Du nimmst den Buffer Parser Node und definierst die Felder aus der Spezifikation, auch in Teilen, zB mal fürs Erste:

- Kopf (10 bytes)
- OBIS1 (4 bytes/Identifier - 8 bytes Zählerdaten)

...sollte / könnte das so aussehen:

Bild

....wobei das jetzt nur meine erste Trockenübung ist ;-)

Re: SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 12:05 pm
von Becker
hmm was auch immer das ist :?:
2.png
1.png
1.png (9.74 KiB) 5633 mal betrachtet

Re: SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 12:28 pm
von hominidae
..zeig mal die ersten 20 Bytes...wie in Deinem Screenshot von Node Debug-Output die Buffer [0-9] und [10-19] "aufklappen".

Das erste OBIS Identifier sollte ja eigentlich (1) (1) (4) (0) bei OBIS1-(B) (C) (D) (E) sein.

Kannst Du die msg mal "roh" hier anhängen?

Edit: OK, der header sollte 27 und nicht 10 byte sein...kannst Du das mal ändern.
Und alle Deine int32(be) auf uint32(be)....es gibt keine Vorzeichen...

Bild

Re: SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 3:32 pm
von Becker
Der Schöpfer vom Buffer Parser hat mir mal eben den Flow gebaut:
https://discourse.nodered.org/t/query-s ... in/42983/3

ich blick zwar nicht durch, läuft aber.

Re: SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 4:36 pm
von hominidae
...oder so. :lol:

Edit: ...Du kannst den Post und Flow auch in die Abteilung "Wissenssamlung" hier posten...im NR-Discourse werden Threads nach 2 Monaten inaktivität ja gelöscht....dann hat die openWB Nachwelt auch was davon ;-)

Re: SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 5:50 pm
von Becker
erst mal richtig ans laufen kriegen.
3231.png
übersetzt und Einheiten korrigiert ist es schon.

Die Zähler werden nicht durch 360.000 geteilt, die aktuellen Werte passen.

Version zeigt er auch nicht an.

Ich blicke durch die Verschaltung von den Buffer Parsern absolut nicht durch.

Steve Mcl hat den "Dekoder" aus dem Phyton von Herrn Datenschuft kopiert, aber der Rest ist zu hoch für mich um es zu verstehen! :oops:

Re: SMA Home Manager Multicast Datagram dekodieren

Verfasst: Mo Mär 22, 2021 6:36 pm
von Becker
Für heute erst mal genug.

ich kriege es nicht hin, dass die Zähler Werte durch 360.000 dividiert werden, vielleicht findet Jemand das Problem ?
flows.json.txt
(10.94 KiB) 249-mal heruntergeladen
Dann frage ich mich wie man alle Werte auf einmal von BigInt in "Number" konvertieren könnte.