76_SMAInverter.pm - Abfrage von SMA Wechselrichter

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

Vorheriges Thema - Nächstes Thema

Xguide

Hallo Heiko,

Version 2.8.3 läuft, eine Sache ist mir allerdings aufgefallen und ich wollte sie zuerst einmal hier diskutieren, da ich mir nicht sicher bin ob es ein fhem.pl Problem ist oder speziell bei diesem Modul auftritt.

Ich habe mein global verbose auf 1 stehen und setze zum debuggen und testen die jeweiligen Module entsprechend hoch. Wenn ich fertig war, habe ich i.d.R. das Attribut nicht gelöscht, sondern auf 0 gesetzt. Wenn ich so recht darüber nachdenke macht das zwar keinen Sinn, aber es ist wie es ist. Nun ist mir aufgefallen, das "undefined" eingetragen wird, wenn verbose < global verbose ist. Das führt zu massiven Einträgen im Log. Kann das jemand reproduzieren? FHEM-Version Stand heute (20.04.2017 09:00 Uhr)

Danke und viele Grüße,

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 -

Hassi95

#271
Hallo zusammen,

der Beitrag dürfte durch die diversen Tests nun etwas größer Ausfallen ;D

Als erstes habe ich mein Netzwerk mit Wireshark auf eventuelle Probleme überprüft, um den Fehler hier ausschließen zu können.
Festhalten kann ich schon mal, dass keine Pakete von meinem Router oder Switch bei der Kommunikation mit dem Inverter verworfen werden.
Die Kommunikation habe ich mit dem offiziellen Modul 2.8.1 getestet. In Wireshark konnte ich die UDP Kommunikation auf Port 9522 auch nachverfolgen... Zumindest die drei Pakete bis der Login Fehler auftritt.

Hier mal die drei Pakete aus Wireshark mit den Daten. Der Hashwert, welcher auch in Fhem angezeigt wird ist hier gut zu erkennen.
270675 365.073061 10.0.0.10 10.0.0.20 UDP 120 37889 ? 9522 Len=78
0000   60 f1 89 b8 c3 11 b8 27 eb 68 87 80 08 00 45 00  `......'.h....E.
0010   00 6a 74 35 40 00 40 11 b2 30 0a 00 00 0a 0a 00  .jt5@.@..0......
0020   00 14 94 01 25 32 00 56 89 f3 53 4d 41 00 00 04  ....%2.V..SMA...
0030   02 a0 00 00 00 01 00 3a 00 10 60 65 0e a0 2f 01  .......:..`e../.
0040   55 04 0a 73 00 01 e9 00 23 bb 59 07 00 01 00 00  U..s....#.Y.....
0050   00 00 01 80 0c 04 fd ff 07 00 00 00 84 03 00 00  ................
0060   cd 89 f8 58 00 00 00 00 db fd f6 f6 10 ca f7 10  ...X............
0070   b9 ba bc 88 00 00 00 00                          ........

270702 365.103052 10.0.0.20 10.0.0.10 UDP 108 9522 ? 37889 Len=66
0000   b8 27 eb 68 87 80 60 f1 89 b8 c3 11 08 00 45 00  .'.h..`.......E.
0010   00 5e 1c 4c 00 00 40 11 4a 26 0a 00 00 14 0a 00  .^.L..@.J&......
0020   00 0a 25 32 94 01 00 4a dc e9 53 4d 41 00 00 04  ..%2...J..SMA...
0030   02 a0 00 00 00 01 00 2e 00 10 60 65 0b e0 e9 00  ..........`e....
0040   23 bb 59 07 00 01 2f 01 55 04 0a 73 00 01 00 01  #.Y.../.U..s....
0050   00 00 01 80 0d 04 fd ff 07 00 00 00 84 03 00 00  ................
0060   cd 89 f8 58 00 00 00 00 00 00 00 00              ...X........

270705 365.105725 10.0.0.10 10.0.0.20 UDP 96 36833 ? 9522 Len=54
0000   60 f1 89 b8 c3 11 b8 27 eb 68 87 80 08 00 45 00  `......'.h....E.
0010   00 52 74 36 40 00 40 11 b2 47 0a 00 00 0a 0a 00  .Rt6@.@..G......
0020   00 14 8f e1 25 32 00 3e 33 54 53 4d 41 00 00 04  ....%2.>3TSMA...
0030   02 a0 00 00 00 01 00 22 00 10 60 65 08 a0 2f 01  ......."..`e../.
0040   55 04 0a 73 00 03 e9 00 23 bb 59 07 00 03 00 00  U..s....#.Y.....
0050   00 00 02 80 0e 01 fd ff ff ff ff ff 00 00 00 00  ................


Um einen Vergleich zu schaffen habe ich die Kommunikation mittels SBFspot, was bei mir ja funktioniert, auch nochmals aufgezeichnet. Hier beinhaltet die Kommunikation natürlich deutlich mehr Pakete, da es nach dem Login ja weiter geht.
Zum Vergleich aber auch nochmals die ersten drei Datenpakete von SBFSpot.

375565 986.457109 10.0.0.10 10.0.0.20 UDP 100 9522 ? 9522 Len=58
0000   60 f1 89 b8 c3 11 b8 27 eb 68 87 80 08 00 45 00  `......'.h....E.
0010   00 56 27 81 40 00 40 11 fe f8 0a 00 00 0a 0a 00  .V'.@.@.........
0020   00 14 25 32 25 32 00 42 da 3e 53 4d 41 00 00 04  ..%2%2.B.>SMA...
0030   02 a0 00 00 00 01 00 26 00 10 60 65 09 a0 ff ff  .......&..`e....
0040   ff ff ff ff 00 00 7d 00 53 c2 f3 36 00 00 00 00  ......}.S..6....
0050   00 00 01 80 00 02 00 00 00 00 00 00 00 00 00 00  ................
0060   00 00 00 00                                      ....

375567 986.475257 10.0.0.20 10.0.0.10 UDP 140 9522 ? 9522 Len=98
0000   b8 27 eb 68 87 80 60 f1 89 b8 c3 11 08 00 45 00  .'.h..`.......E.
0010   00 7e 23 f6 00 00 40 11 42 5c 0a 00 00 14 0a 00  .~#...@.B\......
0020   00 0a 25 32 25 32 00 6a 1b e1 53 4d 41 00 00 04  ..%2%2.j..SMA...
0030   02 a0 00 00 00 01 00 4e 00 10 60 65 13 a0 7d 00  .......N..`e..}.
0040   53 c2 f3 36 00 00 2f 01 55 04 0a 73 00 00 00 00  S..6../.U..s....
0050   00 00 01 80 01 02 00 00 00 00 00 00 00 00 00 00  ................
0060   00 03 00 00 00 ff 00 00 78 91 01 60 01 00 2f 01  ........x..`../.
0070   55 04 0a 73 00 00 0a 00 0c 00 00 00 00 00 00 00  U..s............
0080   03 00 00 00 01 01 00 00 00 00 00 00              ............

375568 986.475528 10.0.0.10 10.0.0.20 UDP 96 9522 ? 9522 Len=54
0000   60 f1 89 b8 c3 11 b8 27 eb 68 87 80 08 00 45 00  `......'.h....E.
0010   00 52 27 82 40 00 40 11 fe fb 0a 00 00 0a 0a 00  .R'.@.@.........
0020   00 14 25 32 25 32 00 3e ce 45 53 4d 41 00 00 04  ..%2%2.>.ESMA...
0030   02 a0 00 00 00 01 00 22 00 10 60 65 08 a0 ff ff  ......."..`e....
0040   ff ff ff ff 00 03 7d 00 53 c2 f3 36 00 03 00 00  ......}.S..6....
0050   00 00 02 80 0e 01 fd ff ff ff ff ff 00 00 00 00  ................

Vielleicht kann ja jemand aus den Hashwerten erschließen, was bei dem Login von SMAUtils und SBFspot anders läuft.
Hier könnte ich auch noch die ganze UDP Kommunikation zwischen SPFspot und dem Inverter nachliefern, falls es nützlich seien könnte.

Des Weiteren habe ich das Modul 2.8.3 auch getestet, wieder mit dem Passwort für "Benutzer", "Installateur" und Default. Bei allen drei bleibt es jedoch bei dem Login Fehler.

Nochmal der List des Devices mit neuem Modul:
Internals:
   DEF        0000 10.0.0.20
   HOST       10.0.0.20
   INTERVAL   20
   LASTUPDATE 20.04.2017 / 12:39:59
   NAME       PV_Inverter
   NR         73
   PASS       0000
   STATE      Login failed
   TYPE       SMAInverter
   VERSION    2.8.3
   Helper:
     DEFAULT_TARGET_SERIAL 4294967295
     DEFAULT_TARGET_SUSYID 65535
     FAULTEDCYCLES 0
     INTERVAL   20
     MAXBYTES   300
     MYSERIALNUMBER 123321123
     MYSUSYID   233
     PKT_ID     32769
   Readings:
     2017-04-20 12:39:59   modulstate      login failed
     2017-04-20 12:39:59   state           Login failed
Attributes:
   detail-level 2
   disable    0
   interval   20
   mode       manual
   room       Draußen
   suppressSleep 1
   target-serial 1930036309
   target-susyid 303
   verbose    5


Log mit Modul 2.8.3 und Default Passwort:
2017.04.20 12:39:59 4: PV_Inverter - ###############################################################
2017.04.20 12:39:59 4: PV_Inverter - ##########  Begin of new SMAInverter get data cycle  ##########
2017.04.20 12:39:59 4: PV_Inverter - ###############################################################
2017.04.20 12:39:59 4: PV_Inverter - timeout cycles since module start: 0
2017.04.20 12:39:59 4: PV_Inverter -> Start BlockingCall getstatus_DoParse
2017.04.20 12:39:59 4: PV_Inverter - current time: 20.04.2017 12:39:59
2017.04.20 12:39:59 4: PV_Inverter - operation time begin: 20.04.2017 05:48:16
2017.04.20 12:39:59 4: PV_Inverter - operation time end: 20.04.2017 21:01:37
2017.04.20 12:39:59 4: PV_Inverter - Send login to 10.0.0.20 on Port 9522 with password 0000
2017.04.20 12:39:59 5: PV_Inverter - Send: 534D4100000402A000000001003A001060650EA02F0155040A730001E90023BB590700010000000001800C04FDFF0700000084030000FF8FF85800000000B8B8B8B8888888888888888800000000
2017.04.20 12:39:59 5: PV_Inverter - Received: 534d4100000402a000000001002e001060650be0e90023bb590700012f0155040a7300010001000001800d04fdff0700000084030000ff8ff8580000000000000000
2017.04.20 12:39:59 1: PV_Inverter - Inverter answer does not match our parameters.
2017.04.20 12:39:59 5: PV_Inverter - Request/Response: SusyID 233/233, Serial 123321123/123321123, Packet ID 32769/32769, Command 0xFFFD040D/4294771725, Error 256
2017.04.20 12:39:59 4: PV_Inverter - Send logout to 10.0.0.20 on Port 9522
2017.04.20 12:39:59 5: PV_Inverter - Send: 534D4100000402A00000000100220010606508A02F0155040A730003E90023BB590700030000000002800E01FDFFFFFFFFFF00000000
2017.04.20 12:39:59 4: PV_Inverter - logged out now from inverter serial: 1930036309, susyid: 303
2017.04.20 12:39:59 5: PV_Inverter -> row_array before encoding:
2017.04.20 12:39:59 5: PV_Inverter -> state Login failed
2017.04.20 12:39:59 5: PV_Inverter -> modulstate login failed
2017.04.20 12:39:59 4: PV_Inverter -> BlockingCall getstatus_DoParse finished
2017.04.20 12:39:59 4: PV_Inverter -> Start BlockingCall getstatus_ParseDone
2017.04.20 12:39:59 5: PV_Inverter -> row_array after decoding:
2017.04.20 12:39:59 5: PV_Inverter -> state Login failed
2017.04.20 12:39:59 5: PV_Inverter -> modulstate login failed
2017.04.20 12:39:59 4: PV_Inverter -> BlockingCall getstatus_ParseDone finished


Zum Aufspielen der neuen Firmware auf den Inverter selbst kam ich bis jetzt noch nicht. Dies werde ich dann heute Nachmittag einmal machen und erneut mit den Modulen testen.

Edit:
Die Seite von SMA ist ja nicht schlecht, aber scheinbar stell ich mich doch etwas blöd an hier eine aktuelle Firmware zu finden :-\

moonglass

#272
Hallo Hassi95,

wie genau hast du die ganzen Informationen gefunden? In der Web Gui wird mir lediglich die Softwareversion angezeigt.

Diese ist bei mir die 2.5.1.R

Wegen Softwareupdate wirst du wohl kein Erfolg haben. Ich hatte damals mal mit dem SMA Service telefoniert, der gute mann meinte es gäbe zur Zeit nur diese eine
Firmware und wenn eine neue herauskommt dann macht der WR von allein ein Update über das SunnyPortal. Im Netz konnte ich auch keine Firmwaredatei finden.

Mein WR ist per Lan in mein Heimnetz eingebunden. Der WR ist aber auf einem anderen Grundstück ca 400m von mir entfernt und über eine Wlan Richtfunkverbindung zu mir angebunden.
Über diese Richtfunkverbindung beziehe ich auch meine Internet verbindung. Ich verwende 2 Lancom L-321agn Router mit pro Seite 2 Yagi Antennen und komme auf etwa 100mbit Netto Datenrate.
Das sieht ungefähr so aus:

WR -> per Lan zum Lancom Router - > Wlan Richtfunk -> Lancom Router per Lan an einem billigen 8 Port TP Link Switch -> Raspberry Pi 3 mit Jessie

Hier mal noch ein paar Bilder von meinem Testaufbau

Hassi95

Hallo moonglass,

die Informationen habe ich auch aus dem Webinterface des Wechselrichters entnommen.
Ausschlaggebend ist es sich als Installateur anzumelden, ansonsten werden nicht alle Parameter angezeigt.
Zu finden sind diese unter dem Punkt Geräteparameter - Typenschild
und unter Geräteparameter - Gerätekomponenten - Typenschild

Ja bei der Firmware dachte ich mir schon so etwas, da es für andere Wechselrichter von SMA auf der Homepage auch Firmwaredateien zum Download gibt.

DS_Starter

Hallo XGuide,

Zitateine Sache ist mir allerdings aufgefallen und ich wollte sie zuerst einmal hier diskutieren, da ich mir nicht sicher bin ob es ein fhem.pl Problem ist oder speziell bei diesem Modul auftritt.

scheint ein generelles Problem zu sein. Es betrifft auch andere Module. Habe bei mir festgestellt dass man genau einmal den verbose setzen kann, beim nächsten Wechsel geht er auf "undefined".

Normal setzen geht erst wieder nach Löschen des Attributes oder mit "attr device verbose Wert" in der Kommandozeile von FHEMWEB klappt es auch.

VG
Heiko
Proxmox+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

moonglass

Ok, das als Instalateur anmelden war der richtige weg  :P

Hier mal zu Vergleich gegenüber gestellt.


                                                                             Hassi95                          Moonglass

Softwarepaket:                                                     2.3.2.R                           2.5.1.R
Kommunikationsversion:                                       1.2.5.2                           1.2.5.2
Kommunikations-Bootloader Software-Version:    1.1.4.R                           1.1.4.R
Zeitzonendatenbank Software-Version:               1.0.1.R                            1.0.1.R

Hauptprozessor
Software-Version:                                                  2.3.1.R                           2.5.1.R
Hardware-Version:                                                 3                                    A1
Umbaustand:                                                         0                                    0
Seriennummer:                                                      1930036309                  193001****
SUSyID:                                                                  302                               302

Kommunikationsbaugruppe
Software-Version:                                                   2.3.2.R                          2.4.3.R
Hardware-Version:                                                  A2                                 A1
Umbaustand:                                                          0                                   0
Seriennummer:                                                       36309                           1****
SUSyID:                                                                   303                               303

DS_Starter

Hallo moonglass,

danke für die Zusammenstellung. Hier sieht man nun die Unterschiede deutlich.

Die Version 2.8.3 werde ich dann mal einchecken. Für Hassi95 hat sie zwar noch keinen Durchbruch gebracht, aber das liegt sicherlich an der etwas anderen Kommandostruktur seines WR und gemeinsam mit Thomas, wenn er sich meldet, bin ich zuversichtlich das wir das auch noch schaffen.

Kannst ja bitte, wenn noch nicht geschehen, die V 2.8.3 bei auch aktivieren.

... intereressanter Versuchsaufbau ...  ;)

Grüße
Heiko
Proxmox+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

moonglass

Danke  ;)

Ich warte noch auf weitere 2004 Displays und dann muss ich da mal ein Gehäuse drum herum bauen  :D

Ich habe eben die Version 2.8.3 eingebaut, funktioniert auf den ersten Blick genau so gut  :)
Wenn ich mal Zeit habe dann schau ich mir die Datei mal an ob ich die für meinen WR nicht vorhandenen Abfragen rausbekomme damit mein Log nicht so zugemüllt wird.
Der SunnyBoy 2.5 ist eben doch nur ein 1 Phasiger WR  :)

mfg Jens

DS_Starter

ZitatWenn ich mal Zeit habe dann schau ich mir die Datei mal an ob ich die für meinen WR nicht vorhandenen Abfragen rausbekomme damit mein Log nicht so zugemüllt wird.

Ja schau mal. Ich werde mir die Sache auch anschauen bzw. von dir dann übernehmen damit das Modul für alle wieder passt. Bin erstmal einige Zeit unterwegs und mache weiter wenn ich wieder Zeit habe ..

LG
Heiko
Proxmox+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

Xguide

Hallo Jens,

stelle doch verbose auf 1 und kommentiere die Zeilen aus die im Log auftauchen, die Zeile ist doch mit angegeben!
Dann bist du die Meldungen auch los und kannst erst einmal in Ruhe testen und schauen ob die Werte halbwegs passen.

Gruß Marcel
Zitat von: moonglass am 20 April 2017, 19:41:23
Danke  ;)

Ich warte noch auf weitere 2004 Displays und dann muss ich da mal ein Gehäuse drum herum bauen  :D

Ich habe eben die Version 2.8.3 eingebaut, funktioniert auf den ersten Blick genau so gut  :)
Wenn ich mal Zeit habe dann schau ich mir die Datei mal an ob ich die für meinen WR nicht vorhandenen Abfragen rausbekomme damit mein Log nicht so zugemüllt wird.
Der SunnyBoy 2.5 ist eben doch nur ein 1 Phasiger WR  :)

mfg Jens
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 -

moonglass

#280
Hallo Marcel,
ja so in der Richtung wollte ich an die Sache ran gehen. Aber wenn ich das jetzt für den Sunny Boy anpasse nützt es der Allgemeinheit doch nichts mehr weil bei 3 phasigen WR dann diese States nicht abgerufen werden oder?
Die Werte die gelesen werden Stimmen auf jeden Fall.

Jens

Xguide

Ich hatte auch an eine temporäre Version für dich gedacht, wir hoffen ja alle auf Thomas der hoffenlich Licht in das Dunkel der Kommunikation der WR bringt.

Ich habe auch seit Anfang an das Problem, dass mein WR sich als anderer ausgibt, was ich so erstmal nicht glauben kann. Allerdings sind meine sämtlichen Versuche gescheitert dem Ganzen auf die Spur zu kommen, so dass ich so langsam anfange zu akzeptieren, das mein WR ein Tiefstapler ist und sich als STP-5000 vorstellt, obwohl er ein STP-10000 ist.
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 -

sct14675

Servus zusammen,
Ich kann mir die Kommandos mal anschauen, ob ich was finde.
Dazu wär es extrem hilfreich, wenn jemand mit SBFspot einen Detail Trace erstellen kann:
./SBFspot -nocsv -d5 -v5 > output.txt
Das File bitte mir per PM schicken oder hier ins Forum stellen.
Und zum Vergleich was im Trace vom Modul mit maximalen Verbose abgespeichert wird.
Ich hab selbst keinen Sunnyboy, aber wenn SBFspot läuft seh ich keinen Grund, warum das nicht auch mit dem Modul gehen sollte!

tschüss,
Thomas

thor3

Hallo,
ich hatte vor einiger Zeit mal das Problem der Integration eines Sunny Boy 1.5 (meldet sich übrigens mit SUSyID 303)
da hatte ich auch immer den Login Fehler.
Ich konnte das Problem nur lösen, indem ich ein rein numerisches 4-stelliges Passwort in der Web-Gui des WR eingestellt habe.
Dann hat das funktioniert, allerdings nicht mit kryptischen alphanumerischen Passworten.
Dann gab es aber massig Fehlermeldungen im log und die Stromwerte waren nicht da, die Leistungen haben aber alle gepasst.

vielleicht hilft das ja weiter.

VG
FHEM auf RPI, diverse Sensoren ESP8266 mit ESPEasy am Strom-, Gas- , Wasserzähler, Signalduino, 7 FHT Heizkörperthermostate, Jarolift Jalousien mit AutoShutter, CAN-Bus Anbindung CoE, SMA Inverter, FBDECT

moonglass

Also bei mir gibt es damit kein Problem. Mein Passwort ist im Stil wie rR12345678
damit geht es.

Gruß Jens