Interceptor driver, pcap observer and v4 python3 - No luck

67 views
Skip to first unread message

Cory Verellen

unread,
May 7, 2020, 12:37:35 PM5/7/20
to weewx-user
So here's the situation:

Over the past 3 days I've tried countless iterations of the topic title on numerous hardware platforms and OS. Here's my observations:

WeeWx v 3.9.2 + apt installed python-libpcap has been my tried and true setup for years with my WS-2902. Works great.

It was time to update my server hardware so I started building a whole new software stack from scratch on a new RPi 4b. (and a bunch of other hardware when i started running into trouble, all with the same result)

Here's what I ran into: There seems to be no good configuration that allows the Interceptor driver to work with a python3/weewx v4 setup. I've tried Debian, Ubuntu, Raspbian. I could be totally threading the needle wrong, but at this point i can't find a way through this.

1. using python2 i can get pypcap installed but it won't see any station data. probably a pip2 vs pip3 problem
2. Using python3, i can't get pypcap to 'see' any station data either.
3. using apt, there is no python3 support for python-libpcap so a python mismatch still.

The problem appears to be python v2 vs v3. here's some logging:

This is with the apt version of pcap installed with weewx in python3 mode:


May  7 09:10:24 weather2 systemd[1]: Stopped LSB: weewx weather system.
May  7 09:10:24 weather2 systemd[1]: Starting LSB: weewx weather system...
May  7 09:10:24 weather2 weewx[1694] INFO __main__: Initializing weewx version 4.0.0
May  7 09:10:24 weather2 weewx[1694] INFO __main__: Using Python 3.7.3 (default, Dec 20 2019, 18:57:59) #012[GCC 8.3.0]
May  7 09:10:24 weather2 weewx[1694] INFO __main__: Platform Linux-4.19.97-v7l+-armv7l-with-debian-10.3
May  7 09:10:24 weather2 weewx[1694] INFO __main__: Locale is 'en_GB.UTF-8'
May  7 09:10:24 weather2 weewx[1694] INFO __main__: PID file is /var/run/weewx.pid
May  7 09:10:24 weather2 weewx[1698] INFO __main__: Using configuration file /etc/weewx/weewx.conf
May  7 09:10:24 weather2 weewx[1698] INFO weewx.engine: Loading station type Interceptor (user.interceptor)
May  7 09:10:24 weather2 weewx[1683]: Starting weewx weather system: weewx.
May  7 09:10:24 weather2 systemd[1]: Started LSB: weewx weather system.
May  7 09:10:24 weather2 weewx[1698] INFO user.interceptor: driver version is 0.53
May  7 09:10:24 weather2 weewx[1698] INFO user.interceptor: device type: observer
May  7 09:10:24 weather2 weewx[1698] INFO user.interceptor: mode is sniff
May  7 09:10:24 weather2 weewx[1698] INFO user.interceptor: sniff iface=wlan0 promiscuous=0
May  7 09:10:24 weather2 weewx[1698] INFO user.interceptor: sniff filter 'src 192.168.24.2 and dst port 80'
May  7 09:10:24 weather2 weewx[1698] ERROR weewx.engine: Import of driver failed: No module named 'pcap' (<class 'ModuleNotFoundError'>)
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****  Traceback (most recent call last):
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/weewx/engine.py", line 103, in setupStation
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****      self.console = loader_function(config_dict, self)
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 315, in loader
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****      return InterceptorDriver(**config_dict[DRIVER_NAME])
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 2522, in __init__
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****      self._device = self.DEVICE_TYPES.get(self._device_type)(**stn_dict)
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 1285, in __init__
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****      Observer.Parser(), handler=Observer.Handler, **stn_dict)
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 427, in __init__
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****      iface, pcap_filter, promiscuous)
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 465, in __init__
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****      import pcap
May  7 09:10:24 weather2 weewx[1698] CRITICAL weewx.engine:     ****  ModuleNotFoundError: No module named 'pcap'
May  7 09:10:24 weather2 weewx[1698] CRITICAL __main__: Unable to load driver: No module named 'pcap'
May  7 09:10:24 weather2 weewx[1698] CRITICAL __main__:     ****  Exiting...

Removing the apt version, here's with python3 pypcap

pi@weather2:/etc/apt/sources.list.d $ sudo pip3 install libpcap
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: libpcap in /usr/local/lib/python3.7/dist-packages (4.1.3a4)
Requirement already satisfied: setuptools>=30.4.0 in /usr/lib/python3/dist-packages (from libpcap) (40.8.0)
Requirement already satisfied: cffi>=1.10.0 in /usr/local/lib/python3.7/dist-packages (from libpcap) (1.14.0)
Requirement already satisfied: pycparser in /usr/local/lib/python3.7/dist-packages (from cffi>=1.10.0->libpcap) (2.20)

pi@weather2:/etc/apt/sources.list.d $ sudo pip3 install pypcap
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting pypcap
Installing collected packages: pypcap
Successfully installed pypcap-1.2.3

and the syslog:

May  7 09:27:07 weather2 systemd[1]: Starting LSB: weewx weather system...
May  7 09:27:07 weather2 weewx[1880] INFO __main__: Initializing weewx version 4.0.0
May  7 09:27:07 weather2 weewx[1880] INFO __main__: Using Python 3.7.3 (default, Dec 20 2019, 18:57:59) #012[GCC 8.3.0]
May  7 09:27:07 weather2 weewx[1880] INFO __main__: Platform Linux-4.19.97-v7l+-armv7l-with-debian-10.3
May  7 09:27:07 weather2 weewx[1880] INFO __main__: Locale is 'en_GB.UTF-8'
May  7 09:27:07 weather2 weewx[1880] INFO __main__: PID file is /var/run/weewx.pid
May  7 09:27:07 weather2 weewx[1884] INFO __main__: Using configuration file /etc/weewx/weewx.conf
May  7 09:27:07 weather2 weewx[1884] INFO weewx.engine: Loading station type Interceptor (user.interceptor)
May  7 09:27:07 weather2 weewx[1869]: Starting weewx weather system: weewx.
May  7 09:27:07 weather2 systemd[1]: Started LSB: weewx weather system.
May  7 09:27:07 weather2 weewx[1884] INFO user.interceptor: driver version is 0.53
May  7 09:27:07 weather2 weewx[1884] INFO user.interceptor: device type: observer
May  7 09:27:07 weather2 weewx[1884] INFO user.interceptor: mode is sniff
May  7 09:27:07 weather2 weewx[1884] INFO user.interceptor: sniff iface=wlan0 promiscuous=0
May  7 09:27:07 weather2 weewx[1884] INFO user.interceptor: sniff filter 'src 192.168.24.2 and dst port 80'
May  7 09:27:07 weather2 weewx[1884] INFO user.interceptor: pypcap (1.2.2)
May  7 09:27:07 weather2 weewx[1884] INFO user.interceptor: sensor map: {'pressure': 'pressure', 'barometer': 'barometer', 'outHumidity': 'humidity_out', 'inHumidity': 'humidity_in', 'outTemp': 'temperature_out', 'inTemp': 'temperature_in', 'windSpeed': 'wind_speed', 'windGust': 'wind_gust', 'windDir': 'wind_dir', 'windGustDir': 'wind_gust_dir', 'radiation': 'solar_radiation', 'dewpoint': 'dewpoint', 'windchill': 'windchill', 'rain': 'rain', 'rainRate': 'rain_rate', 'UV': 'uv', 'txBatteryStatus': 'battery', 'extraTemp1': 'temperature_1', 'extraTemp2': 'temperature_2', 'extraTemp3': 'temperature_3', 'extraHumid1': 'humidity_1', 'extraHumid2': 'humidity_2', 'soilTemp1': 'soil_temperature_1', 'soilTemp2': 'soil_temperature_2', 'soilMoist1': 'soil_moisture_1', 'soilMoist2': 'soil_moisture_2', 'soilMoist3': 'soil_moisture_3', 'soilMoist4': 'soil_moisture_4', 'leafWet1': 'leafwetness_1', 'leafWet2': 'leafwetness_2', 'pm2_5': 'pm2_5', 'extraTemp4': 'temperature_4', 'extraTemp5': 'temperature_5', 'extraTemp6': 'temperature_6', 'extraTemp7': 'temperature_7', 'extraTemp8': 'temperature_8', 'extraHumid3': 'humidity_3', 'extraHumid4': 'humidity_4', 'extraHumid5': 'humidity_5', 'extraHumid6': 'humidity_6', 'extraHumid7': 'humidity_7', 'extraHumid8': 'humidity_8', 'soilTemp3': 'soil_temperature_3', 'soilTemp4': 'soil_temperature_4'}
May  7 09:27:07 weather2 weewx[1884] INFO weewx.engine: StdConvert target unit is 0x1
May  7 09:27:07 weather2 weewx[1884] INFO weewx.wxservices: The following values will be calculated: pressure=prefer_hardware, altimeter=prefer_hardware, appTemp=prefer_hardware, barometer=prefer_hardware, beaufort=prefer_hardware, cloudbase=prefer_hardware, dewpoint=prefer_hardware, ET=prefer_hardware, heatindex=prefer_hardware, humidex=prefer_hardware, inDewpoint=prefer_hardware, maxSolarRad=prefer_hardware, rainRate=prefer_hardware, windchill=prefer_hardware, windrun=prefer_hardware
May  7 09:27:07 weather2 weewx[1884] INFO weewx.wxservices: The following algorithms will be used for calculations: altimeter=aaASOS, maxSolarRad=RS
May  7 09:27:07 weather2 weewx[1884] INFO weewx.engine: Archive will use data binding wx_binding
May  7 09:27:07 weather2 weewx[1884] INFO weewx.engine: Record generation will be attempted in 'hardware'
May  7 09:27:07 weather2 weewx[1884] INFO weewx.engine: Using archive interval of 300 seconds (specified in weewx configuration)
May  7 09:27:07 weather2 weewx[1884] INFO weewx.restx: StationRegistry: Registration not requested.
May  7 09:27:07 weather2 weewx[1884] INFO weewx.restx: Wunderground: Posting not enabled.
May  7 09:27:07 weather2 weewx[1884] INFO weewx.restx: PWSweather: Posting not enabled.
May  7 09:27:07 weather2 weewx[1884] INFO weewx.restx: CWOP: Posting not enabled.
May  7 09:27:07 weather2 weewx[1884] INFO weewx.restx: WOW: Posting not enabled.
May  7 09:27:07 weather2 weewx[1884] INFO weewx.restx: AWEKAS: Posting not enabled.
May  7 09:27:07 weather2 weewx[1884] INFO __main__: Starting up weewx version 4.0.0
May  7 09:27:07 weather2 weewx[1884] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx.sdb'
May  7 09:27:07 weather2 weewx[1884] INFO weewx.manager: Starting backfill of daily summaries
May  7 09:27:07 weather2 weewx[1884] INFO weewx.engine: Starting main packet loop.
May  7 09:28:00 weather2 hostapd: wlan0: STA e0:dc:ff:fb:69:49 IEEE 802.11: associated
May  7 09:28:00 weather2 hostapd: wlan0: STA e0:dc:ff:fb:69:49 RADIUS: starting accounting session 9FD2896518FB7060
May  7 09:28:00 weather2 hostapd: wlan0: STA e0:dc:ff:fb:69:49 WPA: pairwise key handshake completed (RSN)
May  7 09:28:38 weather2 hostapd: wlan0: STA 60:01:94:39:9f:e8 IEEE 802.11: associated
May  7 09:28:38 weather2 hostapd: wlan0: STA 60:01:94:39:9f:e8 RADIUS: starting accounting session 58CA37495B0CD638
May  7 09:28:38 weather2 hostapd: wlan0: STA 60:01:94:39:9f:e8 WPA: pairwise key handshake completed (RSN)
May  7 09:28:38 weather2 dnsmasq-dhcp[555]: DHCPDISCOVER(wlan0) 60:01:94:39:9f:e8 <-- my phone connecting
May  7 09:28:38 weather2 dnsmasq-dhcp[555]: DHCPOFFER(wlan0) 192.168.24.2 60:01:94:39:9f:e8
May  7 09:28:39 weather2 dnsmasq-dhcp[555]: DHCPDISCOVER(wlan0) 60:01:94:39:9f:e8
May  7 09:28:39 weather2 dnsmasq-dhcp[555]: DHCPOFFER(wlan0) 192.168.24.2 60:01:94:39:9f:e8
May  7 09:28:39 weather2 dnsmasq-dhcp[555]: DHCPREQUEST(wlan0) 192.168.24.2 60:01:94:39:9f:e8
May  7 09:28:39 weather2 dnsmasq-dhcp[555]: DHCPACK(wlan0) 192.168.24.2 60:01:94:39:9f:e8 ws-2902a <-- weather station connecting


then radio silence.. even doing a tcpdump to watch, there is no traffic happening when using the pip3 based pypcap. I know this is out of the scope of weewx, but anyone have ideas? I'm about to go back to v3.9.2. One thing i accidentally did in the very fist install was didn't update my sources, so got weewx4 installed with python2. I think i had my libpcap messed up back then so didn't dive into it as a solution. Would this possibly work? running v4 under python2 with the python-libpcap (py2)

-Cory

Cory Verellen

unread,
May 7, 2020, 1:15:45 PM5/7/20
to weewx-user
OK, tried installing v4 in python2 mode with apt python-libpcap

May  7 10:07:59 weather2 systemd[1]: Started LSB: weewx weather system.
May  7 10:07:59 weather2 weewx[3332] INFO weewx.engine: Loading station type Interceptor (user.interceptor)
May  7 10:07:59 weather2 weewx[3332] INFO user.interceptor: driver version is 0.53
May  7 10:07:59 weather2 weewx[3332] INFO user.interceptor: device type: observer
May  7 10:07:59 weather2 weewx[3332] INFO user.interceptor: mode is sniff
May  7 10:07:59 weather2 weewx[3332] INFO user.interceptor: sniff iface=wlan0 promiscuous=0
May  7 10:07:59 weather2 weewx[3332] INFO user.interceptor: sniff filter 'src 192.168.24.2 and dst port 80'
May  7 10:07:59 weather2 weewx[3332] ERROR weewx.engine: Import of driver failed: in method 'pcapObject_open_live', argument 2 of type 'char *' (<type 'exceptions.TypeError'>)
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****  Traceback (most recent call last):
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/weewx/engine.py", line 103, in setupStation
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****      self.console = loader_function(config_dict, self)
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 315, in loader
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****      return InterceptorDriver(**config_dict[DRIVER_NAME])
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 2522, in __init__
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****      self._device = self.DEVICE_TYPES.get(self._device_type)(**stn_dict)
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 1285, in __init__
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****      Observer.Parser(), handler=Observer.Handler, **stn_dict)
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 427, in __init__
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****      iface, pcap_filter, promiscuous)
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****    File "/usr/share/weewx/user/interceptor.py", line 469, in __init__
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****      self.sniffer.open_live(iface, snaplen, pval, timeout_ms)
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****    File "/usr/lib/python2.7/dist-packages/pcap.py", line 108, in open_live
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****      def open_live(self, *args): return _pcap.pcapObject_open_live(self, *args)
May  7 10:07:59 weather2 weewx[3332] CRITICAL weewx.engine:     ****  TypeError: in method 'pcapObject_open_live', argument 2 of type 'char *'
May  7 10:07:59 weather2 weewx[3332] CRITICAL __main__: Unable to load driver: in method 'pcapObject_open_live', argument 2 of type 'char *'
May  7 10:07:59 weather2 weewx[3332] CRITICAL __main__:     ****  Exiting...

BUT!!!!
just tried V4 + pip pypcap method and success!!!
I guess the only question is, what is the drawback between Python2 and 3 weewx modes?


May  7 10:12:25 weather2 systemd[1]: Stopped LSB: weewx weather system.
May  7 10:12:25 weather2 systemd[1]: Starting LSB: weewx weather system...
May  7 10:12:25 weather2 weewx[3544] INFO __main__: Initializing weewx version 4.0.0
May  7 10:12:25 weather2 weewx[3544] INFO __main__: Using Python 2.7.16 (default, Oct 10 2019, 22:02:15) #012[GCC 8.3.0]
May  7 10:12:25 weather2 weewx[3544] INFO __main__: Platform Linux-4.19.97-v7l+-armv7l-with-debian-10.3
May  7 10:12:25 weather2 weewx[3544] INFO __main__: Locale is 'en_GB.UTF-8'
May  7 10:12:25 weather2 weewx[3544] INFO __main__: PID file is /var/run/weewx.pid
May  7 10:12:25 weather2 weewx[3548] INFO __main__: Using configuration file /etc/weewx/weewx.conf
May  7 10:12:25 weather2 weewx[3533]: Starting weewx weather system: weewx.
May  7 10:12:25 weather2 systemd[1]: Started LSB: weewx weather system.
May  7 10:12:25 weather2 weewx[3548] INFO weewx.engine: Loading station type Interceptor (user.interceptor)
May  7 10:12:25 weather2 weewx[3548] INFO user.interceptor: driver version is 0.53
May  7 10:12:25 weather2 weewx[3548] INFO user.interceptor: device type: observer
May  7 10:12:25 weather2 weewx[3548] INFO user.interceptor: mode is sniff
May  7 10:12:25 weather2 weewx[3548] INFO user.interceptor: sniff iface=wlan0 promiscuous=0
May  7 10:12:25 weather2 weewx[3548] INFO user.interceptor: sniff filter 'src 192.168.24.2 and dst port 80'
May  7 10:12:25 weather2 weewx[3548] INFO user.interceptor: pypcap (1.2.2)
May  7 10:12:25 weather2 weewx[3548] INFO user.interceptor: sensor map: {'extraTemp2': 'temperature_2', 'pm2_5': 'pm2_5', 'soilTemp1': 'soil_temperature_1', 'soilTemp2': 'soil_temperature_2', 'soilTemp3': 'soil_temperature_3', 'soilTemp4': 'soil_temperature_4', 'txBatteryStatus': 'battery', 'outTemp': 'temperature_out', 'windSpeed': 'wind_speed', 'windGust': 'wind_gust', 'outHumidity': 'humidity_out', 'windDir': 'wind_dir', 'radiation': 'solar_radiation', 'inTemp': 'temperature_in', 'windGustDir': 'wind_gust_dir', 'barometer': 'barometer', 'windchill': 'windchill', 'dewpoint': 'dewpoint', 'rain': 'rain', 'extraHumid6': 'humidity_6', 'pressure': 'pressure', 'extraHumid4': 'humidity_4', 'extraHumid5': 'humidity_5', 'extraHumid2': 'humidity_2', 'extraHumid3': 'humidity_3', 'extraTemp8': 'temperature_8', 'extraHumid1': 'humidity_1', 'extraTemp6': 'temperature_6', 'extraTemp7': 'temperature_7', 'extraTemp4': 'temperature_4', 'extraTemp5': 'temperature_5', 'rainRate': 'rain_rate', 'extraTemp3': 'temperature_3', 'extraHumid8': 'humidity_8', 'extraTemp1': 'temperature_1', 'leafWet1': 'leafwetness_1', 'leafWet2': 'leafwetness_2', 'extraHumid7': 'humidity_7', 'UV': 'uv', 'soilMoist3': 'soil_moisture_3', 'soilMoist2': 'soil_moisture_2', 'soilMoist1': 'soil_moisture_1', 'inHumidity': 'humidity_in', 'soilMoist4': 'soil_moisture_4'}
May  7 10:12:25 weather2 weewx[3548] INFO weewx.engine: StdConvert target unit is 0x1
May  7 10:12:25 weather2 weewx[3548] INFO weewx.wxservices: The following values will be calculated: pressure=prefer_hardware, altimeter=prefer_hardware, appTemp=prefer_hardware, barometer=prefer_hardware, beaufort=prefer_hardware, cloudbase=prefer_hardware, dewpoint=prefer_hardware, ET=prefer_hardware, heatindex=prefer_hardware, humidex=prefer_hardware, inDewpoint=prefer_hardware, maxSolarRad=prefer_hardware, rainRate=prefer_hardware, windchill=prefer_hardware, windrun=prefer_hardware
May  7 10:12:25 weather2 weewx[3548] INFO weewx.wxservices: The following algorithms will be used for calculations: altimeter=aaASOS, maxSolarRad=RS
May  7 10:12:25 weather2 weewx[3548] INFO weewx.engine: Archive will use data binding wx_binding
May  7 10:12:25 weather2 weewx[3548] INFO weewx.engine: Record generation will be attempted in 'hardware'
May  7 10:12:25 weather2 weewx[3548] INFO weewx.engine: Using archive interval of 300 seconds (specified in weewx configuration)
May  7 10:12:25 weather2 weewx[3548] INFO weewx.restx: StationRegistry: Registration not requested.
May  7 10:12:25 weather2 weewx[3548] INFO weewx.restx: Wunderground: Posting not enabled.
May  7 10:12:25 weather2 weewx[3548] INFO weewx.restx: PWSweather: Posting not enabled.
May  7 10:12:25 weather2 weewx[3548] INFO weewx.restx: CWOP: Posting not enabled.
May  7 10:12:25 weather2 weewx[3548] INFO weewx.restx: WOW: Posting not enabled.
May  7 10:12:25 weather2 weewx[3548] INFO weewx.restx: AWEKAS: Posting not enabled.
May  7 10:12:25 weather2 weewx[3548] INFO __main__: Starting up weewx version 4.0.0
May  7 10:12:25 weather2 weewx[3548] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx.sdb'
May  7 10:12:25 weather2 weewx[3548] INFO weewx.manager: Starting backfill of daily summaries
May  7 10:12:25 weather2 weewx[3548] INFO weewx.engine: Starting main packet loop.
May  7 10:12:38 weather2 hostapd: wlan0: STA e0:dc:ff:fb:69:49 IEEE 802.11: associated
May  7 10:12:38 weather2 hostapd: wlan0: STA e0:dc:ff:fb:69:49 RADIUS: starting accounting session AAFD7D8E4A7A4A00
May  7 10:12:38 weather2 hostapd: wlan0: STA e0:dc:ff:fb:69:49 WPA: pairwise key handshake completed (RSN)
May  7 10:13:11 weather2 hostapd: wlan0: STA 60:01:94:39:9f:e8 IEEE 802.11: associated
May  7 10:13:11 weather2 hostapd: wlan0: STA 60:01:94:39:9f:e8 RADIUS: starting accounting session 292C185A15BB2684
May  7 10:13:11 weather2 hostapd: wlan0: STA 60:01:94:39:9f:e8 WPA: pairwise key handshake completed (RSN)
May  7 10:13:11 weather2 dnsmasq-dhcp[555]: DHCPDISCOVER(wlan0) 60:01:94:39:9f:e8
May  7 10:13:11 weather2 dnsmasq-dhcp[555]: DHCPOFFER(wlan0) 192.168.24.2 60:01:94:39:9f:e8
May  7 10:13:11 weather2 dnsmasq-dhcp[555]: DHCPREQUEST(wlan0) 192.168.24.2 60:01:94:39:9f:e8
May  7 10:13:11 weather2 dnsmasq-dhcp[555]: DHCPACK(wlan0) 192.168.24.2 60:01:94:39:9f:e8 ws-2902a
May  7 10:13:28 weather2 weewx[3548] INFO user.interceptor: skipping rain measurement of 0.0: no last rain
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter wid=3e1e8a3057a8fad7
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter wdiravg=-32768
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter humin=38
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter uvi=70
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter wspdhi=26
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter ver=4.2.2
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter solarrad=6589
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter wspd=18
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter type=AMBWeather
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter tempin=219
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter wdir=69
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter hum=69
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter rain=0
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter heat=125
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter key=a36965b7a0c5c7e48ec0201a701440df
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter date=20200507
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter wspdavg=18
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter chill=125
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter bar=10308
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter temp=125
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter dew=70
May  7 10:13:33 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter time=1713
May  7 10:13:41 weather2 weewx[3548] INFO user.interceptor: skipping out-of-order packet {'barometer': 30.434, 'windchill': 54.5, 'dewpoint': 44.6, 'pressure': 30.231, 'outHumidity': 69.0, 'UV': 7.0, 'radiation': 658.9, 'rain': 0.0, 'dateTime': 1588871612, 'windDir': 69.0, 'outTemp': 54.5, 'windSpeed': 4.0, 'inHumidity': 38.0, 'inTemp': 71.4, 'windGust': 5.8, 'usUnits': 1} ('ID=KWASEATT1944&PASSWORD=ywew5r2u&indoortempf=71.4&tempf=54.5&dewptf=44.6&windchillf=54.5&indoorhumidity=38&humidity=69&windspeedmph=4.0&windgustmph=5.8&winddir=69&absbaromin=30.231&baromin=30.434&rainin=0.000&dailyrainin=0.000&weeklyrainin=0.028&monthlyrainin=0.268&solarradiation=658.90&UV=7&dateutc=2020-05-07%2017:13:32&softwaretype=AMBWeatherV4.2.2&action=updateraw&realtime=1&rtfreq=5')
May  7 10:13:49 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter hourlyrainin=0.000
May  7 10:13:49 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter baromrelin=30.434
May  7 10:13:49 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter eventrainin=0.000
May  7 10:13:49 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter totalrainin=12.228
May  7 10:13:49 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter stationtype=AMBWeatherV4.2.2
May  7 10:13:49 weather2 weewx[3548] INFO user.interceptor: unrecognized parameter maxdailygust=8.1

vince

unread,
May 7, 2020, 2:25:16 PM5/7/20
to weewx-user
I'm lost what you're blocked by and what you're asking at this point.

You can run weewx v4 versus python2.7 forever theoretically.  You can also switch to python3 at a later date after extensions/drivers catch up to python3.  So there's no downside I can think of re: sticking with python2.7 from a functionality standpoint.

I have two weewx systems.  One runs the Vantage driver (python3) and one runs the WeatherFlowUDP driver (python2).  Both run 4.0.0 just fine.

Cory Verellen

unread,
May 7, 2020, 2:51:24 PM5/7/20
to weewx-user
This is more of an interceptor driver bug report. It's broken when using Python3/WeeWx-v4 combination. I've found a combination that works by running weewx in python2 mode and thought that needed to be posted here for everyone to see. It's a pretty common setup.
Glad everything works for you though!
Reply all
Reply to author
Forward
0 new messages