Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


titleVersion History...

Version 0.08 - 01.05.2021 public beta test started

  • minor bugfixes
  • extended debug options in the Loxone version ( support and supzip - for automatic collection of debug data.)
  • Better logging in the send log: the number of the forward is also logged in order to be able to find faulty blocks in the config file more easily
  • Adaptable logging level - less logging with a view to the essentials
    Logging can now be fine-tuned via Logging\LOG_LEVEL in the config file - with
    - ALL, as before, all lines are logged
    - INFO - all lines except ERROR, WARNING, INFO and OK are hidden
    - WARNING - all lines except ERROR and WARNING and OK are hidden
    - ERROR - only lines with ERROR and OK are output
    For reasons of compatibility, ALL is preset - however, I recommend LOG_LEVEL INFO - so everything that was not successful is logged
  • LOG_LEVEL can also be adjusted during operation via http://ipaddress:port/FOSHKplugin/loglevel=[ALL, INFO, WARNING, ERROR] - however, the value set in the config file applies again after a restart
  • with Logging\LOG_ENABLE = False, logging can be switched off globally without making changes to the log file names
  • more flexible firmware update check (duplicate options for broken Ecowitt-file)
  • Increased transmission security with http(s) and ftp(s) forwards through transmission repetition:
    3 attempts are now made to deliver the data; the second attempt takes place after 5 seconds and the third after another 10 seconds
    however, it is not repeated if the return code indicates a local error (400..499)
  • Support of forward via MQTT for both metric values (FWD_TYPE = MQTTMET) and imperial values (FWD_TYPE = MQTTIMP)
    requires python3-setuptools and paho-mqtt (will be installed automatically)
    MQTT broker is defined via the FWD_URL: ipaddress:port@hierarchy%prefix - topic name is the name of the key
  • Support of the API (still under weewx pseudonym)
  • Support of the API
  • Support of the API
  • Possibility to export the data as realtime.txt or clientraw.txt per file, http(s), ftp(s) with FWD_Typ = REALTIMETXT or CLIENTRAWTXT (experimental)
    the FWD_URL specifies whether the file should be posted via http(s), transferred via ftp(s) or stored as a file in the filesystem
    a realtime.txt-compatible string can be queried and saved via http://ipaddress:portnumber/realtime.txt
    a clientraw.txt-compatible string can be queried and saved via http://ipaddress:portnumber/clientraw.txt
  • Storage as WSWin-compatible CSV file wswin.csv for automatic import by WSWin via file monitoring
    the storage location must be readable (if necessary, writable) for Windows computers via the Samba share
    the import can be done automatically and irregularly by WSWin - WSWin simply reads in all lines that have not yet been processed
    no X-CSV is necessary
  • Export option as text or CSV file with included key names per file, http(s) and ftp(s) with FWD_TYPE = TXTFILE or CSVFILE - existing files are overwritten; these formats can also be requested via http: ipaddress:port/FOSHKplugin.txt or .csv
  • export as a text file with raw keys/values with FWD_TYPE = RAWTEXT - existing file will be overwritten on each interval
  • separator for output via /STRING and /RAW can now be %20 (as a space) or a whole word in addition to a single character
  • Calculation of the cloud height cloudf (in feet) or cloudm (in meters) implemented, Coordinates\ALT = True in the config file with height above sea level in meters required - requires EVAL_VALUES = True
  • Sunshine duration sunhours implemented - shows the duration of the daily sunshine duration in hours (solarradiation >= 120W/m²) - requires EVAL_VALUES = True
  • sunhours, co2 and leafwetness (for the coming WN34) supported in meteotemplate; sunhours also with Awekas-API
  • Coordinates can be configured under Coordinates\ALT, LAT, LON
    ALT is used to determine the cloud height (spread * 122)
    LAT/LON are only used for transferring to the export formats Awekas-API, clientraw.txt and
  • Config\UDP_MAXLEN (default = 2000) defines the maximum length of a UDP datagram
    If the length of the packet to be sent is greater than specified, the packet is divided into several datagrams, each of which has an approximate length UDP_MAXLEN and contains the identifier SID=FOSHKweather at the beginning of each datagram.
    The original line is separated in such a way that the key=value assignment is retained - the separation always takes place BEHIND UDP_MAXLEN the next time a space is found.
    Values that contain spaces are surrounded by double quotation marks so that there is a possibility of parsing on the UDP server side.
    Example neighborhood="New York City" for a value with spaces - but neighborhood=Berlin (without spaces)
  • With Warning\CO2_WARNING = True a warning (UDP, http, log, Pushover) can be activated if the CO2 value is higher than the one configured under Warning\CO2_WARNLEVEL
  • With Config\UDP_STATRESEND = n, a cycle time (n seconds) can be defined in which the warning messages are sent regardless of status changes
  • Changes in ptrend1 and ptrend3 - if the air pressure rises or falls rapidly (+0.7 / -0.7 or +2/-2), a trend of 2 or -2 is output
  • ptrend1, pchange1, ptrend3 and pchange3 are now also forwarded via Ecowitt (Type = EW) if EVAL_VALUES = True
    pchange1 and pchange3 contain the difference between the current value and the value from 1 or 3 hours ago in inHg
  • with CSV\CSV_DAYFILE = /path/to/filename.csv the creation of a additional daily CSV /path/to/filename.csv with the min/max values of the day and some day-wide calculations will be activated
  • Parameters bool, status, units and separator are now possible for all requests (as far as it makes sense - so not e.g. with RAW)
  • Query /JSON extended - generates a JSON with numerical boolean values ​​when called with the parameter bool - can be extended with minmax, status and units
    Example: http://ipaddress:portnumber/JSON?minmax&status&bool outputs the last data record with numerical boolean values ​​1/0 instead of strings True/False
  • MQTTMET/MQTTIMP-Forward now outputs numerical boolean values (0/1 instead of False/True)
  • InfluxDB support: both via pull (as JSON via telegraf) and natively (FWD_TYPE = INFLUXMET/INFLUXIMP) integrated
    the database is specified in the FWD_URL line: FWD_URL = creates a database Database on
    and transmits the data unencrypted at the configured interval; username and password can be transferred via FWD_SID and FWD_PWD
  • Config-options Config\REBOOT_ENABLE and Config\RESTART_ENABLE to enable reboot of weather station and restarting the FOSHKplugin service (default: False = forbidden) on request
    requests are http://ipaddress:port/FOSHKplugin/rebootWS to reboot the configured weather station
    and http://ipaddress:port/FOSHKplugin/restartPlugin to restart the FOSHKplugin service
  • New forward type RAWTEXT enables the storage of incoming values ​​from the weather station as a text file locally in the file system and remotely via http(s)/POST and ftp(s)
  • Firmware update status (updatewarning) is now updated immediately after receipt of new data from the updated weather station
  • slightly improved installation routine - clarification of UDP server and port, interception of incorrect URL file names during update
  • Adjustment for WH6006 (dateutc with "%3A" instead of ":", indoorhumidity)

Version 0.07 - 19.02.2021

  • Fixed bug with IGNORE_EMPTY: UDP sending to Loxone did not work if IGNORE_EMPTY was deactivated
  • Log output: "custom mode" renamed to "custom server"
  • now sends the text OK to the sender in addition to the response code 200 when the data is received via http
  • Bugfix: known issue regarding socket problems and Chrome hopefully solved - the socket should be released again after a 5 seconds timeout
  • Troubleshooting thunderstorm warning (not every thunderstorm was reported)
  • Bugfix: Program error with PM2.5 values above 500 fixed
  • Bugfix: Handling of %20 in the dateutc field (e.g. from the WH2600 LAN)
  • Config parsing made more robust with regard to Boolean values (mkBoolean)
  • Forwards can now be activated/deactivated (FWD_ENABLE = True/False) and commented (FWD_CMT) in the config file
  • Multi-instance: several instances of FOSHKplugin can now be operated in parallel - in different directories
  • Support of the Ambient Weather format for incoming messages as well as forward (AMB/RAWAMB)
    in the absence of yearlyrainin, totalrainin is used and in the absence of rainratein, hourlyrainin is used
  • Forward input data in Weathercloud format via GET as type WC possible
  • Forward input data in Meteotemplate format via GET as type MT possible
  • Forward input data in Awekas format via GET as type AWEKAS possible
  • support of WH45 (PM25, PM10, CO2 sensor) with additional AQI and CO2-level calculation
  • Preparation for the new leaf wetness sensor WN35
  • Thunderstorm warning: number of flashes (lcount) and min. and max. Distance (ldmin and ldmax) are transmitted
  • Improvement with regard to TimeOut behavior; http now has a TimeOut of 8 and UDP of 3 seconds
  • Ecowitt-Forward: if totalrain is available - but no yearlyrain, yearlyrain is automatically set with the value of totalrain
  • New configuration option Export\OUT_TIME = True sets the time stamp of incoming messages from the weather station to the time of receipt
  • fake mode now also activated for incoming messages in WU and Ambient Weather format
  • an automatic restart in the event of missing data from the weather station can be configured via Warning\WSDOG_RESTART
  • important status messages can now also be sent as push notification via pushover (update, sensor, watchdog, battery, storm and thunderstorm warnings)
  • generic: display of all detected weather stations during installation via (-scanWS)
  • Average value calculation (with EVAL_DATA = True) implemented for wind and wind direction, outputs windspdmph_avg10m, winddir_avg10m
  • max gust calculation (with EVAL_DATA = True) implemented: windgustkmh_max10m
  • Output of the lux value (solarradiation * 126.7) as field brightness (with EVAL_DATA = True)
  • with Logging\IGNORE_LOG you can exclude lines from the logging in the standard log (comma-separated list of search words) - for example crondaemon
  • With FWD_EXEC, a script can be specified for each forward that starts with the output string as a parameter and the last output line is used as the new output string for sending
  • Value request: an http request http://ipaddress:portnumber/getvalue?key=[key] outputs the value for the key [key], whereby the key may be the RAW key as well as the converted key name
    Example: curl outputs the value "1.34" of the wind speed mph key
    in connection with FWD_EXEC, data from other instances can be queried and integrated
  • In addition to the http-GET query /CSV and /CSVHDR with dynamic fields, /SSV and /SSVHDR with static fields are now also supported, based on the field description in CSV\CSV_FIELDS
    thus the order of the fields is fixed; empty fields (with no content e.g. in the event of a sensor failure) are not skipped but are output as ""
  • If Export \FIX_LIGHTNING is active (default), the last known values for lightning and lightning_time will be used as input data if the incoming values are missing
    since the lightning data in the GW1000/DP1500 are not stored in the NVRAM, these values are lost when the device is restarted
  • If Warning\LEAKAGE_WARNING is activated, warnings are issued via log, UDP, http or pushover (leakwarning) when a leak is detected
  • a backup of foshkplugin.conf is created at every successful start (foshkplugin.conf.foshkbackup)
  • Overview page http://ipaddress:portnumber outputs with "?units=e" values in American system of units (inch, mph, ...) ; can be combined with "/status"

Version 0.06 - 02.08.2020

  • Revision of the storm warning function, output of air pressure trend 1h / 3h and value of change of air pressure 1h / 3h
  • WU-Forward from AqPM2.5 if PM-sensor is present (only pm25_ch1 is forwarded!)
  • AQI calculation activated with EVAL_DATA = True and existing DP200/WH41/43
  • Experimental: Forward the PM2.5 value to as type LD, the ID must be entered under FWD_SID in the config file
  • Battery warning via log and UDP implemented; if the supplied batt value falls below an internally defined threshold, a warning is issued
  • Fixed issue with output of the name of the sensor again supplying data (SENSOR_MANDATORY)
  • The status of warnings for storms, thunderstorms, sensors and batteries are stored temporarily and are therefore retentive
  • WU-Forward / JSON renaming from solar radiation to solar radiation
  • WU-Forward / JSON support for soil moisture sensors
  • WU-Forward: keys with empty value are not transmitted
  • WU-Forward: Upload of dewptf (was dewpt) and rainin (was rainratein) fixed
  • new formula for dew point calculation (dewpoint) active (requires math)
  • now sends a response code 200 to the sender when http data is received
  • UDP message for time at wswarning changed from "time:" to "time="
  • for all get / post actions: check the return value 200..202 -> ok (was 200 only)
  • Text errors in help fixed
  • Update of; Fixed a bug when creating the conf file
  • Forward of the input data possible without conversion via UDP as type RAWUDP
  • Forward of the input data possible without conversion via EW / POST as type RAWEW
  • Forward of output data in CSV-format via http/POST as type CSV
  • Forward of input data without conversion via http/POST as type RAWCSV
  • Forward of output data as for Loxone to another target/network via UDP - with additional status
  • Forward timeout handling adjusted (now 3 seconds)
  • Output language can be set via LANGUAGE = DE / EN etc. in the config file
  • Plugin can be terminated with a UDP command and requested to send the current status (System.shutdown, Plugin.getStatus)
  • debug mode enable/disable via UDP-command Plugin.debug=enable/disable
  • Separator selectable on http-GET with /RAW
  • new http-GET command /STRING to get the input-line via http with selectable separator
  • status messages can now be queried in /JSON and when outputting via /STRING or /UDP
  • simple authentication via AUTH_PWD implemented; data and requests are only accepted via http if the specified password is contained in the URL (hint: use the PASSKEY-string in Ecowitt-mode)
  • hide PASSKEY-value in Log-Files if AUTH_PWD activated
  • Handling of unnecessary quotation marks in the config file adjusted
  • Preparation for upcoming soil/water temperature sensor WH34 (tf_chNc, tf_battN - where N = 1..8)
  • Status also available via http/GET: http://ipaddress:portnumber/FOSHKplugin/status outputs status wswarning, sensorwarning, batterywarning, ...
  • Fake mode implemented: Values of an indoor sensor (WH31 / DP50) can be output as values of an outdoor sensor WH32 (temperature, air humidity)
  • Updatewarning implemented, reports an available update for the weather station via log/UDP and possibly via http
  • For thunderstorm warnings, tswarning is now output as status instead of tstormwarning - Attention! This affects all outputs both via UDP and via http!

Version 0.05 - 26.04.2020

  • Sturmwarnung bleibt für 60 Minuten nach letzter Grenzwertunter-/überschreitung aktiv; Zeitraum kann via STORM_EXPIRE im Config-File angepasst werden
  • Übermittlung des UV-Wertes im WU-Format angepasst, nun in Großbuchstaben UV= statt uv=
  • Patch-Funktion für Weather4Loxone ist nun unabhängig von der genutzten Weather4Loxone-Version (vorhandene wird nicht überschrieben sondern angepasst)

Version 0.04 - 20.02.2020

  • default-config angepasst - Kommentare hinter Block nicht zulässig!
  • verbesserte Buttons (CSS) - Schiebeschalter nun grau bei "off" und grün bei "on"
  • erweiterte CGI-Debug-Funktion; default: off; enable mit $myDebug = 1 in der index.cgi
  • myDebug für zusätzliche Debug-Informationen auch im Python-Programm implementiert (default: False)
  • Beschreiben der Wetterstation via WS-Set sollte nun (endlich) vollumfänglich funktionieren
  • Id & Key in den Einstellungen der Wetterstation werden ignoriert und nicht vom Plugin überschrieben

Version 0.03 - 18.01.2020

  • USE_METRIC wieder funktional (jetzt also auch imperiale Werte per UDP und CSV möglich)
  • weitere mögliche Probleme beim Setzen der Wetterstationsparameter via WS-Set behoben (Path wird nun immer auf defaults gesetzt)
  • Prüfung der nutzbaren LoxBerry-Ports (http/udp) optimiert
  • Kommunikation mit der Wetterstation überarbeitet - nun jeweils 5 Versuche bei Lesen und Schreiben
  • besseres Logging/Debugging bei Fehlern bei Set-WS; "buntere" und besser parse-bare Log-Files; ### entfernt
  • generic: conf-File - Vorlage und Hilfstexte überarbeitet
  • Ignorierliste Forward\FWD_IGNORE für Forwards eingebaut: definiert - kommasepariert - Felder, die NICHT verschickt werden sollen
  • Forward\FWD_TYPE=UDP/EW/RAW für http-Forward der Werte (UDP-Ausgabezeile) an andere Ziele als WU eingeführt
  • nun bis zu 10 Forwards mit unterschiedlichen Einstellungen möglich (aktuell nur im Config-File zu pflegen: Forward-1..9 analog zu Forward)
  • Watchdog: kommen seit 3*eingestelltem Intervall keine Werte von der Wetterstation, Fehler melden!
    es erfolgt EINE Warnung und bei erneuter Übermittlung der Wetterstation eine Entwarnung im Log sowie per UDP:
    SID=FOSHKweather wswarning=1 last=346611722
    SID=FOSHKweather wswarning=0 last=346616459
    standardmäßig aktiv; kann im Config-File deaktiviert werden: Warning\WSDOG_WARNING=False
    Intervall kann im Config-File eingestellt werden: Warning\WSDOG_INTERVAL=3
    Warnung auch in Loxone-Vorlage enthalten
  • Alarm senden (Log, UDP) wenn Sensor (auch mehrere) keine Daten liefert (etwa weil Akku/Batterie leer)
    SID=FOSHKweather sensorwarning=1 missed=wh65batt time=347196201
    SID=FOSHKweather sensorwarning=1 back=wh65batt time=347196201
    aktuell nur im Config-File zu pflegen:
    Warning\SENSOR_WARNING=True sowie Warning\SENSOR_MANDATORY="wh65batt"
  • Sturmwarnung: fällt oder steigt der Luftdruck um mehr als 1.75 Hektopascal in einer Stunde, erfolgt eine Warnung vor Starkwind/Sturm
    es erfolgt EINE Warnung und bei Entspannung des Luftdrucks eine Entwarnung im Log und per UDP:
    SID=FOSHKweather stormwarning=1 time=346611722
    SID=FOSHKweather stormwarning=0 time=346616459
    standardmäßig aktiv; kann im Config-File deaktiviert werden: Warning\STORM_WARNING=False
    WarnDiff kann im Config-File eingestellt werden: Warning\STORM_WARNDIFF=1.75
    Warnung auch in Loxone-Vorlage enthalten
  • Vorbereitung Wassersensor WH55 und Blitzsensor WH57 (noch unklar ob lightning_time = timestring oder unixtime!)
  • preupgrade-Script: Upgrade-Verzeichnisse werden nun auch ohne Elternverzeichnis angelegt (mkdir -p)
  • preuninstall-script entfernt; Deinstallation erfolgt bei LoxBerry ab v2.0.1.1 im uninstall-Script
  • Web-Oberfläche: Anzeige der Versionsnummer eingebaut (um Nachfragen zur verwendeten Version im Fehlerfall zu minimieren)
  • UDP-Versand an das Zielsystem lässt sich mit UDP_ENABLE=False abschalten
  • Ignorierliste für den UDP-Versand eingeführt: Config\UDP_IGNORE (nur im Config-File zu pflegen)

Version 0.02 - 28.12.2019

  • ### aus FWD-Log-Nachricht entfernt
  • Umrechnung temp1f in temp1c für Innensensor auf Kanal 1 implementiert
  • Timeout bei sendReboot, setWSconfig und getWSINTERVAL von 1 auf 2 Sekunden erhöht (somit sollte WS-Set sicherer funktionieren)
  • Probleme beim Setzen der Wetterstationsparameter via WS-Set behoben (Id & Key werden - wenn nicht schon vorhanden - gesetzt)
  • Umstellung der LoxBerry-Versionsnummerierung damit zukünftig die Auto-Update-Funktion greifen kann

Version 0.01 - 15.12.2019

  • erste öffentliche Version