Availability of v5.0.0rc3

425 views
Skip to first unread message

Tom Keffer

unread,
Jan 8, 2024, 7:06:20 PM1/8/24
to weewx-user, weewx-development
One last look at V5 before it goes out the door!

V5 can be installed using either pip, or the usual package installers.

Pip

For pip installs, please delete your old virtual environment, then install from scratch by following the pip install instructions. While upgrading should work, we are particularly interested in the experience of a new install, including setting up a daemon and udev files. Make sure to follow the new instructions that use a daemon setup script.


Debian

For Debian package installs, modify /etc/apt/sources.list as follows:
echo "deb [arch=all] https://weewx.com/apt-test/python3 buster main" | sudo tee /etc/apt/sources.list.d/weewx.list
Note the "apt-test". This tells apt to look there for the beta release, instead of the normal repository. You may want to change it back when you're done.

Otherwise, follow the Debian install instructions.


Red Hat

For Red Hat package installs, put this in /etc/yum.repos.d/weewx.repo
[weewx]
name=weewx
baseurl=http://weewx.com/yum-test/weewx/el9
enabled=1
Note the "yum-test". This tells yum to look there for the beta release, instead of the normal repository. Again, you may want to change things back when you're done.

Otherwise, follow the Redhat install instructions.

What we're looking for

1. We are interested in your upgrade experience. Did the installers get your configuration file right? Skins? Is the daemon configured correctly?

2. With this release, we have included udev rules to set the correct permissions for devices. Did it work? If not, did unplugging then replugging the device work?

3. How about logging? Is it going to your system logger? Do the labels look reasonable?

Thanks!

-Tom & Matt


Message has been deleted

michael.k...@gmx.at

unread,
Jan 9, 2024, 6:13:41 AM1/9/24
to weewx-user
I did a pip upgrade from b13 (no new install, no new venv). I run 3 drivers: ws28xx, interceptor and ecowitt gateway driver from the same installations, using 3 different weewx.conf files and three databases

After upgrading, two installations are crashing, when having certain corrections configured. Interestingly, one station (ecowitt gateway) keeps running, although it has the same correction configured, as the other crashing (interceptor). Log following, tell me, what else you need. (debug = 1, etc...)

Correction stanza for ecowitt gateway (no crashing):
[StdCalibrate]
   
    [[Corrections]]
        # For each type, an arbitrary calibration expression can be given.
        # It should be in the units defined in the StdConvert section.
        # Example:
        #foo = foo + 0.2
        #outHumidity = extraHumid1
        radiation = luminosity/126.7 if luminosity is not None else None    #gw1000 fix
        lightning_distance = lightning_distance if lightning_strike_count > 0 else None


Corrections Stanza for interceptor:
[StdCalibrate]
   
    [[Corrections]]
        # For each type, an arbitrary calibration expression can be given.
        # It should be in the units defined in the StdConvert section.
        # Example:
        #foo = foo + 0.2
        #outHumidity = extraHumid1
        barometer = pressure
        altimeter = pressure
        #outHumidity = extraHumid1 if extraHumid1 is not None else outHumidity
        #supplyVoltage = (supplyVoltage + 35) / 1000
        #radiation = luminosity/126.7 if luminosity is not None else None    #<= this one also caused a crash just before and is already edited
        lightning_distance = lightning_distance if lightning_strike_count > 0 else None 
#<= removing this will prevent the crash
Interceptor log:
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Initializing weewxd version 5.0.0rc3
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Command line: /home/pi/weewx-venv/lib/python3.9/site-packages/weewxd.py /home/pi/weewx-data/weewx-interceptor.conf
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Using Python 3.9.2 (default, Feb 28 2021, 17:03:44)
[GCC 10.2.1 20210110]
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Located at /home/pi/weewx-venv/bin/python3
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Platform Linux-6.1.42-v8+-aarch64-with-glibc2.31
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Locale: 'de_AT.UTF-8'
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Entry path: /home/pi/weewx-venv/lib/python3.9/site-packages/weewxd.py
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: WEEWX_ROOT: /home/pi/weewx-data
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Configuration file: /home/pi/weewx-data/weewx-interceptor.conf
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: User module: /home/pi/weewx-data/bin/user
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Debug: 0
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Loading station type Interceptor (user.interceptor)
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: driver version is 0.60
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: device type: ecowitt-client
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: hardware name: weatherstation via interceptor
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: mode is listen
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: listen on :8001
2024-01-09 11:24:06 weewxd-interceptor[196235] 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', 'wh68batt': 'wh68batt', 'wh57batt': 'wh57batt'}
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: StdConvert target unit is 0x11
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.wxservices: StdWXCalculate will use data binding wx_binding
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Archive will use data binding wx_binding
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Record generation will be attempted in 'software'
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Using archive interval of 300 seconds (software record generation)
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: StationRegistry: Registration not requested.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: Wunderground: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: PWSweather: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: CWOP: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: WOW: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: AWEKAS: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: service version is 0.24
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: binding to loop
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: data_binding is wx_binding
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: topic is weather_interceptor
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: data will be uploaded to mqtt://10.0.1.90:1883/
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: 'pyephem' detected, extended almanac data is available
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.lowBattery: lowBattery: LowBattery alarm enabled. Count threshold is 1
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Starting up weewx version 5.0.0rc3
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx-interceptor.sdb'
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.manager: Starting backfill of daily summaries
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.manager: Daily summaries up to date
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Starting main packet loop.
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: using 'yearlyrainin' for rain_total
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter b'PASSKEY=3D174F81A16F4198D2EB24231DDD43F6
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter runtime=5095322
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter lightning_num=0
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter lightning_time=1703196395
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter lightning=8
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter wh68batt=1.88
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter wh57batt=5
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter interval=10'
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: skipping rain measurement of 1.382: no last rain
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO weewx.engine: Main loop exiting. Shutting engine down.
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: shutting down server thread
2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__: Caught unrecoverable exception:
2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****  name 'lightning_strike_count' is not defined
2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****  Traceback (most recent call last):

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewxd.py", line 166, in main

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****      engine.run()

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 206, in run

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****      self.dispatchEvent(weewx.Event(weewx.NEW_LOOP_PACKET, packet=packet))

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 241, in dispatchEvent

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****      callback(event)

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 442, in new_loop_packet

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****      event.packet[obs_type] = eval(self.corrections[obs_type], {'math': math},

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "StdCalibrate", line 1, in <module>

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****  NameError: name 'lightning_strike_count' is not defined

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****  Exiting.

 Corrections Stanza for ws28xx:
[StdCalibrate]
    [[Corrections]]
        # For each type, an arbitrary calibration expression can be given.
        # It should be in the units defined in the StdConvert section.
        # Example:
        #foo = foo + 0.2
        #outHumidity = extraHumid1    #<= this one also caused a crash just before and is already edited
        lightning_distance = lightning_distance if lightning_strike_count > 0 else None 
#<= removing this will prevent the crash
ws28xx log:
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Initializing weewxd version 5.0.0rc3
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Command line: /home/pi/weewx-venv/lib/python3.9/site-packages/weewxd.py /home/pi/weewx-data/weewx-ws28xx.conf
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Using Python 3.9.2 (default, Feb 28 2021, 17:03:44)
[GCC 10.2.1 20210110]
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Located at /home/pi/weewx-venv/bin/python3
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Platform Linux-6.1.42-v8+-aarch64-with-glibc2.31
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Locale: 'de_AT.UTF-8'
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Entry path: /home/pi/weewx-venv/lib/python3.9/site-packages/weewxd.py
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: WEEWX_ROOT: /home/pi/weewx-data
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Configuration file: /home/pi/weewx-data/weewx-ws28xx.conf
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: User module: /home/pi/weewx-data/bin/user
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Debug: 0
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.engine: Loading station type WS28xx (weewx.drivers.ws28xx)
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: driver version is 0.51
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: frequency is EU
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: found transceiver at bus= device=
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: manufacturer: b'LA CROSSE TECHNOLOGY'
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: product: b'Weather Direct Light Wireless Device'
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: interface: 0
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: base frequency: 868300000
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: frequency correction: 84888 (0x14b98)
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: adjusted frequency: 910563429 (0x36461865)
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: transceiver identifier: 369 (0x0171)
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: transceiver serial: 010109050601113
2024-01-09 11:16:36 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: console is paired to device with ID 0171
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Version is 2.2.3-rc03
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Log level: 0
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Log debug setting: 0
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Log console: False
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Log file: None
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) message_callback_provider_name is user.MQTTSubscribe.MessageCallbackProvider
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) clientid is MQTTSubscribe-4868
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) client_session is True
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) host is 10.0.1.90
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) port is 1883
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) keepalive is 60
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) username is None
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) min_delay is 1
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) max_delay is 120
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) password is set
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Archive topic is None
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) binding is loop
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Waiting for MQTT connection.
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Connected with result code 0
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Connected flags {'session present': 0}
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Subscribing to vtw11/3c71bff9443c has a mid 1 and rc 0
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Subscribed to mid: 1 is size 1 has a QOS of 0
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) MQTT initialization complete.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: StdConvert target unit is 0x11
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.wxservices: StdWXCalculate will use data binding wx_binding
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: Archive will use data binding wx_binding
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: Record generation will be attempted in 'hardware'
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: Using archive interval of 300 seconds (specified in weewx configuration)
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: StationRegistry: Registration not requested.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: Wunderground: Posting not enabled.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: PWSweather: Posting not enabled.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: CWOP: Posting not enabled.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: WOW: Posting not enabled.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: AWEKAS: Posting not enabled.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: service version is 0.24
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: binding to loop
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: data_binding is wx_binding
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: topic is weather_ws28xx
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: data will be uploaded to mqtt://10.0.1.90:1883/
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: 'pyephem' detected, extended almanac data is available
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.lowBattery: lowBattery: LowBattery alarm enabled. Count threshold is 1
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO __main__: Starting up weewx version 5.0.0rc3
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx-ws28xx.sdb'
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.manager: Starting backfill of daily summaries
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.manager: Daily summaries up to date
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: Scanning historical records
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: handleHistoryData: request records since 2024-01-09 11:15:00 CET (1704795300)
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: Scanned 5 records: current=248 latest=248 remaining=0
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: Found 1 historical records
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO weewx.engine: Starting main packet loop.
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO user.mqtt: client established for mqtt://10.0.1.90:1883/
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO weewx.restx: MQTT: Published record 2024-01-09 11:17:42 CET (1704795462)
2024-01-09 11:18:13 weewxd-ws28xx[195569] INFO weewx.engine: Main loop exiting. Shutting engine down.
2024-01-09 11:18:13 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Disconnected with result code 0
2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__: Caught unrecoverable exception:
2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****  name 'extraHumid1' is not defined
2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****  Traceback (most recent call last):

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewxd.py", line 166, in main

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****      engine.run()

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 206, in run

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****      self.dispatchEvent(weewx.Event(weewx.NEW_LOOP_PACKET, packet=packet))

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 241, in dispatchEvent

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****      callback(event)

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 442, in new_loop_packet

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****      event.packet[obs_type] = eval(self.corrections[obs_type], {'math': math},

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "StdCalibrate", line 1, in <module>

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****  NameError: name 'extraHumid1' is not defined

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****  Exiting.

michael.k...@gmx.at schrieb am Dienstag, 9. Januar 2024 um 11:47:15 UTC+1:
I did a pip upgrade. I run 3 drivers: ws28xx, interceptor and ecowitt gateway driver from the same installations, using 3 different weewx.conf files and three databases

After upgrading, two installations are crashing, when having certain corrections configured. Interestingly, one station (ecowitt gateway) keeps running, although it has the same correction configured, as the other crashing (interceptor). Log following, tell me, what else you need. (debug = 1, etc...)

Correction stanza for ecowitt gateway (no crashing):
[StdCalibrate]
   
    [[Corrections]]
        # For each type, an arbitrary calibration expression can be given.
        # It should be in the units defined in the StdConvert section.
        # Example:
        #foo = foo + 0.2
        #outHumidity = extraHumid1
        radiation = luminosity/126.7 if luminosity is not None else None    #gw1000 fix
        lightning_distance = lightning_distance if lightning_strike_count > 0 else None


Corrections Stanza for interceptor:
[StdCalibrate]
   
    [[Corrections]]
        # For each type, an arbitrary calibration expression can be given.
        # It should be in the units defined in the StdConvert section.
        # Example:
        #foo = foo + 0.2
        #outHumidity = extraHumid1
        barometer = pressure
        altimeter = pressure
        #outHumidity = extraHumid1 if extraHumid1 is not None else outHumidity
        #supplyVoltage = (supplyVoltage + 35) / 1000
        #radiation = luminosity/126.7 if luminosity is not None else None    #<= this one also caused a crash just before and is already edited
        lightning_distance = lightning_distance if lightning_strike_count > 0 else None 
#<= removing this will prevent the crash
Interceptor log:
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Initializing weewxd version 5.0.0rc3
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Command line: /home/pi/weewx-venv/lib/python3.9/site-packages/weewxd.py /home/pi/weewx-data/weewx-interceptor.conf
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Using Python 3.9.2 (default, Feb 28 2021, 17:03:44)
[GCC 10.2.1 20210110]
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Located at /home/pi/weewx-venv/bin/python3
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Platform Linux-6.1.42-v8+-aarch64-with-glibc2.31
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Locale: 'de_AT.UTF-8'
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Entry path: /home/pi/weewx-venv/lib/python3.9/site-packages/weewxd.py
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: WEEWX_ROOT: /home/pi/weewx-data
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Configuration file: /home/pi/weewx-data/weewx-interceptor.conf
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: User module: /home/pi/weewx-data/bin/user
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Debug: 0
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Loading station type Interceptor (user.interceptor)
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: driver version is 0.60
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: device type: ecowitt-client
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: hardware name: weatherstation via interceptor
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: mode is listen
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.interceptor: listen on :8001
2024-01-09 11:24:06 weewxd-interceptor[196235] 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', 'wh68batt': 'wh68batt', 'wh57batt': 'wh57batt'}
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: StdConvert target unit is 0x11
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.wxservices: StdWXCalculate will use data binding wx_binding
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Archive will use data binding wx_binding
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Record generation will be attempted in 'software'
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Using archive interval of 300 seconds (software record generation)
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: StationRegistry: Registration not requested.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: Wunderground: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: PWSweather: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: CWOP: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: WOW: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.restx: AWEKAS: Posting not enabled.
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: service version is 0.24
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: binding to loop
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: data_binding is wx_binding
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: topic is weather_interceptor
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.mqtt: data will be uploaded to mqtt://10.0.1.90:1883/
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: 'pyephem' detected, extended almanac data is available
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO user.lowBattery: lowBattery: LowBattery alarm enabled. Count threshold is 1
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO __main__: Starting up weewx version 5.0.0rc3
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Using binding 'wx_binding' to database 'weewx-interceptor.sdb'
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.manager: Starting backfill of daily summaries
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.manager: Daily summaries up to date
2024-01-09 11:24:06 weewxd-interceptor[196235] INFO weewx.engine: Starting main packet loop.
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: using 'yearlyrainin' for rain_total
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter b'PASSKEY=3D174F81A16F4198D2EB24231DDD43F6
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter runtime=5095322
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter lightning_num=0
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter lightning_time=1703196395
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter lightning=8
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter wh68batt=1.88
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter wh57batt=5
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: unrecognized parameter interval=10'
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: skipping rain measurement of 1.382: no last rain
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO weewx.engine: Main loop exiting. Shutting engine down.
2024-01-09 11:24:15 weewxd-interceptor[196235] INFO user.interceptor: shutting down server thread
2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__: Caught unrecoverable exception:
2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****  name 'lightning_strike_count' is not defined
2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****  Traceback (most recent call last):

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewxd.py", line 166, in main

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****      engine.run()

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 206, in run

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****      self.dispatchEvent(weewx.Event(weewx.NEW_LOOP_PACKET, packet=packet))

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 241, in dispatchEvent

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****      callback(event)

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "/home/pi/weewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 442, in new_loop_packet

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****      event.packet[obs_type] = eval(self.corrections[obs_type], {'math': math},

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****    File "StdCalibrate", line 1, in <module>

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****  NameError: name 'lightning_strike_count' is not defined

2024-01-09 11:24:15 weewxd-interceptor[196235] CRITICAL __main__:     ****  Exiting.

 Corrections Stanza for ws28xx:
[StdCalibrate]
    [[Corrections]]
        # For each type, an arbitrary calibration expression can be given.
        # It should be in the units defined in the StdConvert section.
        # Example:
        #foo = foo + 0.2
        #outHumidity = extraHumid1    #<= this one also caused a crash just before and is already edited
        lightning_distance = lightning_distance if lightning_strike_count > 0 else None 
#<= removing this will prevent the crash
ws28xx log:
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Initializing weewxd version 5.0.                          0rc3
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Command line: /home/pi/weewx-ven                          v/lib/python3.9/site-packages/weewxd.py /home/pi/weewx-data/weewx-ws28xx.conf
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Using Python 3.9.2 (default, Feb                           28 2021, 17:03:44)
[GCC 10.2.1 20210110]
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Located at /home/pi/weewx-venv/b                          in/python3
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Platform Linux-6.1.42-v8+-aarch6                          4-with-glibc2.31
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Locale: 'de_AT.UTF-8'
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Entry path: /home/pi/weewx-venv/                          lib/python3.9/site-packages/weewxd.py
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: WEEWX_ROOT: /home/pi/weewx-data
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Configuration file: /home/pi/wee                          wx-data/weewx-ws28xx.conf
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: User module: /home/pi/weewx-data                          /bin/user
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO __main__: Debug: 0
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.engine: Loading station type WS28xx                           (weewx.drivers.ws28xx)
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: driver version is 0.                          51
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: frequency is EU
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: found transceiver at                           bus= device=
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: manufacturer: b'LA C                          ROSSE TECHNOLOGY'
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: product: b'Weather D                          irect Light Wireless Device'
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: interface: 0
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: base frequency: 8683                          00000
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: frequency correction                          : 84888 (0x14b98)
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: adjusted frequency:                           910563429 (0x36461865)
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: transceiver identifi                          er: 369 (0x0171)
2024-01-09 11:16:31 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: transceiver serial:                           010109050601113
2024-01-09 11:16:36 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: console is paired to                           device with ID 0171
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Version is 2                          .2.3-rc03
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Log level: 0
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Log debug se                          tting: 0
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Log console:                           False
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Log file: No                          ne
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) message_call                          back_provider_name is user.MQTTSubscribe.MessageCallbackProvider
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) clientid is                           MQTTSubscribe-4868
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) client_sessi                          on is True
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) host is 10.0                          .1.90
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) port is 1883
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) keepalive is                           60
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) username is                           None
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) min_delay is                           1
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) max_delay is                           120
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) password is                           set
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Archive topi                          c is None
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) binding is l                          oop
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Waiting for                           MQTT connection.
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Connected wi                          th result code 0
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Connected fl                          ags {'session present': 0}
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Subscribing                           to vtw11/3c71bff9443c has a mid 1 and rc 0
2024-01-09 11:16:42 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Subscribed t                          o mid: 1 is size 1 has a QOS of 0
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) MQTT initial                          ization complete.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: StdConvert target unit is 0x                          11
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.wxservices: StdWXCalculate will use                           data binding wx_binding
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: Archive will use data bindin                          g wx_binding
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: Record generation will be at                          tempted in 'hardware'
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: Using archive interval of 30                          0 seconds (specified in weewx configuration)
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: StationRegistry: Registration                           not requested.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: Wunderground: Posting not ena                          bled.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: PWSweather: Posting not enabl                          ed.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: CWOP: Posting not enabled.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: WOW: Posting not enabled.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.restx: AWEKAS: Posting not enabled.
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: service version is 0.24
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: binding to loop
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: data_binding is wx_binding
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: topic is weather_ws28xx
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.mqtt: data will be uploaded to mqtt:/                          /10.0.1.90:1883/
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: 'pyephem' detected, extended                           almanac data is available
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO user.lowBattery: lowBattery: LowBattery al                          arm enabled. Count threshold is 1
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO __main__: Starting up weewx version 5.0.0r                          c3
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.engine: Using binding 'wx_binding' t                          o database 'weewx-ws28xx.sdb'
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.manager: Starting backfill of daily                           summaries
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.manager: Daily summaries up to date
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: Scanning historical                           records
2024-01-09 11:16:43 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: handleHistoryData: r                          equest records since 2024-01-09 11:15:00 CET (1704795300)
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: Scanned 5 records: c                          urrent=248 latest=248 remaining=0
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO weewx.drivers.ws28xx: Found 1 historical r                          ecords
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO weewx.engine: Starting main packet loop.
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO user.mqtt: client established for mqtt://1                          0.0.1.90:1883/
2024-01-09 11:17:43 weewxd-ws28xx[195569] INFO weewx.restx: MQTT: Published record 2024-0                          1-09 11:17:42 CET (1704795462)
2024-01-09 11:18:13 weewxd-ws28xx[195569] INFO weewx.engine: Main loop exiting. Shutting                           engine down.
2024-01-09 11:18:13 weewxd-ws28xx[195569] INFO user.MQTTSubscribe: (Service) Disconnected                           with result code 0
2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__: Caught unrecoverable excepti                          on:
2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****  name 'extraHumid1'                           is not defined
2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****  Traceback (most re                          cent call last):

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "/home/pi/w                          eewx-venv/lib/python3.9/site-packages/weewxd.py", line 166, in main

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****      engine.run()

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "/home/pi/w                          eewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 206, in run

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****      self.dispatchE                          vent(weewx.Event(weewx.NEW_LOOP_PACKET, packet=packet))

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "/home/pi/w                          eewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 241, in dispatchEvent

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****      callback(event                          )

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "/home/pi/w                          eewx-venv/lib/python3.9/site-packages/weewx/engine.py", line 442, in new_loop_packet

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****      event.packet[o                          bs_type] = eval(self.corrections[obs_type], {'math': math},

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****    File "StdCalibra                          te", line 1, in <module>

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****  NameError: name 'e                          xtraHumid1' is not defined

2024-01-09 11:18:13 weewxd-ws28xx[195569] CRITICAL __main__:     ****  Exiting.


rcst...@gmail.com

unread,
Jan 9, 2024, 12:41:01 PM1/9/24
to Tom Keffer, weewx-user, weewx-development

Hey Tom,

 

Just tried to upgrade from rc1 to rc3-2, and get

 

Get:1 https://weewx.com/apt-test/python3 buster/main all weewx all 5.0.0rc3-2 [1,556 kB]

Fetched 1,556 kB in 0s (3,314 kB/s)

Reading changelogs... Done

Preconfiguring packages ...

(Reading database ... 74780 files and directories currently installed.)

Preparing to unpack .../weewx_5.0.0rc3-2_all.deb ...

Removed /etc/systemd/system/multi-user.target.wants/weewx.service.

Unpacking weewx (5.0.0rc3-2) over (5.0.0rc1-2) ...

dpkg: warning: unable to delete old directory '/var/www/html/weewx': Directory not empty

dpkg: warning: unable to delete old directory '/var/lib/weewx': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/smartphone/icons': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/smartphone': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/lang': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/font': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/backgrounds': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/RSS': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/NOAA': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Smartphone/lang': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Smartphone/icons': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Smartphone': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Seasons/lang': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Seasons/font': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Seasons/NOAA': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Seasons': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Rsync': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Mobile/lang': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Mobile': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Ftp': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/bin/user': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/bin': Directory not empty

Setting up weewx (5.0.0rc3-2) ...

Installing new version of config file /etc/weewx/examples/alarm.py ...

Installing new version of config file /etc/weewx/examples/basic/install.py ...

Installing new version of config file /etc/weewx/examples/basic/readme.md ...

Installing new version of config file /etc/weewx/examples/fileparse/readme.md ...

Installing new version of config file /etc/weewx/examples/lowBattery.py ...

Installing new version of config file /etc/weewx/examples/pmon/install.py ...

Installing new version of config file /etc/weewx/examples/pmon/readme.md ...

Installing new version of config file /etc/weewx/examples/tests/test_vaporpressure.py ...

Installing new version of config file /etc/weewx/examples/xstats/readme.txt ...

Installing new version of config file /etc/weewx/examples/xstats/skins/xstats/index.html.tmpl ...

Installing new version of config file /etc/weewx/examples/xstats/skins/xstats/skin.conf ...

Installing new version of config file /etc/weewx/import/csv-example.conf ...

Installing new version of config file /etc/weewx/import/cumulus-example.conf ...

Installing new version of config file /etc/weewx/import/wd-example.conf ...

Installing new version of config file /etc/weewx/import/weathercat-example.conf ...

Installing new version of config file /etc/weewx/import/wu-example.conf ...

 

Configuration file '/etc/weewx/weewx.conf'

==> Modified (by you or by a script) since installation.

==> Package distributor has shipped an updated version.

   What would you like to do about it ?  Your options are:

    Y or I  : install the package maintainer's version

    N or O  : keep your currently-installed version

      D     : show the differences between the versions

      Z     : start a shell to examine the situation

The default action is to keep your current version.

*** weewx.conf (Y/I/N/O/D/Z) [default=N] ?

Creating maintainer config file as /etc/weewx/weewx.conf-5.0.0rc1-5.0.0rc3

Using configuration file /etc/weewx/weewx.conf-5.0.0rc1-5.0.0rc3

Finished upgrading configuration file /etc/weewx/weewx.conf-5.0.0rc1-5.0.0rc3

Saving configuration file /etc/weewx/weewx.conf-5.0.0rc1-5.0.0rc3

dpkg: error processing package weewx (--configure):

installed weewx package post-installation script subprocess returned error exit status 1

Errors were encountered while processing:

weewx

E: Sub-process /usr/bin/dpkg returned an error code (1)

 

Not sure if it’s erroring due to not being able to swap out the skins directories, or something else…

--
You received this message because you are subscribed to the Google Groups "weewx-development" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-developm...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-development/CAPq0zECPG4PmhBH0RKYOULr8RdSrwMZ-sM%3DURzbtqUmEvC1Uug%40mail.gmail.com.

matthew wall

unread,
Jan 9, 2024, 1:34:52 PM1/9/24
to weewx-user
the messages about 'dpkg: warning: unable to delete old directory' are expected, and should not cause any problems.

the error is coming from the postinst script, probably where we set permissions. it has been working smoothly on clean installs and clean upgrades, but on some upgrades it fails.

could you post the output from the following:

cat /etc/default/weewx
ls -la /var/lib/weewx
ls -la /usr/share/weewx
ls -la /etc/weewx
ls -la /var/www/html/weewx

vince

unread,
Jan 9, 2024, 3:06:33 PM1/9/24
to weewx-user
Matthew - I did a few upgrade path tests on deb12 and concluded that the permission error comes from which rc1 version the user started with.  I got a variety of results depending on 'which' rc1 dpkg was installed and how many steps the system has been through.  Some of the earlier rc1 dpkg have errors you fixed in later updates to the rc1 dpkg.

Unfortunately the problem report didn't say 'which' rc1 dpkg was the starting point.  Maybe a 'grep weewx /var/log/dpkg.log' might help if you wanted to dig that deeply.

A clean v4 to latest v5 rc is clean other than the Directory not empty messages....

Unpacking weewx (5.0.0rc3-2) over (4.10.2-1) ...
dpkg: warning: unable to delete old directory '/usr/share/weewx/user': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/udev/rules.d': Directory not empty

dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/smartphone/icons': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/smartphone': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/lang': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/backgrounds': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/RSS': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard/NOAA': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Standard': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Smartphone/lang': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Smartphone/icons': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Smartphone': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Seasons/lang': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Seasons/font': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Seasons/NOAA': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Seasons': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Rsync': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Mobile/lang': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Mobile': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins/Ftp': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/skins': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/scripts': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/apache/conf.d': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/apache/conf-available': Directory not empty
dpkg: warning: unable to delete old directory '/etc/weewx/apache': Directory not empty

Tom Keffer

unread,
Jan 9, 2024, 3:25:59 PM1/9/24
to weewx...@googlegroups.com
Michael, I think the issue is that extraHumid1 and/or lightning_strike_count do not appear at all in at least some of the loop packers and/or archive records.

Version 4.10 swallowed NameErrors, this one does not. Perhaps that's a mistake. Let me think if there's a better solution.

-tk

--
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/67c3ccbe-a29b-44a2-b450-51d71b9b3bf5n%40googlegroups.com.

michael.k...@gmx.at

unread,
Jan 9, 2024, 11:43:40 PM1/9/24
to weewx-user
It looks very much like it's the loop in my case. For instance, extraHumid1 is coming from a different device using the mqttSubscribe Service. So it is not in the loop packet from ws28xx. The same with supplyVoltage, BTW I messed up the ws28xx stanza, this one is correct, failing on both, outHumidity and supplyVoltage:

[StdCalibrate]
   
    [[Corrections]]
        # For each type, an arbitrary calibration expression can be given.
        # It should be in the units defined in the StdConvert section.
        # Example:
        #foo = foo + 0.2
        #outHumidity = extraHumid1
        barometer = pressure
        altimeter = pressure
        outHumidity = extraHumid1 if extraHumid1 is not None else outHumidity
        supplyVoltage = (supplyVoltage + 35) / 1000


In 5.0.0-b13 it didn't crash, so it wasn't only a difference to 4.10.

Tom Keffer

unread,
Jan 10, 2024, 9:23:11 AM1/10/24
to weewx...@googlegroups.com
Michael,

I've reverted the StdCalibrate behavior back to the way it was in V4.10. To appear in the next V5 release.

michael.k...@gmx.at

unread,
Jan 10, 2024, 1:34:45 PM1/10/24
to weewx-user
Thanks! Patched the file, it's working again.

sab...@gmail.com

unread,
Jan 12, 2024, 7:53:24 PM1/12/24
to weewx-user
I just tried a new install of 5.0RC3 on a RPi4 using the latest released Rasbian lite and used the PIP install for weewx.  The install process was pretty smooth, but I did hit a small snag with the udev file assigning the permissions for my acurite console.  Despite multiple attempts to unplug.replug the station I kept getting permissions errors.

After some troubleshooting, I found the acurite idVendor code has a typo.  Once I changed this the string to "24c0" instead of 24C0",  I was able to get the permissions working and all was good.

Change
# acurite
SUBSYSTEM=="usb",ATTRS{idVendor}=="24C0",ATTRS{idProduct}=="0003",MODE="0666"

to
# acurite
SUBSYSTEM=="usb",ATTRS{idVendor}=="24c0",ATTRS{idProduct}=="0003",MODE="0666"

I should be good now for the final release but anyone else who has an acurite weather station is likely to hit the same problem.

Thanks
Scott

matthew wall

unread,
Jan 12, 2024, 10:03:13 PM1/12/24
to weewx-user
On Friday, January 12, 2024 at 7:53:24 PM UTC-5 sab...@gmail.com wrote:
After some troubleshooting, I found the acurite idVendor code has a typo.  Once I changed this the string to "24c0" instead of 24C0",  I was able to get the permissions working and all was good.

nice catch!  fixed at commit a92c9c7a
 

WindnFog

unread,
Jan 13, 2024, 10:54:21 AM1/13/24
to weewx-user
Works well:


Is it worth mentioning in the documentation that if you delete your virtual environment, you also delete any python3 modules specific to your setup?  In my case, I needed to reinstall 'dateutils' and 'pysftp'. This was intuitive when I saw the errors, but maybe non-technical users would benefit from a line something like "If you use any non-standard Python3 modules, they will be lost when you delete and re-create the virtual environment.  They will need to be re-installed with pip."

Besides that nit-pick, going from rc2 to rc3 went fine.

- Paul VE1DX
Reply all
Reply to author
Forward
0 new messages