Neu: 77_SMAEM - Modul für SMA Energie Meter. Alternative zum Sunny Home Manager.

Begonnen von Volker Kettenbach, 30 März 2016, 12:42:05

Vorheriges Thema - Nächstes Thema

Holger S

Hallo Heiko,
das war mir bewußt, dass dieses Modul es nicht kann. Meine Frage war nur ob es theoretisch möglich wäre diese Daten mit dem Modul zu empfangen, da ja der HM2 mehr Daten sendet/empfängt als ein EM?!

Grüße Holger

DS_Starter

Hallo Holger,

mit diesem Modul ist es nicht möglich.
Allerdings könnte man mW. den HM2 über eine von SMA implementierte Schnittstelle/Protokoll abfragen. Bei SMA gibt es eine entsprechende Doku. Dazu müsste jemand sich hinsetzen und ein neues Modul für den HM2 schreiben.
Hätte ich einen HM2, würde ich es vielleicht tun (obwohl ich eigentlich keine Zeit mehr habe), aber ich betreibe noch Geräte der 1. Generation.
Da muss sich also ein anderer Entwickler finden der sich dafür interessiert.

Grüße,
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Wzut

@Heiko, hast di einen Link zu dieser SMA Doku zur Hand ? Ich nutze ja nun schon fast zwei Jahre meine eigene Version des Moduls für den HM2.

Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

DS_Starter

Moin Wzut,

ja auf dieser Seite https://www.sma.de/produkte/sma-developer.html
gibt es nach Anmeldung die Doku zur SEMP Protokoll-Schnittstelle des HM2.

Also damit es kein Missverständnis gibt ... SMAEM läuft natürlich mit dem HM2, allerdings nur in Bezug auf die Funktionalität des SMA Energy Meters. Alle anderen Werte des HM2 lassen sich mit dem Modul nicht auswerten.
Da muss was neues her.  :)

LG,
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Holger S

Hallo Wzut,
was für eine eigene Version nutzt du und was ist anders?

Danke
Holger

winner81

Hallo zusammen

Leider bin ich noch ein totaler Anfänger was das Modul SMAEM und Perl betrifft.
Vielleicht hat jemand ein Tip für mich...

Ich habe ein Energy Meter EMETER-10 und kriege keine Readings. Das einbinden ging problemlos. Im Log File sehe ich auch das der Multicast socket offen ist:

2020.08.11 20:49:39 3: SMAEM EnergieMeter - Opening multicast socket...
2020.08.11 20:49:39 3: SMAEM EnergieMeter - Multicast socket opened

Das ist dann aber der letzte Eintrag und es passiert nichts mehr.
Hab dann wie Vorgeschlagen versucht das Skript smaem_test.pl testhalber auszuführen.
Hab folgendes im Putty eingetragen:
sudo perl ./smaem_test.pl
Die Antwort war:
syntax error at ./smaem_test.pl line 9, near "<"
Excessively long <> operator at ./smaem_test.pl line 20.

Hab ich was falsch gemacht?

Kann ich daraus schliessen, dass wenn der Energy Meter mit dem Sunny Home Manager über ein Switch kommuniziert, dieser Multicast fähig ist?

Danke und Gruss
Ronny

DS_Starter

Hallo Ronny,

erstmal herzlich willkommen bei uns im Forum.

Das Testtool smaem_test.pl habe ich schon lange nicht benutzt, aber du kannst die Multicastpakete ganz einfach checken mit dem Aufruf

sudo tcpdump udp port 9522 -vv -X

Da du einen SMA Energy Meter hast sollten jetzt sekündlich Pakete reinkommen in der Form:

23:41:18.463255 IP (tos 0x0, ttl 1, id 0, offset 0, flags [DF], proto UDP (17), length 628)
    192.168.2.41.54648 > 239.12.255.254.9522: [udp sum ok] UDP, length 600
        0x0000:  4500 0274 0000 4000 0111 c59c c0a8 0229  E..t..@........)
        0x0010:  ef0c fffe d578 2532 0260 da06 534d 4100  .....x%2.`..SMA.
        0x0020:  0004 02a0 0000 0001 0244 0010 6069 010e  .........D..`i..
        0x0030:  7142 eff5 57ef 9868 0001 0400 0000 152c  qB..W..h.......,
        0x0040:  0001 0800 0000 0000 4d5a 4a68 0002 0400  ........MZJh....
        0x0050:  0000 0000 0002 0800 0000 0000 f54a e9a8  .............J..
        0x0060:  0003 0400 0000 0000 0003 0800 0000 0000  ................
        0x0070:  06ba 34b0 0004 0400 0000 09c3 0004 0800  ..4.............
        0x0080:  0000 0000 4789 3860 0009 0400 0000 1751  ....G.8`.......Q
        0x0090:  0009 0800 0000 0000 5f1c f1b0 000a 0400  ........_.......
        0x00a0:  0000 0000 000a 0800 0000 0000 fa40 9070  .............@.p
        0x00b0:  000d 0400 0000 038c 0015 0400 0000 062e  ................
        0x00c0:  0015 0800 0000 0000 100f d8f8 0016 0400  ................
        0x00d0:  0000 0000 0016 0800 0000 0000 6081 f4b0  ............`...
        0x00e0:  0017 0400 0000 0000 0017 0800 0000 0000  ................
        0x00f0:  0a0e a290 0018 0400 0000 025b 0018 0800  ...........[....
        0x0100:  0000 0000 0d68 0918 001d 0400 0000 069d  .....h..........
        0x0110:  001d 0800 0000 0000 16a1 b628 001e 0400  ...........(....
        0x0120:  0000 0000 001e 0800 0000 0000 63e7 6f90  ............c.o.
        0x0130:  001f 0400 0000 02fa 0020 0400 0003 94cc  ................
        0x0140:  0021 0400 0000 03a6 0029 0400 0000 07f7  .!.......)......
        0x0150:  0029 0800 0000 0000 1ba2 4b60 002a 0400  .)........K`.*..
        0x0160:  0000 0000 002a 0800 0000 0000 4f7a 0c48  .....*......Oz.H
        0x0170:  002b 0400 0000 0000 002b 0800 0000 0000  .+.......+......
        0x0180:  029e f230 002c 0400 0000 014e 002c 0800  ...0.,.....N.,..
        0x0190:  0000 0000 0ac4 1e40 0031 0400 0000 0812  .......@.1......
        0x01a0:  0031 0800 0000 0000 1ea1 1e40 0032 0400  .1.........@.2..
        0x01b0:  0000 0000 0032 0800 0000 0000 5015 e398  .....2......P...
        0x01c0:  0033 0400 0000 038e 0034 0400 0003 9219  .3.......4......
        0x01d0:  0035 0400 0000 03db 003d 0400 0000 0708  .5.......=......
        0x01e0:  003d 0800 0000 0000 27c5 3088 003e 0400  .=......'.0..>..
        0x01f0:  0000 0000 003e 0800 0000 0000 4b6b f328  .....>......Kk.(
        0x0200:  003f 0400 0000 0000 003f 0800 0000 0000  .?.......?......
        0x0210:  0027 2ec8 0040 0400 0000 061a 0040 0800  .'...@.......@..
        0x0220:  0000 0000 3577 a148 0045 0400 0000 094f  ....5w.H.E.....O
        0x0230:  0045 0800 0000 0000 35f0 0070 0046 0400  .E......5..p.F..
        0x0240:  0000 0000 0046 0800 0000 0000 50a5 dc00  .....F......P...
        0x0250:  0047 0400 0000 04b6 0048 0400 0003 9554  .G.......H.....T
        0x0260:  0049 0400 0000 02f3 9000 0000 0102 0452  .I.............R
        0x0270:  0000 0000                                ....



Wenn tcpdump nicht installiert ist -> sudo apt-get install tcpdump.
Zitat
Kann ich daraus schliessen, dass wenn der Energy Meter mit dem Sunny Home Manager über ein Switch kommuniziert, dieser Multicast fähig ist?
Ja, davon kannst du ausgehen. Meines Wissens ist jeder einigermaßen moderne Switch Multicast fähig, wenn es nicht gerade ein managed Switch ist und man Multicast abgeschaltet hat.

Frage ... wie sieht denn deine Infrastruktur aus ? Ich frage danach, weil Multicast im Dockerumfeld wohl nicht so ganz tivial ist. Zumindest habe ich davon gelesen und habe damit auch selbst negative Erfahrungen gemacht. Ist aber auch schon wieder eine Weile her....

Grüße,
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

winner81

Hallo Heiko

Vielen Dank für Deine Antwort und die nette Begrüssung :).
Ich werde es heute Abend checken und schauen was da reinkommt.

Meine Infrastruktor sieht folgendermassen aus:
Raspberry und Energy Meter sind neben der Siemens Steuerung an einem Scalance X208 angeschlossen.
An diesem Switch habe ich nichts explizites gesperrt. Von diesem Switch geht es an einen Zyxel GS1910-24.
Der Zyxel ist der Zentrale Sternpunkt, an welchem auch der Home Manager hängt. Auch dieser Switch ist neben der Festen IP
ohne speziellen Einstellungen.

Gruss Ronny

Volker Kettenbach

Kurze Info: SMAEM bzw. Multicast mit Docker geht. Aber nicht out-of-the-box.
Bei Interesse poste ich gerne mehr dazu.

DS_Starter

Moin Volker,

danke für die Info. Ich denke die Vorgehensweise für Docker gestützte Installationen ist für den einen oder anderen doch ganz interessant. Für mich wäre es informativ. Hatte mich damals entschieden VMWare als Virtualisierungsplattform einzusetzen und habe es bis jetzt nicht bereut.

Grüße,
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

ch.eick

Zitat von: Volker Kettenbach am 13 August 2020, 08:52:43
Kurze Info: SMAEM bzw. Multicast mit Docker geht. Aber nicht out-of-the-box.
Bei Interesse poste ich gerne mehr dazu.
Das würde mich auch interessieren, da ich Docker bereits im Einsatz habe.
Gruß
    Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

winner81

Hallo Heiko

Ich habe eben anhand Deiner Anleitung den Datenverkehr aufgezeichnet:


20:07:28.600221 IP (tos 0x0, ttl 1, id 0, offset 0, flags [DF], proto UDP (17), length 114)
    192.168.1.222.9522 > 239.12.255.255.9522: [udp sum ok] UDP, length 86
        0x0000:  4500 0072 0000 4000 0111 c7e8 c0a8 01de  E..r..@.........
        0x0010:  ef0c ffff 2532 2532 005e f697 534d 4100  ....%2%2.^..SMA.
        0x0020:  0004 02a0 0000 0001 0042 0010 6065 10a0  .........B..`e..
        0x0030:  ffff ffff ffff 0000 aa00 270b 5c09 0000  ..........'.\...
        0x0040:  0000 0000 b2ac 0a02 00f0 006d 2300 006d  ...........m#..m
        0x0050:  2300 006d 2300 6281 355f 0128 355f 6281  #..m#.b.5_.(5_b.
        0x0060:  355f 110e 0000 3707 0000 0100 0000 0000  5_....7.........
        0x0070:  0000                                     ..
20:07:28.665893 IP (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 114)
    192.168.1.221.9522 > 239.12.255.253.9522: [udp sum ok] UDP, length 86
        0x0000:  4500 0072 0000 0000 4011 c8eb c0a8 01dd  E..r....@.......
        0x0010:  ef0c fffd 2532 2532 005e 4601 534d 4100  ....%2%2.^F.SMA.
        0x0020:  0004 02a0 0000 0001 0042 0010 6065 1090  .........B..`e..
        0x0030:  fdff ffff ffff 00a0 b500 f9ef 2d12 0000  ............-...
        0x0040:  0000 0000 faa2 0a02 00f0 0000 0000 0000  ................
        0x0050:  0000 006d 2300 6381 355f 0128 355f 6381  ...m#.c.5_.(5_c.
        0x0060:  355f 110e 0000 3707 0000 0100 0000 0000  5_....7.........
        0x0070:  0000                                     ..
20:07:29.464695 IP (tos 0x0, ttl 1, id 0, offset 0, flags [DF], proto UDP (17), length 86)
    192.168.1.222.9522 > 239.12.255.255.9522: [udp sum ok] UDP, length 58
        0x0000:  4500 0056 0000 4000 0111 c804 c0a8 01de  E..V..@.........
        0x0010:  ef0c ffff 2532 2532 0042 3f8c 534d 4100  ....%2%2.B?.SMA.
        0x0020:  0004 02a0 0000 0001 0026 0010 6065 09a0  .........&..`e..
        0x0030:  ffff ffff ffff 0000 aa00 270b 5c09 0000  ..........'.\...
        0x0040:  0000 0000 b3ac 0002 8061 0048 2100 ff4a  .........a.H!..J
        0x0050:  4100 0000 0000                           A.....



Es kommt einiges rein, aber nichts vom Energy Meter. Hab es ein paar Minuten laufen lassen
.221 ist der Wechselrichter, .222 ist der Home Manager und .52 ist der Raspberry Pi selber.

Sieht so aus als würde das Energy Meter keine Pakete aussenden. Muss am Energy Meter etwas spezielles eingestellt werden.
Momentan steht in der Zieladresse die IP des Home Managers. Der IP Bezug im EM steht auf DHCP, wobei ich vom Router aus immer die gleiche zuweise.
Dies dürfte ja aber kein Einfluss haben bei Multicast.

Hast Du noch eine Idee wo ich was prüfen kann?

Angaben zum EM:
Firmware: 1.02.04.R

Danke und Gruss
Ronny

300P

Zitat von: winner81 am 13 August 2020, 20:23:14
.........
Es kommt einiges rein, aber nichts vom Energy Meter. Hab es ein paar Minuten laufen lassen
.221 ist der Wechselrichter, .222 ist der Home Manager und .52 ist der Raspberry Pi selber.

Sieht so aus als würde das Energy Meter keine Pakete aussenden. Muss am Energy Meter etwas spezielles eingestellt werden.
Momentan steht in der Zieladresse die IP des Home Managers. Der IP Bezug im EM steht auf DHCP, wobei ich vom Router aus immer die gleiche zuweise.
Dies dürfte ja aber kein Einfluss haben bei Multicast.

Hast Du noch eine Idee wo ich was prüfen kann?

Angaben zum EM:
Firmware: 1.02.04.R

Danke und Gruss
Ronny

Mit einer abgeänderten Ziel-IP wird es nicht klappen, dann ,,empfängt" nur diese eine einzige IP-Adresse die gesendeten Daten
:o 8)
Gruss
300P

Edit : screenshot mit Einstellungen für Multicast
FHEM 6.3 - Raspberry Pi 3 / Pi 4 - VControl300 mit VITOVALOR 300P - SMAEM - SMAInverter - DbLog/DbRep - MariaDB/QNAP - div. HTTPMOD - div. Modbus ser+TCP - SolarForecast - Tibber + Ladung mit SMA-SBS25

winner81

Hallo 300P

Kaum macht man's richtig, schon funktionierts :).
Vielen Dank für Dein Screenshot, das war die Lösung.

Wieder was gelernt.
Danke für Eure tolle Arbeit hier.

Gruss Ronny

300P

Zitat von: winner81 am 13 August 2020, 20:55:23
Hallo 300P

Kaum macht man's richtig, schon funktionierts :).
Vielen Dank für Dein Screenshot, das war die Lösung.

Wieder was gelernt.
Danke für Eure tolle Arbeit hier.

Gruss Ronny

Gern

Wenn alle alles wissen würden .... dann gäb es keine Foren und auch Google wär nicht nötig.
Ich hab mal mit den IP bei mir experimentiert wegen meines ,,schlechtem" Netwerkes und genau dies dabei herausgefunde.
Wenn der WR keine saubere Netzwerkverbindung hinbekommt, dann kann man es auch mal so (IP des Gerätes) versuchen.

Wenn aber mehre Geräte diese Info benötigen, dann muss diese Multicast IP eingetragen sein. :)

Gruss
300P
FHEM 6.3 - Raspberry Pi 3 / Pi 4 - VControl300 mit VITOVALOR 300P - SMAEM - SMAInverter - DbLog/DbRep - MariaDB/QNAP - div. HTTPMOD - div. Modbus ser+TCP - SolarForecast - Tibber + Ladung mit SMA-SBS25