[36_Senec.pm] FHEM module zur Integration eines SENEC Speicher und MeinSenec

Begonnen von carlos, 12 November 2021, 15:22:44

Vorheriges Thema - Nächstes Thema

carlos

Hallo,

Ich habe wie hier https://forum.fhem.de/index.php/topic,107265.msg1178398.html#msg1178398 versprochen ein modul zur Integration eines SENEC Speicher erstellt

Definition in FHEM
Zum Anlegen eines Senec Devices könnt Ihr folgende Definitionen verwenden:

define <Name> Senec <email> <passwort> <IP-Adresse>

define <Name> Senec <email> <passwort> <IP-Adresse>
Dann noch das Abruf interval für den lokalen SENEC Speicher setzen bzw.
das intervalmeinsenec für den WEB Abruf von der MeinSenec Seite setzen und
schon bekommt ihr die entsprechenden Daten.

Da dies  mein erstes Modul für FHEM ist, habe ich von anderen Modulen einiges übernommen.
Zu nennen sind hier DS_Starter mit seinen Synology Modulen und dem Solarforcast Modul.

Bitte seht mir nach wenn noch Fehler drin sind oder mancher es anders/besser implementiert hätte.

Ich bin für Anregungen und Verbesserungsvorschläge dankbar und werde sie entsprechend umsetzen.

Bitte testen und in diesem Thread berichten.

Diese Modul befindet sich aktuell im BETA Status. Benutzung nur auf eigene Gefahr!

Bitte immer ein log mit anhängen bei Fehlern!

Da bei einigen das DateTime package nicht installiert ist, bitte das unbedingt installieren:
sudo cpan install DateTime
Ist eigentlich auch in dem debian package libdatetime-perl dabei und kann auch mit
apt install libdatetime-perlinstalliert werden.

edit: 28.03.2023 
Neue Version 2.07.00:
- Bug Fix für das Problem, dass durch das Technikpaket eine Wallbox konfiguriert ist, aber physikalisch keine vorhanden ist.
  von cjung gemeldet.

edit: 12.03.2023 
Neue Version 2.06.00:
- Kleinere Fixes
- Stabilität verbessert, vor allem ein besseres Error handling sowohl bei den lokalen calls als auch bei den api calls
  keine neue Funktionen


edit: 31.12.2022 
Neue Version 2.05.00:
- Fix readingsupdate Problem
- Stabilität verbessert und Bugs gefixt
  keine neue Funktionen

edit: 07.12.2022 
Neue Version 2.03.00:
- Sonderfall: Car feature verfügbar, aber keine Wallbox konfiguriert gefixed.

edit: 06.12.2022 
Neue Version 2.02.00:
- DateTime problem gefixed.
  Web Ansicht verschönert mit Wallbox und Socket Anzeige (Bitte testen wer das feature hat)
  Zur Sicherheit die alte 2.00.0 Version noch im Anhang

edit: 05.10.2022 
Neue Version 2.00.00:
- Integration der OpenWB über das Attribute OpenWB möglich.
  Net::MQTT::Simple ist dafür nicht mehr nötig, da alles über die MQTT2 Funktionalität von FHEM funktioniert
  Im Kommentar ist beschrieben wie man die bridge und den client definieren muss. Kann man im Prinzip so übernehmen.
  Desweiteren ist die Sockets Geschichte ansatzweise mit drin. Werden abgefragt und sind in DATA einzusehen.
  Wenn  feature vorhanden.
  Auch dabei sind die Temperaturen des Gehäuses, MCU und Battery.
  Bitte Feedback geben.

edit: 16.06.2022 
Neue Version 1.16.00:
- Integration einer OpenWB.
  Bitte unbedingt
  Anbei ein Screen meiner Attribute.
  Es werden EVU,PV und Batterie Werte per MQTT an den OpenWB broker geschickt.
- Neuer Report BMS um die Module Temperaturen und Voltage zu überwachen.
- Bei Report Tage, Monat und Jahr wird auch die Info mit angezeigt.
Bitte unbedingt mit
sudo cpan install Net::MQTT::Simple das MQTT::Simple installieren.

edit: 23.05.2022 
Neue Version 1.15.00:
Mein Speicher läuft seit ca. 2 Wochen wieder mit dieser Version
- Check auf mehrere Anlagen und Abgleich mit der lokalen Anlage.
- Änderunge bei der Integration der Wallbox steuerung (bitte testen und feedback geben, da ich keine SENEC Wallbox habe.
  Seit gestern eine OpenWB)
- Umstellung der Anzeige in kWh/kW oder Wh/W


edit: 01.03.2022 
Komplett neue Version:
- Umstellung aller calls auf non blocking
- Integration der Wallbox steuerung (bitte testen und feedback geben)
- Statistiken werden über die api calls aus der SENEC APP abgerufen.

Bitte unbedingt die neue Version benutzen.
Bitte vorher das alte device löschen und dann mit der neuen Version neu anlegen.


Gruß

Hubert
FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

xerion

Super. Danke für deine Arbeit. Habe schon installiert.
Wenn man  MeinSenec abfragt stürzt FHEM ab bzw. startet neu :-(
Ich werde die nächste Tage mal versuchen zu loggen.
Melde mich wieder.

EDIT: Log angehangen
Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

carlos

Hallo,
Es wird ein extra log geschrieben im log Verzeichnis mit dem Namen des devices.
Bitte mit anhängen zur Fehler Suche.
Gruß

Hubert
FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

bkappler

Hallo,

sieht ja schon richtig gut aus!!! Habe allerdings das gleiche Problem wie von xerion beschrieben.

"set mySenec MeinSenecRequest" bringt Fhem zum Absturz.
Im fhem log erscheint:

Can't locate object method "new" via package "HTTP::Cookies" at ./FHEM/36_Senec.pm line 1087.

Was sich auf folgenden Code bezieht:

  my $cookie_jar = HTTP::Cookies->new(
     file     => "./cookies.lwp",
     autosave => 1,
  );

im Senec.log stehen nur die "normalen" update_helper Messages:

2021-11-12 17:33:17 [FHEM::Senec::update_helper] FACTORY: MAX_CHARGE_POWER_DC = 1875.00
2021-11-12 17:33:17 [FHEM::Senec::update_helper] FACTORY: DESIGN_CAPACITY = 7500.00
2021-11-12 17:33:17 [FHEM::Senec::update_helper] FACTORY: BAT_TYPE = SENEC.Inverter V3 LV
2021-11-12 17:33:17 [FHEM::Senec::update_helper] ENERGY: GUI_INVERTER_POWER = -0.00

Gruß
    Bernhard



carlos

Dann installiert mal bitte das libhttp-cookies-perl package, dann sollte der Fehler weg sein.
Gruß

Hubert
FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

xerion

Zitat von: carlos am 12 November 2021, 18:05:39
Dann installiert mal bitte das libhttp-cookies-perl package, dann sollte der Fehler weg sein.
Gruß

Hubert
Bei mir ist es schon vorhanden gewesen.
libhttp-cookies-perl ist schon die neueste Version (6.04-1).
Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

carlos

Kannst du mal mit cpan -l schauen ob HTTP::Cookies   6.04 installiert ist.
Ansonsten mit cpan HTTP::Cookies installieren.

Gruß

Hubert
FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

xerion

Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

carlos

Kannst du bitte
use HTTP::Cookies;

im Module einfügen und testen ob der Fehler immer noch kommt.

Gruß

Hubert
FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

xerion

Das war es es jetzt stürzt FHEM nicht mehr ab und die Verbindung wird aufgebaut. 8)
Danke.
Ich würde mich  freuen, wenn du meinen Einladungscode für Tibber, der Stromanbieter, der dir hilft, deinen Stromverbrauch zu verstehen und zu reduzieren, nutzt: https://invite.tibber.com/5fc08jbs. So bekommen wir beide 50 Euro und 100 % Ökostrom / https://geld-fuer-eauto.de/ref/334561880

bkappler

Danke! Damit läuft es bei mir auch.

Wäre toll wenn dein Modul auch die SENEC Wallbox unterstützen könnte. Die aktuellen Daten lassen sich auch aus dem Speicher auslesen. Konfigurieren läßt sich die Wallbox aber nur über die Mobil App. Ich habe mir daher heute mal die API Calls angeschaut und in eine "Postman" Collection gepackt: https://www.getpostman.com/collections/700b1361b98aca3f977f

Über dieses API bekommt man alle Daten der Mobile App (Statistk / Verlauf / ... und kann auch die Wallbox konfigurieren). Für dein SENEC Modul sollte sich damit das einlesen der Tages / Monats / Jahres Statistik automatisieren lassen.

Grüße
     Bernhard

carlos

Hallo Bernhard,
Da ich keine Wallbox habe, habe ich diese auch nicht unterstützt.
Ich kann versuchen diese noch mit zu unterstützen, wäre dann zum testen auf deine Hilfe angewiesen.
Wenn das feature aktiviert ist kann man aus dem lokalen Speicher und aus MeinSenec jede Menge Daten abrufen.
Kannst du mir mal einen Screen shot von beiden schicken, damit ich das mal analysieren kann, wie man es implementieren könnte.
Noch besser wäre folgendes json:

https://mein-senec.de/endkunde/api/status/getstatusoverview.php?anlageNummer=0&username=<deineemail.de>&password=<deinpassword>

Ob da irgendwelche Daten über die Wallbox dabei sind.
Gruß

Hubert
FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

bkappler

Hallo Hubert,

ich habe hier mal alle Informationen der verschiedenen SENEC APIs und Beispiel JSON Daten meiner Anlage zusammengestellt. Es sind auch Beispiel Daten der Wallbox dabei.
Wenn es die Zeit zulässt versuche ich auch zum SENEC Modul beizutragen. Vor allem wäre es interessant das API der SENEC APP einzubinden um die Wallbox zu steuern.

Lala.cgi: https://documenter.getpostman.com/view/10329335/UVCB9ihZ
mein-senec: https://documenter.getpostman.com/view/10329335/UVCB9ihY
senec app api: https://documenter.getpostman.com/view/10329335/UVCB9ihW

Gruß
    Bernhard

carlos

Zur Info, es wird demnächst eine neue verbesserte Version geben mit SENEC Wallbox anbindung.
Gruß

Carlos
FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

Uwe Ernst

Hallo Carlos
Seit ca. 3 Tagen werden die täglichen Werte nicht mehr eingelesen, bzw.angezeigt.