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

macfly

Moin zusammen,

heute morgen wurde final das Portal mypowerrouter.com abgeschaltet, also ist der nedap-Wechselrichter quasi offline.

Ich habe dazu ein neues Modul geschrieben (98_mypowerrouter.pm), das den Cloudservice ersetzt. Es ist noch einigermaßen rudimentär, aber man kann alle Verbrauchswerte ermitteln.

Das Problem bei der Inbetriebnahme des Moduls ist, dass der Wechselrichter die Daten an den Host logging1.powerrouter.com (der jetzt offline ist) sendet. Es muss also die Namensauflösung für den Wechselrichter dahingehend modifiziert werden, dass logging1.powerrouter.com auf die IP der fhem-Instanz bzw. eines inhouse laufenden Proxies auflöst.
Das kann z.B. mit dnsmasq errreicht werden, der diese Auflösung in der /etc/hosts bereitstellt.

Die Readings des Moduls sind folgende:



kürzelNameBereich
f_dcacFrequenzdcac
f_platformFrequenz Netzgrid
I_1_solarStrom Solar Eingang 1Solar
I_2_solarStrom Solar Eingang 2Solar
I_battStrom BatterieBatterie
I_charge
I_discharge
I_L1Strom phase 1Grid
I_L2Strom phase 2Grid
I_L3Strom phase 3Grid
P_1_solarLeistung Solar Eingang 1Solar
P_2_solarLeistung Solar Eingang 2Solar
P_battLeistung BatterieBatterie
P_bus_dcac
P_grid_dcacLeistung Systemdcac
P_grid_platformSensor LeistungGrid
P_L1Leistung phase 1Grid
P_L2Leistung phase 2Grid
P_L3Leistung phase 3Grid
P_local
P_solarLeistung Solar gesamtSolar
SOCLadezustandBatterie
T_1_solarTemperatur Solar Eingang 1Solar
T_2_solarTemperatur Solar Eingang 2Solar
T_battTemperatur Batterie Batterie
T_batt_moduleTemperatur BatteriemodulBatterie
T_dcacTemperatur Mainboarddcac
T_platformTemperatur Gehäusedcac
V_1_solarSpannung Solar Eingang 1Solar
V_2_solarSpannung Solar Eingang 2Solar
V_battSpannung BatterieBatterie
V_bus_dcacSpannung am Busdcac
V_charge
V_discharge
V_grid_dcacSpannung Systemdcac
V_grid_platformgrid
V_L1Spannung phase 1Grid
V_L2Spannung phase 2Grid
V_L3Spannung phase 3Grid
V_localSpannung local
W_battery_consumed
W_battery_produced
W_dcac_consumed
W_dcac_produced
W_L1_consumed
W_L2_consumed
W_L3_consumed
W_local_dcac_consumed
W_platform_consumed
W_platform_produced
W_solar_1_produced
W_solar_2_produced
W_solar_produced



Dazu passt hervorragend das Statistik-Modul, um die kumulierten Verbräuche (W_*) Stunden/Tage/Monatsweise aufzubereiten.

defmod statistics statistics Mypowerrouter
attr statistics deltaReadings W_L1_consumed,W_L2_consumed,W_L3_consumed,W_battery_consumed,W_battery_produced,W_dcac_consumed,W_dcac_produced,W_local_dcac_consumed,W_platform_consumed,W_platform_produced,W_solar_produced
attr statistics durationPeriodHour 1
attr statistics ignoreDefaultAssignments 1
attr statistics singularReadings Mypowerrouter:W_.*:(Delta):(Hour|Day|Month|Year)


update 19.02.2021: neues Proxyscript, dass nach fhem und zu mypowerrouter.com schreibt

macfly

#1
Todos:

Die Events müssen noch interpretiert werden. Dazu gibt es schon einige Überlegungen, das ist aber noch nicht Spruchreif.

Beispiel zu den Events:

event:
0646981809001D000200020000000000020000004A790709060020092C008A13881388130000000000000000
aaaaaaaa    bb  ccdd            ee      ffffgggghhhhiiiikkkkllllmmmmoooo    pppp    rrrr
aaaaaaaa Datum (+1199142000)
            bb 1d=29=fehlercode           
                cc Module state (02)
                  dd Previous module state
                                ee cause (2=Soft/0=Clear/1=Hard(??))
                                                                                    rrrr irgendeine Freq
                                                                            pppp  Spannung
                                                                    oooo irgendeine Freq
                                                                mmmm Platform Freq
                                                            llll grid freq Frequenz
                                                        kkkk I grid Byte getauscht         
                                                    iiii U grid Byte getauscht         
                                                hhhh I inverter Byte getauscht         
                                            gggg U AC out Byte getauscht         
                                        ffff DC bus Byte getauscht       
 


Alle Werte in Hex. Bei mehr als einem Byte ist die Bytereihenfolge umzudrehen.

In dem Beispiel oben wird aus dem Datumsbereich 06469818 -> 18984606 -> dezimal 412632582 + konstante 1199142000 = 1611774582 = 27. January 2021 19:09:42
Alle Spannungen sind mit 100 multipliziert, aus 31050 wird also 310,50V
Alle Ströme sind mit mit 100 multipliziert, aus 44 wird also 0,44A
Alle Frequenzen sind mit 100 multipliziert, aus 5002 wird also 50,02Hz
Der Fehlercode ist dem https://powerrouter.zendesk.com/hc/de/articles/360021322913-PowerRouter-Installationshandb%C3%BCcher Handbuch zu entnehmen. Obiger 29-Fehler ist also der G029-S (Das Startverfahren für die Netzplatine (G) ist fehlgeschlagen)

CoolTux

Dein Post ist aber hier etwas deplatziert. Es sei denn Du hast Fragen zur Modulentwicklung. Ansonsten gehört das eher nach Anwendungen -> Solar?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

macfly

danke für den Hinweis, ich habe den Post entsprechend verschoben.

hallo000de

Hallo macfy,

Danke für deine Infos, nur wie kann an dies realisieren, wenn man keine Ahnung hat vom Programmieren?
Kannst du das per Fernübertragung machen?

Danke und Grüße

macfly

Programmieren musst du dazu nicht. Du musst nur die Namensauflösung etwas manipulieren .. Dazu hatte ich ja bereits das Stichwort dnsmasq gegeben.

Oder wo genau liegt dein Problem?

hallo000de

Hallo,

dnsmasq ich weis ja nicht mal was das ist...Hm....wie man darin vorgeht.
Kannst Du das auch per Fernwartung machen?
das habe ich gefunden " logging1.powerrouter.com"  name und passwort, aber da geht nix da er abgeschalten ist.


Danke für deine Info

macfly

Zitat von: hallo000de am 03 Februar 2021, 10:51:31
Hallo,

dnsmasq ich weis ja nicht mal was das ist...Hm....wie man darin vorgeht. Vielleicht können wir mal telefonieren meine email ist tinokaltofen@gmail.com
Kannst Du das auch per Fernwartung machen?
das habe ich gefunden " logging1.powerrouter.com"  name und passwort, aber da geht nix da er abgeschalten ist.


Danke für deine Info

Sorry, Fernwartung oder einzelsupport kann ich nicht machen, das müsstest du dir ergooglen ...

hallo000de


Franky1992

Moins macfly,

Wenn ich das richtig verstehe hat der nedap keine möglichkeit einen DNS manuell einzustellen?
Daher ist es also nötig per DHCP im netzwerk einen neuen DNS in dem Netzwerk einzurichten!?

Viele Grüße

macfly

Ja genau. Weder am Gerät noch mit der Installationssoftware gibt es die Möglichkeit, den Wechselrichter ohne DHCP zu betreiben.

a) dhcp-server & dns-server ist die Fritzbox oder ein Router
b) dhcp-server ist die Fritzbox oder router, dns-server ist ein eigenener Server
c) dhcp-server und dns-server ist ein eigener Server

nur bei a) muss man was neu machen, nämlich einen dns-server (z.B.dnsmasq) auf einem Linux-rechner (z.B. Raspi, oder der Host, auf dem fhem läuft) einrichten

bei b) und c) muss man nur die Antwort für den einen host (logging1.powerrouter.com) auf den fhem-host umbiegen.

Anbei ein Screenshot aus dem Installationshandbuch, dort steht auch ganz klar, dass der Nedap nur mit dhcp-server funktioniert ..



hallo000de

 Kannst du nicht ein img erstellen, wo alles drin ist. Vielleicht auch die Anpassung für den Namenserver "logging1.powerrouter.com" , der ist doch überall gleich nur die Ip " DHCP" ist anders. Diese könnte man auslesen aus der Fritzbox oder dem Installationstool.
Das wäre doch mal eine super Sache!

-Ip Adresse für den PI selber eintragen
-Hardware, einen PI XXX und ein Netzwerkkabel

Dann wären Dir sicherlich 10.000..de Nedapkunden dankbar.

macfly

Zitat von: hallo000de am 04 Februar 2021, 19:30:11
Kannst du nicht ein img erstellen, wo alles drin ist. Vielleicht auch die Anpassung für den Namenserver "logging1.powerrouter.com" , der ist doch überall gleich nur die Ip " DHCP" ist anders. Diese könnte man auslesen aus der Fritzbox oder dem Installationstool.
Das wäre doch mal eine super Sache!

-Ip Adresse für den PI selber eintragen
-Hardware, einen PI XXX und ein Netzwerkkabel

Dann wären Dir sicherlich 10.000..de Nedapkunden dankbar.

Dafür ist das hier definitiv das falsche Forum. Hier geht es um FHEM, und ich habe ein FHEM Modul geschrieben.

Lass uns bitte weiter über FHEM und das Modul diskutieren. Wenn die Kenntnisse nicht reichen, DHCP/DNS einzurichten, missbrauche bitte dieses Forum nicht dafür. Dafür gibt es bereits viele howtos:

https://wiki.ubuntuusers.de/Dnsmasq/
https://www.elektronik-kompendium.de/sites/raspberry-pi/2202031.htm
https://www.tecchannel.de/a/so-richten-sie-einen-dns-server-unter-linux-ein,3288598

Und auch hier im Forum haben sich Leute mit diesem Thema beschäftigt: https://forum.fhem.de/index.php?topic=100289.0



hallo000de

Danke für die Info. So jetzt zum Modul...gibt es eine  visuelle Aufbereitung? Grafana.. ect?

Grüße

macfly


-TK-

Ich habe selbst eine Anlage mit Nedap Powerroutern und interessiere mich aus diesem Grund für das Modul. Sind für die Funktion des Moduls etwaige andere Abhängikeiten notweding damit es funktioniert? Ich habe die Moduldatei heruntergeladen und in den Order /fhem/FHEM/ kopiert, das Modul wird mir aber nicht im FHEM Frontend angezeigt. Ich habe schon "reload 98_mypowerrouter" versucht. Der Befehl wird aber ohne Ergebnis oder Fehlermeldung durchgeführt.

Eine weitere Frage zum Modul selbst. Kann ich damit auch die Daten von mehreren Powerroutern abgreifen und getrennt anzeigen lassen?

macfly

define <name> mypowerrouter port

entweder port=80, dann muss logging1.mypowerrouter.com auf deine fhem-box zeigen. Oder einen anderen Port, dann muss irgendein anderer Rechner bei dir die Posts des Nedap annehmen und an deine Box weiterleiten (siehe proxy-script php).

Das Modul selber nimmt nur für einen nedap die posts an. Ich habe da keinen Sinn drin gesehen, mehrere Nedaps gleichzeitig zu unterstützen ..

hallo000de

wäre es dann so in Dnmasq (Umleitung)?

/etc/dnsmasq.conf

server=/logging1.powerrouter.com/127.0.0.1

(dann würde der Namen auf zb. 127.0.0.1 umgeleitet/pi-dnsmasq-adresse)

Beste Grüße

Richtig?



macfly

Zitat von: hallo000de am 08 Februar 2021, 14:03:13
wäre es dann so in Dnmasq (Umleitung)?

/etc/dnsmasq.conf

server=/logging1.powerrouter.com/127.0.0.1

(dann würde der Namen auf zb. 127.0.0.1 umgeleitet/pi-dnsmasq-adresse)

Beste Grüße

Richtig?

Nein, das ist recht sinnfrei. Damit sagst du dnsmasq, dass alle Anfragen nach logging1.powerrouter.com von dem Server localhost beantwortet werden sollen. Die Antwort hast du damit aber noch nicht gegeben.


Beispielkonfiguration, mein Netz lautet 192.168.42.0/24, der server, auf dem dnsmasq läuft, heißt 192.168.42.3, die domain lokal bei mir ist 4t.to.lan:

### /etc/dnsmasq.conf
bogus-priv
filterwin2k
expand-hosts
domain=4t.to.lan
clear-on-reload
listen-address=192.168.42.3
interface=eth0
bind-interfaces


server=192.168.42.3

dhcp-leasefile=/var/lib/dnsmasq.leases

# Subnet mask
dhcp-option=1,255.255.255.0

# Default GW
dhcp-option=3,192.168.42.1

# Name Server
dhcp-option=6,192.168.42.3,8.8.8.8,8.8.4.4


dhcp-authoritative
dhcp-range=192.168.42.110,192.168.42.199,255.255.255.0,48h



damit läuft der dnsmasq als dhcp-server, vergibt als Nameserver "192.168.42.3, 8.8.8.8, 8.8.4.4", als Gateway "3,192.168.42.1" Wenn bei dir der dnsmasq schon korrekt läuft, dann lass das so, nimm aber die Zeile von dir (server=/logging1.powerrouter.com/127.0.0.1) raus.

Damit die Antwort auf logging1.powerrouter.com richtig ist, müsstest du noch die /etc/hosts anpassen:
### /etc/hosts
192.168.42.3    logging1.powerrouter.com

hier muss die IP rein, die die POSTs des Wechselrichters annehmen soll. Wenn du auf dem fhem-server keinen Webserver auf port80 hast, kannst du das Modul auf port 80 konfigurieren und diese Hosts-IP verwenden.


Meine resolv sieht so aus:
### /etc/resolv.conf
nameserver 127.0.0.1
nameserver 192.168.42.1
nameserver 8.8.8.8



Zum prüfen kannst du von einem beliebigen Rechner/handy/tablet mal die IP von logging1.powerrouter.com auflösen. Wenn deine FHEM-Ip rauskommt, ist alles richtig.

hallo000de

Danke für die Info, nur ich dachte eher an einen zusätzlichen DNS dienst hinter einer Fritzbox DHCP bleibt bei der Fritzbox

-Raspi eine feste IP vergeben
-dnsmasq installieren
-dnsmasq/resolvconf konfigurieren
   /etc/dnsmasq.conf

sudo vim /etc/resolvconf.conf

name_servers=127.0.0.1 (als erstes)

damit die Fritzbox weiter als Dns-Server funktioniert

name_server=192.168.2.1 (Fritzbox IP, als zweites)

sollte dann so ausschauen:

1 # Configuration for resolvconf
2 # See resolvconf.conf(5) for details
3
4 resolv_conf=/etc/resolv.conf
5
6 name_servers=127.0.0.1
7 name_servers=192.168.2.1
8
9 # Mirror the Debian package defaults for the below resolvers
10  # so that resolvconf integrates seemlessly.
11 dnsmasq_resolv=/var/run/dnsmasq/resolv.conf
12 pdnsd_conf=/etc/pdnsd.conf
13 unbound_conf=/var/cache/unbound/resolvconf_resolvers.conf

nächstes Hostnamen konfigurieren

sudo vim /etc/hosts

dann

192.168.2.xx (Adresse des PI)

sudo service dnsmasq reload


Jetzt muss man doch die DHCP- Einstellungen in der Fritzbox änderen

Unter Netzwerkeinstellungen-IP Adressen

Localer DNS-Server wäre dann: 192.168.2.xx (Adresse des PI)

dann die Umleitung in dnsmasq :

/etc/dnsmasq.conf

server=/logging1.powerrouter.com/127.0.0.1

nur so ein Gedanke...........


















MuTi

Hallo macfly,
auch ich bin von der Abschaltung Nedap betroffen.
Nun möchte ich eigentlich nur wissen, ob meine Anlage mit beiden Strings auch immer noch läuft.
Also welche Leistung pro String produziert wird.
Ob man das mit Hilfe Deines Moduls erkennen kann?


Leider kenn ich mich nur mit linux, und einigen Sprachen aus, nur das FHEM ist für mich absolut Neuland.
Bei meiner Suche nach einem Quick-Start für Einsteiger bin ich nicht weiter gekommen.

Auf meinem PI läuft PI.Hole, die Adress-Übersetzung klappt schon!

Wie darf ich mir das mit dem Modul 98_mypowerrouter.pm vorstellen?
Kann man in einem Browser die NEDAP-Daten sehen?

Danke für weiter Info

macfly

Das Modul nimmt die Kommunikation des Wechselrichters an und speichert die Daten. Nicht mehr, nicht weniger.
fhem kann dann mit der ganzen Magie von fhem daraus diagramme, alarme, wenn-dann usw. machen.

macfly

hier einige diagramme (die man aber in fhem sich selber zusammenklicken kann/muss)


MuTi

Hallo macfly,
da habe ich nun FHEM installiert,
Dein Modul 98_mypowerrouter.pm nach fhem/FHEM/ kopiert.
Die Datei fhem.cfg erweitert mit Text:
define NEDAP mypowerrouter 80

Dann stand in der Logdatei
Can't locate DateTime.pm in @INC

daraufhin habe ich installiert:
apt-get install libdatetime-perl
apt-get update
apt-get upgrade

Nun läuft das Web-Frond-End nicht mehr, und in ehfm/log/fhem-2021-02.log steht:
2021.02.10 16:14:37 1: Including fhem.cfg
2021.02.10 16:14:43 1: PERL WARNING: main::translate() called too early to check prototype at ./FHEM/98_mypowerrouter.pm line                       9.
Undefined subroutine &main::TcpServer_Open called at ./FHEM/98_mypowerrouter.pm line 35.

Wenn ich die define-Zeile kommentiere und den Server neu starte, läuft das Front-end wieder (Last?)

Kannst Du mir bitte Starthilfe geben
Vielen Dank schon mal
und auch für das Modul

macfly

ich habe ein Update hier angehängt, das sollte den Fehler mit TcpServer_Open beheben.

macfly

kleine Anmerkung meinerseits:

man editiert nicht die fhem.cfg
nie
es gib keinen Grund dazu.

du gibts die Befehle (define NEDAP mypowerrouter 80) in die Eingabezeile im Webbrowser ein, oben das weiße Wingabefeld.

MuTi

Danke,
kannst Du mir eine Einsteiger-Hilfe nennen?
Mit welchen Mitteln macht man die Daten sichbar?


MuTi

nun steht unter der weisen Zeile:
NEDAP: Can't open server port at 80: Permission denied
d.h. da feht noch ein Server, der NEDAP heisst ??

Kannst Du mir nicht (kurz) erklären wie das mit dem Modul funktioniert.

Das Nedap-Teil sendet nun durch die maskerade auf den raspbery.
Wer nimmt die Daten entgegen?

macfly

port 80 ist privilegiert. Wenn du direkt unter fhem diesen Port öffnen willst, muss fhem als root laufen (don't do).
definiere einen anderen port (10101) und nutz mein proxy-php-script aus dem ersten Post.

entweder legst du das im document-root eines apache/nginx/lighttpd als event.json und logs.json ab, oder du startest das händisch mit

/usr/bin/php -S <IP_deiner_linux_box>:80 proxyscript.php

bitte vorher im script fhemport und fhemserver anpassen.


nedap ---> linux_running_proxyscript.php(port 80) --> linux_running_fhem(port 10101)


MuTi

Hallo macfly,
so weit nun alles klar - für den Anfang.
Auf dem PI läuft lighttpd und nun habe ich erstmal den Port 80 frei gemacht.
Zu Deinem Skript proxyscript.php:
zu Fuß gestartet und alles klar, aber
DU schriebs:  mein proxy-php-script .. legst .. das .. als event.json und logs.json ab
Da muss ich mich outen: das sagt mir nix
Kann ich das im 'lighttph' automatisch starten oder muss ich das ins System integrieren (cron)?
Wieder mal Danke


macfly

ok.

der nedap postet nach ..../logs.json und nach .../events.json

du legst die proxy-php-datei im document-root (wahrscheinlich /var/www/html) ab als logs.json und als events.json.

dann aktivierst du die beiden Module fastcgi fastcgi-php mit folgenden Befehlen:

lighttpd-enable-mod fastcgi
lighttpd-enable-mod fastcgi-php



und die lighttpd.conf sieht dann etwa so aus:

server.modules = (
        "mod_access",
        "mod_alias",
        "mod_compress",
        "mod_redirect",
        "mod_accesslog"
)

server.document-root        = "/var/www/html"
server.upload-dirs          = ( "/var/cache/lighttpd/uploads" )
server.errorlog             = "/var/log/lighttpd/error.log"
accesslog.filename          = "/var/log/lighttpd/access.log"

server.pid-file             = "/var/run/lighttpd.pid"
server.username             = "www-data"
server.groupname            = "www-data"
server.port                 = 80


index-file.names            = ( "index.php", "index.html", "index.lighttpd.html" )
url.access-deny             = ( "~", ".inc" )
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi", ".json" )

compress.cache-dir          = "/var/cache/lighttpd/compress/"
compress.filetype           = ( "application/javascript", "text/css", "text/html", "text/plain" )

# default listening port for IPv6 falls back to the IPv4 port
## Use ipv6 if available
#include_shell "/usr/share/lighttpd/use-ipv6.pl " + server.port
include_shell "/usr/share/lighttpd/create-mime.assign.pl"
include_shell "/usr/share/lighttpd/include-conf-enabled.pl"

fastcgi.map-extensions = (   ".json" => ".php",)


wobei folgende zeilen vom default abweichen:

static-file.exclude-extensions = ( ".php", ".pl", ".fcgi", ".json" )
fastcgi.map-extensions = (  ".json" => ".php", )

wenn dann deine Namensauflösung für logging1.powerrouter.com noch richtig ist, sollte das script die ersten requests bekommen, die du im access-log sehen solltest.

MuTi

Hallo macfly,
Doc-root habe ich auch schon raus bekommen, ja /var/www/html stimmt.
dann kopiere ich die eine Datei proxyscript.php da hin, ändere den Namen in logs.json, kopiere wieder-ändere in events.json
chgrp und chown in www-data

lighttpd-enable-mod fastcgi
lighttpd-enable-mod fastcgi-php

gibt bei beiden Meldung:
already enabled
Run "service lighttpd force-reload" to enable changes


service lighttpd force-reload

systemctl restart lighttpd


check:
netstat -tlnp
zeigt nun nicht tcp...192.168.3.99:80 ... LISTEN

und Datei lighttpd.conf wurde nicht geändert.
In der Datei steht, dass man diese Datei nicht ändern darf, man soll alles in external.conf schreiben.


cat lighttpd.conf | grep static
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )

und
'fastcgi' gibt es gar nicht

Also nicht wie Du geschrieben hast:
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi", ".json" )
fastcgi.map-extensions = (  ".json" => ".php", )

#######
Was soll das mit logs.json und event.json ? Wie soll das Funktionieren? (java?)
Wenn Dein Skript 'zu Fuß' läuft, klappts:

netstat -tlnp

tcp        0      0 192.168.3.99:80         0.0.0.0:*               LISTEN      3059/php

Das ist doch das was ich brauche?

MuTi

Oh - ich sehe gerade etwas: wenn das Skript läuft, steht da: Document root is /etc/lighttpd

/usr/bin/php -S 192.168.3.99:80 proxyscript.php
PHP 7.3.19-1~deb10u1 Development Server started at Sat Feb 13 11:50:29 2021
Listening on http://192.168.3.99:80
Document root is /etc/lighttpd
Press Ctrl-C to quit.

Wenn ich dann auf testmässig mit einem Browser auf die Seite 192.168.3.99:80 gehe, gibt es einen Fehler im Skript

[Sat Feb 13 11:53:03 2021] PHP Warning:  Unknown: failed to open stream: No such file or directory in Unknown on line 0
[Sat Feb 13 11:53:03 2021] PHP Fatal error:  Unknown: Failed opening required 'proxyscript.php' (include_path='.:/usr/share/php') in Unknown on line 0

Oh-jeh so einfach wird das wohl doch nicht
/usr/share/php gibt es nicht

ls -dl /usr/share/php*
/usr/share/php7.3-common
/usr/share/php7.3-intl
/usr/share/php7.3-json
/usr/share/php7.3-opcache
/usr/share/php7.3-readline
/usr/share/php7.3-sqlite3
/usr/share/php7.3-xml


macfly

also,

static-file.exclude-extensions = ( ".php", ".pl", ".fcgi", ".json" )

sorgt dafür, dass diese Dateiendungen nie heruntergeladen werden können. Nicht lebenswichtig, funktioniert auch ohne.

fastcgi.map-extensions = (  ".json" => ".php", )

sorgt dafür, dass .json-Dateien als .php-Dateien interpretiert werden. Wenn diese Zeile fehlt, funktioniert es nicht. Ob du das in die lighttpd.conf schreibst oder in die external.conf (die hoffentlich von der includiert wird), ist egal. Es muss drin stehen.

MuTi



Hallo macfly,
erstmal arbeite ich mit dem manuellen Start des Skripts, um die Einbindung in den Web-Server kümmere ich mich später.

so - habe einiges herausbekommen:

Die Anzeige <Doc-Root> zeigt immer an, wo das Skript gestartet wird.
Wenn das Script läuft, gibt eine Fehlermeldung, wenn der NEDAP Daten sendet.
Da fehlt wohl eine PHP-Erweiterung: <undefined function curl_init>

[Mon Feb 15 14:08:30 2021] handling uri /logs.json
[Mon Feb 15 14:08:30 2021] PHP Fatal error:  Uncaught Error: Call to undefined function curl_init() in /home/pi/proxyscript.php:25
Stack trace:
#0 {main}
  thrown in /home/pi/proxyscript.php on line 2


Auf dem FHEM-Web-Front-End (Home. Sweet Home) startet ich <define NEDAP mypowerrouter 10101>:
siehe Bild eins.jpg
in der Logdatei steht am Ende:

2021.02.15 12:16:49 1: PERL WARNING: main::translate() called too early to check prototype at ./FHEM/98_mypowerrouter.pm line 10.
2021.02.15 12:16:49 3: NEDAP: port 10101 opened

Und sonst passiert da nix - ist wohl auch klar, wenn das Script (s.o.) nicht läuft



macfly

Zitat von: MuTi am 15 Februar 2021, 15:42:13
Da fehlt wohl eine PHP-Erweiterung: <undefined function curl_init>

Hast du es mal gewagt, google zu befragen?

erster hit sagt, man soll mal ein beherztes

apt-get install php-curl

machen ..


das hat gerade nichts mit dem Modul zu tun...

MuTi


MuTi

Ein großen Dank an macfly - es klappt

hallo macfly - jetzt arbeite ich mich ein bisschen in FHEM ein, um die Ausgabe zu optimieren.
Wo legt das Modul die Daten ab? - Muss ich mir langfristig sorgen um Speicherplatz machen ?

ein schönen Tag - Danke nochmals

MuTi


MuTi

hallo - die NEDAP - Powerrouter - Seite mypowerrouter.com ist wieder Online.
bis Ende April, und erreichbar bei mir nur ohne www.

macfly

Zitat von: MuTi am 16 Februar 2021, 09:46:06
Ein großen Dank an macfly - es klappt

hallo macfly - jetzt arbeite ich mich ein bisschen in FHEM ein, um die Ausgabe zu optimieren.
Wo legt das Modul die Daten ab? - Muss ich mir langfristig sorgen um Speicherplatz machen ?

ein schönen Tag - Danke nochmals
Das kann ich dir nicht sagen, weil ich nicht weiß, wie dein fhem-system konfiguriert ist. Ich würde empfehlen, das Handbuch https://fhem.de/Heimautomatisierung-mit-fhem.pdf zu lesen.

Es gibt im prinzip filelog und dblog, bei letzteres sqlite (nutze ich, reicht völlig), mysql, postgres. Dort werden die Daten im Minutentakt abgespeichert.
mit den logdevices kannst du dann SVGs erzeugen (wieder der Verweis auf das Handbuch), dann bekommst du solche Grafiken wie im Anhang.

schöne Grüße,
Friedhelm

macfly

ich würde dieses Thema gerne weiter um fhem gehen lassen. Es geht hier *nicht* darum, die Werte vom powerrouter irgendwie irgendwo darzustellen. Diskutiert das doch bitte im Photovoltaik-forum, da gibt es dazu bereits genug Beiträge.

Hier geht es um fhem.

Danke.

macfly

Zur Info: ich habe ein neues Proxyscript angehängt, dass nach fhem und in die cloud schreibt, sodass man die Werte von fhem mit denen in der cloud vergleichen kann. Falls da jemand Fragen zu hat: gerne hier.

schöne Grüße,
Friedhelm


Raspi-Fan

Hallo macfly,

super Sache Dein Modul, Danke. Ich hatte zuerst Probleme mit dem USB Ethernet Adapter, aber nun funktioniert es perfekt. Alle Daten kommen in fhem auf port 80 an. Da ich die Daten direkt nach port 80 route benutze ich nicht das Proxyscript. Hast Du eine Idee wie ich die Daten an fhem und die Cloud senden kann.

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 07 April 2021, 15:32:49
Hallo macfly,

super Sache Dein Modul, Danke. Ich hatte zuerst Probleme mit dem USB Ethernet Adapter, aber nun funktioniert es perfekt. Alle Daten kommen in fhem auf port 80 an. Da ich die Daten direkt nach port 80 route benutze ich nicht das Proxyscript. Hast Du eine Idee wie ich die Daten an fhem und die Cloud senden kann.

Viele Grüße

Raspi-Fan

Hi,

Wenn du die Daten in fhem und in der cloud haben willst, musst du die Daten abfangen (das machst du ja jetzt schon) und an fhem und in die cloud senden. Das macht z.B. direkt das Proxyscript. Du könntest das Script auf Port 80 laufen lassen und das Modul auf ... 81 (oder such dir irgendeinen Port aus). Diesen konfigurierst du im Proxyscript. Bei mir läuft das Proxyscript seit 2 Monaten ohne Probleme. Ich kann dir auch dafür ein systemd-unitfile anhängen.

Wenn du keinen weiteren Prozess (=proxyscript im php-interpreter) haben möchtest, kann ich das powerroutermodul vielleicht dahingehend umbauen. Allerdings wäre das nur eine unschöne Lösung. FHEM würde hängen, wenn die Cloud nicht verfügbar wäre ..


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


Raspi-Fan

Hallo macfly,

nun sind schon einige Monate vergangen. Das Modul funktioniert perfekt alle Daten konnten aufgezeichnet werden, ganz selten hängt sich Fhem auf, seit 41 Tagen kein reboot nötig. Nur eines passt noch nicht, der Batterie Status, state_battery_maintenancecharge und state_battery_securityecharge. Über den Modus der Platform state_platform_wintermode kann ich noch nicht sagen der beginnt erst ab dem 1 Dezember.
Das nur zur Info, ich werde versuchen die richtigen Bits im Status zu identifizieren und melde mich dann wieder.

Bis dahin bleib virenfrei

RaspiFan
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

Hallo macfly,

zur Info: der Wintermodus wird korrekt angezeigt. Top...bei dem Bits "Wartungsladen, Erhaltungsladung" scheint es so, dass es das Bit 12 ist, dez wert 2048.

Viele Grüße

RaspiFan
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

hami.pfaff

Hallo Leute, bin neu im Forum, deshalb vorab entschuldigt bitte meine ersten Fehler! Habe selber einen 5KW Powerrouter von Nedap seit 2013 und läuft bis heute fehlerfrei. Ja das mit dem abgeschalteten Server hat mich auch genervt, wie auch die nicht mehr brauchbare App. Kürzlich habe ich neugieriger weise trotzdem mal "mypowerrouter.com" in die Suchmaschine eingegeben und es wurde mir eine Seite präsentiert "websites.milonic.com/mypowerrouter.com". Und siehe da: eine voll funktionsfähige Seite, über die ich mich wie gewohnt eingelogged habe, zwar mit dem Hinweis einer unsicheren webseite. Alle Funktionen waren wie gewohnt abrufbar sowie auch alle Installationsdaten. Daraufhin nochmals die App mypowerrouter runtergeladen, und plötzlich funktionierte diese auch wieder- zwar nur für 2 Tage, dann kam der Hinweis Serverfehler. Heute funktioniert sie wieder. Mir fehlt eine Erklärung dafür! Habt ihr eine für mich?? Grüße aus STR

Raspi-Fan

Hallo hami.paff

immer wieder vergisst Nedap das Certificat für die Webseite zu erneuern. Damit wird die Seite als nicht sicher deklariert.

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

hallo000de

Hallo Leute,

sollte mal jemand Probleme oder Fehler am Powerrouter haben (P029-H,P115-H,B010-H,B067-S,G034-H ect.) man kann helfen!
Powerrouter nicht einfach in die Tonne werfen!!!!
Grüße Tino  ;)

macfly

Hallo zusammen,

nachdem ich jetzt einen neuen Wechselrichter (=Solaredge) bekommen habe, würde ich mich hier aus diesem Thread verabschieden. Wer will, darf "mein" Modul gerne weiterpflegen.

liebe Grüße,
Friedhelm

Raspi-Fan

Hallo macfly,

auch wenn Du Dich aus der Pflege des Moduls verabschiedet hast, habe ich trotzdem ein Problem das du vieleicht beantworten kannst.  Du benutzt im Modul use WWE::Curl::Easy, ich wollte nun einen weiteren Raspberry Pi verwenden und habe eine neue Installation probiert, nun scheitere ich immer an der gleichen Stelle das Makefile.PL findet nicht curl.h. Das müsstte, entsprechend meinen wenigen Linux Kenntnissen damit zusammen hängen das curl-config nicht auf das richtige Directory verweist. Dazu habe ich auch schon einiges gelesen, aber keine Lösung gefunden.
Vieleicht hast Du einen Tipp für einen LINUX-Anfänger. Merci viel mals...

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

hm. existiert denn ein cpan.h auf deinem system? Bei mir (ubuntu) liegt das unter /usr/include/x86_64-linux-gnu/curl/curl.h

Evtl. musst du das develop-Paket für Curl noch nachinstallieren, ich weiß nicht wie das auf deiner Distribution heißt - bei mir: libcurl4-openssl-dev

liebe Grüße,
Friedhelm



Raspi-Fan

Hallo Friedhelm,

vorab vielen Dank für Deine Antwort.

Ich bekomme nach CPAN WWW:Curl:Easy folgende Info

root@DietPi:~# cpan WWW:Curl:Easy
Loading internal logger. Log::Log4perl recommended for better logging
Reading '/root/.cpan/Metadata'
  Database was generated on Mon, 20 Mar 2023 12:41:01 GMT
Running install for module 'WWW::Curl::Easy'
Checksum for /root/.cpan/sources/authors/id/S/SZ/SZBALINT/WWW-Curl-4.17.tar.gz ok
Configuring S/SZ/SZBALINT/WWW-Curl-4.17.tar.gz with Makefile.PL
Locating required external dependency bin:curl-config... found at /usr/bin/curl-config.
The version is libcurl 7.64.0
Cannot find curl.h - cannot build constants files  - see Makefile.PL at Makefile.PL line 96.
Warning: No success on command[/usr/bin/perl Makefile.PL INSTALLDIRS=site]
  SZBALINT/WWW-Curl-4.17.tar.gz
  /usr/bin/perl Makefile.PL INSTALLDIRS=site -- NOT OK

bei mir ist das curl.h unter /usr/include/arm-linux-gnueabihf/curl/ zu finden. Die Distribution ist "Debian Buster" für RaspberryPi, es sollte auch die libcurl4-openssl-dev sein nach Unterlagen für Debian.

Das develop - Paket ist installiert. Ich habe schon sehr viel probiert aber keine Lösung gefunden. Es gibt dazu Infos das es ein BUG bei Debian Buster sei. Dazu sollte das Paket libcurl4-gnutls-dev imstalliert werden. Habe ich getestet, aber ich bekomme das Paket pkg-config nicht auf das System. Da sollten dann Patches zur Funktion führen.

Vieleicht hast Du noch eine Idee.. Merci

LG 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

Raspi-Fan

Hallo Friedhelm

ich habe nun eine Lösung gefunden. Nach langem Suchen habe ich den richtigen Tip bekommen. Das Modul WWW::Curl:Easy ersetzen mit Net:Curl:Easy. Danach musste ich Dein Modul modifizieren damit das Modul Net::Curl::Easy passt.
Alle anderen Versuche gingen nicht...ich habe sogar ein System mit Debian 11 aufgebaut. Alles scheitert an der Modulinstallation von WWW::Curl::Easy..immer das gleiche Ergebnis kann Curl.h nicht finden.
Nun hoffe ich das alles weiter funzt...

Dir ein schönes Wochenende.

VG 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

Raspi-Fan

Hallo Friedhelm,

ich weiss, dass Du nicht mehr einen Nedap Powerouter betreibst. Ich habe trotzdem nun ein Problem, ganz plötzlich aufgetreten mit dem ich nichts anfangen kann. Die Daten werden nicht mehr an den Server von NEDAP weitergeleitet seit dem 12.07.2023 ab ca . 14 Uhr.
FHEM bring am Morgen einen Fehler in der LOG ...den es bisher nicht gab.

ERROR: addToWritebuffer for WEBtablet_192.168.178.32_58521 without FD
2023.07.12 07:59:55 1: callstack: addToWritebuffer:731 FW_addToWritebuffer:3205 FW_Notify:3847 CallFn:3764 DoTrigger:4849 readingsEndUpdate:5032 readingsSingleUpdate:73 dummy_Set:3842 CallFn:1937 DoSet:1969 CommandSet:1265 AnalyzeCommand:1116 AnalyzeCommandChain:3887 fhem:1 (eval):1160 AnalyzePerlCommand:1189 AnalyzeCommand:1116 AnalyzeCommandChain:121 notify_Exec:3847 CallFn:3764 DoTrigger:4849 readingsEndUpdate:482 statistics_DoStatistics:400 statistics_DoStatisticsAll:384 statistics_PeriodChange:3379 HandleTimeout:695
2023.07.12 07:59:55 1: FD closed in  TcpServer_Close:355 TcpServer_WriteBlocking:684 FW_initInform:934 FW_answerCall:597 FW_Read:3847 CallFn:773

Vieleicht ahst Du auf die Schnelle eine Idee zu diesem Problem.

Danke

VG 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

Raspi-Fan

Hallo Friedhelm,

Problem gelöst,,der Nedap Server hat die IP Adresse gewechselt...seidem werden die Kurven auch wieder ohne Unterbrechung angezeigt.
Für alle die auch ein Problem bekommen...die alte IP 77.222.80.91 wurde nach 144.2.168.138 gewechselt.
Vielen Dank....

VG 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