wanted: users with ecowitt gw1000 wifi bridge

893 views
Skip to first unread message

mwall

unread,
Dec 29, 2019, 11:59:56 PM12/29/19
to weewx-user
the weewx-interceptor driver has been updated with explicit support for the gw1000 wifi bridge, as well as support for weewx4/python3.

instructions are at the weewx wiki:


i would especially appreciate feedback from anyone with full sensor arrays (wind, rain, uv), particulate sensors, soil moisture sensors, and any other extended sensors offered by ecowitt.

although the interceptor will now understand the extended weather underground protocol, the 'fineoffset-bridge' type uses the ecowitt protocol and a direct-to-weewx configuration (no dns hijack or sniffing or other shenanigans required).  it does require a recent firmware on the gw1000 (testing with 1.5.5)

m
 

PJO

unread,
Dec 30, 2019, 8:06:08 AM12/30/19
to weewx-user
Am expecting one shortly. Pleased to see this and will try it as soon as unit arrives. Thanks!

Tim Tuck

unread,
Dec 30, 2019, 5:11:34 PM12/30/19
to weewx...@googlegroups.com

I hope to give this a try.

I have the 1000 with the full array + a particulate sensor and 4 soil moisture sensors. I'm using a different plugin to collect the data so I will have to undo that first.

I think my particulate sensor is broken though since it only moving between about 3 & 8 ug/m3 even thought with our summer fires the air is thick with smoke. The local government sensor is showing an AQI of 118 and that's a low reading at the moment!


TT

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/9b478920-8f43-431a-9ec0-96f32b7ed4f9%40googlegroups.com.

mwall

unread,
Dec 30, 2019, 5:47:45 PM12/30/19
to weewx-user
On Monday, December 30, 2019 at 5:11:34 PM UTC-5, Tim Tuck wrote:

I hope to give this a try.

I have the 1000 with the full array + a particulate sensor and 4 soil moisture sensors. I'm using a different plugin to collect the data so I will have to undo that first.


excellent.  with the latest firmware from ecowitt (1.5.5), the process is pretty painless, and won't even disrupt any data you might already be sending directly to ecowitt.net, wcloud, etc.

it is ok if the sensors are sending bogus data (well, maybe not so much for you :).  i'm just trying to reverse engineer the 'ecowitt protocol', since it is apparently not published.

as explained in the guide, run the weewx-interceptor driver directly, with the --debug option.  that will spit out the raw HTTP GET request as well as the portion that is understood by the interceptor.  that will tell me what i need to make the driver recognize all the sensors.

mwall

unread,
Dec 30, 2019, 5:53:47 PM12/30/19
to weewx-user
On Monday, December 30, 2019 at 5:11:34 PM UTC-5, Tim Tuck wrote:

I have the 1000 with the full array + a particulate sensor and 4 soil moisture sensors. 


btw, if you have any data about the soil moisture sensor performance, i would be keen to hear about it. other than being rather short, they look like an excellent low-cost sensor, well-suited for home/smallfarm greenhouses, flower gardens, perhaps even orchards.

do they work well in temperature extremes?  does the calibration stick, or do they float over time?  is there a limit to the number of soil moisture sensors that the GW1000 will recognize?

have you tried to take one apart to see if you can extend the probe so it could be placed a meter underground?

m

Tim Tuck

unread,
Dec 30, 2019, 9:37:17 PM12/30/19
to weewx...@googlegroups.com
See comments inline...

On 31/12/2019 9:53 am, mwall wrote:

[snip]


>
> btw, if you have any data about the soil moisture sensor performance,
> i would be keen to hear about it. other than being rather short, they
> look like an excellent low-cost sensor, well-suited for home/smallfarm
> greenhouses, flower gardens, perhaps even orchards.

I have 4 of them in the garden 3 in flower beds and one in the vege
patch. they take a single AA cell and report the helath of the battery
along with the moisture reading.


>
> do they work well in temperature extremes?

Well its 44c here right now, and climbing, and nothing has stopped
working, dunno about freezing temps, it never gets colder than 0 here.


>   does the calibration stick, or do they float over time?

Haven't done the cal routine yet - so cant answer that.


> is there a limit to the number of soil moisture sensors that the
> GW1000 will recognize?

It will handle 8 soil moisture, 4 particulate, 8 other temp/humidity
sensors and there is another 12 channels I'm not sure about.


>
> have you tried to take one apart to see if you can extend the probe so
> it could be placed a meter underground?

No :) interesting prospect though - why would you want to do that ?

cheers

Tim


Message has been deleted

G Hammer

unread,
Dec 30, 2019, 10:16:58 PM12/30/19
to weewx-user
I installed and do not have wind info.
I have installed the new interceptor and run weewx directly. I was unable to run interceptor directly, but likely my error.
I have a 2902a sensor for rain, UV, and wind, an Ecowitt WH32 for outdoor temp and humidity and a WH25B for indoor temp, humidity, and barometric pressure.

All was working fine when I was using a patched interceptor for the GW1000

gary@weewx1:~/Downloads$ PYTHONPATH=/home/weewx python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug
Traceback (most recent call last):
  File "/home/weewx/bin/user/interceptor.py", line 299, in <module>
    import weewx.drivers
ImportError: No module named weewx.drivers

gary@weewx1:~/Downloads$ sudo /home/weewx/bin/weewxd /home/weewx/weewx.conf
LOOP:   2019-12-30 21:41:25 EST (1577760085) altimeter: 29.3896523535, barometer: 29.4207585752, cloudbase: 645.979046331, dateTime: 1577760085, dewpoint: 30.9910300862, heatindex: 32.0, humidex: 32.0, inDewpoint: 39.1192997709, inHumidity: 30.0, inTemp: 72.3, maxSolarRad: 0.0, outHumidity: 96.0, outTemp: 32.0, pressure: 28.957, rain_period: 800, rainRate: 0, usUnits: 1, UV: 0.0
LOOP:   2019-12-30 21:41:42 EST (1577760102) altimeter: 29.3896523535, barometer: 29.4207585752, cloudbase: 645.979046331, dateTime: 1577760102, dewpoint: 30.9910300862, heatindex: 32.0, humidex: 32.0, inDewpoint: 39.1192997709, inHumidity: 30.0, inTemp: 72.3, maxSolarRad: 0.0, outHumidity: 96.0, outTemp: 32.0, pressure: 28.957, rain_period: 800, rainRate: 0, usUnits: 1, UV: 0.0
LOOP:   2019-12-30 21:41:59 EST (1577760119) altimeter: 29.3926893485, barometer: 29.4238066215, cloudbase: 645.979046331, dateTime: 1577760119, dewpoint: 30.9910300862, heatindex: 32.0, humidex: 32.0, inDewpoint: 38.946639779, inHumidity: 30.0, inTemp: 72.1, maxSolarRad: 0.0, outHumidity: 96.0, outTemp: 32.0, pressure: 28.96, rain_period: 800, rainRate: 0, usUnits: 1, UV: 0.0
LOOP:   2019-12-30 21:42:16 EST (1577760136) altimeter: 29.3926893485, barometer: 29.4238066215, cloudbase: 645.979046331, dateTime: 1577760136, dewpoint: 30.9910300862, heatindex: 32.0, humidex: 32.0, inDewpoint: 38.946639779, inHumidity: 30.0, inTemp: 72.1, maxSolarRad: 0.0, outHumidity: 96.0, outTemp: 32.0, pressure: 28.96, rain_period: 800, rainRate: 0, usUnits: 1, UV: 0.0
LOOP:   2019-12-30 21:42:33 EST (1577760153) altimeter: 29.3926893485, barometer: 29.4238066215, cloudbase: 645.979046331, dateTime: 1577760153, dewpoint: 30.9910300862, heatindex: 32.0, humidex: 32.0, inDewpoint: 38.946639779, inHumidity: 30.0, inTemp: 72.1, maxSolarRad: 0.0, outHumidity: 96.0, outTemp: 32.0, pressure: 28.96, rain_period: 800, rainRate: 0, usUnits: 1, UV: 0.0

mwall

unread,
Dec 30, 2019, 11:45:34 PM12/30/19
to weewx-user


On Monday, December 30, 2019 at 10:16:58 PM UTC-5, G Hammer wrote:

All was working fine when I was using a patched interceptor for the GW1000

thank you for helping, gary!

the interceptor works with the GW1000 using the wunderground protocol.  the purpose of this experiment is to make interceptor understand the ecowitt protocol, since it appears to support more sensors than the wunderground protocol (even the new-as-of-spring-2019 wunderground protocol).

 
gary@weewx1:~/Downloads$ PYTHONPATH=/home/weewx python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug
Traceback (most recent call last):
  File "/home/weewx/bin/user/interceptor.py", line 299, in <module>
    import weewx.drivers
ImportError: No module named weewx.drivers


for a setup.py installation in /home/weewx, the command looks like this:

PYTHONPATH=/home/weewx/bin python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug

that is assuming the GW1000 is configure to post to port '8000', path '/', and using the ecowitt protocol (not the wunderground protocol).

G Hammer

unread,
Dec 31, 2019, 1:00:27 PM12/31/19
to weewx-user
I have been using a patched version that is from this thread:
That is using the Ecowitt protocol.

Off to run with debug to provide you useful data.
Message has been deleted
Message has been deleted

G Hammer

unread,
Dec 31, 2019, 1:51:42 PM12/31/19
to weewx-user
root@weewx1:~# service weewx stop
root@weewx1:~# PYTHONPATH=/home/weewx/bin python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug
raw data: PASSKEY=D35&stationtype=GW1000B_V1.5.5&dateutc=2019-12-31+18:04:07&tempinf=72.1&humidityin=32&baromrelin=29.577&baromabsin=29.131&tempf=35.8&humidity=92&winddir=96&windspeedmph=0.00&windgustmph=0.00&maxdailygust=10.29&solarradiation=58.48&uv=0&rainratein=0.047&eventrainin=1.150&hourlyrainin=0.051&dailyrainin=0.118&weeklyrainin=1.150&monthlyrainin=3.780&yearlyrainin=6.138&totalrainin=6.138&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'humidity_in': 32.0, 'temperature_in': 72.1, 'solar_radiation': 58.48, 'humidity_out': 92.0, 'uv': 0.0, 'dateTime': 1577815447, 'pressure': 29.131, 'temperature_out': 35.8, 'usUnits': 1}
mapped packet: {'pressure': 29.131, 'outHumidity': 92.0, 'UV': 0.0, 'dateTime': 1577815447, 'outTemp': 35.8, 'inHumidity': 32.0, 'inTemp': 72.1, 'usUnits': 1}
raw data: PASSKEY=D35&stationtype=GW1000B_V1.5.5&dateutc=2019-12-31+18:04:24&tempinf=72.1&humidityin=32&baromrelin=29.577&baromabsin=29.131&tempf=35.8&humidity=92&winddir=97&windspeedmph=0.00&windgustmph=0.00&maxdailygust=10.29&solarradiation=57.62&uv=0&rainratein=0.047&eventrainin=1.150&hourlyrainin=0.051&dailyrainin=0.118&weeklyrainin=1.150&monthlyrainin=3.780&yearlyrainin=6.138&totalrainin=6.138&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'humidity_in': 32.0, 'temperature_in': 72.1, 'solar_radiation': 57.62, 'humidity_out': 92.0, 'uv': 0.0, 'dateTime': 1577815464, 'pressure': 29.131, 'temperature_out': 35.8, 'usUnits': 1}
mapped packet: {'pressure': 29.131, 'outHumidity': 92.0, 'UV': 0.0, 'dateTime': 1577815464, 'outTemp': 35.8, 'inHumidity': 32.0, 'inTemp': 72.1, 'usUnits': 1}
raw data: PASSKEY=D35&stationtype=GW1000B_V1.5.5&dateutc=2019-12-31+18:04:41&tempinf=72.1&humidityin=32&baromrelin=29.577&baromabsin=29.131&tempf=35.8&humidity=92&winddir=97&windspeedmph=0.00&windgustmph=0.00&maxdailygust=10.29&solarradiation=57.25&uv=0&rainratein=0.047&eventrainin=1.150&hourlyrainin=0.051&dailyrainin=0.118&weeklyrainin=1.150&monthlyrainin=3.780&yearlyrainin=6.138&totalrainin=6.138&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'humidity_in': 32.0, 'temperature_in': 72.1, 'solar_radiation': 57.25, 'humidity_out': 92.0, 'uv': 0.0, 'dateTime': 1577815481, 'pressure': 29.131, 'temperature_out': 35.8, 'usUnits': 1}
mapped packet: {'pressure': 29.131, 'outHumidity': 92.0, 'UV': 0.0, 'dateTime': 1577815481, 'outTemp': 35.8, 'inHumidity': 32.0, 'inTemp': 72.1, 'usUnits': 1}
raw data: PASSKEY=D35&stationtype=GW1000B_V1.5.5&dateutc=2019-12-31+18:04:58&tempinf=72.1&humidityin=32&baromrelin=29.577&baromabsin=29.131&tempf=35.8&humidity=92&winddir=97&windspeedmph=0.00&windgustmph=0.00&maxdailygust=10.29&solarradiation=57.25&uv=0&rainratein=0.047&eventrainin=1.150&hourlyrainin=0.051&dailyrainin=0.118&weeklyrainin=1.150&monthlyrainin=3.780&yearlyrainin=6.138&totalrainin=6.138&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'humidity_in': 32.0, 'temperature_in': 72.1, 'solar_radiation': 57.25, 'humidity_out': 92.0, 'uv': 0.0, 'dateTime': 1577815498, 'pressure': 29.131, 'temperature_out': 35.8, 'usUnits': 1}
mapped packet: {'pressure': 29.131, 'outHumidity': 92.0, 'UV': 0.0, 'dateTime': 1577815498, 'outTemp': 35.8, 'inHumidity': 32.0, 'inTemp': 72.1, 'usUnits': 1}
raw data: PASSKEY=D35&stationtype=GW1000B_V1.5.5&dateutc=2019-12-31+18:05:15&tempinf=72.1&humidityin=32&baromrelin=29.577&baromabsin=29.131&tempf=35.8&humidity=92&winddir=97&windspeedmph=0.00&windgustmph=0.00&maxdailygust=10.29&solarradiation=56.76&uv=0&rainratein=0.047&eventrainin=1.150&hourlyrainin=0.051&dailyrainin=0.118&weeklyrainin=1.150&monthlyrainin=3.780&yearlyrainin=6.138&totalrainin=6.138&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'humidity_in': 32.0, 'temperature_in': 72.1, 'solar_radiation': 56.76, 'humidity_out': 92.0, 'uv': 0.0, 'dateTime': 1577815515, 'pressure': 29.131, 'temperature_out': 35.8, 'usUnits': 1}
mapped packet: {'pressure': 29.131, 'outHumidity': 92.0, 'UV': 0.0, 'dateTime': 1577815515, 'outTemp': 35.8, 'inHumidity': 32.0, 'inTemp': 72.1, 'usUnits': 1}
raw data: PASSKEY=D35&stationtype=GW1000B_V1.5.5&dateutc=2019-12-31+18:05:32&tempinf=72.1&humidityin=32&baromrelin=29.577&baromabsin=29.131&tempf=35.8&humidity=92&winddir=98&windspeedmph=0.00&windgustmph=0.00&maxdailygust=10.29&solarradiation=56.27&uv=0&rainratein=0.047&eventrainin=1.150&hourlyrainin=0.051&dailyrainin=0.118&weeklyrainin=1.150&monthlyrainin=3.780&yearlyrainin=6.138&totalrainin=6.138&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'humidity_in': 32.0, 'temperature_in': 72.1, 'solar_radiation': 56.27, 'humidity_out': 92.0, 'uv': 0.0, 'dateTime': 1577815532, 'pressure': 29.131, 'temperature_out': 35.8, 'usUnits': 1}
mapped packet: {'pressure': 29.131, 'outHumidity': 92.0, 'UV': 0.0, 'dateTime': 1577815532, 'outTemp': 35.8, 'inHumidity': 32.0, 'inTemp': 72.1, 'usUnits': 1}

mwall

unread,
Jan 2, 2020, 12:33:15 PM1/2/20
to weewx-user
On Tuesday, December 31, 2019 at 1:51:42 PM UTC-5, G Hammer wrote:
root@weewx1:~# service weewx stop
root@weewx1:~# PYTHONPATH=/home/weewx/bin python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug
raw data: PASSKEY=D35&stationtype=GW1000B_V1.5.5&dateutc=2019-12-31+18:04:07&tempinf=72.1&humidityin=32&baromrelin=29.577&baromabsin=29.131&tempf=35.8&humidity=92&winddir=96&windspeedmph=0.00&windgustmph=0.00&maxdailygust=10.29&solarradiation=58.48&uv=0&rainratein=0.047&eventrainin=1.150&hourlyrainin=0.051&dailyrainin=0.118&weeklyrainin=1.150&monthlyrainin=3.780&yearlyrainin=6.138&totalrainin=6.138&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro

thank you for this.  i have added those field to weewx-interceptor as of 0.48

i've got to focus on some weewx4 issues before i do more work on the weewx-interceptor, so apologies in advance for delays in my response

G Hammer

unread,
Jan 2, 2020, 4:54:53 PM1/2/20
to weewx-user
Thanks for the update.

I have installed 0.48 and all seems well. I have complete data, but will have to wait until tomorrow to see if UV and solar are being captured as it is past sundown here now.

No problem on delayed response. I have been waiting on an updated Interceptor to begin testing version 4.

Thomas Gum

unread,
Jan 3, 2020, 6:43:00 AM1/3/20
to weewx-user
Hello Matthew,

thanks for this great software :-)
I "upgraded" from am WH1090 to a WH2650 (with Waldbeck branding). With the new Firmware (1.5.2) on the router, I can configure the Ecowitt (or WU) protocol in WS View to send it directly to the interceptor driver. Works great :-) With the new driver version (.48) nearly all sensor readings are read automatically. 
Only WindDir, Battery (of indoor sensor WH25) and some rain data is failing:

weewx@weewx:~$ systemctl status weewx
weewx.service - LSB: weewx weather system
   
Loaded: loaded (/etc/init.d/weewx; generated)
   
Active: active (running) since Thu 2020-01-02 20:47:33 CET; 15h ago
     
Docs: man:systemd-sysv-generator(8)
 
Process: 936 ExecStart=/etc/init.d/weewx start (code=exited, status=0/SUCCESS)
   
Tasks: 2 (limit: 504)
   
CGroup: /system.slice/weewx.service
           
└─1108 python /usr/bin/weewxd --daemon --pidfile=/var/run/weewx.pid /etc/weewx/weewx.conf


Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter eventrainin=0.000
Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter maxdailygust=13.65
Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter monthlyrainin=0.000
Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter totalrainin=0.000
Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter hourlyrainin=0.000
Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter winddir=167
Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter wh25batt=0
Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter yearlyrainin=0.000
Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter dailyrainin=0.000
Jan 03 12:36:25 weewx weewx[1108]: interceptor: MainThread: unrecognized parameter weeklyrainin=0.000


I tried to adjust the sensor_map, but that did not work out.

[Interceptor]
    # This section is for the network traffic interceptor driver.

    # The driver to use:
    driver = user.interceptor

    # Specify the hardware device to capture.  Options include:
    #   acurite-bridge - acurite internet bridge, smarthub, or access
    #   observer - fine offset WH2600/HP1000/HP1003, ambient WS2902
    #   lw30x - oregon scientific LW301/LW302
    #   lacrosse-bridge - lacrosse GW1000U/C84612 internet bridge
    #   fineoffset-bridge - fine offset GW1000/GW1000B/GW1000BU wifi gateway
    #   wu-client - any hardware that uses the weather underground protocol
    device_type = fineoffset-bridge
    port = 9876
#    [[sensor_map]]
#        windDir = winddir      # Windrichtung angepasst
#       battery = wh25batt

It would be awesome if you could integrate the missing sensor readings or give me some hints to make the sensor map work (with the sensor_map in place, do I have to configure all sensors?).

Best regards
Thomas

Thomas Gum

unread,
Jan 3, 2020, 6:44:16 AM1/3/20
to weewx-user
Message has been deleted

G Hammer

unread,
Jan 3, 2020, 9:09:54 AM1/3/20
to weewx-user
After monitoring, I see that wind dir and rainfall is not being captured using 0.48

root@weewx1:~# service weewx stop
root@weewx1:~# PYTHONPATH=/home/weewx/bin python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug
raw data: PASSKEY=PK&stationtype=GW1000B_V1.5.5&dateutc=2020-01-03+13:49:59&tempinf=71.8&humidityin=30&baromrelin=29.805&baromabsin=29.335&tempf=38.3&humidity=81&winddir=124&windspeedmph=2.24&windgustmph=2.24&maxdailygust=2.24&solarradiation=78.90&uv=0&rainratein=0.071&eventrainin=0.142&hourlyrainin=0.024&dailyrainin=0.063&weeklyrainin=1.512&monthlyrainin=0.240&yearlyrainin=0.240&totalrainin=0.240&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 2.24, 'humidity_in': 30.0, 'temperature_in': 71.8, 'solar_radiation': 78.9, 'wind_gust': 2.24, 'battery': 0.0, 'humidity_out': 81.0, 'uv': 0.0, 'dateTime': 1578059399, 'pressure': 29.335, 'temperature_out': 38.3, 'battery_wind': 0.0, 'rain_rate': 0.071, 'usUnits': 1}
mapped packet: {'txBatteryStatus': 0.0, 'pressure': 29.335, 'outHumidity': 81.0, 'UV': 0.0, 'dateTime': 1578059399, 'outTemp': 38.3, 'windSpeed': 2.24, 'inHumidity': 30.0, 'inTemp': 71.8, 'windGust': 2.24, 'rainRate': 0.071, 'usUnits': 1}
raw data: PASSKEY=PK&stationtype=GW1000B_V1.5.5&dateutc=2020-01-03+13:50:16&tempinf=71.8&humidityin=30&baromrelin=29.805&baromabsin=29.335&tempf=38.3&humidity=81&winddir=124&windspeedmph=2.01&windgustmph=2.24&maxdailygust=2.24&solarradiation=78.05&uv=0&rainratein=0.071&eventrainin=0.142&hourlyrainin=0.024&dailyrainin=0.063&weeklyrainin=1.512&monthlyrainin=0.240&yearlyrainin=0.240&totalrainin=0.240&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 2.01, 'humidity_in': 30.0, 'temperature_in': 71.8, 'solar_radiation': 78.05, 'wind_gust': 2.24, 'battery': 0.0, 'humidity_out': 81.0, 'uv': 0.0, 'dateTime': 1578059416, 'pressure': 29.335, 'temperature_out': 38.3, 'battery_wind': 0.0, 'rain_rate': 0.071, 'usUnits': 1}
mapped packet: {'txBatteryStatus': 0.0, 'pressure': 29.335, 'outHumidity': 81.0, 'UV': 0.0, 'dateTime': 1578059416, 'outTemp': 38.3, 'windSpeed': 2.01, 'inHumidity': 30.0, 'inTemp': 71.8, 'windGust': 2.24, 'rainRate': 0.071, 'usUnits': 1}
raw data: PASSKEY=PK&stationtype=GW1000B_V1.5.5&dateutc=2020-01-03+13:50:33&tempinf=71.8&humidityin=30&baromrelin=29.805&baromabsin=29.335&tempf=38.5&humidity=81&winddir=113&windspeedmph=2.24&windgustmph=3.36&maxdailygust=3.36&solarradiation=78.90&uv=0&rainratein=0.071&eventrainin=0.142&hourlyrainin=0.024&dailyrainin=0.063&weeklyrainin=1.512&monthlyrainin=0.240&yearlyrainin=0.240&totalrainin=0.240&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 2.24, 'humidity_in': 30.0, 'temperature_in': 71.8, 'solar_radiation': 78.9, 'wind_gust': 3.36, 'battery': 0.0, 'humidity_out': 81.0, 'uv': 0.0, 'dateTime': 1578059433, 'pressure': 29.335, 'temperature_out': 38.5, 'battery_wind': 0.0, 'rain_rate': 0.071, 'usUnits': 1}
mapped packet: {'txBatteryStatus': 0.0, 'pressure': 29.335, 'outHumidity': 81.0, 'UV': 0.0, 'dateTime': 1578059433, 'outTemp': 38.5, 'windSpeed': 2.24, 'inHumidity': 30.0, 'inTemp': 71.8, 'windGust': 3.36, 'rainRate': 0.071, 'usUnits': 1}



G Hammer

unread,
Jan 3, 2020, 9:14:41 AM1/3/20
to weewx-user
Not that it matters for this issue, but I am running firmware 1.5.5 on my GW1000

Thomas Gumpinger

unread,
Jan 3, 2020, 9:15:50 AM1/3/20
to weewx-user
Yes, same here.

Am Freitag, 3. Januar 2020 15:09:54 UTC+1 schrieb G Hammer:

mwall

unread,
Jan 3, 2020, 9:25:44 AM1/3/20
to weewx-user
rain and winddir should now show up as of v0.49

it would help to see output from someone with multiple wh65, wh26, and wh25 sensor units - it is not obvious how the ecowitt protocol handles multiple instances of those sensors

m

G Hammer

unread,
Jan 3, 2020, 9:44:37 AM1/3/20
to weewx-user
root@weewx1:~# PYTHONPATH=/home/weewx/bin python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug
  File "/home/weewx/bin/user/interceptor.py", line 2346
    'totalrainin', 'total_rain',
                 ^
SyntaxError: invalid syntax


I edited the line and get data:
root@weewx1:~# PYTHONPATH=/home/weewx/bin python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug
raw data: PASSKEY=XXXX&stationtype=GW1000B_V1.5.5&dateutc=2020-01-03+14:40:10&tempinf=72.1&humidityin=31&baromrelin=29.840&baromabsin=29.371&tempf=39.7&humidity=79&winddir=104&windspeedmph=0.00&windgustmph=0.00&maxdailygust=3.36&solarradiation=69.73&uv=0&rainratein=0.000&eventrainin=0.161&hourlyrainin=0.031&dailyrainin=0.083&weeklyrainin=1.531&monthlyrainin=0.260&yearlyrainin=0.260&totalrainin=0.260&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 0.0, 'humidity_in': 31.0, 'temperature_in': 72.1, 'solar_radiation': 69.73, 'total_rain': 0.26, 'battery_wh26_1': 0.0, 'humidity_out': 79.0, 'uv': 0.0, 'dateTime': 1578062410, 'pressure': 29.371, 'temperature_out': 39.7, 'wind_dir': 104.0, 'battery_wind': 0.0, 'rain_rate': 0.0, 'usUnits': 1, 'wind_gust': 0.0}
mapped packet: {'wind_speed': 0.0, 'humidity_in': 31.0, 'temperature_in': 72.1, 'solar_radiation': 69.73, 'total_rain': 0.26, 'battery_wh26_1': 0.0, 'humidity_out': 79.0, 'uv': 0.0, 'dateTime': 1578062410, 'pressure': 29.371, 'temperature_out': 39.7, 'wind_dir': 104.0, 'battery_wind': 0.0, 'rain_rate': 0.0, 'usUnits': 1, 'wind_gust': 0.0}
raw data: PASSKEY=XXXX&stationtype=GW1000B_V1.5.5&dateutc=2020-01-03+14:40:27&tempinf=72.3&humidityin=30&baromrelin=29.837&baromabsin=29.368&tempf=39.7&humidity=79&winddir=104&windspeedmph=0.00&windgustmph=0.00&maxdailygust=3.36&solarradiation=72.79&uv=0&rainratein=0.000&eventrainin=0.161&hourlyrainin=0.031&dailyrainin=0.083&weeklyrainin=1.531&monthlyrainin=0.260&yearlyrainin=0.260&totalrainin=0.260&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 72.3, 'solar_radiation': 72.79, 'total_rain': 0.26, 'battery_wh26_1': 0.0, 'humidity_out': 79.0, 'uv': 0.0, 'dateTime': 1578062427, 'pressure': 29.368, 'temperature_out': 39.7, 'wind_dir': 104.0, 'battery_wind': 0.0, 'rain_rate': 0.0, 'usUnits': 1, 'wind_gust': 0.0}
mapped packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 72.3, 'solar_radiation': 72.79, 'total_rain': 0.26, 'battery_wh26_1': 0.0, 'humidity_out': 79.0, 'uv': 0.0, 'dateTime': 1578062427, 'pressure': 29.368, 'temperature_out': 39.7, 'wind_dir': 104.0, 'battery_wind': 0.0, 'rain_rate': 0.0, 'usUnits': 1, 'wind_gust': 0.0}
raw data: PASSKEY=XXXX&stationtype=GW1000B_V1.5.5&dateutc=2020-01-03+14:40:44&tempinf=72.3&humidityin=30&baromrelin=29.837&baromabsin=29.368&tempf=39.7&humidity=79&winddir=104&windspeedmph=0.00&windgustmph=0.00&maxdailygust=3.36&solarradiation=75.48&uv=0&rainratein=0.000&eventrainin=0.161&hourlyrainin=0.031&dailyrainin=0.083&weeklyrainin=1.531&monthlyrainin=0.260&yearlyrainin=0.260&totalrainin=0.260&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 72.3, 'solar_radiation': 75.48, 'total_rain': 0.26, 'battery_wh26_1': 0.0, 'humidity_out': 79.0, 'uv': 0.0, 'dateTime': 1578062444, 'pressure': 29.368, 'temperature_out': 39.7, 'wind_dir': 104.0, 'battery_wind': 0.0, 'rain_rate': 0.0, 'usUnits': 1, 'wind_gust': 0.0}
mapped packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 72.3, 'solar_radiation': 75.48, 'total_rain': 0.26, 'battery_wh26_1': 0.0, 'humidity_out': 79.0, 'uv': 0.0, 'dateTime': 1578062444, 'pressure': 29.368, 'temperature_out': 39.7, 'wind_dir': 104.0, 'battery_wind': 0.0, 'rain_rate': 0.0, 'usUnits': 1, 'wind_gust': 0.0}


Wind is calm here now, so I'll monitor once it picks up.

G Hammer

unread,
Jan 3, 2020, 9:51:43 AM1/3/20
to weewx-user
I have wind speed and gust as well now. Rainfall amount is showing no rainrate as it is not currently raining.

Thank you 


On Friday, January 3, 2020 at 9:25:44 AM UTC-5, mwall wrote:

mwall

unread,
Jan 3, 2020, 10:06:47 AM1/3/20
to weewx-user
On Friday, January 3, 2020 at 9:44:37 AM UTC-5, G Hammer wrote:
root@weewx1:~# PYTHONPATH=/home/weewx/bin python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug
  File "/home/weewx/bin/user/interceptor.py", line 2346
    'totalrainin', 'total_rain',
                 ^
SyntaxError: invalid syntax


sorry about that.  fixed at commit 748c1d8 

mwall

unread,
Jan 3, 2020, 10:10:27 AM1/3/20
to weewx-user
On Friday, January 3, 2020 at 9:51:43 AM UTC-5, G Hammer wrote:
I have wind speed and gust as well now. Rainfall amount is showing no rainrate as it is not currently raining.

please update again to commit f406e9d 

i added mapping for rain_total so that the delta 'rain' will be reported

G Hammer

unread,
Jan 3, 2020, 10:24:11 AM1/3/20
to weewx-user
Updated here's the data.
root@weewx1:~# service weewx stop
root@weewx1:~# PYTHONPATH=/home/weewx/bin python /home/weewx/bin/user/interceptor.py --device=fineoffset-bridge --port 8000 --debug
raw data: PASSKEY=XXXX&stationtype=GW1000B_V1.5.5&dateutc=2020-01-03+15:19:34&tempinf=71.8&humidityin=30&baromrelin=29.822&baromabsin=29.353&tempf=41.0&humidity=77&winddir=86&windspeedmph=0.00&windgustmph=0.00&maxdailygust=3.36&solarradiation=104.48&uv=1&rainratein=0.047&eventrainin=0.189&hourlyrainin=0.039&dailyrainin=0.110&weeklyrainin=1.559&monthlyrainin=0.287&yearlyrainin=0.287&totalrainin=0.287&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 71.8, 'solar_radiation': 104.48, 'total_rain': 0.287, 'battery_wh26_1': 0.0, 'humidity_out': 77.0, 'uv': 1.0, 'dateTime': 1578064774, 'pressure': 29.353, 'temperature_out': 41.0, 'wind_dir': 86.0, 'battery_wind': 0.0, 'rain_rate': 0.047, 'usUnits': 1, 'wind_gust': 0.0}
mapped packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 71.8, 'solar_radiation': 104.48, 'total_rain': 0.287, 'battery_wh26_1': 0.0, 'humidity_out': 77.0, 'uv': 1.0, 'dateTime': 1578064774, 'pressure': 29.353, 'temperature_out': 41.0, 'wind_dir': 86.0, 'battery_wind': 0.0, 'rain_rate': 0.047, 'usUnits': 1, 'wind_gust': 0.0}
raw data: PASSKEY=XXXX&stationtype=GW1000B_V1.5.5&dateutc=2020-01-03+15:19:51&tempinf=71.8&humidityin=30&baromrelin=29.822&baromabsin=29.353&tempf=41.0&humidity=77&winddir=87&windspeedmph=0.00&windgustmph=0.00&maxdailygust=3.36&solarradiation=101.41&uv=1&rainratein=0.047&eventrainin=0.189&hourlyrainin=0.039&dailyrainin=0.110&weeklyrainin=1.559&monthlyrainin=0.287&yearlyrainin=0.287&totalrainin=0.287&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 71.8, 'solar_radiation': 101.41, 'total_rain': 0.287, 'battery_wh26_1': 0.0, 'humidity_out': 77.0, 'uv': 1.0, 'dateTime': 1578064791, 'pressure': 29.353, 'temperature_out': 41.0, 'wind_dir': 87.0, 'battery_wind': 0.0, 'rain_rate': 0.047, 'usUnits': 1, 'wind_gust': 0.0}
mapped packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 71.8, 'solar_radiation': 101.41, 'total_rain': 0.287, 'battery_wh26_1': 0.0, 'humidity_out': 77.0, 'uv': 1.0, 'dateTime': 1578064791, 'pressure': 29.353, 'temperature_out': 41.0, 'wind_dir': 87.0, 'battery_wind': 0.0, 'rain_rate': 0.047, 'usUnits': 1, 'wind_gust': 0.0}
raw data: PASSKEY=XXXX&stationtype=GW1000B_V1.5.5&dateutc=2020-01-03+15:20:08&tempinf=71.8&humidityin=30&baromrelin=29.822&baromabsin=29.353&tempf=41.0&humidity=77&winddir=87&windspeedmph=0.00&windgustmph=0.00&maxdailygust=3.36&solarradiation=97.50&uv=1&rainratein=0.047&eventrainin=0.189&hourlyrainin=0.028&dailyrainin=0.110&weeklyrainin=1.559&monthlyrainin=0.287&yearlyrainin=0.287&totalrainin=0.287&wh65batt=0&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 71.8, 'solar_radiation': 97.5, 'total_rain': 0.287, 'battery_wh26_1': 0.0, 'humidity_out': 77.0, 'uv': 1.0, 'dateTime': 1578064808, 'pressure': 29.353, 'temperature_out': 41.0, 'wind_dir': 87.0, 'battery_wind': 0.0, 'rain_rate': 0.047, 'usUnits': 1, 'wind_gust': 0.0}
mapped packet: {'wind_speed': 0.0, 'humidity_in': 30.0, 'temperature_in': 71.8, 'solar_radiation': 97.5, 'total_rain': 0.287, 'battery_wh26_1': 0.0, 'humidity_out': 77.0, 'uv': 1.0, 'dateTime': 1578064808, 'pressure': 29.353, 'temperature_out': 41.0, 'wind_dir': 87.0, 'battery_wind': 0.0, 'rain_rate': 0.047, 'usUnits': 1, 'wind_gust': 0.0}

Gert Andersen

unread,
Jan 3, 2020, 11:40:42 AM1/3/20
to weewx-user
Hi

I'm following this thread very closely. As I can see, it we have 2 choices now, SDR and Interceptor. What should I choose, pros/cons?

Thanks

Gert

G Hammer

unread,
Jan 3, 2020, 8:48:51 PM1/3/20
to weewx-user
I have run both methods, the GW1000 initially thanks to a post on WXForum. Now that it is natively supported, it'll be even more reliable.
The SDR was a good way to get rid of the various pokery/jiggery I had to do to get Interceptor to sniff the data from my PWS. It was a genuine pleasure to get rid of all that and have SDR do the job.
Until I added a sensor, then, SDR refused to see it and though the rtl_433 crew was very much wanting to solve the issue, it never was. Sometimes software projects start off as one thing then morph to something else and that is what I think has happened to the rtl_433 project with all the additional capability that has been built into it.

I saw the GW1000 post on WXForum and had one delivered. Easy, easy, easy. All my sensors are recognized and with the addition of the new Interceptor, way easy to implement for WeeWX.
The app for the GW1000, SW View, also shows your WU info if you are on WU along with the local readout. The local (and possibly WU data) is only available on your local network, not from the Internet.

Unless you already have a SDR setup and just don't wish to have the added expense of the GW1000, I have a few things that could be a deal breaker. 
The GW1000 is run off USB power and if you do not have a uninterrupted power supply for it, could lose power. My tech gear has 45 minutes of battery backup, so not an issue for me.
The GW1000 does not support all sensors, even from Fine Offset. It doesn't have any support for other makers sensors.

SDR has a fairly involved setup, has issues with receiving radio signal(s) from devices for some people, but is way better for me than the Interceptor sniffing I was doing.

Hope that helps with your decision.

G Hammer

unread,
Jan 3, 2020, 8:59:24 PM1/3/20
to weewx-user
I have this logged:
Jan  3 20:55:42 weewx1 weewx[16009]: interceptor: MainThread: unrecognized parameter yearlyrainin=0.417


Very likely in my config, but I changed nothing in my config expect to run the new Interceptor.



On Friday, January 3, 2020 at 10:10:27 AM UTC-5, mwall wrote:

G Hammer

unread,
Jan 3, 2020, 9:26:34 PM1/3/20
to weewx-user
Line 2356, yearlyrainin misspelled. I corrected it in my file.

Thomas Gumpinger

unread,
Jan 4, 2020, 3:38:44 PM1/4/20
to weewx-user

Thanks Matthew for your really fast implementation :-)
I installed 0.49. I am getting the following debug output.
I'll report back, how this all looks in WeeWX. 

PYTHONPATH=/usr/share/weewx/ python /usr/share/weewx/user/interceptor.py --device=fineoffset-bridge --port 9876 --debug
raw data: PASSKEY=XXXX&stationtype=WH2650A_V1.5.2&dateutc=2020-01-04+20:32:57&tempinf=78.6&humidityin=43&baromrelin=30.466&baromabsin=27.903&tempf=35.6&humidity=85&winddir=11&windspeedmph=3.80&windgustmph=5.82&maxdailygust=21.70&solarradiation=0.00&uv=0&rainratein=0.000&eventrainin=0.461&hourlyrainin=0.000&dailyrainin=0.390&weeklyrainin=0.461&monthlyrainin=0.461&yearlyrainin=0.461&totalrainin=0.461&wh65batt=0&wh25batt=0&freq=868M&model=WH2650
raw packet: {'wind_speed': 3.8, 'humidity_in': 43.0, 'temperature_in': 78.6, 'solar_radiation': 0.0, 'wind_gust': 5.82, 'humidity_out': 85.0, 'uv': 0.0, 'battery_wh25_1': 0.0, 'dateTime': 1578169977, 'rain': None, 'pressure': 27.903, 'temperature_out': 35.6, 'wind_dir': 11.0, 'battery_wind': 0.0, 'rain_total': 0.461, 'rain_rate': 0.0, 'usUnits': 1}
mapped packet: {'wind_speed': 3.8, 'humidity_in': 43.0, 'temperature_in': 78.6, 'solar_radiation': 0.0, 'wind_gust': 5.82, 'humidity_out': 85.0, 'uv': 0.0, 'battery_wh25_1': 0.0, 'dateTime': 1578169977, 'rain': None, 'pressure': 27.903, 'temperature_out': 35.6, 'wind_dir': 11.0, 'battery_wind': 0.0, 'rain_total': 0.461, 'rain_rate': 0.0, 'usUnits': 1}
raw data: PASSKEY=XXXX&stationtype=WH2650A_V1.5.2&dateutc=2020-01-04+20:33:58&tempinf=78.6&humidityin=43&baromrelin=30.475&baromabsin=27.912&tempf=35.4&humidity=85&winddir=10&windspeedmph=3.36&windgustmph=5.82&maxdailygust=21.70&solarradiation=0.00&uv=0&rainratein=0.000&eventrainin=0.461&hourlyrainin=0.000&dailyrainin=0.390&weeklyrainin=0.461&monthlyrainin=0.461&yearlyrainin=0.461&totalrainin=0.461&wh65batt=0&wh25batt=0&freq=868M&model=WH2650
raw packet: {'wind_speed': 3.36, 'humidity_in': 43.0, 'temperature_in': 78.6, 'solar_radiation': 0.0, 'wind_gust': 5.82, 'humidity_out': 85.0, 'uv': 0.0, 'battery_wh25_1': 0.0, 'dateTime': 1578170038, 'rain': 0.0, 'pressure': 27.912, 'temperature_out': 35.4, 'wind_dir': 10.0, 'battery_wind': 0.0, 'rain_total': 0.461, 'rain_rate': 0.0, 'usUnits': 1}
mapped packet: {'wind_speed': 3.36, 'humidity_in': 43.0, 'temperature_in': 78.6, 'solar_radiation': 0.0, 'wind_gust': 5.82, 'humidity_out': 85.0, 'uv': 0.0, 'battery_wh25_1': 0.0, 'dateTime': 1578170038, 'rain': 0.0, 'pressure': 27.912, 'temperature_out': 35.4, 'wind_dir': 10.0, 'battery_wind': 0.0, 'rain_total': 0.461, 'rain_rate': 0.0, 'usUnits': 1}
raw data: PASSKEY=XXXX&stationtype=WH2650A_V1.5.2&dateutc=2020-01-04+20:34:59&tempinf=78.6&humidityin=43&baromrelin=30.475&baromabsin=27.909&tempf=35.4&humidity=85&winddir=20&windspeedmph=2.46&windgustmph=4.47&maxdailygust=21.70&solarradiation=0.00&uv=0&rainratein=0.000&eventrainin=0.461&hourlyrainin=0.000&dailyrainin=0.390&weeklyrainin=0.461&monthlyrainin=0.461&yearlyrainin=0.461&totalrainin=0.461&wh65batt=0&wh25batt=0&freq=868M&model=WH2650
raw packet: {'wind_speed': 2.46, 'humidity_in': 43.0, 'temperature_in': 78.6, 'solar_radiation': 0.0, 'wind_gust': 4.47, 'humidity_out': 85.0, 'uv': 0.0, 'battery_wh25_1': 0.0, 'dateTime': 1578170099, 'rain': 0.0, 'pressure': 27.909, 'temperature_out': 35.4, 'wind_dir': 20.0, 'battery_wind': 0.0, 'rain_total': 0.461, 'rain_rate': 0.0, 'usUnits': 1}
mapped packet: {'wind_speed': 2.46, 'humidity_in': 43.0, 'temperature_in': 78.6, 'solar_radiation': 0.0, 'wind_gust': 4.47, 'humidity_out': 85.0, 'uv': 0.0, 'battery_wh25_1': 0.0, 'dateTime': 1578170099, 'rain': 0.0, 'pressure': 27.909, 'temperature_out': 35.4, 'wind_dir': 20.0, 'battery_wind': 0.0, 'rain_total': 0.461, 'rain_rate': 0.0, 'usUnits': 1}




Thomas Gumpinger

unread,
Jan 4, 2020, 3:57:32 PM1/4/20
to weewx-user
Seems to work :-)


Thomas Gumpinger

unread,
Jan 4, 2020, 4:01:05 PM1/4/20
to weewx-user
Only thing seems to be that yearlyrainin=0.461 is not recognized.

weewx@weewx:~$ systemctl status weewx
● weewx.service - LSB: weewx weather system
   Loaded: loaded (/etc/init.d/weewx; generated)
   Active: active (running) since Sat 2020-01-04 21:40:40 CET; 18min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 1032 ExecStart=/etc/init.d/weewx start (code=exited, status=0/SUCCESS)
    Tasks: 3 (limit: 504)
   CGroup: /system.slice/weewx.service
           └─1123 python /usr/bin/weewxd --daemon --pidfile=/var/run/weewx.pid /etc/weewx/weewx.conf

Jan 04 21:56:14 weewx weewx[1123]: ****      fd.write(str(compiled_template))
Jan 04 21:56:14 weewx weewx[1123]: ****    File "/usr/lib/python2.7/dist-packages/Cheetah/Template.py", line 1005, in __str__
Jan 04 21:56:14 weewx weewx[1123]: ****      rc = getattr(self, mainMethName)()
Jan 04 21:56:14 weewx weewx[1123]: ****    File "_etc_weewx_skins_Weather34_mbcharts_chartdata_result_csv_tmpl.py", line 250, in respond
Jan 04 21:56:14 weewx weewx[1123]: ****  TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'
Jan 04 21:56:14 weewx weewx[1123]: cheetahgenerator: Generated 3 files for report Weather34Report in 0.10 seconds
Jan 04 21:56:14 weewx weewx[1123]: copygenerator: copied 0 files to /var/www/html/weewx/weather34
Jan 04 21:57:15 weewx weewx[1123]: interceptor: MainThread: unrecognized parameter yearlyrainin=0.461
Jan 04 21:58:16 weewx weewx[1123]: interceptor: MainThread: unrecognized parameter yearlyrainin=0.461
Jan 04 21:59:17 weewx weewx[1123]: interceptor: MainThread: unrecognized parameter yearlyrainin=0.461


G Hammer

unread,
Jan 4, 2020, 4:03:37 PM1/4/20
to weewx-user
Edit line 2356 and that error will go away.
Also, are you running yesterday's latest version?

Thomas Gum

unread,
Jan 4, 2020, 4:16:41 PM1/4/20
to weewx-user
Works :-D Thanks

Thomas Gum

unread,
Jan 4, 2020, 4:17:07 PM1/4/20
to weewx-user
I am also running 0.49.

galfert

unread,
Jan 6, 2020, 6:11:18 AM1/6/20
to weewx-user
"The GW1000 does not support all sensors, even from Fine Offset. It doesn't have any support for other makers sensors."

This is not true. The Ecowitt GW1000 supports all the sensors from Ecowitt and all the sensors from all other Fine Offset resellers including Ambient. The requirement is that the frequency of the sensors matches the GW1000. What you may have heard is that Ambient branded consoles can only use Ambient branded sensors.

G Hammer

unread,
Jan 6, 2020, 7:52:58 AM1/6/20
to weewx-user
Mea culpa

Vetti52

unread,
Jan 10, 2020, 3:53:03 PM1/10/20
to weewx-user
 Although no GW1000, but with a Fine Offset WS2900 clone, I also used the instructions as described in your link with the ecowitt-client and interceptor.py version 0.49. Additionally I have changed line 2234 to
            'wh65batt': 'battery',

 PYTHONPATH=/usr/share/weewx/ python bin/user/interceptor.py --device=ecowitt-client --mode=listen --port=9000 --debug

gives these results:

Jan 10 21:23:07 raspbee interceptor.py: interceptor: MainThread: mode is listen
Jan 10 21:23:07 raspbee interceptor.py: interceptor: MainThread: listen on :9000
Jan 10 21:23:07 raspbee interceptor.py: interceptor: ServerThread: start tcp server
Jan 10 21:23:40 raspbee interceptor.py: interceptor: MainThread: mode is listen
Jan 10 21:23:40 raspbee interceptor.py: interceptor: MainThread: listen on :9000
Jan 10 21:23:40 raspbee interceptor.py: interceptor: ServerThread: start tcp server
Jan 10 21:24:26 raspbee interceptor.py: interceptor: ServerThread: POST: PASSKEY=XXXX&stationtype=EasyWeatherV1.4.5&dateutc=2020-01-10+20:24:25&tempinf=61.5&humidityin=59&baromrelin=30.175&baromabsin=29.380&tempf=39.7&humidity=91&winddir=296&windspeedmph=2.5&windgustmph=3.4&maxdailygust=13.6&rainratein=0.000&eventrainin=0.512&hourlyrainin=0.000&dailyrainin=0.303&weeklyrainin=0.571&monthlyrainin=1.083&totalrainin=1.772&solarradiation=0.00&uv=0&wh65batt=0&freq=868M&model=WS2900_V2.01.08
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter eventrainin=0.512
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter maxdailygust=13.6
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter monthlyrainin=1.083
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter PASSKEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter hourlyrainin=0.000
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter freq=868M
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter model=WS2900_V2.01.08
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter dailyrainin=0.303
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter stationtype=EasyWeatherV1.4.5
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: ignored parameter weeklyrainin=0.571
Jan 10 21:24:26 raspbee interceptor.py: interceptor: MainThread: skipping rain measurement of 1.772: no last rain


still no rain today.....

Am Montag, 30. Dezember 2019 05:59:56 UTC+1 schrieb mwall:

Gert Andersen

unread,
Jan 10, 2020, 5:06:49 PM1/10/20
to weewx-user
Hi

I have 2(temp1 and temp2) additional sensors, currently only 1(temp2 and humidity2) is connected, temp1 will soon be connected.:

pi@Desktop:~/weewx-interceptor/bin/user $ PYTHONPATH=/usr/share/weewx python /usr/share/weewx/user/interceptor.py --device=fineoffset-bridge --port           8000 --debug
raw data: PASSKEY=XXXX&stationtype=EasyWeatherV1.4.5&dateutc=2020-01-10+21:37:37&tempf=41.9&humidity=97&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.000&yearlyrainin=0.000
&temp2f=42.4&humidity2=89&wh26batt=0&batt2=0&freq=868M&model=HP1000SE_Pro_V1.5.8
raw packet: {'battery_wh26_1': 0.0, 'humidity_out': 97.0, 'dateTime': 1578692257, 'temperature_out': 41.9, 'rain_rate': 0.0, 'usUnits': 1}
mapped packet: {'battery_wh26_1': 0.0, 'humidity_out': 97.0, 'dateTime': 1578692257, 'temperature_out': 41.9, 'rain_rate': 0.0, 'usUnits': 1}

These additional sensors are not mapped.

Gert

On Monday, December 30, 2019 at 5:59:56 AM UTC+1, mwall wrote:

Paul McGeorge

unread,
Jan 11, 2020, 1:05:15 PM1/11/20
to weewx-user
I just changed over from a Lacross Gateway to an Ambient WS-2000 and an ECOWITT GW1000BU.  I loaded the updated interceptor, everything working pretty well with a couple of issues.

  1. I had to change the mapping in the driver for solarradiation. the driver mapped solarradiation to solar_radiation but solar_radiation was not going to radiation in the Database.  I changed Line 2325 from 'radiation': 'radiation', to 'radiation': 'solar_radiation', and that fixed the issue.   Is there a way to do this in weewx.conf?  I did try adding a sensor map in wwewx.conf, but it wants the whole map not just the one override so I went back to my changed driver.  I also fixed the spelling for yearlyrain on line 2356.
  2. I have 3 unrecognized parametes for my Air Quality they are: sensor pm25_ch1 , pm25batt1 and pm25_avg_24h_ch1.  I can add then to the ignore list for now, but need to figure out a place for the data in the DB and then I can use it.

Here is my data dump..

raw data: PASSKEY=XXXX&stationtype=GW1000B_V1.5.5&dateutc=2020-01-11+15:47:05&tempinf=68.4&humidityin=31&baromrelin=30.047&baromabsin=25.670&tempf=26.2&humidity=68&winddir=136&windspeedmph=0.00&windgustmph=1.12&maxdailygust=12.53&solarradiation=38.53&uv=0&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.000&yearlyrainin=0.000&totalrainin=0.000&pm25_ch1=8.0&pm25_avg_24h_ch1=11.4&wh65batt=0&pm25batt1=5&freq=915M&model=GW1000_Pro

raw packet
: {'wind_speed': 0.0, 'humidity_in': 31.0, 'temperature_in': 68.4, 'solar_radiation': 38.53, 'wind_gust': 1.12, 'humidity_out': 68.0, 'uv': 0.0, 'rain': None, 'dateTime': 1578757625, 'pressure': 25.67, 'temperature_out': 26.2, 'wind_dir': 136.0, 'battery_wind': 0.0, 'rain_total': 0.0, 'rain_rate': 0.0, 'usUnits': 1}

mapped packet
: {'pressure': 25.67, 'outHumidity': 68.0, 'UV': 0.0, 'dateTime': 1578757625, 'windDir': 136.0, 'outTemp': 26.2, 'windSpeed': 0.0, 'inHumidity': 31.0, 'inTemp': 68.4, 'windGust': 1.12, 'rain_total': 0.0, 'rainRate': 0.0, 'usUnits': 1}

THanks for the awesome driver!

rich T

unread,
Jan 11, 2020, 2:28:36 PM1/11/20
to weewx-user

mwall

unread,
Jan 11, 2020, 7:31:13 PM1/11/20
to weewx-user
thank you paul, gert, vetti25, thomas gum, g hammer!  support for additional sensors added as of commit a37cd1a9741fccbade9496c40c5bd9d4905b8ad1

i also added support for 'sensor_map_extensions' - you can define only additional mappings instead of having to define the entire map

for example, all you have to do to add sensors is this:

[Interceptor]
    ...
    [[sensor_map_extensions]]
        extraTemp5 = temperature_5
        extraHumid5 = humidity_5

any mappings in sensor_map_extensions will add to or replace those in sensor_map

of course, if you define sensor_map yourself that will replace the default sensor_map

m

mwall

unread,
Jan 11, 2020, 7:33:39 PM1/11/20
to weewx-user
when you post the output from interceptor, please indicate whether the capture is from a gw1000 using wu protocol or a gw1000 using ecowitt protocol

Paul McGeorge

unread,
Jan 11, 2020, 7:56:44 PM1/11/20
to weewx-user
For the record I was using the gw1000 ecowitt protocol

Gert Andersen

unread,
Jan 12, 2020, 1:38:45 AM1/12/20
to weewx-user
Hi
I have missed something.

Updated Interceptor to version 0.50

Out running directly:
pi@Desktop:~/weewx-interceptor/bin/user $ PYTHONPATH=/usr/share/weewx python /usr/share/weewx/user/interceptor.py --device=ecowitt-client --port 8000 --debug
raw data: PASSKEY=XXXX&stationtype=EasyWeatherV1.4.5&dateutc=2020-01-12+06:19:35&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.000&yearlyrainin=0.000&temp2f=43.7&humidity2=91&batt2=0&freq=868M&model=HP1000SE_Pro_V1.5.8
raw packet: {'temperature_2': 43.7, 'humidity_2': 91.0, 'rain_rate': 0.0, 'battery_2': 0.0, 'dateTime': 1578809975, 'usUnits': 1}
mapped packet: {'temperature_2': 43.7, 'humidity_2': 91.0, 'rain_rate': 0.0, 'battery_2': 0.0, 'dateTime': 1578809975, 'usUnits': 1}

I have this in in weewx.conf:
[Interceptor]
    driver = user.interceptor
    device_type = ecowitt-client
    port = 8000
   [[sensor_map]]
        outTemp = temperature_2
        outHumidity = humidity_2

and I get this error:
Jan 12 07:27:17 Desktop weewx[2501]: Starting weewx weather system: weewx.
Jan 12 07:27:17 Desktop weewx[2516]: interceptor: MainThread: driver version is 0.50
Jan 12 07:27:17 Desktop weewx[2516]: interceptor: MainThread: device type: ecowitt-client
Jan 12 07:27:17 Desktop weewx[2516]: engine: Import of driver failed: 'InterceptorDriver' object has no attribute 'default_sensor_map' (<type 'exceptions.AttributeError'>)
Jan 12 07:27:17 Desktop weewx[2516]: engine: Unable to load driver: 'InterceptorDriver' object has no attribute 'default_sensor_map'
Jan 12 07:27:17 Desktop weewx[2516]:     ****  Exiting...

Im using the Ecowiit protocol from the console(HP2551-C)

Any ideas?

mwall

unread,
Jan 12, 2020, 3:18:39 AM1/12/20
to weewx-user


On Sunday, January 12, 2020 at 1:38:45 AM UTC-5, Gert Andersen wrote:
Updated Interceptor to version 0.50

and I get this error:
Jan 12 07:27:17 Desktop weewx[2501]: Starting weewx weather system: weewx.
Jan 12 07:27:17 Desktop weewx[2516]: interceptor: MainThread: driver version is 0.50
Jan 12 07:27:17 Desktop weewx[2516]: interceptor: MainThread: device type: ecowitt-client
Jan 12 07:27:17 Desktop weewx[2516]: engine: Import of driver failed: 'InterceptorDriver' object has no attribute 'default_sensor_map' (<type 'exceptions.AttributeError'>)
Jan 12 07:27:17 Desktop weewx[2516]: engine: Unable to load driver: 'InterceptorDriver' object has no attribute 'default_sensor_map'
Jan 12 07:27:17 Desktop weewx[2516]:     ****  Exiting...

Im using the Ecowiit protocol from the console(HP2551-C)

Any ideas?

sorry, the initialization of sensor_map was incorrect.  fixed at commit 7ecaad0

please update to latest interceptor.py

mwall

unread,
Jan 12, 2020, 3:21:35 AM1/12/20
to weewx-user


On Sunday, January 12, 2020 at 1:38:45 AM UTC-5, Gert Andersen wrote:

Out running directly:
pi@Desktop:~/weewx-interceptor/bin/user $ PYTHONPATH=/usr/share/weewx python /usr/share/weewx/user/interceptor.py --device=ecowitt-client --port 8000 --debug
raw data: PASSKEY=XXXX&stationtype=EasyWeatherV1.4.5&dateutc=2020-01-12+06:19:35&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=0.000&yearlyrainin=0.000&temp2f=43.7&humidity2=91&batt2=0&freq=868M&model=HP1000SE_Pro_V1.5.8
raw packet: {'temperature_2': 43.7, 'humidity_2': 91.0, 'rain_rate': 0.0, 'battery_2': 0.0, 'dateTime': 1578809975, 'usUnits': 1}
mapped packet: {'temperature_2': 43.7, 'humidity_2': 91.0, 'rain_rate': 0.0, 'battery_2': 0.0, 'dateTime': 1578809975, 'usUnits': 1}

I have this in in weewx.conf:
[Interceptor]
    driver = user.interceptor
    device_type = ecowitt-client
    port = 8000
   [[sensor_map]]
        outTemp = temperature_2
        outHumidity = humidity_2


i think you should use the sensor_map_extensions, not sensor_map.  so your configuration would look like this:

[Interceptor]
    driver = user.interceptor
    device_type = ecowitt-client
    port = 8000
    [[sensor_map_extensions]]
        outTemp = temperature_2
        outHumidity = humidity_2

that way all of the normal mappings will remain, and you only override outTemp and outHumidity to use the additional sensor.

Gert Andersen

unread,
Jan 12, 2020, 4:21:50 AM1/12/20
to weewx-user
Hi 

Thanks for your prompt answer.

I'll try later today and let you know.

Gert

Vetti52

unread,
Jan 12, 2020, 7:23:30 AM1/12/20
to weewx-user
Thanks, Matthew!

This will make things a bit easier. However, I must confess, that I am sometimes a bit messy. So, when updating interceptor.py from your site, I will have to remember, on which parts I mades my modifications. So, for me it would be much easier, if all modifications could  reside in a separate file. I am afraid, that realizing this would a hard job for now.

Gert Andersen

unread,
Jan 12, 2020, 9:34:20 AM1/12/20
to weewx-user
Hi Matthew

Seems to work with the additional sensors now.

Thanks for your support.

Gert

On Sunday, January 12, 2020 at 9:21:35 AM UTC+1, mwall wrote:

mwall

unread,
Jan 12, 2020, 4:01:36 PM1/12/20
to weewx-user
On Sunday, January 12, 2020 at 7:23:30 AM UTC-5, Vetti52 wrote:
This will make things a bit easier. However, I must confess, that I am sometimes a bit messy. So, when updating interceptor.py from your site, I will have to remember, on which parts I mades my modifications. So, for me it would be much easier, if all modifications could  reside in a separate file. I am afraid, that realizing this would a hard job for now.

the only modifications you should make are to the weewx configuration file.

m

Vetti52

unread,
Jan 13, 2020, 6:32:33 AM1/13/20
to weewx-user
Well, I followed the procedure of Stephen to import rain event:


and additionally modified 'baromrelin': 'barometer', because my WS2900 has a very simple way to calculate "relative pressure" by just adding constantly 26.9 hPa to the measured "absolute pressure". For better comparison with official Weather Station data, I have changed the absolute pressure, so that the relative pressure meets the official data now. So, the absolute pressure is "wrong" and should not be the basis of calulation. At least not the way, it actually is.

I am not sure, if both modifications could be entered into weewx.conf.

Vetti52

unread,
Jan 18, 2020, 10:25:05 AM1/18/20
to weewx-user
Now, as it finally rains today, I have tried to modify weewx.conf that way:

[Interceptor]
    # This section is for the network traffic interceptor driver.

    # The driver to use:

    driver = user.interceptor
    device_type = ecowitt-client
    mode = listen
    port = 9000
    [[sensor_map_extensions]]
    baromrelin = barometer
    battery_wh65 = battery
    eventrainin = rain_event
    rain_event = rainEvent




Rain is ok now. However, in Weewx current conditions barometer shows a calculated value, derived from absolute pressure, not the adjusted relative pressure, as expected. And the battery status is completely gone now. In addition, I detected an alien: "ET 0.0 mm". What is it???

So, I went back to modify interceptor.py that way:
I introduced 'rainEvent': 'rain_event' into the DEFAULT_SENSOR_MAP in class Consumer(object), introduced 'baromrelin': 'barometer', and 'eventrainin': 'rain_event', in the LABEL_MAP of class EcowittClient(Consumer) and commented out # 'baromrelin', 'eventrainin', in the adjacent IGNORED_LABELS.

That works fine, except that again there is no battery status at all. And still ET is here...


James Berry

unread,
Jan 19, 2020, 3:25:06 PM1/19/20
to weewx-user
Hi -
A bit late to the party, hadn't realised that the weewx-interceptor driver was under change at the moment.  To give some feedback - I have a Ecowitt HP2551 and installed weewx on Jan 16th, and got downloaded the interceptor at that time. I configured it with ecowitt-client device type and set the HP2551 to send to it.

Everything just worked out of the box!

I do get log entries to say that winddir_avg10m and windspdmph_avg10m are not recognised but assume that weewx is doing the roll-up anyway (I am new to weewx, having only previously looked at my results on weather underground rather than collecting locally).

Thanks for working on this!

Mike Harold Chan

unread,
Jan 22, 2020, 8:58:18 AM1/22/20
to weewx...@googlegroups.com
is this can still intact with WD-Extension if I use ECOWITT GW 1000 and interceptor updated to my weewx?

Thanks

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/76c657b2-b456-4e2b-9d35-5024d5804f58%40googlegroups.com.

James Berry

unread,
Jan 27, 2020, 12:44:38 PM1/27/20
to weewx-user
It has been raining here today. My HP2551 has uploaded rain to ecowitt.net and wu, but nothing has appeared in weewx.  Looking at this perhaps the default config for the ecowitt-client needs some changes for me to get rain to be logged?

Did you work out what to do? 

Paul McGeorge

unread,
Jan 27, 2020, 10:41:22 PM1/27/20
to weewx-user
Are you using the latest version .52? 

I am getting identical readings on ecowitt.net and Weewx with my GW1000 and the latest version and no extra configuration for rain.

James Berry

unread,
Jan 28, 2020, 1:21:48 AM1/28/20
to weewx-user
Hi Paul,

/usr/share/weewx/user/interceptor.py dated Jan 16
- DRIVER_VERSION = '0.52'

I guess there must be a difference between the HP2551 and GW1000.  
I did see the current record rain_rate increase in the web page, but rain today did not, and the graph does not show any rainfall.

I will attempt to increase the level of logging ahead of next rainfall to see if I can capture what is coming from the device.

Best wishes
James

James Berry

unread,
Jan 28, 2020, 1:40:19 AM1/28/20
to weewx-user
Looks like there was some rain since midnight, this is the log entry being generated - looks like the rain total is being ignored and this could be the reason?

Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: unrecognized parameter windspdmph_avg10m=11.2
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter hourlyrainin=0.000
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: unrecognized parameter winddir_avg10m=258
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter freq=433M
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter yearlyrainin=0.921
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter dailyrainin=0.106
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter stationtype=EasyWeatherV1.4.6
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter weeklyrainin=0.488
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: raw packet: {'wind_speed': 10.5, 'humidity_in': 46.0, 'temperature_in': 67.5, 'solar_radiation': 0.0, 'wind_gust': 15.9, 'wh65_battery': 0.0, 'humidity_out': 87.0, 'uv': 0.0, 'dateTime': 1580193420, 'pressure': 29.106, 'temperature_out': 37.9, 'wind_dir': 274.0, 'wh25_battery': 0.0, 'rain_rate': 0.0, 'usUnits': 1}
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: mapped packet: {'pressure': 29.106, 'outHumidity': 87.0, 'UV': 0.0, 'radiation': 0.0, 'dateTime': 1580193420, 'windDir': 274.0, 'outTemp': 37.9, 'windSpeed': 10.5, 'inHumidity': 46.0, 'inTemp': 67.5, 'windGust': 15.9, 'rainRate': 0.0, 'usUnits': 1}

Vetti52

unread,
Jan 28, 2020, 11:00:34 AM1/28/20
to weewx-user
according to your data, there was no rain at that time. rain_rate is zero. rain_total is not provided by your console and will be calculated. I had the same problem, which is solved since version 0.51.
When starting interceptor.py manually, you will see, how the sensors are labelled by your console.

have a look into interceptor.py

starting at line 2246
            'totalrainin': 'rain_total',
            'rainratein': 'rain_rate',

These lines made it for me. Since version 0.51 rain works fine. However, now there is wh65_battery missing in weewx. So, it is not yet perfect.

Do you have any entries in weewx.conf?
[Interceptor]
    [[sensor_map_extensions]]

James Berry

unread,
Jan 28, 2020, 11:19:37 AM1/28/20
to weewx-user
I had assumed that since hourlyrainin and dailyrainin were present in the source data that these were meant to be mapped somewhere - the log says these are ignored (and have values in them).  You are right that there was no rainfall at the time, but you can see that there had been some since midnight.

Looking at interceptor.py I find the lines you refer to at line 2359 (which is also the line they are in the latest github version)
My weewx.config is pretty much verbatim - only just installed it and added the interceptor sections as per the instructions (it only has the port and the use of ecowitt-client) - it has no mapping extensions in

Looking at my archive table I can see rain_rate is populated with values, but the rain column is NULL - so perhaps it is that the calculation is not happening rather than the mapping is wrong?

James Berry

unread,
Jan 28, 2020, 1:20:41 PM1/28/20
to weewx-user
For completeness, here are the complete logs for an entry from my device where it had rained earlier, but wasn't raining at the time.

Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: raw data: PASSKEY=xx&stationtype=EasyWeatherV1.4.6&dateutc=2020-01-28+06:37:00&tempinf=67.5&humidityin=46&baromrelin=29.106&baromabsin=29.106&tempf=37.9&humidity=87&winddir=274&winddir_avg10m=258&windspeedmph=10.5&windspdmph_avg10m=11.2&windgustmph=15.9&maxdailygust=28.6&rainratein=0.000&eventrainin=0.488&hourlyrainin=0.000&dailyrainin=0.106&weeklyrainin=0.488&monthlyrainin=0.921&yearlyrainin=0.921&solarradiation=0.00&uv=0&wh65batt=0&wh25batt=0&freq=433M&model=HP2551_V1.5.7
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter eventrainin=0.488
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter baromrelin=29.106
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter maxdailygust=28.6
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter monthlyrainin=0.921
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter PASSKEY=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter model=HP2551_V1.5.7
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: unrecognized parameter windspdmph_avg10m=11.2
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter hourlyrainin=0.000
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: unrecognized parameter winddir_avg10m=258
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter freq=433M
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter yearlyrainin=0.921
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter dailyrainin=0.106
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter stationtype=EasyWeatherV1.4.6
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: ignored parameter weeklyrainin=0.488
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: raw packet: {'wind_speed': 10.5, 'humidity_in': 46.0, 'temperature_in': 67.5, 'solar_radiation': 0.0, 'wind_gust': 15.9, 'wh65_battery': 0.0, 'humidity_out': 87.0, 'uv': 0.0, 'dateTime': 1580193420, 'pressure': 29.106, 'temperature_out': 37.9, 'wind_dir': 274.0, 'wh25_battery': 0.0, 'rain_rate': 0.0, 'usUnits': 1}
Jan 28 06:37:02 weather weewx[27613]: interceptor: MainThread: mapped packet: {'pressure': 29.106, 'outHumidity': 87.0, 'UV': 0.0, 'radiation': 0.0, 'dateTime': 1580193420, 'windDir': 274.0, 'outTemp': 37.9, 'windSpeed': 10.5, 'inHumidity': 46.0, 'inTemp': 67.5, 'windGust': 15.9, 'rainRate': 0.0, 'usUnits': 1}

gjr80

unread,
Jan 28, 2020, 3:19:47 PM1/28/20
to weewx-user
Hi,

I would suggest you go back to basics and post a copy of weewx.conf and a startup debug log extract. The output of the wee_debug utility (http://weewx.com/docs/utilities.htm#wee_debug_utility) includes a sanitised copy of weewx.conf, just copy and post the output. Do check it first for sensitive info such as passwords, usernames, addresses etc wee_debug is good at obfuscating this info but is not perfect. To obtain a startup debug report edit weewx.conf, set debug = 1 then restart WeeWX. Let WeeWX run for at least two full archive periods then take a copy of the log from startup through until the two archive periods have elapsed. Post the log extract making sure you include the full startup log, don’t edit/alter anything.

Gary

James Berry

unread,
Jan 28, 2020, 4:35:41 PM1/28/20
to weewx-user

gjr80

unread,
Jan 28, 2020, 5:36:13 PM1/28/20
to weewx-user
Ok, thanks, the issue is that the http posts being intercepted by the interceptor driver do not contain a ‘rainin’ field. When used with the Ecowitt client the interceptor driver relies on being able to calculate the difference between successive rainin values to determine the rainfall per packet. No rainin means no (field) rain. No rain field translates to nulls in the rain field in your database (as distinct from zero).

What to do? I know nothing of your station so i don’t know if the lack of a rainin in the http post is expected behaviour or not. At the moment the use of rainin to calculate rain is hard coded in the interceptor driver. It is also possible to calculate rain from any of the other cumulative rain fields in the http post (day, month and year for example) but (I believe) this will require changes to the interceptor driver rather than just adding an entry to the field map in weewx.conf. Probably one for Matthew or some of the others more familiar with the interceptor driver.

Gary

mwall

unread,
Jan 29, 2020, 12:24:34 AM1/29/20
to weewx-user
james,

please try weewx-interceptor 0.53.  this should use yearlyrainin for devices such as the hp2551 that use something similar to but not quite the ecowitt protocol.

m

mwall

unread,
Jan 29, 2020, 12:26:59 AM1/29/20
to weewx-user


On Tuesday, January 28, 2020 at 11:00:34 AM UTC-5, Vetti52 wrote:

starting at line 2246
            'totalrainin': 'rain_total',
            'rainratein': 'rain_rate',

These lines made it for me. Since version 0.51 rain works fine. However, now there is wh65_battery missing in weewx. So, it is not yet perfect.  

i am sure weewx-interceptor is still not perfect (and the firmware updates and discrepancies between ambient, ecowitt, and other firmware ensure that perfect will probably never be obtained), but these items were resolved in 0.52

m

James Berry

unread,
Jan 29, 2020, 3:55:37 AM1/29/20
to weewx-user
Hi

I have installed this and will let you know how I get on (leaving debug logs on).  Given it's their protocol you would think that they would be able to make it the same between two of their own devices!  
Message has been deleted

gjr80

unread,
Jan 29, 2020, 8:06:18 AM1/29/20
to weewx-user
Matthew,

Please ignore the log extract from my now deleted post.

Have my GW1000 running under WeeWX 4/python 3. Not sure I have seen anyone else running under python 3 but I think there might be some python 3 string decoding issues:

Jan 29 23:02:03 buster46 weewx[638] DEBUG user.interceptor: POST: b'PASSKEY=XXXX&stationtype=GW1000_V1.5.6&dateutc=2020-01-29+13:02:02&tempinf=88.9&humidityin=61&baromrelin=29.911&baromabsin=29.911&freq=433M&model=GW1000'
Jan 29 23:02:03 buster46 weewx[638] DEBUG user.interceptor: raw data: b'PASSKEY=XXXX&stationtype=GW1000_V1.5.6&dateutc=2020-01-29+13:02:02&tempinf=88.9&humidityin=61&baromrelin=29.911&baromabsin=29.911&freq=433M&model=GW1000'
Jan 29 23:02:03 buster46 weewx[638] INFO user.interceptor: unrecognized parameter b'PASSKEY=XXXX
Jan 29 23:02:03 buster46 weewx[638] DEBUG user.interceptor: ignored parameter stationtype=GW1000_V1.5.6
Jan 29 23:02:03 buster46 weewx[638] DEBUG user.interceptor: ignored parameter baromrelin=29.911
Jan 29 23:02:03 buster46 weewx[638] DEBUG user.interceptor: ignored parameter freq=433M
Jan 29 23:02:03 buster46 weewx[638] DEBUG user.interceptor: ignored parameter model=GW1000'

Jan 29 23:02:03 buster46 weewx[638] DEBUG user.interceptor: raw packet: {'dateTime': 1580302922, 'usUnits': 1, 'temperature_in': 88.9, 'humidity_in': 61.0, 'pressure': 29.911}
Jan 29 23:02:03 buster46 weewx[638] DEBUG user.interceptor: mapped packet: {'dateTime': 1580302922, 'usUnits': 1, 'pressure': 29.911, 'inHumidity': 61.0, 'inTemp': 88.9}
Jan 29 23:02:13 buster46 weewx[638] DEBUG user.interceptor: empty queue
Jan 29 23:02:23 buster46 weewx[638] DEBUG user.interceptor: empty queue

If I understand correctly PASSKEY should be an ignored field; however, it is making its way through as b'PASSKEY and hence unrecognised. Interceptor version is 0.53.

Also the PASSKEY obfuscation on the raw data and unrecognised parameter lines is my output editing not the driver, guess it is hard to know what your obfuscating if you don't recognise the parameter.

Gary

Vetti52

unread,
Jan 29, 2020, 11:58:09 AM1/29/20
to weewx-user
Anyway, you did - and still do! -  a great job. Yes!!!

My skills in python are just enough, to read the code and understand it a little bit. Currently I try to find out, where the gap for battery indicator is. Now I use ver. 0.53 with some changes for using the baromrelin of the console and an additional rain_event topic, as  Stephen0 described. However, the battery status does not pass through to Weewx. As far as I can read your code, you try to gather a whole set of battery sensors, ending up in the assignment of 'txBatteryStatus' to 'battery'. There is some gap, which I do not understand. I changed the assignment to 'txBatteryStatus': 'wh65_battery', which solves the problem for me. At the moment, I do all the changes directly in interceptor.py, as this is up to now the only way, I can understand, what I am doing. But, maybe, I should better manage to put all these things into my weewx.conf section [[sensor_map_extensions]], if not fixed otherwise.

mwall

unread,
Jan 29, 2020, 7:21:32 PM1/29/20
to weewx-user


On Wednesday, January 29, 2020 at 11:58:09 AM UTC-5, Vetti52 wrote:
At the moment, I do all the changes directly in interceptor.py, as this is up to now the only way, I can understand, what I am doing. But, maybe, I should better manage to put all these things into my weewx.conf section [[sensor_map_extensions]], if not fixed otherwise.

you should put your customizations in the weewx configuration file.

for example, to map wh65_battery to the database field txBatteryStatus, do this:

[Interceptor]
    ...
    [[sensor_map_extensions]]
        txBatteryStatus = wh65_battery

that way you get all the standard mappings, and just override the txBatteryStatus

G Hammer

unread,
Jan 29, 2020, 8:15:38 PM1/29/20
to weewx-user
Thanks for that. Been wanting to have battery status appear, but wasn't wanting to change the driver.
I couldn't find where the extensions were documented, so left things alone as it is a nice to have.
As a plus, this is the first time I've seen mention of rain_total since I've used Interceptor.
Jan 29 20:09:40 srvr weewx[13658] INFO user.interceptor: using 'totalrainin' for rain_total
Message has been deleted

Vetti52

unread,
Jan 30, 2020, 9:51:24 AM1/30/20
to weewx-user
Tuesday, 30. January 2020 01:21:32 UTC+1 mwall wrote :
[Interceptor]
    ...
    [[sensor_map_extensions]]
        txBatteryStatus = wh65_battery

that way you get all the standard mappings, and just override the txBatteryStatus


That's right, and I will do that. However, actually this is not the only change, I have made.
In summary there are these modifications:
class Consumer(object):
...
      DEFAULT_SENSOR_MAP
= {
...
         
'rainEvent': 'rain_event',
         
'txBatteryStatus': 'wh65_battery',
...

class EcowittClient(Consumer):
...
        LABEL_MAP
= {
         
'baromrelin': 'barometer',
...
         
'eventrainin': 'rain_event',

        IGNORED_LABELS
= [
           
'PASSKEY', 'dateutc', 'stationtype', 'model', 'freq', # 'baromrelin',
           
'maxdailygust', 'hourlyrainin', 'dailyrainin', #'eventrainin',
 

I tried to put these mappings into the sensor map extensions, but I failed. Neither relative pressure nor rain event showed up. Maybe again you can help.
Unless I cannot put all of it into the extensions in weewx.conf, I prefer not to mess up with editing at two places but track my modifications in interceptor.py only.

James Berry

unread,
Jan 30, 2020, 11:26:06 AM1/30/20
to weewx-user
Just to confirm that it just rained a bit and the new changes in 0.53 caused the rain to register on my HP2551 :-)

Jim Y

unread,
Feb 10, 2020, 11:59:32 AM2/10/20
to weewx-user
So, I am just starting to get things going, I have the gw1000, a rain gauge, external temp, and 2 soil moisture meters.  

Here's the output from the python command:
raw data: PASSKEY=XXXX&stationtype=GW1000B_V1.5.6&dateutc=2020-02-10+16:37:37&tempinf=71.8&humidityin=37&baromrelin=30.383&baromabsin=30.383&tempf=37.9&humidity=99&rainratein=0.000&eventrainin=0.000&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.000&monthlyrainin=5.209&yearlyrainin=5.209&totalrainin=5.209&soilmoisture1=38&soilmoisture2=53&wh40batt=1.6&wh26batt=0&soilbatt1=1.7&soilbatt2=1.8&freq=915M&model=GW1000_Pro
raw packet: {'humidity_in': 37.0, 'soil_battery_1': 1.7, 'soil_battery_2': 1.8, 'rain_total': 5.209, 'humidity_out': 99.0, 'temperature_in': 71.8, 'rain': None, 'wh26_battery': 0.0, 'pressure': 30.383, 'temperature_out': 37.9, 'soil_moisture_1': 38.0, 'soil_moisture_2': 53.0, 'dateTime': 1581352657, 'rain_rate': 0.0, 'usUnits': 1}
mapped packet: {'pressure': 30.383, 'outHumidity': 99.0, 'rain': None, 'dateTime': 1581352657, 'outTemp': 37.9, 'soilMoist1': 38.0, 'inHumidity': 37.0, 'inTemp': 71.8, 'soilMoist2': 53.0, 'rainRate': 0.0, 'usUnits': 1}

When I open the local weewx website, I have the main "expected" data (temps and rain info), but nothing from the soil sensors.

When I run a systemctl status weewx, I get this:
● weewx.service - LSB: weewx weather system
   Loaded: loaded (/etc/init.d/weewx; generated)
   Active: active (running) since Mon 2020-02-10 08:48:13 PST; 2min 37s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 19836 ExecStop=/etc/init.d/weewx stop (code=exited, status=0/SUCCESS)
  Process: 20142 ExecStart=/etc/init.d/weewx start (code=exited, status=0/SUCCESS)
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/weewx.service
           └─20188 python /usr/bin/weewxd --daemon --pidfile=/var/run/weewx.pid /etc/weewx/weewx.conf

Feb 10 08:48:13 hass weewx[20188]: restx: PWSweather: Posting not enabled.
Feb 10 08:48:13 hass weewx[20188]: restx: CWOP: Posting not enabled.
Feb 10 08:48:13 hass weewx[20188]: restx: WOW: Posting not enabled.
Feb 10 08:48:13 hass weewx[20188]: restx: AWEKAS: Posting not enabled.
Feb 10 08:48:13 hass weewx[20188]: engine: Starting up weewx version 3.9.2
Feb 10 08:48:13 hass weewx[20188]: engine: Starting main packet loop.
Feb 10 08:48:49 hass weewx[20188]: interceptor: MainThread: using 'totalrainin' for rain_total
Feb 10 08:48:49 hass weewx[20188]: interceptor: MainThread: unrecognized parameter wh40batt=1.6
Feb 10 08:48:49 hass weewx[20188]: interceptor: MainThread: skipping rain measurement of 5.209: no last rain
Feb 10 08:49:50 hass weewx[20188]: interceptor: MainThread: unrecognized parameter wh40batt=1.6

I'm not especially worried about the missing battery level on the rain gauge, but can you point me where I need to go to get the soil moisture meters visible on the front end?  I've read so many forum posts at this point my eyes are crossed and I'm a bit lost about what config files I should be editing...


On Sunday, December 29, 2019 at 8:59:56 PM UTC-8, mwall wrote:
the weewx-interceptor driver has been updated with explicit support for the gw1000 wifi bridge, as well as support for weewx4/python3.

instructions are at the weewx wiki:


i would especially appreciate feedback from anyone with full sensor arrays (wind, rain, uv), particulate sensors, soil moisture sensors, and any other extended sensors offered by ecowitt.

although the interceptor will now understand the extended weather underground protocol, the 'fineoffset-bridge' type uses the ecowitt protocol and a direct-to-weewx configuration (no dns hijack or sniffing or other shenanigans required).  it does require a recent firmware on the gw1000 (testing with 1.5.5)

m
 
Message has been deleted

Paul McGeorge

unread,
Feb 10, 2020, 11:07:57 PM2/10/20
to weewx-user

You could start by trying $current.soilMoist1 in your current.inc file if your using the seasons skin. Read the customization guide for more options.

http://www.weewx.com/docs/customizing.htm#customizing_templates

Jim Y

unread,
Feb 11, 2020, 2:17:53 PM2/11/20
to weewx-user
Thanks for the direction, will give this a try once I can get back on my home network.

G Hammer

unread,
Feb 12, 2020, 5:22:19 AM2/12/20
to weewx-user
I have a question and an observation.
The observation is that 0.53 of Interceptor does not shut down cleanly with weewx version 4.0.0b12 (or b10, b11), Python 2.7.17

Feb 12 04:58:53 srvr systemd[1]: Stopping LSB: weewx weather system...
Feb 12 04:58:53 srvr weewx[26866]:  * Stopping weewx weather system weewx
Feb 12 04:58:53 srvr weewx[26625] INFO __main__: Received signal TERM (15).
Feb 12 04:58:53 srvr weewx[26625] INFO weewx.engine: Main loop exiting. Shutting engine down.
Feb 12 04:58:53 srvr weewx[26625] INFO weewx.engine: Shutting down StdReport thread
Feb 12 04:58:53 srvr weewx[26625] INFO user.interceptor: shutting down server thread
Feb 12 04:58:54 srvr weewx[26625] INFO __main__: Terminating weewx version 4.0.0b12
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****  Traceback (most recent call last):
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****    File "/home/weewx/bin/weewxd", line 154, in main
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****      engine.run()
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****    File "/home/weewx/bin/weewx/engine.py", line 186, in run
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****      for packet in self.console.genLoopPackets():
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****    File "/home/weewx/bin/user/interceptor.py", line 2547, in genLoopPackets
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****      data = self._device.get_queue().get(True, self._queue_timeout)
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****    File "/usr/lib/python2.7/Queue.py", line 177, in get
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****      self.not_empty.wait(remaining)
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****    File "/usr/lib/python2.7/threading.py", line 359, in wait
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****      _sleep(delay)
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****    File "/home/weewx/bin/weewxd", line 257, in sigTERMhandler
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****      raise Terminate
Feb 12 04:58:54 srvr weewx[26625] INFO __main__:     ****  Terminate
Feb 12 04:58:58 srvr weewx[26866]: .   ...done.
Feb 12 04:58:58 srvr systemd[1]: Stopped LSB: weewx weather system.

The question I have is how to map my rain gauge battery (wh40batt). This is the output running Interceptor directly.
raw data: PASSKEY=XXXX&stationtype=GW1000B_V1.5.6&dateutc=2020-02-12+10:11:35&tempinf=72.3&humidityin=29&baromrelin=30.020&baromabsin=29.551&tempf=34.7&humidity=60&winddir=352&windspeedmph=2.46&windgustmph=6.93&maxdailygust=15.88&solarradiation=0.00&uv=0&rainratein=0.000&eventrainin=0.091&hourlyrainin=0.000&dailyrainin=0.000&weeklyrainin=0.177&monthlyrainin=0.189&yearlyrainin=2.110&totalrainin=2.110&wh65batt=0&wh40batt=1.6&wh26batt=0&freq=915M&model=GW1000_Pro
raw packet: {'wind_speed': 2.46, 'humidity_in': 29.0, 'temperature_in': 72.3, 'rain_total': 2.11, 'solar_radiation': 0.0, 'wind_gust': 6.93, 'wh65_battery': 0.0, 'humidity_out': 60.0, 'uv': 0.0, 'rain': 0.0, 'wh26_battery': 0.0, 'pressure': 29.551, 'temperature_out': 34.7, 'wind_dir': 352.0, 'dateTime': 1581502295, 'rain_rate': 0.0, 'usUnits': 1}
mapped packet: {'pressure': 29.551, 'outHumidity': 60.0, 'UV': 0.0, 'radiation': 0.0, 'rain': 0.0, 'dateTime': 1581502295, 'windDir': 352.0, 'outTemp': 34.7, 'windSpeed': 2.46, 'inHumidity': 29.0, 'inTemp': 72.3, 'windGust': 6.93, 'rainRate': 0.0, 'usUnits': 1}



Vetti52

unread,
Feb 14, 2020, 11:36:59 AM2/14/20
to weewx-user
When looking at interceptor.py version 0.53, there is not yet a wh40batt sensor listed at the class ecowitt-client (Consumer).
You may insert in interceptor.py after line 2249 wh65.batt an extra line like
            'wh65batt': 'wh65_battery',
           
'wh40batt': 'wh40_battery',
           
'pm25_ch1'
: 'pm2_5',

and then add the sensor to weewx.conf like
[Interceptor]
    ...
    [[sensor_map_extensions]]
        rainBatteryStatus = wh40_battery
 


G Hammer

unread,
Feb 14, 2020, 4:31:28 PM2/14/20
to weewx-user
Thank you, works a treat!
I just have to remember to test new Interceptor versions then edit if needed.

Mike Harold Chan

unread,
Feb 15, 2020, 11:47:48 AM2/15/20
to weewx...@googlegroups.com
Hello,

May I ask since im using weewx-WD extension, if someone tested already with GW1000?


Thanks and regards


-Mike-

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/ffe5b6f5-8505-4e2c-93dd-aba563e1afee%40googlegroups.com.

Wifi75

unread,
May 12, 2020, 7:25:09 AM5/12/20
to weewx-user
hello I have same error:

user.interceptor: using 'totalrainin' for rain_total

for fix that problem it is correct below?

[Interceptor]
   
# This section is for the network traffic interceptor driver.
   
   
# The driver to use:
   
    driver
= user.interceptor
    device_type
= ecowitt-
client
    port
= 8000
 
 
[[sensor_map_extensions]]
        rainBatteryStatus
= wh69_battery
 totalrainin
= Rainin total

Reply all
Reply to author
Forward
0 new messages