Seite 2 von 8

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 15.03.2019, 08:42
von Andre77
Hallo,

ich bin seit gestern auch stolzer Besitzer der WS 980 Wifi und wollte gleich mal das tolle Projekt umsetzen - leider scheitere ich wieder.

Ich habe alle benötigten Dateien in den erstellter Ordner geschoben und mit den notwendigen Rechten versehen. Die IP-Adresse habe ich auch angepasst. Trotzdem will das System einiges nicht finden.

Code: Alles auswählen

# /usr/local/addons/weather/weather.tcl
/usr/local/addons/weather/weather.tcl: line 1: #!/bin/tclsh: not found
/usr/local/addons/weather/weather.tcl: line 3: load: not found
/usr/local/addons/weather/weather.tcl: line 19: proc: not found
/usr/local/addons/weather/weather.tcl: line 20: global: not found
/usr/local/addons/weather/weather.tcl: line 22: scan: not found
Wahrscheinlich habe ich wieder was kleines Übersehen.

Als System läuft bei mir RapsberryMatic auf einem Pi 3B.

Vielen Dank schon jetzt für eure Hilfe.

Gruß André

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 15.03.2019, 17:41
von Aragorn0341
Hallo Andre77
Ich denke, Du machst beim Scriptaufruf was falsch. Das ist ein TCL-Script und kann nicht wie ein normales Script gestartet werden. Anzeichen dafür ist, das Zeile 1 einen Fehler generiert, die dem Interpreter nur sagen soll, das es ein TCL-Script ist.
Entweder legst Du ein Cuxd Gerät an (Typ System (28) mit Funktion Timer) oder du must das Script so starten:

Code: Alles auswählen

string stdout;
string stderr;
system.Exec("tclsh /usr/local/addons/weather/weather.tcl", &stdout, &stderr);
Das ist aber nicht empfehlenswert, da man system.exec() besser nicht verwenden sollte, suche mal dazu hier im Forum.
nimm Cuxd und konfiguriere den einen Kanal so:
cux_weather.jpg
natürlich muß SYSTEM|CMD_EXEC den gesamten Pfad "/usr/local/addons/weather/weather.tcl" beinhalten. Da hast auch gleich die Timerfunktion und das Script wird periodisch 1mal pro Minute aufgerufen und aktualisiert die Variablen.

Ich habe dann noch Redmatic installiert, das Dashboard sieht dann bei mir so aus:
dashbord.jpg
Die Node dazu ist hier:
Wetter_dash.rar
(3.06 KiB) 198-mal heruntergeladen
Das die Windrichtung funktioniert, muß das TCL Script so geändert werden, das nur die Gradzahl in die Variable geschrieben wird. das "WNW" macht dann die Node selber, also alles wie

Code: Alles auswählen

if [expr $w_dir <= 360]   {set windrichtung N}
   ....
set windrichtung $w_dir   
   
muß dann raus oder auskommentiert und "append ..." in "set ..." geändert werden.

Grüße

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 17.03.2019, 23:02
von Andre77
Hallo Aragorn0341,

Danke für deine Antwort. Diesmal bekam ich gar kein Mail-Benachrichtigung, deshalb habe ich es erst heute gesehen.

Irgendwie scheint es trotzdem nicht zu funktionieren. Das Gerät in CuxD habe ich genau so angelegt und auch konfiguriert, aber meine Systemvariablen bleiben alle beim Wert „15“ und es erfolgt keine Aktualisierung. Da hängt noch was, aber vielleicht komme ich noch dahinter :)

Auf jeden Fall ein dickes Danke für den Tipp mit REDMATIC. Das hatte ich wiederum gar nicht auf dem Schirm. Damit werde ich mich zusätzlich beschäftigen.

Aber erstmal müssen echte Werte her :)


Gruß André

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 18.03.2019, 08:08
von Aragorn0341
Hallo Andre77
Da das Script bei mir auch auf einer Raspberrymatic auf einem Pi 3B läuft, kann ein Hardwarproblem wohl ausgeschlossen werden. Versuch doch mal das Script "händisch" auf WinSCP zu starten, d.h. mit WinSCP einloggen (User root, PW wie in Systemsteuerung CCU eingetragen).
In WinSCP dann eine Console öffnen und den Scriptnamen mit Pfad aufrufen. Wenn es da zu keinen Fehler kommt, läuft das Script erstmal.
Evtl. sind dann die Variablen auch schon gesetzt (wenn genauso wie gefordert benannt), dann liegts am Aufruf von CuxD her.
Oder es gibt einen Fehler, wie Script nicht gefunden, dann stimmen die Rechte nicht (777).
Evtl. kannst du ja mal im Script-header die Variable "debug_mode" auf 1 oder 2 setzen (1 schreibt bei jeden Aufruf eine Logdatei neu, 2 hängt alles nur an). Die Logdatei ist dann unter "/etc/config/addons/weather/weather.log". Berichte mal was da steht.
Jetzt noch ein paar Fragen (und nicht die Augen verdrehen wegen Trivialität)
  • Dein Router, Rasperrymatic und Wetterstation sind im gleichen Netzwerk, zB. 192.168.0.xxx, wobei nur xxx unterschiedlich sein darf?
  • Funktioniert den das mitgelieferte Programm Easyweather oder so ähnlich überhaupt? Das Script "tut" so, als wäre es die Software, vielleicht muss die Software auch einmal gestartet worden sein, damit das Script funktioniert, das habe ich nie probiert - wüsste auch nicht wie man das nachholen könnte.
  • Und die geänderte IP ist auch die IP der Wetterstation und nicht die der Raspberrymatik?
Viel Spass beim Fehler suchen
Gruß

Edit: Stimmt den das Format des Scriptes in Bezug auf das Zeilenendeformat noch, falls es editiert wurde? Linux hat da ja nur LineFeed (LF), ein Editor unter Windows macht da ja gerne mal ein LF - CR draus, das mag Linux gar nicht.

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 18.03.2019, 20:29
von Andre77
Hallo,

Danke für Deine Antworten. Die banalen Fragen finde ich sogar wichtig - nicht all zu selten scheitert man genau daran.

Ich habe jetzt die Daten. Es lag doch tatsächlich am Windows-Editor und dem Zeilenende. Habe heute nochmal die originale Datei hochgeladen und dann die IP mit dem Editor von WinSCP geändert. Jetzt läuft es.

Das Programm zur Wetterstation habe ich nie gestartet. In der Beschreibung steht zwar was von einer CD, aber es ist keine mehr im Lieferumfang.

Also nochmal vielen Dank. Jetzt kann ich mich mit RedMatic beschäftigen :D

Gruß Andre

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 20.03.2019, 08:48
von Andre77
Hallo Aragorn,

Wie sieht bei dir der Vergleich der Windstärken aus - zwischen Wetterstation und Systemvariable? Bei mir wird immer der 10-fach "m/s"-Wert angezeigt.
Kann ich das irgendwie korrigieren?

Vergleich_Wind.png

Und kann man den Wert der Sonnenintensität auch in W/m² ausgeben? Die aktuelle Anzeige ist in kLux.

Danke Dir schon jetzt für Deine Antworten.


Gruß André

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 20.03.2019, 12:23
von pitti
Die Windgeschwindigkeiten werden laut Protokoll als "Wert Windgeschw. in 1/10 m/s" geliefert. Da fehlt wahrscheinlich noch das durch 10?!

Gruß Heiko

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 21.03.2019, 09:05
von Andre77
Hallo Heiko,

manchmal ist die Lösung so naheliegend :roll:

Ich habe es im Script angepasst - jetzt haut das hin. Danke.


Hat noch jemand eine Idee, wie die Wetterstation die Umrechnung von "Lux" in "W/m²" bewerkstelligt. Das wäre noch ne gute Sache.


Gruß André

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 22.03.2019, 12:35
von pitti
Hi Andre,

bei der Umrechnung habe ich mal 1.3 genommen. Damit kommt man ganz gut hin :D

Umrechnungsfaktor für Freilandstrahlung :
  • 1 W/m² = 130 lx
Gruß Heiko

Re: ELV Wetterstation WS980Wifi in Homematic

Verfasst: 22.03.2019, 15:11
von Aragorn0341
Hallo
Zur Windgeschwindigkeit:
Das habe ich noch gar nicht so genau kontrolliert, mir fiel auch auf, das der Wert zu hoch war. Ich hatte deshalb gedacht, das der Variablenwert dann in km/h statt m/s ist, da meine Anzeige des Wetterdisplays die Windgeschwindigkeit auch in km/h ausgibt. (habe ich so eingerichtet und hatte ich ja auch weiter oben so geschrieben und stimmte auch mit der Displayanzeige überein).
Ich war bis jetzt der Meinung, das damit die Werte gepasst hatten, bei dem letzten Sturm hatte ich in der Variablen 127 stehen. Mit km/h kommt das meiner Meinung nach hin. Sollten das jetzt nur 12,7 m/s gewesen sein, entspräche das ja nur 45,7 km/h. Da war der Sturm doch etwas heftiger.
Danke erst mal, ich schaue mir das nochmal an, das Protokoll sagt jedenfalls m/s, aber evtl. ist dies im Protokoll ja doch anders?

Grüße

Edit: Hallo nochmal, habe es gerade nachgeprüft, Ihr habt recht. Die Windgeschwindigkeit wird unabhängig davon, was als Einheit für die Displayanzeige gewählt wurde, immer im zehntel m/s ausgegeben. Asche auf mein Haupt...

na denn ...