NEWS
[neuer Adapter] solarviewdatareader
-
@Triceratops
Aus meiner Sicht ist da der Gedankenfehler. Ich lese ja nicht direkt den Wechselrichter aus. Sondern benutze die Schnittstelle von Solarview.
Wie Solarview an die Daten kommt ist dem Adapter egal. -
@afuerhoff Hallo,
soweit ich weiss, gibt es innerhalb des Solarview noch die Softwareverbindung zwischen Wechselrichter und dem Solarview, die Schnittstelle mit Namen "SMAP", die bedient die Wechselrichterabfrage.
Gruß Rainer
-
@Triceratops
Wenn Solarview generell läuft und die Daten von Solarview ausgelesen und auch in der Weboberfläche dargestellt werden, dann muss nur noch der TCP Server wie oben beschrieben aktiviert werden. Dann kann der Adapter entsprechend mit IP-Adresse und Port (von Solarview) konfiguriert werden. Mit einem Telnet Client kann man die Schnittstelle, wie in der Solarview Anleitung beschrieben, auch selber testen. Ich hab das mal unter Windows mit dem Telnet Client gemacht.Bitte melde dich, ob du es hinbekommen hast.
-
Ich habe den TCP-Server, wie beschrieben, aktiviert. Wenn ich dann telnet fritz.box 15000 eingebe, kommen 3 Punkte, das Eingeben von 00* beendet sofort die Session. Auch mit Putty geht es nicht. Natürlich ist die Fritzbox viel sicherer als früher, so dass evt. die Zugangskennung erwartet wird.
Jedenfalls werden keine Daten nach ioBroker geladen. -
@Triceratops
Hallo, was wird denn im Log angezeigt. Das wäre hilfreich.Hast du nach dem Ausführen des telnet Befehls unter Windows sofort 00* eingegeben?
Dann sollte so eine Antwort von Solarview kommen.
Evtl. hast du Probleme mit dem Escape Zeichen in telnet. Einfach mal nur telnet eingeben und danach "set ?". Unter escape ist dann das escape-Zeichen zu sehen. Bei mir stand das z.B. auf 0. Ich habe es einfach mal auf x gesetzt. Das escape Zeichen kannst du mit der Option -ex setzen -> telnet -ex xxx.xxx.xxx.xxx 15000
Danach hat bei mir die Abfrage mit telnet funktioniert.
-
Danke für die Hinweise:
telnet set ? ergibt:telnet [-a][-e Escapezeichen][-f Protokolldatei][-l Benutzer][-t Begriff] [Host [Port]] -a Automatische Anmeldung. Identisch mit Option -l, verwendet aber den Namen des angemeldeten Benutzers. -e Escapezeichen, um Telnet-Clientbefehlseingabe einzugeben. -f Dateiname zur Protokollierung des Clients. -l Legt den Anmeldebenutzernamen für das Remotesystem fest. Erfordert, dass das Remotesystem TELNET ENVIRON unterstützt. -t Legt den Terminaltyp fest. Unterstützt werden nur: vt100, vt52, ansi und vtnt. Host Legt den Hostnamen bzw. die IP-Adresse des Remotecomputers fest, mit dem eine Verbindung hergestellt werden soll. Port Legt die Portnummer bzw. den Dienstnamen fest.
Die Ausführung des telnet Befehles (Win 10) ergibt folgendes:
C:\Users\Joachim>telnet 192.168.178.1 15000 Verbindungsaufbau zu 192.168.178.1...Es konnte keine Verbindung mit dem Host hergestellt werden, auf Port 15000: Verbindungsfehler
Sofortige Eingabe von 00* bewirkt nichts, führt nur zu obiger Ausschrift. Möglicherweise macht Fritz OS 7.01 den "Laden" dicht. Ich habe noch einen Telnetzugang zu OS 7.01.
Das Log schreibt nach Neustart des Adapters folgendes aus:host.localhost 2019-07-24 22:19:52.615 info instance system.adapter.solarviewdatareader.0 started with pid 24033 host.localhost 2019-07-24 22:19:50.111 info instance system.adapter.solarviewdatareader.0 terminated with code 156 () host.localhost 2019-07-24 22:19:50.085 info stopInstance system.adapter.solarviewdatareader.0 killing pid 30191 host.localhost 2019-07-24 22:19:50.085 info stopInstance system.adapter.solarviewdatareader.0 host.localhost 2019-07-24 22:19:50.085 info object change system.adapter.solarviewdatareader.0
-
So, nun noch das nächste von Telnet
Willkommen Das Escapezeichen ist 'CTRL++' Microsoft Telnet> set ? bsasdel RÜCKTASTE wird als ENTF gesendet. crlf Neue Zeile - Beim Betätigen der Eingabetaste wird CR & LF gesendet. delasbs ENTF wird als RÜCKTASTE gesendet. escape x x ist ein Escapezeichen, um Telnet-Clientbefehlseingabe einzugeben. localecho Aktiviert "localecho". logfile x x ist die aktuelle Clientprotokolldatei. logging Aktiviert Protokollierung. mode x x ist die Konsole bzw. der Datenstrom. ntlm Aktiviert NTLM-Authentifizierung. term x x ist ANSI, VT100, VT52 oder VTNT. Microsoft Telnet>
-
@Triceratops
Telnet müsste eine Verbindung mit dem Solarview Server herstellen können. Das ist bei dir nicht der Fall. Daher kann auch der Adapter keine Verbindung herstellen.
Es scheint, als ob der TCP-Server nicht läuft.
Hast du Solarview nach der Konfiguration des TCP-Servers neu gestartet?
Steht in der start.sh -> ./solarview-fb ......... -TCP 15000? -
Klaro, habe ich gemacht, siehe hier (aus start.sh
... -sp 587 -tls -enc -TCP 15000
Seit mindestens Juni 2012 (V 3.6 vom 22.06.2012) gibt es diese Einstellmöglichkeit. Hier mal ein passender Auszug aus der Dokumentation von Manfred Richter:
SolarViewFB – Installationsanleitung – V 3.6 vom 22.06.2012 ... einstellen, http://www.solarview.info/solarview_fb/ würde meine Anlage anzeigen. Diese URL ist die gleiche, die Sie auch beim www.sonnenertrag.eu – Export verwenden. mit der Sie Ihre externe SolarView-Webseite normalerweise aufrufen, z.B. TCP-Server Solarview@Fritzbox verfügt über einen TCP-Server, den Sie abfragen können, um damit z.B. Daten für eine FHEM zu gewinnen. Sie müssen dazu in der start.sh - Datei den Parameter -TCP 15000 anfügen, dann können Sie über diesen Port (der variiert werden kann) nach einem Neustart die momentanen Daten abfragen. Zum Testen geben Sie dann an einem PC folgendes ein: telnet fritz.box 15000 bzw. telnet<<ip-adresse-fritzbox>> 15000 und dann schnell (Die Verbindung wird nach 3 Sekunden sonst wieder geschlossen) die Zeichenfolge 00* ein. Damit werden die momentanen Werte der Gesamtanlage ausgegeben. mit 01*, 02* etc.
Seit dem sind 7 Jahre vergangen, und die Welt hat sich weiter gedreht ... Damals war eine FB 7490 noch nicht einmal am Horizont erkennbar. Gut möglich, dass ein TCP-Server am Start gehindert wird.
Ich meine, ein Datenaustausch via FTP wäre eine Alternative und liese sich u. U. einfacher realisieren. -
@Triceratops sagte in [neuer Adapter] solarviewdatareader:
Ich meine, ein Datenaustausch via FTP wäre eine Alternative und liese sich u. U. einfacher realisieren.
Hallo, aufgrund der Restriktionen bei neueren Firmware Ständen der Fritzbox bin ich damals auf den Raspberry Pi umgestiegen. Damit läuft es ohne Probleme. Evtl. kannst Du mal Kontakt mit Manfred Richter aufnehmen. Vielleicht hat er noch einen Tipp.
-
An dieser Stelle höre ich auf, es mit der FB zu versuchen. Interessant wäre evt. ein Auslesen der *.csv-Dateien mittels der JS-Scriptengine.
-
@afuerhoff said in [neuer Adapter] solarviewdatareader:
https://github.com/afuerhoff/ioBroker.solarviewdatareader
Heute versuchte ich, den Solardatareader auf einem NanoPC-T4 mit Armbian zu installieren, Adresseingabe im Reiter beliebig:
$ ./iobroker url " https://github.com/afuerhoff/ioBroker.solarviewdatareader" --debug
install "
npm install " --production --save --prefix "/opt/iobroker" (System call)
/bin/sh: 1: Syntax error: Unterminated quoted string
ERROR: host.nanopct4 Cannot install ": 2
ERROR: process exited with code 25
Das Ganze endet mit einer Fehlermeldung. Und bei Installation "von Github" verschwindet alles ohne Installation. -
@Triceratops sagte in [neuer Adapter] solarviewdatareader:
olardatareader a
Hallo,
ich sehe da ein Leerzeichen in der URL-> $ ./iobroker url " https://github.c..........
Das bitte mal entfernen.Hier mal von mir ein Log (Tinker Board S mit Armbian):
$ ./iobroker url "https://github.com/afuerhoff/ioBroker.solarviewdatareader" --debug
install https://github.com/afuerhoff/ioBroker.solarviewdatareader/tarball/master
npm install https://github.com/afuerhoff/ioBroker.solarviewdatareader/tarball/master --production --save --prefix "/opt/iobroker" (System call)
npm
WARN optional SKIPPING OPTIONAL DEPENDENCY: osx-temperature-sensor@1.0.3 (node_modules/osx-temperature-sensor):npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for osx-temperature-sensor@1.0.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"arm"})- iobroker.solarviewdatareader@0.0.4updated 2 packages and audited 3137 packages in 21.074s
found 61 vulnerabilities (41 low, 1 moderate, 19 high) run
npm audit fix
to fix them, ornpm audit
for detailsprocess exited with code 0
-
Danke, in einem neuen Installationsversuch lief alles glatt. Jetzt habe ich Solarview auf einem NanoPC-T4 installiert, trotzdem bekomme ich keine Werte. TCP und Port sind in SV eingetragen. Auf selbigen läuft auch ioBroker auf armbian.
-
@Triceratops
Hallo, kannst du mal die Log Einträge hier posten. Weiterhin wäre ein Bild deiner Einstellungen hilfreich. Hast Du es noch mal mit Telnet versucht die Werte auszulesen. -
Hier ein Log-Auszug:
solarviewdatareader.0 2019-08-12 10:15:00.046 info connection closed solarviewdatareader.0 2019-08-12 10:15:00.035 info 00*: {00,12,08,2019,10,15,0001.6,00191,003404,00009781,00629,000,000.0,000,000.0,000,000.0,000,000.0,000,000.0,000,000.0,000,000.0,00},9 -> chksum ok solarviewdatareader.0 2019-08-12 10:13:31.854 info CRON: */5 * * * * (05:00 to 22:00) solarviewdatareader.0 2019-08-12 10:13:31.767 info d0 converter: false solarviewdatareader.0 2019-08-12 10:13:31.767 info ip-address: 192.168.178.99:15000 solarviewdatareader.0 2019-08-12 10:13:31.739 info starting. Version 0.0.4 in /opt/iobroker/node_modules/iobroker.solarviewdatareader, node: v8.16.0 host.nanopct4 2019-08-12 10:13:31.023 info instance system.adapter.solarviewdatareader.0 started with pid 16129
Ich sehe gerade, jetzt läuft SVreader. Verstehe ich nicht, weil ich habe lediglich die IP-Adresse neu eingegeben.
Für mich gibt es doch noch ein Problem, weil die Ertragsdaten noch mit einem Korrekturfaktor beaufschlagt werden müssen, der WR hat eine Abweichung von knapp +5 %.
Vielen Dank für die Hilfe! -
Hallo,
zur Info:
Ich habe eine neue Version 0.0.5 erstellt und in der Rubrik Tester zum Test aufgerufen.
https://forum.iobroker.net/topic/26558/test-adapter-solarviewdatareader-v0-0-x -
Hallo,
leider landen bei mir auch keine Daten vom SolarView in den Objekten.
Aktuelles SolarView läuft auf einem separaten Raspi und 2 Wechselrichtern. Der Telnet Befehl liefert Daten.
Anbei meine Einstellungen und das LogDanke und viele Grüße
-
@tobiv Hallo
Ich habe genau die selben Problem auf einem Raspi.
Wenn ich den adapter neu starte werden Daten geliefert, danach ist dann aber Ende.
Gruß Ulli -
@tobiv sagte in [neuer Adapter] solarviewdatareader:
Hallo,
leider landen bei mir auch keine Daten vom SolarView in den Objekten.
Aktuelles SolarView läuft auf einem separaten Raspi und 2 Wechselrichtern. Der Telnet Befehl liefert Daten.
Anbei meine Einstellungen und das LogDanke und viele Grüße
Hallo, Intervall Ende mal auf 23:59 setzen. Dann müsste es gehen.