Weather Station Hardware > Ambient Weather and Ecowitt and other Fine Offset clones

FOSHKplugin - brief introduction

(1/23) > >>

olicat:
Even if the core task of the program is actually the conversion of incoming data from a weather station in WU or Ecowitt format to UDP, it does offer a few functions that go beyond this.
Maybe this program is useful for someone.

If you've always been annoyed to only have ONE custom server - this could be the solution!
If you really need a shorter sending interval than 16 seconds - that is possible!
Would you like to change the sending interval to WU or just send a subset of data to an online provider? No problem.
Have you always wanted to contribute your PM2.5 data to global sensor network luftdaten.info / sensors.community? Built-in!
Want to use a WH31 instead of a WH32 outside while still sending outdoor temperature & humidity to any service? OK!
Do you still want to use WSWin for your analyzes? The CSV function makes it possible!
Searching for a possibility to feed Weather34 with Ecowitt data? Should work!
Would you like to upload your weather station data to your own server in order to process and present it yourself there? No problem!
Want to keep sending the lightning data to external services/programs on a GW1000 even when the device is restarted? FOSHKplugin replaces this data with the last valid values!
If you need your weather data as MQTT topics, stay tuned - v0.08 will make this happen!

With FOSHKplugin I feed several services with just one GW1000:

GW1000 -- custom server --> FOSHKplugin --> Loxone home automations system (UDP)
                                                                --> weewx (Ecowitt)
                                                                --> local PWSDashboard (Ecowitt)
                                                                --> remote PWSDashboard (Ecowitt)
                                                                --> PWT Personal Weather Tablet Android-app (Ecowitt) for 3 devices
                                                                --> Awekas (WU)
                                                                --> Awekas (API)
                                                                --> Weather Underground (WU)
                                                                --> Windy (WU)
                                                                --> PWSweather (WU)
                                                                --> WOW (WU)
                                                                --> Luftdaten.info
                                                                --> CSV (for further local analysis or import to WSWin via X-CSV)
                                                                --> Weathercloud
                                                                --> Meteotemplate (via API)
                                                                --> Ambient Weather (API)
                                                                --> wetter.com (API) (from v0.08)
                                                                --> weather365.net (API) (from v0.08)
                                                                --> wettersektor.de (API) (from v0.08)
                                                                --> several other targets via clientraw.txt and realtime.txt like WND or wetternetzwerk.pro (from v0.08)
                                                                --> direct import into WSWin Weatherstation Operation- and Data Acquisition Software (from v0.08)
                                                                --> feeding any MQTT broker (from v0.08)
                                                                --> feeding InfluxDB to visualize data with e.g. Grafana (from v0.08)
More are possible ...

Check the generic-version at https://foshkplugin.phantasoft.de/generic/ or if interested in LoxBerry-version at https://foshkplugin.phantasoft.de/

The program is not intended to serve as comprehensive weather observation or analysis software.
It's more about creating interfaces and keeping the data local.

Regards, Oliver

GHammer:
I have downloaded this and find an issue.
I have a GW1000 and two Ecowitt HP2551.
When I run the recipe found here (https://www.loxwiki.eu/display/LOXBERRY/FOSHKplugin+-+generic+version) I get the IP of the 2 consoles and never the GW1000.

./foshkplugin.py -getwsip
gary@tester:~/Downloads$ ./foshkplugin.py -getwsip
10.10.100.121
gary@tester:~/Downloads$ ./foshkplugin.py -getwsport
45000
gary@tester:~/Downloads$ ./foshkplugin.py -getwsip
10.10.100.122
gary@tester:~/Downloads$ ./foshkplugin.py -getwsport
45000
gary@tester:~/Downloads$ ./foshkplugin.py -getwsip
10.10.100.121
gary@tester:~/Downloads$ ./foshkplugin.py -getwsip
10.10.100.121
gary@tester:~/Downloads$ ./foshkplugin.py -getwsip
10.10.100.122

olicat:
Hi!

Because I only own one device I was never able to check this with more than one device.
Sorry!
If you know the IP address of the device you want to change just use this IP in the last step.

Regards, Oliver

GHammer:
That's what I had hoped.
Thanks.

olicat:
redistribute the Ecowitt stream of a GW1000 to several weewx

The GW1000 knows exactly ONE destination for a custom server upload. But if you want to feed several instances of weewx with the data from the GW1000, this also requires several GW1000.
Or you can simply use FOSHKplugin with just one GW1000 and let FOSHKplugin redistribute the incoming stream as you like!

FOSHKplugin knows 10 forwarding destinations - called Forwards.
A Forward-block must be created in the config file for each forward, in which the target, type and other conditions can be configured:

[Forward-n]
FWD_URL =                 # URL of destination
FWD_INTERVAL =        # interval in seconds in which lines will be forwarded
FWD_IGNORE = ""       # comma-separated list of fields to not forward
FWD_TYPE = ""            # WU/UDP/LD/RAW/EW/RAWEW/RAWUDP - WU: WU-format; UDP: UDP-String will be forwarded (default); LD: PM2.5 luftdaten.info; EW: Ecowitt; RAWEW: Ecowitt untouched; RAW: as input; RAWUDP: RAW via UDP
FWD_SID = ""             # SensorID for luftdaten.info

For the forwarding of the original Ecowitt stream, only the destination (FWD_URL) and the type (FWD_TYPE) have to be defined. The other parameters are optional.

If you want to operate 3 weewx instances with a GW1000, you have to enter the IP address of the FOSHKplugin host under Server IP / Hostname and the port number configured there (LBH_PORT) under Port via the WS View app.
/data/report/ should be configured as Path.



On FOSHKplugin-side you have to create 3 blocks that refer to the respective weewx instances:

[Forward-1]
FWD_URL = http://weewx-host1:weewx-port1           # URL of destination
FWD_TYPE = RAWEW                                               # RAWEW: Ecowitt untouched

[Forward-2]
FWD_URL = http://weewx-host1:weewx-port2           # URL of destination
FWD_TYPE = RAWEW                                               # RAWEW: Ecowitt untouched

[Forward-3]
FWD_URL = http://weewx-host1:weewx-port3           # URL of destination
FWD_TYPE = RAWEW                                               # RAWEW: Ecowitt untouched

Don't forget to restart the systemd service after making changes to the config file: service foshkplugin restart.
As a result, when an Ecowitt string is received by the GW1000, it is forwarded in parallel and unprocessed to these defined forwards.

other recipes you may find here:
https://www.loxwiki.eu/pages/viewpage.action?pageId=72122803#FOSHKplugingenericversion-Recipes

Regards, Oliver

Navigation

[0] Message Index

[#] Next page

Go to full version