neues Modul: 98_mypowerrouter.pm (Ersatz für Cloudservice mypowerrouter.com)

Begonnen von macfly, 02 Februar 2021, 12:21:16

Vorheriges Thema - Nächstes Thema

Raspi-Fan

Hallo macfly,

danke für die schnelle Antwort. Ja ,  das wäre gut wenn Du eine Routine für die Übertragung zur Cloud integrieren könntest, zu und abschaltbar durch attribute ??? Ich arbeite immer  mit minimalen Ressourcen, in diesem Fall mit dietpi. In dietpi  fehlt der php Interpreter.  Vielleicht kann man den online Status mit einem Ping auf den Server ( Cloud ) vor der Routine prüfen und so verhindern das fhem  hängen bleibt.  Da ich aber kein Perl Experte bin kann ich das nicht beurteilen, ob es geht oder nicht.

Viele Grüße
Raspi-Fan
Nutzer von Rasberry-Pi, Hardwareorientiert plus Homatic Komponenten, Anwendung: Heizungsteuerung, Rollladen, Alarmanlage mit Rauchmeldern, Türsensoren
Steuerung einer Wärmepumpe, Zigbee über iobroker, Thermostate, Steckdosen, piVccu, Homatic IP

macfly

Zitat von: Raspi-Fan am 09 April 2021, 11:50:16
Hallo macfly,

danke für die schnelle Antwort. Ja ,  das wäre gut wenn Du eine Routine für die Übertragung zur Cloud integrieren könntest, zu und abschaltbar durch attribute ??? Ich arbeite immer  mit minimalen Ressourcen, in diesem Fall mit dietpi. In dietpi  fehlt der php Interpreter.  Vielleicht kann man den online Status mit einem Ping auf den Server ( Cloud ) vor der Routine prüfen und so verhindern das fhem  hängen bleibt.  Da ich aber kein Perl Experte bin kann ich das nicht beurteilen, ob es geht oder nicht.

Viele Grüße
Raspi-Fan

Hi,

anbei das Modul mit eingebauter proxyoption.

Das Modul hat jetzt zwei neue Attribute:
proxy 0|1  -  schaltet das weiterleiten der Daten aus oder an
proxyhost -  default 77.222.80.91 - der host, an den die events und logs weitergeleitet werden. Aktuell löst logging1.powerrouter.com auf diese IP auf. Falls die sich ändern sollte, müsstest du die IP als Attribut modifizieren.

Magst du das mal testen?

Gruß,
Friedhelm

Raspi-Fan

Hallo macfly,
super, vielen Dank für die schnelle Optionenauswahl mit dem Modul update . Nachdem ich die perlibrary  (libwww-curl-perl) geladen hatte, lief das Modul wieder soweit. Nur die Daten zum Server (Cloud ) werden nicht weitergeleitet. ( attr proxy 1 ) Curl ist installiert..der ping auf den nedap server funktioniert auch.

In der log erhalte ich im Minutentakt den Fehler

2021.04.12 12:21:53 1: nedap: result from nedap: 0, {"status":"error"}
könnte es an Zeile 244 liegen ???
$curl->setopt(CURLOPT_USERAGENT, "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/39.0.2171.65 Chrome/39.0.2171.65 Safari/537.36" );
Ich habe keinen Browser bisher installiert oder gibt die Zeile curl an in welchem modus kommunziert wird. Sorry, dass ich noch einmal Deine Hilfe brauche.

Danke

Raspi-Fan
Nutzer von Rasberry-Pi, Hardwareorientiert plus Homatic Komponenten, Anwendung: Heizungsteuerung, Rollladen, Alarmanlage mit Rauchmeldern, Türsensoren
Steuerung einer Wärmepumpe, Zigbee über iobroker, Thermostate, Steckdosen, piVccu, Homatic IP

macfly

Zitat von: Raspi-Fan am 12 April 2021, 12:41:08
Hallo macfly,
super, vielen Dank für die schnelle Optionenauswahl mit dem Modul update . Nachdem ich die perlibrary  (libwww-curl-perl) geladen hatte, lief das Modul wieder soweit. Nur die Daten zum Server (Cloud ) werden nicht weitergeleitet. ( attr proxy 1 ) Curl ist installiert..der ping auf den nedap server funktioniert auch.

In der log erhalte ich im Minutentakt den Fehler

2021.04.12 12:21:53 1: nedap: result from nedap: 0, {"status":"error"}
könnte es an Zeile 244 liegen ???
$curl->setopt(CURLOPT_USERAGENT, "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/39.0.2171.65 Chrome/39.0.2171.65 Safari/537.36" );
Ich habe keinen Browser bisher installiert oder gibt die Zeile curl an in welchem modus kommunziert wird. Sorry, dass ich noch einmal Deine Hilfe brauche.

Danke

Raspi-Fan

Der useragent ist nur eine Zeichenkette - dafür muss nichts installiert sein.

Kannst du bitte mal als Attribut proxyhost 77.222.80.91 explizit setzen?

Raspi-Fan

Hallo macfly,

habe das attribute proxyhost gesetzt, gelöscht und gesetzt. Leider keine Änderung...immer noch der gleiche Fehler. keine Datentransfers zum Server IP 77.222.8091 und Fehlereintrag in der log. Könnte es daran liegen das der Server kein gültiges Zertifikat hat ???

VG

Raspi-Fan
Nutzer von Rasberry-Pi, Hardwareorientiert plus Homatic Komponenten, Anwendung: Heizungsteuerung, Rollladen, Alarmanlage mit Rauchmeldern, Türsensoren
Steuerung einer Wärmepumpe, Zigbee über iobroker, Thermostate, Steckdosen, piVccu, Homatic IP

macfly

Zitat von: Raspi-Fan am 14 April 2021, 10:20:43
Hallo macfly,

habe das attribute proxyhost gesetzt, gelöscht und gesetzt. Leider keine Änderung...immer noch der gleiche Fehler. keine Datentransfers zum Server IP 77.222.8091 und Fehlereintrag in der log. Könnte es daran liegen das der Server kein gültiges Zertifikat hat ???

VG

Raspi-Fan

ich denke, dass 77.222.8091 ein tippfehler ist, ansonsten spendiere nochmal einen Punkt ;-)
SSL hat hier nix zu tun, der Post erfolgt tatsächlich als http ohne s.

poste hier mal bitte ein list deines Devices.

Wenn dein Device also blubs heißt, tipp bitte in das Eingabefeld im Webfrontend von fhem ein: list blubs und füge das Ergebnis hier ein (als code bitte formatieren).

Raspi-Fan

Hallo macfly,

der Tippteufel hat das Pünktchen vergessen. Im Modul war es richtig...hier der Device list. Name ist p_rout

Internals:
   CFGFN     
   CONNECTS   5
   DEF        80
   FD         10
   FUUID      6078034d-f33f-068b-267b-62fece613678fd1a
   NAME       p_rout
   NR         45
   PORT       80
   STATE      Initialized
   TYPE       Mypowerrouter
   READINGS:
     2021-04-15 10:16:01   Battery_status  19779
     2021-04-15 10:16:01   DCAC_status     7955
     2021-04-15 10:16:01   GridSensor_status 1299
     2021-04-15 10:16:01   I_1_solar       4.14
     2021-04-15 10:16:01   I_2_solar       8.03
     2021-04-15 10:16:01   I_L1            18.94
     2021-04-15 10:16:01   I_L2            0.65
     2021-04-15 10:16:01   I_L3            1.15
     2021-04-15 10:16:01   I_batt          -0.58
     2021-04-15 10:16:01   I_charge        89.2
     2021-04-15 10:16:01   I_discharge     0
     2021-04-15 10:16:01   P_1_solar       1764
     2021-04-15 10:16:01   P_2_solar       2972
     2021-04-15 10:16:01   P_L1            -4308
     2021-04-15 10:16:01   P_L2            84
     2021-04-15 10:16:01   P_L3            223
     2021-04-15 10:16:01   P_batt          -14
     2021-04-15 10:16:01   P_bus_dcac      -4341
     2021-04-15 10:16:01   P_grid_dcac     -4373
     2021-04-15 10:16:01   P_grid_platform -4001
     2021-04-15 10:16:01   P_local         -27
     2021-04-15 10:16:01   P_solar         4795
     2021-04-15 10:16:01   Platform_status 19731
     2021-04-15 10:16:01   SOC             100
     2021-04-15 10:16:01   Solar_status    50243
     2021-04-15 10:16:01   T_1_solar       33
     2021-04-15 10:16:01   T_2_solar       33
     2021-04-15 10:16:01   T_batt          19.3
     2021-04-15 10:16:01   T_batt_module   38.9
     2021-04-15 10:16:01   T_dcac          55.2
     2021-04-15 10:16:01   T_platform      28
     2021-04-15 10:16:01   V_1_solar       424.59
     2021-04-15 10:16:01   V_2_solar       370.11
     2021-04-15 10:16:01   V_L1            240.9
     2021-04-15 10:16:01   V_L2            238.2
     2021-04-15 10:16:01   V_L3            238.3
     2021-04-15 10:16:01   V_batt          27.5
     2021-04-15 10:16:01   V_bus_dcac      422.13
     2021-04-15 10:16:01   V_charge        27.48
     2021-04-15 10:16:01   V_discharge     21
     2021-04-15 10:16:01   V_grid_dcac     242.8
     2021-04-15 10:16:01   V_grid_platform 242.3
     2021-04-15 10:16:01   V_local         241.2
     2021-04-15 10:16:01   W_L1_consumed   3228.3
     2021-04-15 10:16:01   W_L2_consumed   9938.2
     2021-04-15 10:16:01   W_L3_consumed   17882.4
     2021-04-15 10:16:01   W_battery_consumed 1811.343
     2021-04-15 10:16:01   W_battery_produced 1508.572
     2021-04-15 10:16:01   W_dcac_consumed 23.17
     2021-04-15 10:16:01   W_dcac_produced 42869.318
     2021-04-15 10:16:01   W_local_dcac_consumed -61.262
     2021-04-15 10:16:01   W_platform_consumed 13912.176
     2021-04-15 10:16:01   W_platform_produced 21440.973
     2021-04-15 10:16:01   W_solar_1_produced 23731.393
     2021-04-15 10:16:01   W_solar_2_produced 25837.322
     2021-04-15 10:16:01   W_solar_produced 49568.715
     2021-04-15 10:16:01   f_dcac          49.98
     2021-04-15 10:16:01   f_platform      49.98
     2021-04-15 11:16:13   powerrouter_id  9561773D716B7014
     2021-04-15 11:11:41   state           Initialized
     2021-04-15 11:16:13   time_send       2021-04-15T11:16:01+01:00
Attributes:
   proxy      1
   proxyHost  77.222.80.91
   room       Powerrouter

Ich kenne mich mit dem Perl programieren nicht gut aus, beim Ausdruck des Moduls habe ich gesehen das die Routine 2 mal angelegt ist. Die Funktion konnte ich aber nicht verstehen, jeweils  # do proxy request to mypowerrouter.com

VG

Raspi-Fan
Nutzer von Rasberry-Pi, Hardwareorientiert plus Homatic Komponenten, Anwendung: Heizungsteuerung, Rollladen, Alarmanlage mit Rauchmeldern, Türsensoren
Steuerung einer Wärmepumpe, Zigbee über iobroker, Thermostate, Steckdosen, piVccu, Homatic IP

macfly

anbei das gleiche modul mit mehr debugging. Kannst du das bitte mal aktivieren und hier posten, was p_rout in das fhem-log ausgibt?


Raspi-Fan

hi,

hier das ergebnis des Modul mit debug-logs

2021.04.15 14:23:14 1: p_rout: doing curl to http://77.222.80.91/logs.json
2021.04.15 14:23:14 1: p_rout: buffer: POST /logs.json HTTP/1.1
Connection: close
Accept: */*
Content-Type: application/json
Host: logging1.powerrouter.com
Content-Length: 1198

{"header":{"powerrouter_id":"9561773D716B7014","time_send":"2021-04-15T14:23:01+01:00","version":3,"period":60},"module_statuses":[{"module_id":16,"status":18707,"version":1,"param_0":5000,"param_1":2431,"param_2":260,"param_3":-3505,"param_4":21448721,"param_5":13912177},{"module_id":9,"status":7955,"version":1,"param_0":5000,"param_1":2439,"param_2":-4099,"param_3":42878383,"param_4":23170,"param_5":2420,"param_6":-25,"param_7":-61317,"param_8":40816,"param_9":-4074,"param_10":508},{"module_id":136,"status":19779,"version":1,"param_0":2752,"param_1":-38,"param_2":-11,"param_3":1508572,"param_4":1811377,"param_5":100,"param_6":285,"param_7":186,"param_8":411,"param_9":2752,"param_10":8920,"param_11":2100,"param_12":0},{"module_id":12,"version":1,"status":49219,"param_0":39546,"param_1":565,"param_2":2238,"param_3":23735715,"param_4":340,"param_5":39262,"param_6":560,"param_7":2197,"param_8":25842839,"param_9":320,"param_10":4437,"param_11":49578554},{"module_id":11,"status":1299,"version":1,"param_0":2420,"param_1":1759,"param_2":-4030,"param_3":3228300,"param_4":2399,"param_5":128,"param_6":284,"param_7":9938500,"param_8":2398,"param_9":124,"param_10":247,"param_11":17883100}]}
2021.04.15 14:23:14 1: p_rout: result from nedap: 0, {"status":"error"}


VG

Raspi-Fan


Nutzer von Rasberry-Pi, Hardwareorientiert plus Homatic Komponenten, Anwendung: Heizungsteuerung, Rollladen, Alarmanlage mit Rauchmeldern, Türsensoren
Steuerung einer Wärmepumpe, Zigbee über iobroker, Thermostate, Steckdosen, piVccu, Homatic IP

macfly

ja, sch*** dummer Fehler ...

anbei die nächste Version ...

Magst du nochmal testen?

Raspi-Fan

Hallo macfly,

vielen, vielen dank, funktioniert super. Nun kann ich die daten vorort mit denen auf dem Server abgleichen. Es gibt Unterschiede bei der Batterie, W_battery_consumed und W_battery_produced weichen vom Server ab. In deinem Modul habe ich nun die DEBUG zeilen mit # inaktiviert.

Nochmals vielen Dank... alles Gute..blieb gesund.

VG Raspi-Fan

Reiner
Nutzer von Rasberry-Pi, Hardwareorientiert plus Homatic Komponenten, Anwendung: Heizungsteuerung, Rollladen, Alarmanlage mit Rauchmeldern, Türsensoren
Steuerung einer Wärmepumpe, Zigbee über iobroker, Thermostate, Steckdosen, piVccu, Homatic IP

macfly

Zitat von: Raspi-Fan am 22 April 2021, 14:50:19
vielen, vielen dank, funktioniert super. Nun kann ich die daten vorort mit denen auf dem Server abgleichen. Es gibt Unterschiede bei der Batterie, W_battery_consumed und W_battery_produced weichen vom Server ab. In deinem Modul habe ich nun die DEBUG zeilen mit # inaktiviert.

zu den Abweichungen gibt es im photovoltaikforum Diskussionen, dort gehen die Vermutungen dahin, dass das Portal die Verlustleistung des Wechselrichters da pauschal reinrechnet, deswegen sind die Werte im Portal "schlechter" aus Sicht des PV-Betreibers ..

macfly

Zur Info, es gibt eine neue Version (im ersten Post verlinkt). Es werden nun Wartungsladung, Sicherheitsladung und Wintermodus als Reading erzeugt (state_battery_maintenancecharge, state_battery_securityecharge, state_platform_wintermode). Damit kann man gleiche Anzeigen erzeugen wie im Nedap-Portal. Auch der Proxymode ist enthalten.

Raspi-Fan

Hallo macfly,

ich denke Du kannst Gedanken lesen ;) ;) ;) :D, gerade wollte ich zum Thema Battery Status: wie Wartungsladen, Wintermodus etc. die richtigen Bits suchen. Wirklich Top...werde das Modul sofort testen..

Zu den Abweichungen bei der Battery, produced und consumed besteht bei mir eine erhebliche Differenz ca 7000 kwh. Ich gehe davon aus, dass nach dem Abschalten des Powerrouters diese Werte neu generiert werden und im Portal ( Server  ) die Daten gespeichert sind und somit fortgeschrieben werden.

VG Raspi-Fan
Nutzer von Rasberry-Pi, Hardwareorientiert plus Homatic Komponenten, Anwendung: Heizungsteuerung, Rollladen, Alarmanlage mit Rauchmeldern, Türsensoren
Steuerung einer Wärmepumpe, Zigbee über iobroker, Thermostate, Steckdosen, piVccu, Homatic IP

Raspi-Fan

Hi,

das Modul ist geladen funzt perfekt...super danke.

VG

Raspi-Fan

P.S. Du hast in einem Kommentar ein Solar Forum erwähnt..welches Forum meinst Du?
Nutzer von Rasberry-Pi, Hardwareorientiert plus Homatic Komponenten, Anwendung: Heizungsteuerung, Rollladen, Alarmanlage mit Rauchmeldern, Türsensoren
Steuerung einer Wärmepumpe, Zigbee über iobroker, Thermostate, Steckdosen, piVccu, Homatic IP