WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

dipsy
Beiträge: 13
Registriert: 13.09.2021, 20:50
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 1 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von dipsy » 07.10.2021, 20:34

turrican944 hat geschrieben:
23.09.2021, 12:58
Moin
Hast du den NTP Server lokal oder aus dem Internet ? bei einigen hat das viel gebracht wenn der NTP Server im Lokalennetz ist.
Der Tipp ist Gold wert, seit meiner Umstellung des NTP auf die Fritte läuft sogar mein Update über W-Lan mit dem originalen Wemo und -79 dbm. Danke.
Allerdings ist der neue mit externer Antenne jetzt da und geflasht, also kommt er auch rein am Wochenende.

Kann mir jemand helfen das Script von MartinBr zum Laufen zu bringen, ich hab es 1 zu 1 kopiert und mit meiner ID und PW versehen aber es gibt kein Upload?
Das Script läuft alle 15 Minuten. Cuxd ist installiert

greetz dipsy

turrican944
Beiträge: 513
Registriert: 29.05.2019, 22:19
Wohnort: Bargfeld
Hat sich bedankt: 4 Mal
Danksagung erhalten: 49 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von turrican944 » 07.10.2021, 20:59

Moin
Was macht das Script ? Wunderground ?

Wunderground bei mir hatte ich dieses hier, ist aber schon länger nicht mehr aktiv da ich es über Node Red zu WU uploade.
ich habe auch kein CuxD exec genommen sondern System.exec geht auf Raspberrymatic genauso gut.

! Eigene Wetterdaten an Wunderground senden
! Daten der PWS (Personal Weather Station) eingeben, zuvor PWS Anlegen unter www.wunderground.com -> more -> register your PWS
string ID = "IGExxxx"; !eigene Wunderground Station ID eingeben
string PW = "xxxxxxx"; !eigenen Wunderground Station Key eingeben


!WriteLine(tempc);
! Umrechnung der Werte, da Wunderground nur "Englische-Einheiten" akzeptiert, z.B. von Grad Celsius in Grad Fahrenheit
real tempf = (1.8 * tempc) + 32.0;

! die Luftfeuchtigkeit
real humidity = dom.GetObject("w_feuchte_rel").Value();

! Tau Punkt
real iddewpointc = dom.GetObject("w_taupunkt").Value();
real iddewpointf = (1.8 * iddewpointc) + 32.0;

! die Windgeschwindigkeit (mit Umrechnung)
real windspeedms = dom.GetObject("w_wind_mittel").Value();
real windspeedkmh = 3.6 * windspeedms;
real windspeedmph = 0.621371192 * windspeedkmh;

! die Windgeschwindigkeit (mit Umrechnung)
real idwindgustms = dom.GetObject("w_wind_spitze").Value();
real idwindgustkmh = 3.6*idwindgustms;
real idwindgustmph = 0.621371192 * idwindgustkmh;
if (idwindgustms < windspeedms) {real idwindgustmph = windspeedmph;}

! die Windrichtung (0-360°)
!real winddir = dom.GetObject("w_wind_dir").Value();
real winddir = dom.GetObject("w_wind_dir_m").Value();

!Regen
real iddailynowrainmm = dom.GetObject("w_regenstaerke").Value(); ! Regen aktuell in mm
real dailyraininnow = 0.03937 * iddailynowrainmm;
real iddailyrainmm = dom.GetObject("w_regen_mm_heute").Value(); ! Regen heute in mm
real dailyrainin = 0.03937 * iddailyrainmm;
! Luftdruck
real barometer = dom.GetObject("w_barometer").Value(); ! Luftdruck
real baromin = 0.0295301 * barometer;
! Solar Radiation (Berechnet aus der Diff.-Temperatur)

real uv = dom.GetObject("w_uv_index").Value(); ! UV indes vom Weatherman holen
uv = uv.Floor();
!uv = uv.ToString(0); ! UV Index Runden ohne komma
!WriteLine(uv);

! Werte an Wunderground senden. Die Url unten nach " State("extra/curl -s -k " um gewünschte Variablen ergänzen, welche oben definiert worden sind, nach dem Muster: &tempf="#tempf#", die Variablen vor " &action=updateraw " einfügen. Unbedingt die festgelegten Bezeichnungen von Wunderground für die Parameter verwenden, siehe http://wiki.wunderground.com/index.php/ ... d_Protocol siehe Abschnitt "List of Fields"

! dom.GetObject("test").State(humidity);


! senden mit System.Exec
system.Exec("curl -s -k 'http://weatherstation.wunderground.com/ ... =updateraw' &");
Gruß Florian

Benutzeravatar
leilei
Beiträge: 110
Registriert: 12.02.2014, 02:03
Wohnort: Klagenfurt
Hat sich bedankt: 23 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von leilei » 07.10.2021, 23:28

Bezieht sich der Parameter 8 (WM1 oder WM2) auf den Bausatz oder die Firmware?
Wenn ich einen WM1 mit der FW 2_22_2 flashe, ist dann der parameter 8 auf 1 korrekt?
Grüße leilei

turrican944
Beiträge: 513
Registriert: 29.05.2019, 22:19
Wohnort: Bargfeld
Hat sich bedankt: 4 Mal
Danksagung erhalten: 49 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von turrican944 » 08.10.2021, 09:21

Moin
Das bezieht sich auf den Bausatz also welche Hardware du hast . Wenn du die Firmware auf einen WM1 flasht dann auf 1.
Letztendlich ändert der Parameter nur das du einen ntc für die Sonnen Erkennung hast oder es über den Lichtsensor gemacht wird und der Regenmesser ist an einen anderen Pin.
Durch diesen Parameter gibt's es halt nur eine Firmware für beide Bausätze. Man kann sich den WM1 Bausatz auch zum WM2 umbauen habe ich gemacht.
Gruß Florian

dipsy
Beiträge: 13
Registriert: 13.09.2021, 20:50
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 1 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von dipsy » 08.10.2021, 21:34

So der neue Wemo hat mein Empfang von -79 dbm auf -61 dbm verbessert. Ich denke damit kann ich leben.

Als Script hab ich bissher folgendes vewendet.

Code: Alles auswählen

! Eigene Wetterdaten an Wunderground senden
! Daten der PWS (Personal Weather Station) eingeben, zuvor PWS Anlegen unter www.wunderground.com -> more -> register your PWS
string ID = "IXXX"; !eigene Wunderground Station ID eingeben
string PW = "XXX"; !eigenen Wunderground Station Key eingeben 

!zu übermittelnde Werte definieren
real tempc = dom.GetObject("w_temperatur_mittel").Value(); ! die Außentemperatur liegt in der Systemvariable "w_temperatur" vor. Hier der gemittelte Wert 

! Umrechnung der Werte, da Wunderground nur "Englische-Einheiten" akzeptiert, z.B. von Grad Celsius in Grad Fahrenheit
real tempf = (1.8 * tempc) + 32.0;

! die Luftfeuchtigkeit
real humidity = dom.GetObject("w_feuchte_rel").Value();

! Tau Punkt
real iddewpointc = dom.GetObject("w_taupunkt").Value();
real iddewpointf = (1.8 * iddewpointc) + 32.0;

! die Windgeschwindigkeit (mit Umrechnung)
real windspeedms = dom.GetObject("w_wind_mittel").Value(); 
real windspeedkmh = 3.6 * windspeedms;
real windspeedmph = 0.621371192 * windspeedkmh;

! die Windgeschwindigkeit (mit Umrechnung)
real idwindgustms = dom.GetObject("w_wind_spitze").Value();
real idwindgustkmh = 3.6*idwindgustms;
real idwindgustmph = 0.621371192 * idwindgustkmh;

! die Windrichtung (0-360°)
real winddir = dom.GetObject("w_wind_dir").Value();

!Regen
real iddailynowrainmm = dom.GetObject("w_regenstaerke").Value();   	! Regen aktuell in mm
real dailyraininnow = 0.03937 * iddailynowrainmm;
real iddailyrainmm = dom.GetObject("w_regen_mm_heute").Value();   	! Regen heute in mm
real dailyrainin = 0.03937 * iddailyrainmm;
! Luftdruck
real barometer = dom.GetObject("w_barometer").Value(); 			! Luftdruck
real baromin = 0.0295301 * barometer;
! Solar Radiation (Berechnet aus der Diff.-Temperatur)
real idsolarradiation = dom.GetObject("SV_Solar_Radiation").Value();     				! Solar Radiation
! 

!Werte an Wunderground senden. Die Url unten nach " State("extra/curl -s -k " um gewünschte Variablen ergänzen, welche oben definiert worden sind, nach dem Muster: &tempf="#tempf#", die Variablen vor " &action=updateraw " einfügen. Unbedingt die festgelegten Bezeichnungen von Wunderground für die Parameter verwenden, siehe http://wiki.wunderground.com/index.php/PWS_-_Upload_Protocol   siehe Abschnitt "List of Fields"

dom.GetObject("CUxD.CUX2801002:5.CMD_EXEC").State("extra/curl -s -k 'http://weatherstation.wunderground.com/weatherstation/updateweatherstation.php?ID="#ID#"&PASSWORD="#PW#"&dateutc=now&tempf="#tempf#"&humidity="#humidity#"&windspeedmph="#windspeedmph#"&&windgustmph="#idwindgustmph#"&winddir="#winddir#"&rainin="#dailyraininnow#"&dailyrainin="#dailyrainin#"&baromin="#baromin#"&solarradiation="#idsolarradiation#"&dewptf="#iddewpointf#"&action=updateraw'");

ohne Erfolg.
Auch dein Script

Code: Alles auswählen

! Eigene Wetterdaten an Wunderground senden
! Daten der PWS (Personal Weather Station) eingeben, zuvor PWS Anlegen unter www.wunderground.com -> more -> register your PWS
string ID = "IXXX"; !eigene Wunderground Station ID eingeben
string PW = "XXX"; !eigenen Wunderground Station Key eingeben

!WriteLine(tempc);
! Umrechnung der Werte, da Wunderground nur "Englische-Einheiten" akzeptiert, z.B. von Grad Celsius in Grad Fahrenheit
real tempf = (1.8 * tempc) + 32.0;

! die Luftfeuchtigkeit
real humidity = dom.GetObject("w_feuchte_rel").Value();

! Tau Punkt
real iddewpointc = dom.GetObject("w_taupunkt").Value();
real iddewpointf = (1.8 * iddewpointc) + 32.0;

! die Windgeschwindigkeit (mit Umrechnung)
real windspeedms = dom.GetObject("w_wind_mittel").Value();
real windspeedkmh = 3.6 * windspeedms;
real windspeedmph = 0.621371192 * windspeedkmh;

! die Windgeschwindigkeit (mit Umrechnung)
real idwindgustms = dom.GetObject("w_wind_spitze").Value();
real idwindgustkmh = 3.6*idwindgustms;
real idwindgustmph = 0.621371192 * idwindgustkmh;
if (idwindgustms < windspeedms) {real idwindgustmph = windspeedmph;}

! die Windrichtung (0-360°)
!real winddir = dom.GetObject("w_wind_dir").Value();
real winddir = dom.GetObject("w_wind_dir_m").Value();

!Regen
real iddailynowrainmm = dom.GetObject("w_regenstaerke").Value(); ! Regen aktuell in mm
real dailyraininnow = 0.03937 * iddailynowrainmm;
real iddailyrainmm = dom.GetObject("w_regen_mm_heute").Value(); ! Regen heute in mm
real dailyrainin = 0.03937 * iddailyrainmm;
! Luftdruck
real barometer = dom.GetObject("w_barometer").Value(); ! Luftdruck
real baromin = 0.0295301 * barometer;
! Solar Radiation (Berechnet aus der Diff.-Temperatur)

real uv = dom.GetObject("w_uv_index").Value(); ! UV indes vom Weatherman holen
uv = uv.Floor();
!uv = uv.ToString(0); ! UV Index Runden ohne komma
!WriteLine(uv);

! Werte an Wunderground senden. Die Url unten nach " State("extra/curl -s -k " um gewünschte Variablen ergänzen, welche oben definiert worden sind, nach dem Muster: &tempf="#tempf#", die Variablen vor " &action=updateraw " einfügen. Unbedingt die festgelegten Bezeichnungen von Wunderground für die Parameter verwenden, siehe http://wiki.wunderground.com/index.php/ ... d_Protocol siehe Abschnitt "List of Fields"

! dom.GetObject("test").State(humidity);


! senden mit System.Exec
system.Exec("curl -s -k 'http://weatherstation.wunderground.com/ ... =updateraw' &");
bringe ich nicht zum laufen. Könnte sich die URl geändert haben?

greetz dipsy

turrican944
Beiträge: 513
Registriert: 29.05.2019, 22:19
Wohnort: Bargfeld
Hat sich bedankt: 4 Mal
Danksagung erhalten: 49 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von turrican944 » 09.10.2021, 23:00

Moin
Mein Script nutze ich zwar schon länger nicht mehr , aber ich habe nie was an der URL geändert (Node Red nimmt die gleiche) evtl. Copy Paste problem weil da ja .... drin sind.
Gruß Florian

dipsy
Beiträge: 13
Registriert: 13.09.2021, 20:50
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 1 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von dipsy » 11.10.2021, 07:44

Hallo Florian,

das wäre sicher möglich nur kann ich es ja nur durch erneutes kopieren überprüfen und deine Version des Script bekommen ich auch nicht zum laufen. Leider hab ich bei der Rasberrymatic noch nie einen Log hinbekommen, der wäre sicher hilfreich.

greetz dipsy

guitardoc
Beiträge: 100
Registriert: 26.12.2020, 21:46
System: sonstige
Hat sich bedankt: 27 Mal
Danksagung erhalten: 9 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von guitardoc » 12.10.2021, 15:32

Hallo zusammen,

Wollte gerade die neue Firmware mit den angepassten Lux-Werten testen, da fällt mir doch der Lichtmesser völlig aus. Hatte ein paar Tage mit dem Netzwerk gekämpft, aber jetzt läuft alles erst mal weitgehend. Nur der Lichtmesser liefert entweder Blödsinn (schwankende Werte zwischen 10000 und 10) oder gleich gar keine. Auf den ersten Blick konnte ich keine kalte Lötstelle erkennen. Gibt es eine Möglichkeit zu messen ob da Werte überhaupt übertragen werden? Nicht dass der Sensor defekt ist (was ich mir eigentlich nicht vorstellen kann, aber wer weiß das schon...)?

Alternativ - weiß jemand, wo man einen Ersatz-Lichtsensor herbekommt und was es genau für einer sein muss um den 1:1 zu ersetzen?

Edit:
Hab den WM2 jetzt noch mal aufgeschraubt und an allen Strippen gezogen. Die sitzen fest. Danach per Druck auf den langen Schalter das System neu gestartet - Wiffi Access Point wurde aktiv. Per 192.168.4.1 (dort waren die SSID des WLAN und Passwort noch vorhanden) auf reset und dann war er wieder an seiner festen IP erreichbar. Aber komplett ohne Lichtsensor. Es kommen keine Lichtdaten mehr an. Ich denke wirklich fast, dass der Lichtsensor den Dienst quittiert hat. Hatte das schon mal jemand und wo bekommt man Ersatz her?

Danke schon mal im Voraus.

dondaik
Beiträge: 12886
Registriert: 16.01.2009, 18:48
Wohnort: Steingaden
Hat sich bedankt: 1584 Mal
Danksagung erhalten: 221 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von dondaik » 12.10.2021, 17:34

ali und die bucht sind deine freunde :mrgreen:
-------
!!! der download der handbüchern auf den seiten von eq3 und das lesen der tips und tricks kann das hm-leben sehr erleichtern - das nutzen der suche nach schlagworten ebenso :mrgreen: !!!
wer schreibfehler findet darf sie behalten.

guitardoc
Beiträge: 100
Registriert: 26.12.2020, 21:46
System: sonstige
Hat sich bedankt: 27 Mal
Danksagung erhalten: 9 Mal

Re: WEATHERMAN ...die perfekte Wetterstation für die Hausautomation

Beitrag von guitardoc » 12.10.2021, 21:05

Wenn ich mal wüsste, welches das richtige Teil ist, dann wäre mir sehr geholfen… :-)
Die Suche nach gy-49 max4409 ergibt jede Menge Treffer, davon gibt es scheinbar drölfzig Varianten zwischen 1,99 und 50€… Welcher ist nun der, der mich glücklich machen könnte? Weiß das jemand?
Danke schon mal im Voraus!

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“