WeeWX, Wechsel von Debian 11 auf 12 die 2te

Für allgemeine Software
mike69
Offline
Beiträge: 51
Registriert: 31 Mai 2022, 09:49
Hat sich bedankt: 9 mal

WeeWX, Wechsel von Debian 11 auf 12 die 2te

#1

Beitrag von mike69 »

Hallo an Alle.

Leider wird es nicht langweilig. :)

Der Wechsel auf WeewX 5.0.2 war ein bisschen holprig, da der "user" Ordner Richtung /etc/weewx/bin/ gewandert ist, ebenso wurden neue Tools wie weectl an den Start gebracht.

Aktuelle Baustelle, gelegendlich streikt das füttern der SQL Datenbank. Die Abfrage:

Code: Alles auswählen

SELECT sum(  CASE    WHEN `outTemp`>1000.0 THEN 0.0    WHEN `outTemp`>86.0 THEN 36.0    WHEN `outTemp`<50.0 THEN 0.0    ELSE `outTemp`-50.0  END*`interval`/1440.0),  MIN(usUnits),MAX(usUnits) FROM archive WHERE dateTime>1672528696.8e0 AND dateTime<=1683760696
wird nicht zeitnah abgearbeitet. nach 10 Minuten kommt dann die nächste Abfrage bis sich der SQL-Server die komplette CPU schnappert.

WeeWX kommentiert die Situation mit der Ansage:

Code: Alles auswählen

Feb 17 15:50:34  weewxd[3218842]: WARNING weewx.engine: Previous report thread has been running 602.9165217876434 seconds.  Launching report thread anyway.
Aktuell hilft es, den weewx.service jede Stunde neu zu starten.

WeeWX wurde vor 2 jahren installiert, erst mit dem interceptor Treiber, letztes Jahr kam dann der gw1000 Treiber. Die Datenbank wurde Dank Werners Unterstützung eingerichtet und für Ecowitt soweit erweitert.

Jemand ne Idee?
Würde erstmal die DB sichern und diese unter WeeWX 5.0 neu generieren und die Daten recovern.


Gruß, Mike
Zuletzt geändert von mike69 am 17 Feb 2024, 19:57, insgesamt 1-mal geändert.
Gateway: GW1100A, FW 2.3.1
Sensors: 1xWH65, 8xWH31, 2xWH51, 4x WN34, 1xWH55, 1xWH57
Software: FOSHKplugin 0.10 beta, WeeWX 5.xx
spitzmaus
Offline
Beiträge: 63
Registriert: 15 Mär 2023, 21:40
Wohnort: im mittelsächsischen Tiefland
Hat sich bedankt: 7 mal
Danksagung erhalten: 11 mal
Kontaktdaten:

Re: WeeWX, Wechsel von Debian 11 auf 12 die 2te

#2

Beitrag von spitzmaus »

Dazu gab es eine Menge Diskussion in der Benutzergruppe, etwa unter dem Titel "Slow Report Generation after Upgrade from 4.10.2 to 5..0" (Leider läßt sich der Link hier nicht eintragen).

Hintergrund ist, daß Version 5.0 anders mit Werten umgeht, die nicht in der Datenbank enthalten sind, als 4.X das tat. Solche Werte werden jetzt während der Webseitengenerierung berechnet. Das kann dauern, insbesondere wenn es um Allzeit-Extrema geht. Eine mögliche Abhilfe ist, die betreffenden Größen in die Datenbank aufzunehmen und mit "calc-missing" berechnen zu lassen. Weiterhin kann man den Abschnitt StdWXCalculate --> Calculations aufräumen und dabei besonders auf Einträge "software" achten. Als besonders betroffen von diesen Problemen gilt die beliebte Belchertown-Skin, weil sie einige unglückliche SQL-Statements enthält.
mike69
Offline
Beiträge: 51
Registriert: 31 Mai 2022, 09:49
Hat sich bedankt: 9 mal

Re: WeeWX, Wechsel von Debian 11 auf 12 die 2te

#3

Beitrag von mike69 »

Danke für die Info.
spitzmaus hat geschrieben: 17 Feb 2024, 17:02 Weiterhin kann man den Abschnitt StdWXCalculate --> Calculations aufräumen und dabei besonders auf Einträge "software" achten. Als besonders betroffen von diesen Problemen gilt die beliebte Belchertown-Skin, weil sie einige unglückliche SQL-Statements enthält.
Nutze aktuell keinen anderen Skin ausser den Seasons. Zum Thema StdWXCalculate, hier die Kandidaten:

Code: Alles auswählen

        GTS = software, archive
        GTSdate = software, archive
        utcoffsetLMT = software, archive
        yearGDD = software
        seasonGDD = software
Habe mal mit

Code: Alles auswählen

weectl database reconfigure
die DB neu erstellt und nutze diese. Seitem sind die queries in 30-40 Sekunden durch.

Habe übrigens die Mailinglist gefunden, danke dir.
Gateway: GW1100A, FW 2.3.1
Sensors: 1xWH65, 8xWH31, 2xWH51, 4x WN34, 1xWH55, 1xWH57
Software: FOSHKplugin 0.10 beta, WeeWX 5.xx
spitzmaus
Offline
Beiträge: 63
Registriert: 15 Mär 2023, 21:40
Wohnort: im mittelsächsischen Tiefland
Hat sich bedankt: 7 mal
Danksagung erhalten: 11 mal
Kontaktdaten:

Re: WeeWX, Wechsel von Debian 11 auf 12 die 2te

#4

Beitrag von spitzmaus »

Auweia, da muß ich mich ja an die eigene Nase fassen, wenn ich die Liste sehe. GTS und GTSdate sollten nur beim ersten Mal nach dem Neustart Zeit brauchen. Die Werte werden zwischengespeichert. utcOffsetLMT ist konstant, kostet also nichts. Bei yearGDD steht bei mir auch ", archive" dahinter. Das könnte durchaus Zeit einsparen. Und seasonGDD kommt bei mir dort gar nicht vor, wird aber trotzdem in der Graphik dargestellt. Das ist etwas komisch. Aber ich gehe mal davon aus, daß auch dort ", archive" nicht schadet.
mike69
Offline
Beiträge: 51
Registriert: 31 Mai 2022, 09:49
Hat sich bedankt: 9 mal

Re: WeeWX, Wechsel von Debian 11 auf 12 die 2te

#5

Beitrag von mike69 »

Sehe gerade, das Mapping funzt nicht richtig.
Seit gestern werden soilTemp1-4 nicht angezeigt, genau wie soilTempBatt1-4.
Deren mapping stehen in der weewx.conf.

Zum Beispiel soilTemp1, wird als extraTemp9 angezeigt:

Code: Alles auswählen

INFO user.gw1000: GatewayDriver: Packet 2024-02-18 15:52:09 CET (1708267929): {'dateTime': '1708267929', 'daymaxwind': '5.1', 'dayRain': '1.5', 'extraHumid1': '47', 'extraHumid2': '43', 'extraHumid3': '73', 'extraHumid4': '82', 'extraHumid5': '47', 'extraHumid6': '43', 'extraHumid7': '49', 'extraHumid8': '51', 'extraTemp1': '22.5', 'extraTemp2': '22.7', 'extraTemp3': '11.6', 'extraTemp4': '10.6', 'extraTemp5': '23.2', 'extraTemp6': '20.8', 'extraTemp7': '21.5', 'extraTemp8': '16.0',
 
 'extraTemp9': '22.7',
 
  'extraTemp10': '8.4', 'extraTemp11': '8.3', 'extraTemp12': '8.3', 'heap_free': '27544', 'inHumidity': '51', 'inTemp': '22.3', 'leak1': '0', 'lightning_distance': '27', 'lightning_last_det_time': '1707725948', 'lightning_strike_count': '0', 'lightningcount': '0', 'luminosity': '1023.0', 'monthRain': '53.8', 'outHumidity': '88', 'outTemp': '9.8', 'pressure': '1010.8', 'rain': '0.0', 'rainRate': '0.0', 'relbarometer': '1022.8', 'soilMoist1': '79', 'soilMoist2': '83', 'stormRain': '1.5', 'usUnits': '17', 'UV': '0', 'uvradiation': '1.0', 'weekRain': '9.1', 'wh31_ch1_batt': '0', 'wh31_ch1_sig': '4', 'wh31_ch2_batt': '0', 'wh31_ch2_sig': '4', 'wh31_ch3_batt': '0', 'wh31_ch3_sig': '4', 'wh31_ch4_batt': '0', 'wh31_ch4_sig': '4', 'wh31_ch5_batt': '0', 'wh31_ch5_sig': '4', 'wh31_ch6_batt': '0', 'wh31_ch6_sig': '4', 'wh31_ch7_batt': '0', 'wh31_ch7_sig': '4', 'wh31_ch8_batt': '0', 'wh31_ch8_sig': '4', 'wh51_ch1_batt': '1.3', 'wh51_ch1_sig': '4', 'wh51_ch2_batt': '1.7', 'wh51_ch2_sig': '4', 'wh51_ch3_batt': 'None', 'wh51_ch3_sig': '0', 'wh55_ch1_batt': '3', 'wh55_ch1_sig': '4', 'wh57_batt': '2', 'wh57_sig': '4', 'wh65_batt': '0', 'wh65_sig': '4', 'windDir': '0', 'windGust': '0.0', 'windSpeed': '0.0', 'wn34_ch1_batt': '1.28', 'wn34_ch1_sig': '4', 'wn34_ch2_batt': '1.18', 'wn34_ch2_sig': '4', 'wn34_ch3_batt': '1.22', 'wn34_ch3_sig': '4', 'wn34_ch4_batt': '1.22', 'wn34_ch4_sig': '4', 'yearRain': '98.7'}
Lt. mapping in der weewx.conf steht soilTemp1 für temp9:

Code: Alles auswählen

        soilTemp1 = temp9
        soilTemp2 = temp10
        soilTemp3 = temp11
        soilTemp4 = temp12

        soilTempBatt1 = wn34_ch1_batt
        soilTempBatt2 = wn34_ch2_batt
        soilTempBatt3 = wn34_ch3_batt
        soilTempBatt4 = wn34_ch4_batt
soilTemp1 hat auch seit gestern keine Einträge in der DB. Lege ich einen Column "extraTemp9" an, wird dieser in der DB gefüttert. Genau wie die "wn34_ch1_batt", nach dem anlegen in der DB. Weil die Batteriespannungen sind auch verschwunden...

Habe ich mir mit "weectl database reconfigure" irgendwas zerschossen?
Gateway: GW1100A, FW 2.3.1
Sensors: 1xWH65, 8xWH31, 2xWH51, 4x WN34, 1xWH55, 1xWH57
Software: FOSHKplugin 0.10 beta, WeeWX 5.xx
Benutzeravatar
Werner
Offline
Beiträge: 121
Registriert: 07 Dez 2020, 18:23
Wohnort: Lackenhäuser
Danksagung erhalten: 33 mal
Kontaktdaten:

Re: WeeWX, Wechsel von Debian 11 auf 12 die 2te

#6

Beitrag von Werner »

Der Grund dürfte sein, dass Du jetzt die Original 6.0 verwendest.

Soweit ich mich entsinne, hast Du vorher meine modifizierte GW1000 verwendet.
Und Dein "Mapping" nutzt meine modifizierte GW1000, welche das gleiche Mapping hat wie der Interceptor-Treiber
Wobei beide Treiber bei mir immer aktuell gehalten werden.

Ich habe z.B. noch nicht herausgefunden, wie ich mit der 6.0
die Spannungs-/Batteriewerte, Regenwerte und Signalzustände extra über Befehlszeile abrufen kann, wie es vorher war.
So was meine ich:

Code: Alles auswählen

PYTHONPATH=/usr/share/weewx python3 -m user.gw1000 --ip-address=192.168.0.160 --sensors
Using configuration file /etc/weewx/weewx.conf

Interrogating WN1980 (Device WN1980A_V1.2.3) at 192.168.0.160:45000

Sensor     Status
WH65       sensor ID: 12  signal: 4  battery: 0 (OK)
WH68       sensor is registering...
WS80       sensor ID: a0025  signal: 4  battery: 3.28
WH40       sensor ID: e724  signal: 4  battery: 1.5 (OK)
WH25       sensor is registering...
WH32       sensor is disabled
WH31 ch1   sensor ID: 7e  signal: 4  battery: 0 (OK)
WH31 ch2   sensor ID: 1d  signal: 4  battery: 0 (OK)
WH31 ch3   sensor ID: 49  signal: 4  battery: 0 (OK)
WH31 ch4   sensor ID: 3b  signal: 4  battery: 0 (OK)
WH31 ch5   sensor ID: 68  signal: 4  battery: 0 (OK)
WH31 ch6   sensor ID: 56  signal: 4  battery: 0 (OK)
WH31 ch7   sensor ID: e3  signal: 4  battery: 0 (OK)
WH31 ch8   sensor ID: c0  signal: 4  battery: 0 (OK)
WH51 ch1   sensor ID: ceb1  signal: 4  battery: 1.6 (OK)
WH51 ch2   sensor ID: c503  signal: 4  battery: 1.7 (OK)
WH51 ch3   sensor ID: c4db  signal: 4  battery: 1.5 (OK)
WH51 ch4   sensor ID: d175  signal: 4  battery: 1.7 (OK)
WH51 ch5   sensor ID: d36d  signal: 4  battery: 1.7 (OK)
WH51 ch6   sensor ID: d2f6  signal: 4  battery: 1.5 (OK)
WH51 ch7   sensor ID: d2ba  signal: 4  battery: 1.7 (OK)
WH51 ch8   sensor ID: ec89  signal: 4  battery: 1.4 (OK)
WH41 ch1   sensor ID: c864  signal: 4  battery: 6 (DC)
WH41 ch2   sensor ID: 29  signal: 4  battery: 5 (OK)
WH41 ch3   sensor ID: 3ec9e  signal: 4  battery: 6 (DC)
WH41 ch4   sensor ID: 2  signal: 4  battery: 5 (OK)
WH57       sensor ID: d127  signal: 4  battery: 5 (OK)
WH55 ch1   sensor ID: cd9e  signal: 4  battery: 3 (OK)
WH55 ch2   sensor ID: 10cdf8  signal: 3  battery: 5 (OK)
WH55 ch3   sensor ID: 20ccf3  signal: 4  battery: 5 (OK)
WH55 ch4   sensor ID: 30cd16  signal: 4  battery: 5 (OK)
WN34 ch1   sensor ID: 27ad  signal: 4  battery: 1.56 (OK)
WN34 ch2   sensor ID: 27b3  signal: 4  battery: 1.56 (OK)
WN34 ch3   sensor ID: 2b7a  signal: 4  battery: 1.56 (OK)
WN34 ch4   sensor ID: 2bf1  signal: 4  battery: 1.56 (OK)
WN34 ch5   sensor ID: 2bfb  signal: 4  battery: 1.56 (OK)
WN34 ch6   sensor ID: 2beb  signal: 4  battery: 1.56 (OK)
WN34 ch7   sensor ID: 2bd2  signal: 4  battery: 1.56 (OK)
WN34 ch8   sensor ID: 51b7  signal: 4  battery: 1.76 (OK)
WH45       sensor ID: 2d48  signal: 4  battery: 6 (DC)
WN35 ch1   sensor ID: 2908  signal: 4  battery: 1.74 (OK)
WN35 ch2   sensor is registering...
WN35 ch3   sensor is registering...
WN35 ch4   sensor is registering...
WN35 ch5   sensor is registering...
WN35 ch6   sensor is registering...
WN35 ch7   sensor is registering...
WN35 ch8   sensor is registering...
WS90       sensor ID: 2d89  signal: 4  battery: 3.22

mike69
Offline
Beiträge: 51
Registriert: 31 Mai 2022, 09:49
Hat sich bedankt: 9 mal

Re: WeeWX, Wechsel von Debian 11 auf 12 die 2te

#7

Beitrag von mike69 »

Die Sache konnte bissl geradegezogen werden:
WeeWX stoppen, alten Treiber deinstallieren, neuen Treiber installieren und WeeWX wieder starten.
Einfaches drüberbügeln mag WeeWX wohl nicht.

@Werner
Batterie Stats werden ebenfalls links nicht angezeigt, ebenso die Spannungen der WN34 und WH51.
Rechts werden die Kurven der Spannungen aber generiert. Daten sind vorhanden.

Edit:
Seit ner Stunde werden keine Temperaturen oder Spannungen der WN34 in der Datenbank abgelegt.

Langsam Fresse dick hier.
Schaue mir morgen das nochmal an.
Gateway: GW1100A, FW 2.3.1
Sensors: 1xWH65, 8xWH31, 2xWH51, 4x WN34, 1xWH55, 1xWH57
Software: FOSHKplugin 0.10 beta, WeeWX 5.xx
mike69
Offline
Beiträge: 51
Registriert: 31 Mai 2022, 09:49
Hat sich bedankt: 9 mal

Re: WeeWX, Wechsel von Debian 11 auf 12 die 2te

#8

Beitrag von mike69 »

Habe in einer neuen VM mit jungfräulichen Debian 12 WeeWX 5.0.2 inkl. den gw1000 Treiber v0.6.installiert. Ootb werden die WH31 und die WH51 gelistet.

WH31 Temp und Feuchte sind extraTemp und extraHumid, jeweils 1-8.
WH51 ist soilMoist 1-8, uns diese sind als Column in der DB.
WN34_1 ist extraTemp9 und nicht soilTemp1? Oke, kein Eintrag in der DB, entweder Column erstellen oder mappen, richtig?

Jetzt die Frage, extraTemp 1-8 werden von WeeWX in einer jungfräulichen DB erstellt, weshalb nur bis 8?
Kann "weectl" anhand des Treibers eventuell die erforderlichen Column nachreichen?

Habe extraTemp9 (soilTemp1) in der Db erstellt, Temperatur kommt an.

Echt verwirrend...
Gateway: GW1100A, FW 2.3.1
Sensors: 1xWH65, 8xWH31, 2xWH51, 4x WN34, 1xWH55, 1xWH57
Software: FOSHKplugin 0.10 beta, WeeWX 5.xx
Benutzeravatar
Gyvate
Offline
Beiträge: 2527
Registriert: 10 Aug 2021, 23:41
Wohnort: Saarbrücken
Hat sich bedankt: 12 mal
Danksagung erhalten: 383 mal
Kontaktdaten:

Re: WeeWX, Wechsel von Debian 11 auf 12 die 2te

#9

Beitrag von Gyvate »

mike69 hat geschrieben: 20 Feb 2024, 00:19 ....
Habe extraTemp9 (soilTemp1) in der Db erstellt, Temperatur kommt an.

Echt verwirrend...
was heißt dieser Satz ? "erstellt" ? eine DB Spalte angelegt ? SoilTemp1-SoilTemp4 existieren bereits im wview_extended DB Schema ... (genau wie SoilMoist1-4).
Oder meinst Du mit "erstellt" das existierende Datenbankfeld umgewidmet (Englisch: repurposed), was manche etwas unscharf "mapping" nennen ?
Das wäre der praktische und schnelle Weg.

In [StdCalibrate] [[Corrections]] den Eintrag SoilTemp1 = extraTemp9 vornehmen und das war's, da die SoilTemp Felder der gleichen Einheitengruppe wie die ExtraTemp Felder angehören.

Man kann natürlich die weewx fieldmap und deren Bezeichnungen übernehmen; dann werden die gesammelten Sensorwerte direkt in die Datenbank geschrieben (sofern es dort Felder, Spalten gleichen Namens gibt).

Warum gibt es nur so viele Felder (z.B. 8 für ExtraTemp) und nicht mehr (oder weniger) ?
Ganz einfach: weil das wview_extended Datenbankschema so definiert ist 8-) .
Und warum gibt es keine 25 ? Oder 16 ? Weil die keiner angelegt hat.

Übrigens sind die WN34 Sensoren in der Ecowitt-Nomenklatur keine ExtraTemp Sensoren sondern UserTemp Sensoren.

Das wview_extended Datenbankbankschema beruht auf einer Vorlage, die sich an einer Davis VP2 orientiert.
Wäre die mittlerweile bekannte maximale Anzahl von Ecowitt Sensoren die Vorlage gewesen, wäre das DB-Schema "größer".
Ist aber nicht so.

Meines Wissens hat Werner Skripte erstellt, mit denen man das wview_extended zu einem "wview_ecowitt" machen kann; d.h. es werden alle "fehlenden" Felder (die nicht im wview_extended DB-Schema enthalten sind) angelegt und auch die entsprechenden Einheitengruppen definiert. Werner hat das für eine maximale Ausprägung des Custom Server Ecowitt-Protokolls gemacht (nicht für das lokale Ecowitt Gate API a.k.a. GW1000 oder telnet API). Also z.B. für einen GW1x00, an dem die maximale Anzahl aller gleichzeitig möglichen Sensoren registriert ist. (siehe Tabelle WiKi).

Das wview_extended Datenbankschema findet sich (je nach Installationsverfahren und weewx Version) z.B. in
/usr/share/weewx/schemas als wview_extended.py

Wenn man dieses "ausbaut" (ggf. umbenennt), es in der weewx.conf referenziert und eine Datenbank frisch anlegt (Erststart von weewx ohne Datenbank), dann werden alle Felder, die im Datenbankschema stehen auch in der Datenbank angelegt.
Man kann das auch später mit dem entsprechenden weewx Datenbanktool nachholen (Ansatz von Werner).

Eigentlich ist das m.M.n. nicht verwirrend sondern das Ergebnis eines entsprechend durchdachten Datenbankdesigns, das übrigens in der weewx-Doku beschrieben ist.

Wenn in der Seasons Skin die aktuelle Wertetabelle (das "Teil" links) nicht (ganz) gefüllt wird, dann sind entweder in der skin.conf oder in der index.html.tmpl (mit current.inc) die Sensoren ("observations") nicht definiert/aktiviert.
Das kommt auf die weewx-Version an; 3.9 bis 4.5 sind anders als 4.10 oder etwa 5.0.

Ich sehe z.Zt. eigentlich keinen Mehrwert in der weewx 5.0. Meine produktiven weewx Installationen laufen alle mit 3.9/4.5 skin.conf und index.html.tmpl Definitionen - und das wunderbar mit allen möglichen Ecowitt-Sensoren.
Eine Testinstallation läuft mit weewx 4.10.
Natürlich kann man die skin.conf und index.html.tmpl bis "zum Anschlag" parametrisieren, wie das auch früh mit der neowx-material Skin gemacht wurde. Nachteil: das ganze Coding ist zwar "elegant" aber auch hochgradig undurchsichtig.
Aber jedem Tierchen sein Pläsierchen.

Und warum soll ich mir die Kinderkrankheiten von 5.0 antun ?
Alle benötigten Treiber (Interceptor, Ecowitt Gateway Treiber) laufen auch mit dem "alten" weewx. Die Treiber <--> weewx Schnittstelle hat sich ja nicht geändert.
Ecowitt WS2320E,HP2553,HP3501,GW2001,GW1100, GW1000,WH2650,WN1910,WN1980, Meteobridge RPi4B-2GB/(16)32GB SLC 3165, Weewx 4.5.1/4.10.2, CumulusMX 3.28.4 b3282, Barani MeteoShield Pro, MetSpecRad02, Personal Weather Tablet(PWT) - http://meshka.eu
mike69
Offline
Beiträge: 51
Registriert: 31 Mai 2022, 09:49
Hat sich bedankt: 9 mal

Re: WeeWX, Wechsel von Debian 11 auf 12 die 2te

#10

Beitrag von mike69 »

Moin.

Eines vorneweg, dieses stundenlange reinschauen und vergleichen der Dateien um zu verstehen, wie was funktioniert gleicht gelegendlich einem Schwein, welches ins Uhrwerk schaut.
Dies und die weiter fallende Lernkurve sind verärgernd und fliessen gelegendlich, was nicht sein sollte, in meine geschriebenen Worte. Dafür entschuldige ich mich.

Das Wissen und die Hilfsbereitschaft der Teilnehmer hier, besonders Ollies, Werners und auch Deine, Gyvate, wissen ich und auch andere zu schätzen.

Sollte mal erwähnt werden.

was heißt dieser Satz ? "erstellt" ? eine DB Spalte angelegt ? SoilTemp1-SoilTemp4 existieren bereits im wview_extended DB Schema ... (genau wie SoilMoist1-4).
Oder meinst Du mit "erstellt" das existierende Datenbankfeld umgewidmet (Englisch: repurposed), was manche etwas unscharf "mapping" nennen ?
Das wäre der praktische und schnelle Weg.
Ja, habe einfach zusätzliche Spalten mit extraTemp9-12 erstellt, die werden jetzt mit Daten gefüttert.
In [StdCalibrate] [[Corrections]] den Eintrag SoilTemp1 = extraTemp9 vornehmen und das war's, da die SoilTemp Felder der gleichen Einheitengruppe wie die ExtraTemp Felder angehören.

Man kann natürlich die weewx fieldmap und deren Bezeichnungen übernehmen; dann werden die gesammelten Sensorwerte direkt in die Datenbank geschrieben (sofern es dort Felder, Spalten gleichen Namens gibt).
Genau das meinte ich mit mappen, die weewx.conf fieldmap nutzen, nicht die Spalten umbenennen.
Leider funzt der Eintag unter "[StdCalibrate] [[Corrections]" nicht, die Spalte soilTemp bleibt leer.
Übrigens sind die WN34 Sensoren in der Ecowitt-Nomenklatur keine ExtraTemp Sensoren sondern UserTemp Sensoren.
Hier ein Auszug von Weewx im Debug Modus:

Code: Alles auswählen

Feb 20 10:51:27 testing weewxd[597]: INFO user.gw1000: GatewayDriver: Packet 2024-02-20 10:51:27 CET (1708422687): {'dateTime': '1708422687', 'daymaxwind': '7.7', 'dayRain': '0.3', 'extraHumid1': '43', 'extraHumid2': '41', 'extraHumid3': '72',
 'extraHumid4': '85', 'extraHumid5': '44', 'extraHumid6': '43', 'extraHumid7': '54', 'extraHumid8': '52', 'extraTemp1': '22.2', 'extraTemp2': '22.1', 'extraTemp3': '10.5', 'extraTemp4': '7.8', 'extraTemp5': '23.1', 'extraTemp6': '21.3', 'extraTemp7': '21.9', 'extraTemp8': '14.9', 'extraTemp9': '23.0', 'extraTemp10': '7.8', 'extraTemp11': '8.1', 'extraTemp12': '8.2', 'heap_free': '27944',
  'inHumidity': '42', 'inTemp': '22.1', 'leak1': '0', 'lightning_distance': '27', 'lightning_last_det_time': '1707725948', 'lightning_strike_count': '0', 'lightningcount': '0', 'luminosity': '21180.7', 'monthRain': '66.8', 'outHumidity': '78', 'outTemp': '8.1', 'pressure': '1014.3', 'rain': '0.0', 'rainRate': '0.0', 'relbarometer': '1026.3', 'soilMoist1': '82', 'soilMoist2': '80', 'stormRain': '14.5', 'usUnits': '17',
   'UV': '1', 'uvradiation': '48.9', 'weekRain': '9.6', 'wh31_ch1_batt': '0', 'wh31_ch1_sig': '4', 'wh31_ch2_batt': '0', 'wh31_ch2_sig': '4', 'wh31_ch3_batt': '0', 'wh31_ch3_sig': '4', 'wh31_ch4_batt': '0', 'wh31_ch4_sig': '4', 'wh31_ch5_batt': '0', 'wh31_ch5_sig': '4', 'wh31_ch6_batt': '0', 'wh31_ch6_sig': '4', 'wh31_ch7_batt': '0', 'wh31_ch7_sig': '4', 'wh31_ch8_batt': '0', 'wh31_ch8_sig': '4',
    'wh51_ch1_batt': '1.3', 'wh51_ch1_sig': '4', 'wh51_ch2_batt': '1.7', 'wh51_ch2_sig': '4', 'wh51_ch3_batt': 'None', 'wh51_ch3_sig': '0', 'wh55_ch1_batt': '3', 'wh55_ch1_sig': '4', 'wh57_batt': '2', 'wh57_sig': '4', 'wh65_batt': '0', 'wh65_sig': '4', 'windDir': '255',
     'windGust': '3.1', 'windSpeed': '2.2', 'wn34_ch1_batt': '1.28', 'wn34_ch1_sig': '4', 'wn34_ch2_batt': '1.18', 'wn34_ch2_sig': '4', 'wn34_ch3_batt': '1.22', 'wn34_ch3_sig': '4', 'wn34_ch4_batt': '1.22', 'wn34_ch4_sig': '4', 'yearRain': '111.7'}
Da steht nichts von userTemp, extraTemp 9-12 sind die 4 WN34 hier.
Das wview_extended Datenbankbankschema beruht auf einer Vorlage, die sich an einer Davis VP2 orientiert.
Wäre die mittlerweile bekannte maximale Anzahl von Ecowitt Sensoren die Vorlage gewesen, wäre das DB-Schema "größer".
Ist aber nicht so.

Meines Wissens hat Werner Skripte erstellt, mit denen man das wview_extended zu einem "wview_ecowitt" machen kann; d.h. es werden alle "fehlenden" Felder (die nicht im wview_extended DB-Schema enthalten sind) angelegt und auch die entsprechenden Einheitengruppen definiert. Werner hat das für eine maximale Ausprägung des Custom Server Ecowitt-Protokolls gemacht (nicht für das lokale Ecowitt Gate API a.k.a. GW1000 oder telnet API). Also z.B. für einen GW1x00, an dem die maximale Anzahl aller gleichzeitig möglichen Sensoren registriert ist. (siehe Tabelle WiKi).
Das mit der Vorlage der Davis VP2 wuste ich nicht, danke.

Da unsere WeeWX installation ja > 2 Jahre alt ist und mehre Treiberwechsel statt fand inkl. Änderungen etlicher Configs, *.tmpl und *.inc, da wollte ich sauber mit ner nagelneuen Installation anfangen.

Schaut Euch mal die originale current.inc der Seasons und die von Werner an, da sind Welten zwischen... für mich. Ich wüsste gar nicht, wo ich was einfügen sollte. :)
Eigentlich ist das m.M.n. nicht verwirrend sondern das Ergebnis eines entsprechend durchdachten Datenbankdesigns, das übrigens in der weewx-Doku beschrieben ist.
Ohne Frage. Spreche nicht für die Allgemeinheit, sondern für mich. Und das "meine" Installation nicht funktioniert ist für "mich" verwirrend. Nur so am Rande.
Wenn in der Seasons Skin die aktuelle Wertetabelle (das "Teil" links) nicht (ganz) gefüllt wird, dann sind entweder in der skin.conf oder in der index.html.tmpl (mit current.inc) die Sensoren ("observations") nicht definiert/aktiviert.
Das kommt auf die weewx-Version an; 3.9 bis 4.5 sind anders als 4.10 oder etwa 5.0
Schaue ich mir noch an. Wie erwähnt, die Unterschiede der orig. WeeWX und Werners Dateien sind für einen Python Laien, der nur ein bisschen drag und drop hinbekommt, echt heavy.
Ich sehe z.Zt. eigentlich keinen Mehrwert in der weewx 5.0. Meine produktiven weewx Installationen laufen alle mit 3.9/4.5 skin.conf und index.html.tmpl Definitionen - und das wunderbar mit allen möglichen Ecowitt-Sensoren.
Eine Testinstallation läuft mit weewx 4.10.
Natürlich kann man die skin.conf und index.html.tmpl bis "zum Anschlag" parametrisieren, wie das auch früh mit der neowx-material Skin gemacht wurde. Nachteil: das ganze Coding ist zwar "elegant" aber auch hochgradig undurchsichtig.
Aber jedem Tierchen sein Pläsierchen.

Und warum soll ich mir die Kinderkrankheiten von 5.0 antun ?
Alle benötigten Treiber (Interceptor, Ecowitt Gateway Treiber) laufen auch mit dem "alten" weewx. Die Treiber <--> weewx Schnittstelle hat sich ja nicht geändert.
Hast wahrscheinlich recht damit. Habe zum Glück noch ein altes Backup gefunden, wo es so weit funktioniert.
Gateway: GW1100A, FW 2.3.1
Sensors: 1xWH65, 8xWH31, 2xWH51, 4x WN34, 1xWH55, 1xWH57
Software: FOSHKplugin 0.10 beta, WeeWX 5.xx
Antworten