76_SMAInverter.pm - Abfrage von SMA Wechselrichter

Begonnen von sct14675, 28 Juli 2016, 11:01:16

Vorheriges Thema - Nächstes Thema

DS_Starter

Auch wenn es unwahrscheinlich ist ... Setz dir doch bitte ein Passwort und nicht nur "0" . Wenn ich mich recht erinnere hatten wir vor kurzem Probleme mit PW und haben deswegen im Modul etwas geändert.
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

DocCyber

Behandle die Menschen so, als wären sie, was sie sein sollten. Dadurch hilfst du ihnen zu werden, was sie sein können. (Goethe)


RPi-3 mit HM-CFG-LAN und jede Menge HM Komponenten.

Xguide

Was'n das? Du konntest das mit meiner IP machen? Darüber muss ich noch mal nachdenken.

Zitat von: DocCyber am 13 Juli 2017, 15:56:59
Richtig  >:(
DAS funktioniert (s. Screenshot)
FHEM 5.9 - Intel NUC i3 mit Proxmox im Stretch Container
HomeMatic - VCCU mit 2 x HM-LAN-CFG
Module: SMA Peripheries - Sonos - IPCam(s) - Philips Hue - Sprinkler - TabletUI - DBlog -

DS_Starter

Jetzt habe ich mich nochmal im Code vergewissert wie ich die Readings opertime_start, opertime_stop gebaut habe.
Während der Operationszeit des WR zwischen Sonnenauf- und Untergang werden dieses Readings nach dem Parsen einer WR-Antwort mit aktualisiert.
Wenn die Abfrage wie bei Klaus in einen Timeout reinläuft, werden diese Readings nicht aktualisiert.
Während der Nacht, und wenn suppressleep NICHT gesetzt ist, werden diese Readings mit jedem Abfragezyklus aktualisiert.
Zur Ermittlung der Sonnenstände werden Funktionen des Moduls SUNRISE_EL verwendet.

Das nur zur Erläuterung zur Frage von Klaus bzgl. der oper-Readings.
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

DocCyber

#364
Zitat von: DS_Starter am 13 Juli 2017, 17:05:34
Auch wenn es unwahrscheinlich ist ... Setz dir doch bitte ein Passwort und nicht nur "0" . Wenn ich mich recht erinnere hatten wir vor kurzem Probleme mit PW und haben deswegen im Modul etwas geändert.
Mach ich gern, aber muss bis morgen warten.
Ich habe heute noch einen Termin außer Haus und kann erst morgen wieder in die Tiefe gehen.

Zitat von: Xguide am 13 Juli 2017, 18:06:22
Was'n das? Du konntest das mit meiner IP machen?
Yep - geht auch mit deiner IP. Ich hab garnicht hingeschaut und einfach den Befehl mit copy/paste in den RasPi geschrieben. Das finde ich bei allem Elend jetzt echt witzig...  ;D
Deine IP ist aber keine lokale Adresse...

Aber es geht mit meiner IP auch.

Zitat
geprüft hattest du das mit den Abhängigkeiten aber schon oder?
Nein, auch noch nicht. Morgen...
Behandle die Menschen so, als wären sie, was sie sein sollten. Dadurch hilfst du ihnen zu werden, was sie sein können. (Goethe)


RPi-3 mit HM-CFG-LAN und jede Menge HM Komponenten.

DocCyber

Achtung! Irgendwas ist hier oberfaul...
Ich habe gerade den Switch vom Strom genommen, der die SMA-Geräte versorgt.
Aber der Befehl nc -vzu ... funktioniert trotzdem und zeigt ein positives Resultat.
Wie kann das sein, wenn mit dem Befehl der WR adressiert werden soll?

Schade, aber ich muss jetzt weg. Danke für eure Hilfe. Schönen Abend noch und bis morgen.

Klaus

Behandle die Menschen so, als wären sie, was sie sein sollten. Dadurch hilfst du ihnen zu werden, was sie sein können. (Goethe)


RPi-3 mit HM-CFG-LAN und jede Menge HM Komponenten.

Xguide

Daran hatte ich auch schon gedacht, problematisch waren aber nur z und y wenn ich mich recht entsinne und hatte die Auswirkung, dass der Response Hash zu kurz war. War mir damals aufgefallen beim Vergleich der Receive Antwort. Du hast das dann sauber gefixed. Meiner läuft auch mit 0000.

Zitat von: DS_Starter am 13 Juli 2017, 17:05:34
Auch wenn es unwahrscheinlich ist ... Setz dir doch bitte ein Passwort und nicht nur "0" . Wenn ich mich recht erinnere hatten wir vor kurzem Probleme mit PW und haben deswegen im Modul etwas geändert.
FHEM 5.9 - Intel NUC i3 mit Proxmox im Stretch Container
HomeMatic - VCCU mit 2 x HM-LAN-CFG
Module: SMA Peripheries - Sonos - IPCam(s) - Philips Hue - Sprinkler - TabletUI - DBlog -

Xguide

Hallo Klaus,

irgendwas verstehe ich an an nc nicht, ich versuche das morgen noch einmal zu testen. 10.x.x.x ist ein privater Adressbereich, da hätte kein sucessful kommen dürfen.

N8 Marcel
Zitat von: DocCyber am 13 Juli 2017, 20:00:58
Achtung! Irgendwas ist hier oberfaul...
Ich habe gerade den Switch vom Strom genommen, der die SMA-Geräte versorgt.
Aber der Befehl nc -vzu ... funktioniert trotzdem und zeigt ein positives Resultat.
Wie kann das sein, wenn mit dem Befehl der WR adressiert werden soll?

Schade, aber ich muss jetzt weg. Danke für eure Hilfe. Schönen Abend noch und bis morgen.

Klaus
FHEM 5.9 - Intel NUC i3 mit Proxmox im Stretch Container
HomeMatic - VCCU mit 2 x HM-LAN-CFG
Module: SMA Peripheries - Sonos - IPCam(s) - Philips Hue - Sprinkler - TabletUI - DBlog -

DocCyber

Zitat von: Xguide am 13 Juli 2017, 23:30:26
da hätte kein sucessful kommen dürfen.

Hi Marcel,
Ja! Und das gilt insbesonders auch dann, wenn durch das Trennen des Switches von der Stromversorgung gar keine physikalische Verbindung zum WR mehr hätte bestehen dürfen.
Behandle die Menschen so, als wären sie, was sie sein sollten. Dadurch hilfst du ihnen zu werden, was sie sein können. (Goethe)


RPi-3 mit HM-CFG-LAN und jede Menge HM Komponenten.

DS_Starter

ZitatMeiner läuft auch mit 0000

Ah ... ok.  Gewissermaßen "schade" da dieser kleine Anker auch weg ist. Übrigens hatte Thomas damals diesen Fehler gefunden und behoben.

Ich denke auch noch ein wenig nach was man noch tun könnte.
Es wäre schön wenn sich noch jemand melden würde der ebenfalls einen Sonnyboy betreibt. Marcel und ich haben Tripower WR.
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

DS_Starter

@Klaus, ich habe noch eine Idee.

Bitte starte doch mal auf deinem Raspi


sudo tcpdump udp port 9522 -vv -X


Wenn tcpdump nicht installiert ist -> sudo apt-get install tcpdump.

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


19:38:15.537187 IP (tos 0x0, ttl 1, id 0, offset 0, flags [DF], proto UDP (17), length 628)
    192.168.2.41.44045 > 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 ac0d 2532 0260 d2e6 534d 4100  ......%2.`..SMA.
        0x0020:  0004 02a0 0000 0001 0244 0010 6069 010e  .........D..`i..
        0x0030:  7142 eff5 7fdc 9415 0001 0400 0000 0000  qB..............
        0x0040:  0001 0800 0000 0002 3972 4eb8 0002 0400  ........9rN.....
        0x0050:  0000 041f 0002 0800 0000 0003 71ca e2b0  ............q...
        0x0060:  0003 0400 0000 0000 0003 0800 0000 0000  ................
        0x0070:  28cc d2b0 0004 0400 0000 0481 0004 0800  (...............
        0x0080:  0000 0000 cb81 98b0 0009 0400 0000 0000  ................
.....................


Wenn du dann den Inverter mit "get <name> data" abfragst solltest du die Kommunikation über das Interface sehen:


19:48:18.040674 IP (tos 0x0, ttl 64, id 14363, offset 0, flags [DF], proto UDP (17), length 86)
    fhemtest.myds.me.52262 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0x9775!] UDP, length 58
        0x0000:  4500 0056 381b 4000 4011 7cd6 c0a8 022d  E..V8.@.@.|....-
        0x0010:  c0a8 0228 cc26 2532 0042 85f9 534d 4100  ...(.&%2.B..SMA.
        0x0020:  0004 02a0 0000 0001 0026 0010 6065 09a0  .........&..`e..
        0x0030:  b500 169b 2d12 0000 e900 23bb 5907 0000  ....-.....#.Y...
        0x0040:  0000 0000 0580 0002 0051 0040 4600 ff42  .........Q.@F..B
        0x0050:  4600 0000 0000                           F.....
19:48:18.050338 IP (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 170)
    STP_5000.myds.me.9522 > fhemtest.myds.me.52262: [udp sum ok] UDP, length 142
        0x0000:  4500 00aa 0000 0000 4011 f49d c0a8 0228  E.......@......(
        0x0010:  c0a8 022d 2532 cc26 0096 26ce 534d 4100  ...-%2.&..&.SMA.
        0x0020:  0004 02a0 0000 0001 007a 0010 6065 1e90  .........z..`e..
        0x0030:  e900 23bb 5907 00a0 b500 169b 2d12 0000  ..#.Y.......-...
        0x0040:  0000 0000 0580 0102 0051 0700 0000 0900  .........Q......
        0x0050:  0000 0140 4640 e103 6959 4200 0000 4200  ...@F@..iYB...B.
        0x0060:  0000 4200 0000 4200 0000 0100 0000 0141  ..B...B........A
        0x0070:  4640 e103 6959 4300 0000 4300 0000 4300  F@..iYC...C...C.
        0x0080:  0000 4300 0000 0100 0000 0142 4640 e103  ..C........BF@..
        0x0090:  6959 4200 0000 4200 0000 4200 0000 4200  iYB...B...B...B.
        0x00a0:  0000 0100 0000 0000 0000                 ..........
19:48:18.050717 IP (tos 0x0, ttl 64, id 14364, offset 0, flags [DF], proto UDP (17), length 86)
    fhemtest.myds.me.42301 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0xfd62!] UDP, length 58
        0x0000:  4500 0056 381c 4000 4011 7cd5 c0a8 022d  E..V8.@.@.|....-
        0x0010:  c0a8 0228 a53d 2532 0042 85f9 534d 4100  ...(.=%2.B..SMA.
        0x0020:  0004 02a0 0000 0001 0026 0010 6065 09a0  .........&..`e..
        0x0030:  b500 169b 2d12 0000 e900 23bb 5907 0000  ....-.....#.Y...
        0x0040:  0000 0000 0680 0002 0051 003f 2600 ff3f  .........Q.?&..?
        0x0050:  2600 0000 0000                           &.....



Bei werden über den lokalen DNS-Server die IPs aufgelöst ->  fhemtest.myds.me = FHEM Test ,   STP_5000.myds.me = mein WR.

Du kannst den Befehl auch so starten:


sudo tcpdump udp port 9522 -vv -X | grep <IP>


Dann siehst du wie zwischen dem Raspi und dem WR Daten ausgetauscht werden (theoretisch). Der Inhalt ist erstmal egal:


tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
    fhemtest.myds.me.51170 > STP_5000.myds.me.9522: [bad udp cksum 0x860d -> 0xdd40!] UDP, length 78
    STP_5000.myds.me.9522 > fhemtest.myds.me.51170: [udp sum ok] UDP, length 78
    fhemtest.myds.me.50901 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0x2803!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.50901: [udp sum ok] UDP, length 218
    fhemtest.myds.me.50655 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0xe018!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.50655: [udp sum ok] UDP, length 90
    fhemtest.myds.me.59781 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0x3d5a!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.59781: [udp sum ok] UDP, length 114
    fhemtest.myds.me.40256 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0xc65b!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.40256: [udp sum ok] UDP, length 142
    fhemtest.myds.me.60978 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0xb46d!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.60978: [udp sum ok] UDP, length 86
    fhemtest.myds.me.55938 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0xc0e7!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.55938: [udp sum ok] UDP, length 58
    fhemtest.myds.me.49343 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0x221c!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.49343: [udp sum ok] UDP, length 170
    fhemtest.myds.me.41280 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0xbe40!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.41280: [udp sum ok] UDP, length 226
    fhemtest.myds.me.39258 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0xbf48!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.39258: [udp sum ok] UDP, length 58
    fhemtest.myds.me.60966 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0x6f49!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.60966: [udp sum ok] UDP, length 86
    fhemtest.myds.me.46972 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0xa541!] UDP, length 58
    STP_5000.myds.me.9522 > fhemtest.myds.me.46972: [udp sum ok] UDP, length 90
    fhemtest.myds.me.47675 > STP_5000.myds.me.9522: [bad udp cksum 0x85f9 -> 0xe6f3!] UDP, length 58



Die Mitteilung "bad udp cksum" kann ich jetzt nicht deuten. Bis jetzt braucht ich noch nicht soweit runter.
Schau mal wie es bei dir aussieht.
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

anstroe

Hallo,
ich würde mich gerne einklinken, habe nämlich das selbe Problem wie Klaus...

Wir haben einen SunnyBoy 5000TL-21 und SunnyIsland 6.0H.
Bei beiden Geräten bekomme ich ein timeout. Das Energymeter funktioniert ohne Probleme.
Allerdings kann ich die zwei nicht mal pingen :-( über SunnyExplorer bekomme ich jedoch eine Verbindung (und auch das SunnyPortal funktioniert)...
tcpdump zeigt somit auch nichts an wenn ich die IP rausfiltere.
Den Homemanager kann ich auch pingen ...

Ist bei euch der TCP-/bzw. UDP-Server aktiviert?

Viele Grüße
Anne
Neuling mit Raspberry Pi 3B, FHEM 5.8, smartVISU 2.8, 2x Wago 750-841

DS_Starter

Hi Anne,

wenn du die Einträge unter Modbus (Eintrag externe Kommunikation) im WR meinst .... die sind beide bei mir ausgeschaltet.
Nur unter Anlagenkommunikation -> Speedwire habe ich eine feste IP, DNS, Gateway eingetragen mit der ich arbeite. Weiter vorne habe ich einen Screenshot schonmal eingehängt.
Ping muß auf jeden Fall funktionieren.
Dem WR sollte durch den DHCP-Server deines Netzes (üblich der Router) eine IP zugewiesen werden. Bei Klaus ist auch das nicht der Fall.

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

anstroe

Hallo Heiko,

DANKE!! Es liegt tatsächlich daran, dass bei mir zwar die IP händisch eingetragen war, aber bei automatische Konfiguration immer noch "Ja" ausgewählt war.... sobald die auf "Nein" steht funktioniert ping usw.

Grüße
Anne
Neuling mit Raspberry Pi 3B, FHEM 5.8, smartVISU 2.8, 2x Wago 750-841

Xguide

Hallo Anne,

das klingt doch schon mal gut.
Konntest Du denn noch noch andere Sachen feststellen?
Was liefert tcpdump oder besser noch das Modul? Der SunnyIsland liefert ja auch Werte bei Dunkelheit, dafür unbedingt supresssleep setzen.

Gruß Marcel
FHEM 5.9 - Intel NUC i3 mit Proxmox im Stretch Container
HomeMatic - VCCU mit 2 x HM-LAN-CFG
Module: SMA Peripheries - Sonos - IPCam(s) - Philips Hue - Sprinkler - TabletUI - DBlog -