76_SMAInverter.pm - Abfrage von SMA Wechselrichter

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

Vorheriges Thema - Nächstes Thema

Volker Kettenbach

Zitat von: DS_Starter am 03 Januar 2017, 18:06:47
Mein Vorschlag wäre für 76_SMAInverter das Git-Repository von Thomas zu verwenden. Es ist ja eigentlich sein Modul, ich
supporte es nur als Maintainer während er abwesend ist bzw. keine Zeit hat. Wenn er sich wieder zurück meldet würde ich ihm die Maintainer-Mütze
wieder aufsetzen.
[...]
Ansonsten schlage ich vor hier im Forum unter "Ankündigungen" das baldige Ende von SMASTP anzukündigen und die Nutzer auf einen Umstieg hinweisen. Die Idee so eine Meldung im Modul selbst zu hinterlegen finde ich auch klasse ... würde ich so machen.


Dann machen wir das so!

Kläre Du mal mit Thomas den verbleib des neue  Moduls in seinem Repository.

Ich werde dann:
- in meinem Git-Repo auf das neue verlinken Git-Repo und das Modul aus meinem entfernen
- ich kündige das Ende vom 77_SMASTP in allen relevanten Threads an
- ich lade eine neue Version von 77_SMASTP ins hoch, die den Deprecated Hinweis enthält
- in ein paar Monaten entfernen ich dann das 77_SMASTP komplett aus dem SVN

Gruß
VK

P.S.: werde die Tage auch mal auf 76_SMAInverter upgraden. Ein paar Readings ändern sich, aber macht ja nix.

sct14675

Servus zusammen,
erstmal ein gutes neues!

Die Vorgehensweise ist für mich ok!
>> Ich hoffe ich hab ab Februar wieder mehr Zeit für das Modul... Danke an DS_Starter für die Pflege!

tschüss,
Thomas

Paul Guijt

Hallo zusammen,

Ich habe ein Sunny Boy 1.5 und möchte es mit FHEM auslesen.

Mein Ethernet topology ist 192.168.178.*, WebConnect ist aktiv auf 192.168.178.22. Darin steht aber unter Speedwire 192.168.0.170 als IP-adresse. Modbus (TCP und UDP) sind nicht aktiviert.

Ich habe schon 'define Inverter SMAInverter password 192.168.178.22' und 'define Inverter SMAInverter password 192.168.0.170' versucht, aber ohne erfolg.

Was kann oder soll ich tun?

Grüße,
Paul
RasPi 2B, CUL 433, Jens' FW, Berker, HomeMatic, KlikaanKlikuit, RFXtrx443, Squeezebox, Z-Wave, TradFri in die Niederlände

sct14675

Hallo!
Hast du als Passwort wirklich 'password'?
Probier hier mal 0000 >> das ist der Standard-Login für User.

tschuess,
Thomas

Straightforward

Zitat von: Paul Guijt am 07 Januar 2017, 15:58:22
Hallo zusammen,

Ich habe ein Sunny Boy 1.5 und möchte es mit FHEM auslesen.

Mein Ethernet topology ist 192.168.178.*, WebConnect ist aktiv auf 192.168.178.22. Darin steht aber unter Speedwire 192.168.0.170 als IP-adresse. Modbus (TCP und UDP) sind nicht aktiviert.

Ich habe schon 'define Inverter SMAInverter password 192.168.178.22' und 'define Inverter SMAInverter password 192.168.0.170' versucht, aber ohne erfolg.

Was kann oder soll ich tun?

Grüße,
Paul

Was bedeutet ohne Erfolg? Was geht denn nicht, bzw. was sagt das LogFile?

Volker Kettenbach

Hallo Heiko, Thomas,

ich - wie besprochen -  habe ein 77_SMASTP einen Hinweis eingebaut, dass das Modul deprecated ist.
Dann habe ich noch einen Pull-Rewquest für 76_SMAInverter erstellt, dass die Doku nach MD konvertiert und den 10000-TLS20 als getestetes Gerät  hon zu fügt.

Gruß
Volker

Tip: MD (MArkDown) ist viel einfacher als HTML!

Volker Kettenbach

Ich habe 76_SMAInverter erfolgreich mit einem SMA STP 10000-TL20 in Betrieb.

Interessanterweise bei bei Detail-Level 2 jedoch ein 5000 als Modell ausgegeben:


Xguide

Hallo Volker,

der Fehler ist bekannt.
Ich habe den gleichen Fehler bei einem STP 10000-TL10 und wir haben das hier im Thread auch schon mehrfach ohne Lösungsansatz diskutiert. Entweder wird der Wert falsch geparst oder einige Wechselrichter liefern wirklich INV_TYPE 9098 zurück obwohl sie keiner sind. Was dagegen spricht ist, dass im SunnyPortal die richtige ID angezeigt wird. Heiko hat glücklicherweise einen 5000er, somit stellt sich bei ihm die Frage nicht.

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 -

Xguide

kleiner Nachtrag:

Meines Erachtens muss es ja in diesem Stück Code passieren (Zeile 1188ff) oder wie seht ihr das?

if($data_ID eq 0x821E) {
     $inv_CLASS = unpack("V*", substr $data, 102, 4) & 0x00FFFFFF;
$inv_TYPE = unpack("V*", substr $data, 142, 4) & 0x00FFFFFF;
Log3 $name, 5, "$name - Found Data CLASS=$inv_CLASS and TYPE=$inv_TYPE";
return (1,$inv_TYPE,$inv_CLASS,$inv_susyid,$inv_serial);
}

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

Ich habe dem Ganzen noch mal ein paar Minuten gegönnt, aber ich kenne mich mit Perl viel zu wenig aus und irgendwie verwirrt mich das alles :-(

Für mich auffällig, dass bei Inv_Type direkt die 9098 rauskommt und bei Inv_Class 16785217 welches dann bitwise interpretiert zu 8001 wird. Kann man irgendetwas machen um $data leserlich zu bekommen?


     $inv_CLASS = unpack("V*", substr $data, 102, 4) & 0x00FFFFFF;
$inv_TYPE = unpack("V*", substr $data, 142, 4) & 0x00FFFFFF;
Log3 $name, 5, "$name - Found Data CLASS=$inv_CLASS and TYPE=$inv_TYPE";
Log3 $name, 5, "$name - MS Debugging - Data: ".$data;
Log3 $name, 5, "$name - MS Debugging - Data unpacked: ".unpack("V*", $data);
Log3 $name, 5, "$name - MS Debugging - inv TYPE: ".substr $data, 142, 4;
Log3 $name, 5, "$name - MS Debugging - inv TYPE unpack: ".unpack("V*", substr $data, 142, 4);
Log3 $name, 5, "$name - MS Debugging - Inv Class: ". substr $data, 102, 4;
Log3 $name, 5, "$name - MS Debugging - Inv Class unpack: ".unpack("V*", substr $data, 102, 4);
my $testCmd = "9067";
my $testData = pack("V*",$testCmd);
Log3 $name, 5, "$name - MS Debugging - stupid test pack: ".$testData;
         my $testData = unpack("V*",$testData);
Log3 $name, 5, "$name - MS Debugging - stupid test unpack: ".$testData;



2017.01.09 15:27:36 5: SMA_TriPower10 - Data identifier 33310
2017.01.09 15:27:36 5: SMA_TriPower10 - Found Data CLASS=8001 and TYPE=9098
2017.01.09 15:27:36 5: SMA_TriPower10 - MS Debugging - Data: SMA��`e1��#�Y��`.�X��@sXSN: 305001234��@sXA��� ��@sX�#�#�#�#�#A$B$C$ ��@sX���
2017.01.09 15:27:36 5: SMA_TriPower10 - MS Debugging - Data unpacked: 4279635
2017.01.09 15:27:36 5: SMA_TriPower10 - MS Debugging - inv TYPE: �#
2017.01.09 15:27:36 5: SMA_TriPower10 - MS Debugging - inv TYPE unpack: 9098
2017.01.09 15:27:36 5: SMA_TriPower10 - MS Debugging - Inv Class: A
2017.01.09 15:27:36 5: SMA_TriPower10 - MS Debugging - Inv Class unpack: 16785217
2017.01.09 15:27:36 5: SMA_TriPower10 - MS Debugging - stupid test pack: k#
2017.01.09 15:27:36 5: SMA_TriPower10 - MS Debugging - stupid test unpack: 9067


Freue mich über eure Tipps.....
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 -

liumertz

Hallo!

ich beiße mir gerade etwas die Zähne aus.

ich bekomme bei mir immer die Meldung "Cannot load module SMAInverter".
Im logfile steht dann diese Zeile drin.

Zitat2017.01.17 22:11:26 0: Too many arguments for main::RemoveInternalTimer at ./FHEM/76_SMAInverter.pm line 410, near ""SMAInverter_GetData")"
BEGIN not safe after errors--compilation aborted at ./FHEM/76_SMAInverter.pm line 614.

Ich vermute stark, dass es mit der hiRes zusammen hängt aber ich komme hier nicht wirklich weiter.

Für einen Wink mit dem Zaunpfahl wäre ich euch echt dankbar.

edit:
ach ja und natürlich

lg
Uli

DS_Starter

Hallo Uli,

es ist ganz stark zu vermuten dass dein fhem bzw. deine fhem.pl im speziellen zu alt ist.
SMAInverter nutzt Funktionen die es so ab ca. August ? 2016 erst gibt.

Mach mal ein update und schau ob es dann geht. hiRes ist es nicht.

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

Xguide

Hallo Uli,

ist dein fhem aktuell? Versioninfo wird in der neusten 76_ SMAInverter Version unter Internals angezeigt!
Setze doch noch mal das Attribut verbose für den SMA Inverter hoch auf 5 und poste mal alles was so passiert. verbose 5 setzen, einmal get data und dann wieder runter damit dein log nicht zu voll wird.
Vielleicht stellst du auch noch das Ergebnis von einem list devicename zur Verfügung.

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 -

DS_Starter

Hallo Marcel, Volker,

sorry dass ich mich grad hier etwas rar gemacht habe aber ich hoffe ich habe bald Gelegenheit hier wieder mehr präsent zu sein !

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

Xguide

Hallo Heiko,

kein Stress. Schönes Doppelposting gerade, wobei du 2 Minuten schneller warst :-) Mein Kodi stresste mich gerade etwas  >:(

Wenn Du mal Zeit hast, wirf mal bitte einen Blick auf meine Frage bzgl. der Interpretation der Hashes. Ggf. fällt dir ja was auf/ein.

Danke und 'nen schönen Abend,

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 -