Seite 1 von 1

zusätzlicher Sensor wird in weewx nicht eingebunden

Verfasst: 09 Feb 2023, 16:42
von Route56
Hallo zusammen,
habe mir einen DP150 Bodentemp.-Sensor gegönnt. Er wird vom GW1100 auch direkt erkannt und zugeordnet.
Im Webinterface vom GW1100 erscheinen seine Daten, jedoch nicht in den skins von weewx.
In seasons ist der Sensor unter:
[DisplayOptions]
observations_current als soilTemp1 (denke das er es ist) aufgeführt.
leider werden die Daten nicht angezeigt. Neustart und 1 Tag warten hat nicht geholfen.
Vielleicht hat jemand eine Idee.
Grüsse,

Re: zusätzlicher Sensor wird in weewx nicht eingebunden

Verfasst: 09 Feb 2023, 17:05
von Gyvate
das ist etwas "dünn" von Dir auf der weewx Seite beschrieben wurde, um das zu beurteilen.
Deine weewx.conf, skin.conf, index.html.tmpl und current.inc im Anhang wären hilfreich.
Ich nehme an, Du benutzt den Ecowitt Gateway Treiber ("GW1000 Treiber").
Den kannst Du auch allein im Dialog laufen lassen und Dir anschauen, was er vom GW1x00 empfängt.
Wenn der alles empfängt auf der weewx-Seite, sind Deine Konfigurationsdateien nicht richtig eingestellt.
Daher die Frage danach ... (s.o.)
Welche Version von weewx nutzt Du denn - verschiedene Versionen, verschiedene Konfiguration in skin.conf, about.inc. index.html.tmpl

Was mir ins Auge sticht:
soiltemp1 ist auch ziemlich sicher nicht der richtige Sensorname, sondern soilMoist1 (sofern er auf Kanal 1 registiriert ist)
soilTemp-Sensoren gibt es bislang bei Ecowitt nicht, wenngleich das API einen (für die Zukunft) vorsieht
das große "T" bzw. "M" sind auf der weewx-Seite wichtig - Linux und Python sind "case sensitive" - berücksichtigen also Groß- und Kleinschreibung
die Treiber-Variablen sind soiltempx, die weewx-Feldnamen sind soilTempx (x=1-8)
bzw. im Falle eines WH51 soilmoistx / soilMoist1

EDIT: siehe Post weiter unten - Korrektur, da ich WH51 anstelle von WN34 (DP150) verstanden hatte
Das Weitere, was nicht durchgestrichen ist, bleibt allerdings prinzipiell richtig - zu den richtigen weewx Sensornamen für den WN34/DP150 siehe meinen Post weiter unten

Re: zusätzlicher Sensor wird in weewx nicht eingebunden

Verfasst: 09 Feb 2023, 17:16
von olicat
Hi!

Soiltemp passt schon für den WN34S. Soilmoist wäre ja der WH51 - er schrieb aber von Bodentemperatur.

Oliver

Re: zusätzlicher Sensor wird in weewx nicht eingebunden

Verfasst: 09 Feb 2023, 17:19
von Gyvate
OK - dann habe ich das verwechselt (WH51 und WN34), aber die Groß- und Kleinschreibung zwischen Treiberfeld und Weewxfeld bleibt dennoch - und die Konfigurationsdateien brauchen den weewx/Datenbanknamen
im GW1000 API gibt es zwar soiltemp, die WN34 sind aber usrtemp (sofern Gary die in seinem Treiber nicht auf soiltemp umgeleitet hat, was aus der Treiber-Field-Map nicht hervorgeht. Dort steht, dass diese Felder nicht benutzt werden, da es dazu keine Sensoren gibt).
im GW1000 Treiber sind die WN34 Sensoren temp9 bis temp16 und die weewx Namen extraTemp9 bis extraTemp16.
Dort wurden die usr_temp in extraTemp9-16 umgeleitet.
WN34 im custom server Protokoll ist ja auch konsequenterweise tf_Chx (x=1-8) und nicht soiltempx

Re: zusätzlicher Sensor wird in weewx nicht eingebunden

Verfasst: 09 Feb 2023, 17:47
von Route56
gerne gebe ich weitere Daten:
weewx ist in Version: v4.9.1
Skin Seasons: 4.8.0 (zusätzlich noch neowx-Skin)
soll ich die Dateien als code einfügen, oder was ist besser lesbar?

hab grad nur tgz zur Hand:
config.tgz

Re: zusätzlicher Sensor wird in weewx nicht eingebunden

Verfasst: 09 Feb 2023, 17:55
von Gyvate
als Anhang - z.B. in einer ZIP-Datei

Re: zusätzlicher Sensor wird in weewx nicht eingebunden

Verfasst: 09 Feb 2023, 19:11
von Gyvate
in skin.conf
[DisplayOptions]
observations_current = outTemp, heatindex, windchill, dewpoint, outHumidity, barometer, windSpeed, rain, rainRate, UV, radiation, lightning_strike_count, inTemp, inHumidity, extraTemp1, extraTemp2, soilTemp1, soilTemp2, soilTemp3, pm1_0, pm2_5, pm10_0

# This list determines which types will appear in the "statistics" and
# "statistical summary" sections, as well as in which order.
observations_stats = outTemp, heatindex, windchill, dewpoint, outHumidity, barometer, windSpeed, rain, rainRate, ET, hail, hailRate, snow, UV, radiation, lightning_strike_count, lightning_distance, inTemp, inHumidity, extraTemp1, extraTemp2, extraTemp3, extraHumid3, extraTemp4, extraHumid4, extraTemp5, extraHumid5, extraTemp6, extraHumid6, extraTemp7, extraHumid7, extraTemp8, extraHumid8, leafTemp1, leafTemp2, leafWet1, leafWet2, soilTemp1, soilTemp2, soilTemp3, soilTemp4, soilMoist1, soilMoist2, soilMoist3, soilMoist4, pm1_0, pm2_5, pm10_0, co, co2, nh3, no2, o3, so2

würde ich mal jeweils extraTemp9 hinzufügen (dabei im GW1100 sicherstellen, dass der WN34 auf Kanal 1 registriert ist !)
(wie Du weiter unten sehen kannst, ist das sogar ggf. gar nicht nötig)

Das sollte für skin.conf genügen.

in weewx.conf gibt es zwei "schräge" Einträge
station_type muss "GW1000" sein und nicht etwa "GW1100" - weder gibt es eine [GW1100] Stanza noch einen Treiber dazu.
also
station_type = GW1000

mit den beiden Einträgen sollte schon etwas zu sehen sein.

Möglicherweise ist auch bereits schon der WN34 in den current data (also aktuelle Daten) zu finden, aber vielleicht noch nicht in der Datenbank.
Die hat bei Benutzung des wview_extended Datenbank-Schemas kein Feld für extraTemp9.
Hier kann man jetzt die Davis-Datenbank-Felder soilTemp1-4 dazu benutzen, um die WN34-Daten abzuspeichern.
(Das wview_extended DB-Schema wurde in Anlehnung an eine Davis-Station entwickelt)

Dazu muss allerdings in der [StdCalibrate] Stanza unter [[Corrections]] eine Zeile hinzugefügt werden:
[StdCalibrate]

[[Corrections]]
# For each type, an arbitrary calibration expression can be given.
# It should be in the units defined in the StdConvert section.
# Example:
foo = foo + 0.2
radiation = luminosity / 126.7 if luminosity is not None else None
soilTemp1 = extraTemp9

damit werden die WN34-Daten in der Datenbank im Feld soilTemp1 abgelegt - und später vom Report auch als soilTemp1 gelesen und in einem entsprechenden Skin-Bildchen dargestellt (dauert etwas, bis genügend Daten da sind, um auf der Zeitachse des Bildchens sichtbar zu werden. Ca. 15 - 30 Minuten) - in skin.conf ist soilTemp1 bereits eingetragen, sowohl bei den DisplayOPtions als auch beim Imagegenerator.

Falls es nicht klappt, in weewx.conf debug = 1 setzen, weewx neu starten und das syslog (i.d.R. in /var/log) zweier Archivperioden - in Deinem Fall 6 Minuten in eine ZIP oder tgz-Datei kopieren und posten.

Re: zusätzlicher Sensor wird in weewx nicht eingebunden

Verfasst: 09 Feb 2023, 21:54
von Route56
würde ich mal jeweils extraTemp9 hinzufügen (dabei im GW1100 sicherstellen, dass der WN34 auf Kanal 1 registriert ist !)
genau DAS WAR ES ! :D

Wow, vielen Dank ...mal wieder...!
ratz fatz das Problem gelöst... so ein Forum ist schon was geniales...!
leider kann ich nur mit Problemen helfen...weniger mit Lösungen :x