I struggled a bit with the initial setup, but I finally managed to get a 
custom Docker/Podman image running (https://github.com/felddy/weewx-docker/ 
did NOT work for me).

After all of the struggle, I am now at a point where I am getting *some* 
data, but *none* of the actual useful stuff. I am only getting Station Name 
and Time/Data, but no actual sensor data.

Basically what I'm getting is limited to this
Mar 12 20:47:25 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:47:25 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:47:25 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:47:25 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:47:25 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:47:25 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710276445, 'usUnits': 1}
Mar 12 20:47:25 weewx[4] DEBUG user.interceptor: mapped packet: 
{'dateTime': 1710276445, 'usUnits': 1}

Some of the error messages are generated while I tried to access the 
built-in webserver, although the webpage always returns:
{"errcode":"0","errmsg":"ok","UTC_offset":"-18000"}

Is this a known issue or lack of configuration ?
weewx version 4.10.2

In the WSView Plus app I setup the System to use Ecowitt Custom Protocol, 
my Server IP Address as well as the Port 8080. I am NOT sure however if the 
PATH is correct (I left the default value). Should I have removed 
everything and left the PATH blank in the WSView Plus app ?

Thank you for your help :).

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/407d41da-fa7f-4b74-8561-86d280bfb875n%40googlegroups.com.
Launching docker-entrypoint.sh
Starting weewxd
Mar 12 20:28:44 syslogd started: BusyBox v1.35.0
Mar 12 20:28:45 weewx[4] INFO __main__: Initializing weewx version 4.10.2
Mar 12 20:28:45 weewx[4] INFO __main__: Using Python 3.11.2 (main, Mar 13 2023, 
12:18:29) [GCC 12.2.0]
Mar 12 20:28:45 weewx[4] INFO __main__: Located at /opt/venv/bin/python
Mar 12 20:28:45 weewx[4] INFO __main__: Platform 
Linux-6.1.0-rpi8-rpi-v7-armv7l-with-glibc2.36
Mar 12 20:28:45 weewx[4] INFO __main__: Locale is 
'LC_CTYPE=C.UTF-8;LC_NUMERIC=C;LC_TIME=C;LC_COLLATE=C;LC_MONETARY=C;LC_MESSAGES=C;LC_PAPER=C;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=C;LC_IDENTIFICATION=C'
Mar 12 20:28:45 weewx[4] INFO __main__: Using configuration file 
/etc/weewx/weewx.conf
Mar 12 20:28:45 weewx[4] INFO __main__: Debug is 1
Mar 12 20:28:45 weewx[4] DEBUG __main__: Initializing engine
Mar 12 20:28:45 weewx[4] INFO weewx.engine: Loading station type Interceptor 
(user.interceptor)
Mar 12 20:28:46 weewx[4] INFO user.interceptor: driver version is 0.60
Mar 12 20:28:46 weewx[4] INFO user.interceptor: device type: ecowitt-client
Mar 12 20:28:46 weewx[4] INFO user.interceptor: hardware name: Sainlogic WS3500
Mar 12 20:28:46 weewx[4] INFO user.interceptor: mode is listen
Mar 12 20:28:46 weewx[4] INFO user.interceptor: listen on :8080
Mar 12 20:28:46 weewx[4] 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'
Mar 12 20:28:46 weewx[4] DEBUG user.interceptor: start tcp server
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.engine.StdTimeSynch
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.engine.StdTimeSynch
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.engine.StdConvert
Mar 12 20:28:46 weewx[4] INFO weewx.engine: StdConvert target unit is 0x1
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.engine.StdConvert
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.engine.StdCalibrate
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.engine.StdCalibrate
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service weewx.engine.StdQC
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.engine.StdQC
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.wxservices.StdWXCalculate
Mar 12 20:28:46 weewx[4] INFO weewx.wxservices: StdWXCalculate will use data 
binding wx_binding
Mar 12 20:28:46 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:28:46 weewx[4] DEBUG weewx.manager: Daily summary version is 4.0
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.wxservices.StdWXCalculate
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.wxxtypes.StdWXXTypes
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.wxxtypes.StdWXXTypes
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.wxxtypes.StdPressureCooker
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.wxxtypes.StdPressureCooker
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.wxxtypes.StdRainRater
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.wxxtypes.StdRainRater
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.wxxtypes.StdDelta
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.wxxtypes.StdDelta
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.engine.StdArchive
Mar 12 20:28:46 weewx[4] INFO weewx.engine: Archive will use data binding 
wx_binding
Mar 12 20:28:46 weewx[4] INFO weewx.engine: Record generation will be attempted 
in 'hardware'
Mar 12 20:28:46 weewx[4] INFO weewx.engine: Using archive interval of 300 
seconds (specified in weewx configuration)
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Use LOOP data in hi/low 
calculations: 1
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.engine.StdArchive
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.restx.StdStationRegistry
Mar 12 20:28:46 weewx[4] INFO weewx.restx: StationRegistry: Registration not 
requested.
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.restx.StdStationRegistry
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.restx.StdWunderground
Mar 12 20:28:46 weewx[4] INFO weewx.restx: Wunderground: Posting not enabled.
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.restx.StdWunderground
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.restx.StdPWSweather
Mar 12 20:28:46 weewx[4] INFO weewx.restx: PWSweather: Posting not enabled.
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.restx.StdPWSweather
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service weewx.restx.StdCWOP
Mar 12 20:28:46 weewx[4] INFO weewx.restx: CWOP: Posting not enabled.
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.restx.StdCWOP
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service weewx.restx.StdWOW
Mar 12 20:28:46 weewx[4] INFO weewx.restx: WOW: Posting not enabled.
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.restx.StdWOW
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.restx.StdAWEKAS
Mar 12 20:28:46 weewx[4] INFO weewx.restx: AWEKAS: Posting not enabled.
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.restx.StdAWEKAS
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service user.mqtt.MQTT
Mar 12 20:28:46 weewx[4] INFO user.mqtt: service version is 0.24
Mar 12 20:28:46 weewx[4] INFO user.mqtt: binding to archive
Mar 12 20:28:46 weewx[4] INFO user.mqtt: data_binding is wx_binding
Mar 12 20:28:46 weewx[4] INFO user.mqtt: topic is weather
Mar 12 20:28:46 weewx[4] INFO user.mqtt: desired unit system is METRIC
Mar 12 20:28:46 weewx[4] INFO user.mqtt: data will be uploaded to 
mqtt://192.168.4.10:1883
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
user.mqtt.MQTT
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.engine.StdPrint
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.engine.StdPrint
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Loading service 
weewx.engine.StdReport
Mar 12 20:28:46 weewx[4] INFO weewx.engine: 'pyephem' not detected, extended 
almanac data is not available
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Finished loading service 
weewx.engine.StdReport
Mar 12 20:28:46 weewx[4] INFO __main__: Starting up weewx version 4.10.2
Mar 12 20:28:46 weewx[4] DEBUG weewx.engine: Station does not support reading 
the time
Mar 12 20:28:46 weewx[4] INFO weewx.engine: Using binding 'wx_binding' to 
database 'weewx.sdb'
Mar 12 20:28:46 weewx[4] INFO weewx.manager: Starting backfill of daily 
summaries
Mar 12 20:28:46 weewx[4] INFO weewx.manager: Daily summaries up to date
Mar 12 20:28:46 weewx[4] INFO weewx.engine: Starting main packet loop.
Mar 12 20:28:46 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:28:46 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275327, 'usUnits': 1}
Mar 12 20:28:46 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275327, 'usUnits': 1}
Mar 12 20:28:46 weewx[4] DEBUG weewx.manager: Daily summary version is 4.0
Mar 12 20:28:51 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:28:51 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:28:51 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:28:51 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:28:51 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:28:51 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275332, 'usUnits': 1}
Mar 12 20:28:51 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275332, 'usUnits': 1}
Mar 12 20:28:52 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:28:52 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:28:52 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275333, 'usUnits': 1}
Mar 12 20:28:52 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275333, 'usUnits': 1}
Mar 12 20:28:53 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:28:53 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:28:53 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275334, 'usUnits': 1}
Mar 12 20:28:53 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275334, 'usUnits': 1}
Mar 12 20:29:03 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:29:13 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:29:23 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:29:33 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:29:33 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:29:33 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:29:33 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:29:33 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:29:33 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275373, 'usUnits': 1}
Mar 12 20:29:33 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275373, 'usUnits': 1}
Mar 12 20:29:43 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:29:53 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:29:56 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:56 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:56 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275397, 'usUnits': 1}
Mar 12 20:29:56 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275397, 'usUnits': 1}
Mar 12 20:29:57 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:57 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:57 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275398, 'usUnits': 1}
Mar 12 20:29:57 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275398, 'usUnits': 1}
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275398, 'usUnits': 1}
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275398, 'usUnits': 1}
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275398, 'usUnits': 1}
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275398, 'usUnits': 1}
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:58 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275399, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275400, 'usUnits': 1}
LOOP:   2024-03-12 20:28:47 UTC (1710275327) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275327', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:28:52 UTC (1710275332) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275332', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:28:53 UTC (1710275333) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275333', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:28:54 UTC (1710275334) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275334', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:33 UTC (1710275373) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275373', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:57 UTC (1710275397) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275397', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:58 UTC (1710275398) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275398', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:58 UTC (1710275398) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275398', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:58 UTC (1710275398) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275398', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:29:59 UTC (1710275399) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275399', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:00 UTC (1710275400) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275400', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:00 UTC (1710275400) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275400', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:00 UTC (1710275400) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275400', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:00 UTC (1710275400) Mar 12 20:29:59 weewx[4] DEBUG 
user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:29:59 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:29:59 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:29:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275400, 'usUnits': 1}
Mar 12 20:30:09 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:30:19 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:30:26 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:30:26 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:30:26 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:30:26 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:30:26 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:30:26 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275427, 'usUnits': 1}
Mar 12 20:30:26 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275427, 'usUnits': 1}
Mar 12 20:30:26 weewx[4] INFO weewx.manager: Added record 2024-03-12 20:30:00 
UTC (1710275400) to database 'weewx.sdb'
Mar 12 20:30:26 weewx[4] INFO weewx.manager: Added record 2024-03-12 20:30:00 
UTC (1710275400) to daily summary in 'weewx.sdb'
Exception ignored in: <function Client.__del__ at 0x75933028>
Traceback (most recent call last):
  File "/opt/venv/lib/python3.11/site-packages/paho/mqtt/client.py", line 874, 
in __del__
    self._reset_sockets()
  File "/opt/venv/lib/python3.11/site-packages/paho/mqtt/client.py", line 1133, 
in _reset_sockets
    self._sock_close()
  File "/opt/venv/lib/python3.11/site-packages/paho/mqtt/client.py", line 1119, 
in _sock_close
    if not self._sock:
           ^^^^^^^^^^
AttributeError: 'Client' object has no attribute '_sock'
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: MQTT: Unexpected exception of type 
<class 'TypeError'>
Mar 12 20:30:27 weewx[4] DEBUG weewx.reportengine: Running reports for latest 
time in the database.
Mar 12 20:30:27 weewx[4] DEBUG weewx.reportengine: Running report 
'SeasonsReport'
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: *** Traceback (most recent call 
last):
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: ***   File 
"/opt/weewx/bin/weewx/restx.py", line 382, in run_loop
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: ***     
self.process_record(_record, dbmanager)
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: ***   File 
"/opt/weewx/bin/user/mqtt.py", line 522, in process_record
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: ***     self.get_mqtt_client()
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: ***   File 
"/opt/weewx/bin/user/mqtt.py", line 444, in get_mqtt_client
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: ***     mc = 
mqtt.Client(client_id=client_id)
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: ***          
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Mar 12 20:30:27 weewx[4] ERROR weewx.restx: *** TypeError: Client.__init__() 
missing 1 required positional argument: 'callback_api_version'
Mar 12 20:30:27 weewx[4] CRITICAL weewx.restx: MQTT: Thread terminating. 
Reason: Client.__init__() missing 1 required positional argument: 
'callback_api_version'
Mar 12 20:30:27 weewx[4] DEBUG weewx.reportengine: Found configuration file 
/home/weewx/skins/Seasons/skin.conf for report 'SeasonsReport'
Exception in thread MQTT:
Traceback (most recent call last):
  File "/usr/lib/python3.11/threading.py", line 1038, in _bootstrap_inner
    self.run()
  File "/opt/weewx/bin/weewx/restx.py", line 355, in run
    self.run_loop(_manager)
  File "/opt/weewx/bin/weewx/restx.py", line 382, in run_loop
    self.process_record(_record, dbmanager)
  File "/opt/weewx/bin/user/mqtt.py", line 522, in process_record
    self.get_mqtt_client()
  File "/opt/weewx/bin/user/mqtt.py", line 444, in get_mqtt_client
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine: Unable to instantiate 
generator 'weewx.cheetahgenerator.CheetahGenerator'
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  No module 
named 'Cheetah'
    mc = mqtt.Client(client_id=client_id)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: Client.__init__() missing 1 required positional argument: 
'callback_api_version'
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  Traceback 
(most recent call last):
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weewx/reportengine.py", line 180, in run
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****      obj = 
weeutil.weeutil.get_object(generator)(
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****            
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weeutil/weeutil.py", line 1335, in get_object
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****      mod = 
__import__(module)
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****            
^^^^^^^^^^^^^^^^^^
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weewx/cheetahgenerator.py", line 69, in <module>
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****      import 
Cheetah.Filters
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  
ModuleNotFoundError: No module named 'Cheetah'
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  Generator 
ignored
Traceback (most recent call last):
  File "/opt/weewx/bin/weewx/reportengine.py", line 180, in run
    obj = weeutil.weeutil.get_object(generator)(
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/weewx/bin/weeutil/weeutil.py", line 1335, in get_object
    mod = __import__(module)
          ^^^^^^^^^^^^^^^^^^
  File "/opt/weewx/bin/weewx/cheetahgenerator.py", line 69, in <module>
    import Cheetah.Filters
ModuleNotFoundError: No module named 'Cheetah'
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine: Unable to instantiate 
generator 'weewx.imagegenerator.ImageGenerator'
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  No module 
named 'Image'
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  Traceback 
(most recent call last):
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weeplot/genplot.py", line 15, in <module>
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****      from PIL 
import Image, ImageDraw
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  
ModuleNotFoundError: No module named 'PIL'
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  During 
handling of the above exception, another exception occurred:
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  Traceback 
(most recent call last):
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weewx/reportengine.py", line 180, in run
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****      obj = 
weeutil.weeutil.get_object(generator)(
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****            
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weeutil/weeutil.py", line 1335, in get_object
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****      mod = 
__import__(module)
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****            
^^^^^^^^^^^^^^^^^^
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weewx/imagegenerator.py", line 19, in <module>
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****      import 
weeplot.genplot
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weeplot/genplot.py", line 17, in <module>
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****      import 
Image, ImageDraw
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  
ModuleNotFoundError: No module named 'Image'
Mar 12 20:30:27 weewx[4] ERROR weewx.reportengine:         ****  Generator 
ignored
Traceback (most recent call last):
  File "/opt/weewx/bin/weeplot/genplot.py", line 15, in <module>
    from PIL import Image, ImageDraw
ModuleNotFoundError: No module named 'PIL'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/weewx/bin/weewx/reportengine.py", line 180, in run
    obj = weeutil.weeutil.get_object(generator)(
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/weewx/bin/weeutil/weeutil.py", line 1335, in get_object
    mod = __import__(module)
          ^^^^^^^^^^^^^^^^^^
  File "/opt/weewx/bin/weewx/imagegenerator.py", line 19, in <module>
    import weeplot.genplot
  File "/opt/weewx/bin/weeplot/genplot.py", line 17, in <module>
    import Image, ImageDraw
ModuleNotFoundError: No module named 'Image'
Mar 12 20:30:27 weewx[4] INFO weewx.reportengine: Copied 5 files to 
/home/weewx/public_html
Mar 12 20:30:27 weewx[4] DEBUG weewx.reportengine: Report 'SmartphoneReport' 
not enabled. Skipping.
Mar 12 20:30:27 weewx[4] DEBUG weewx.reportengine: Report 'MobileReport' not 
enabled. Skipping.
Mar 12 20:30:27 weewx[4] DEBUG weewx.reportengine: Report 'StandardReport' not 
enabled. Skipping.
Mar 12 20:30:27 weewx[4] DEBUG weewx.reportengine: Report 'FTP' not enabled. 
Skipping.
Mar 12 20:30:27 weewx[4] DEBUG weewx.reportengine: Report 'RSYNC' not enabled. 
Skipping.
Mar 12 20:30:32 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:30:32 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:30:32 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275432, 'usUnits': 1}
Mar 12 20:30:32 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275432, 'usUnits': 1}
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275433, 'usUnits': 1}
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275433, 'usUnits': 1}
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275433, 'usUnits': 1}
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275433, 'usUnits': 1}
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275434, 'usUnits': 1}
Mar 12 20:30:33 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275434, 'usUnits': 1}
Mar 12 20:30:35 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:30:35 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:30:35 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275435, 'usUnits': 1}
Mar 12 20:30:35 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275435, 'usUnits': 1}
Mar 12 20:30:45 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:30:50 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:30:50 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:30:50 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:30:50 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:30:50 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:30:50 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275450, 'usUnits': 1}
Mar 12 20:30:50 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275450, 'usUnits': 1}
Mar 12 20:31:00 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:31:10 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:31:13 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:31:13 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:31:13 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:31:13 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:31:13 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:31:13 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275473, 'usUnits': 1}
Mar 12 20:31:13 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275473, 'usUnits': 1}
Mar 12 20:31:23 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:31:33 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:31:40 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:31:40 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:31:40 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:31:40 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:31:40 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:31:40 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275500, 'usUnits': 1}
Mar 12 20:31:40 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275500, 'usUnits': 1}
Mar 12 20:31:50 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:32:00 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:32:03 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:32:03 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:32:03 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:32:03 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:32:03 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:32:03 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275524, 'usUnits': 1}
Mar 12 20:32:03 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275524, 'usUnits': 1}
Mar 12 20:32:13 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:32:23 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:32:33 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:32:43 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:32:53 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:32:59 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:32:59 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:32:59 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:32:59 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:32:59 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:32:59 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275580, 'usUnits': 1}
Mar 12 20:32:59 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275580, 'usUnits': 1}
Mar 12 20:33:09 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:33:19 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:33:23 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:33:23 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:33:23 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:33:23 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:33:23 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:33:23 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275603, 'usUnits': 1}
Mar 12 20:33:23 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275603, 'usUnits': 1}
Mar 12 20:33:33 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:33:43 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:33:49 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:33:49 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:33:49 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:33:49 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:33:49 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:33:49 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275629, 'usUnits': 1}
Mar 12 20:33:49 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275629, 'usUnits': 1}
Mar 12 20:33:59 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:34:09 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:34:12 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:34:12 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:34:12 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:34:12 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:34:12 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:34:12 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275652, 'usUnits': 1}
Mar 12 20:34:12 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275652, 'usUnits': 1}
Mar 12 20:34:22 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:34:32 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:34:42 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:34:43 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:34:43 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:34:43 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:34:43 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:34:43 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:34:43 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275684, 'usUnits': 1}
Mar 12 20:34:43 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275684, 'usUnits': 1}
Mar 12 20:34:53 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:35:03 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:35:13 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:35:23 weewx[4] DEBUG user.interceptor: empty queue
Mar 12 20:35:25 weewx[4] DEBUG user.interceptor: POST: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:35:25 weewx[4] DEBUG user.interceptor: raw data: 
b'mac=E8:DB:84:E4:92:6C&stationtype=EasyWeatherV1.5.2&fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:35:25 weewx[4] INFO user.interceptor: unrecognized parameter 
b'mac=E8:DB:84:E4:92:6C
Mar 12 20:35:25 weewx[4] DEBUG user.interceptor: ignored parameter 
stationtype=EasyWeatherV1.5.2
Mar 12 20:35:25 weewx[4] INFO user.interceptor: unrecognized parameter 
fields=timezone,utc_offset,dst,date_sunrise,date_sunset'
Mar 12 20:35:25 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275725, 'usUnits': 1}
Mar 12 20:35:25 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275725, 'usUnits': 1}
'altimeter': 'None', 'appTemp': 'None', 'barometer': 'None', 'cloudbase': 
'None', 'dateTime': '1710275400', 'dewpoint': 'None', 'ET': 'None', 
'heatindex': 'None', 'humidex': 'None', 'inDewpoint': 'None', 'maxSolarRad': 
'None', 'pressure': 'None', 'rainRate': '0.0', 'usUnits': '1', 'windchill': 
'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:00 UTC (1710275400) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275400', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:00 UTC (1710275400) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275400', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:00 UTC (1710275400) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275400', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:00 UTC (1710275400) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275400', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:00 UTC (1710275400) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275400', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:27 UTC (1710275427) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275427', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
REC:    2024-03-12 20:30:00 UTC (1710275400) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275400', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'interval': '5.0', 'maxSolarRad': 'None', 'pressure': 
'None', 'rainRate': '0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 
'None'
LOOP:   2024-03-12 20:30:32 UTC (1710275432) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275432', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:33 UTC (1710275433) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275433', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:33 UTC (1710275433) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275433', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:34 UTC (1710275434) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275434', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:35 UTC (1710275435) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275435', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:30:50 UTC (1710275450) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275450', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:31:13 UTC (1710275473) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275473', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:31:40 UTC (1710275500) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275500', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:32:04 UTC (1710275524) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275524', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:33:00 UTC (1710275580) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275580', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:33:23 UTC (1710275603) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275603', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:33:49 UTC (1710275629) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275629', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:34:12 UTC (1710275652) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275652', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:34:44 UTC (1710275684) 'altimeter': 'None', 'appTemp': 
'None', 'barometer': 'None', 'cloudbase': 'None', 'dateTime': '1710275684', 
'dewpoint': 'None', 'ET': 'None', 'heatindex': 'None', 'humidex': 'None', 
'inDewpoint': 'None', 'maxSolarRad': 'None', 'pressure': 'None', 'rainRate': 
'0.0', 'usUnits': '1', 'windchill': 'None', 'windrun': 'None'
LOOP:   2024-03-12 20:35:25 UTC (1710275725) Mar 12 20:35:25 weewx[4] INFO 
weewx.manager: Added record 2024-03-12 20:35:00 UTC (1710275700) to database 
'weewx.sdb'
Mar 12 20:35:25 weewx[4] INFO weewx.manager: Added record 2024-03-12 20:35:00 
UTC (1710275700) to daily summary in 'weewx.sdb'
Mar 12 20:35:25 weewx[4] DEBUG weewx.reportengine: Running reports for latest 
time in the database.
Mar 12 20:35:25 weewx[4] DEBUG weewx.reportengine: Running report 
'SeasonsReport'
Mar 12 20:35:25 weewx[4] DEBUG weewx.reportengine: Found configuration file 
/home/weewx/skins/Seasons/skin.conf for report 'SeasonsReport'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine: Unable to instantiate 
generator 'weewx.cheetahgenerator.CheetahGenerator'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  No module 
named 'Cheetah'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  Traceback 
(most recent call last):
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weewx/reportengine.py", line 180, in run
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****      obj = 
weeutil.weeutil.get_object(generator)(
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****            
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weeutil/weeutil.py", line 1335, in get_object
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****      mod = 
__import__(module)
Traceback (most recent call last):
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****            
^^^^^^^^^^^^^^^^^^
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weewx/cheetahgenerator.py", line 69, in <module>
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****      import 
Cheetah.Filters
  File "/opt/weewx/bin/weewx/reportengine.py", line 180, in run
    obj = weeutil.weeutil.get_object(generator)(
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  
ModuleNotFoundError: No module named 'Cheetah'
  File "/opt/weewx/bin/weeutil/weeutil.py", line 1335, in get_object
    mod = __import__(module)
          ^^^^^^^^^^^^^^^^^^
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  Generator 
ignored
  File "/opt/weewx/bin/weewx/cheetahgenerator.py", line 69, in <module>
    import Cheetah.Filters
ModuleNotFoundError: No module named 'Cheetah'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine: Unable to instantiate 
generator 'weewx.imagegenerator.ImageGenerator'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  No module 
named 'Image'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  Traceback 
(most recent call last):
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weeplot/genplot.py", line 15, in <module>
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****      from PIL 
import Image, ImageDraw
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  
ModuleNotFoundError: No module named 'PIL'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  During 
handling of the above exception, another exception occurred:
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  Traceback 
(most recent call last):
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weewx/reportengine.py", line 180, in run
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****      obj = 
weeutil.weeutil.get_object(generator)(
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****            
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weeutil/weeutil.py", line 1335, in get_object
Traceback (most recent call last):
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****      mod = 
__import__(module)
  File "/opt/weewx/bin/weeplot/genplot.py", line 15, in <module>
    from PIL import Image, ImageDraw
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****            
^^^^^^^^^^^^^^^^^^
ModuleNotFoundError: No module named 'PIL'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weewx/imagegenerator.py", line 19, in <module>
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****      import 
weeplot.genplot

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****    File 
"/opt/weewx/bin/weeplot/genplot.py", line 17, in <module>
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****      import 
Image, ImageDraw
  File "/opt/weewx/bin/weewx/reportengine.py", line 180, in run
    obj = weeutil.weeutil.get_object(generator)(
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/weewx/bin/weeutil/weeutil.py", line 1335, in get_object
    mod = __import__(module)
          ^^^^^^^^^^^^^^^^^^
  File "/opt/weewx/bin/weewx/imagegenerator.py", line 19, in <module>
    import weeplot.genplot
  File "/opt/weewx/bin/weeplot/genplot.py", line 17, in <module>
    import Image, ImageDraw
ModuleNotFoundError: No module named 'Image'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  
ModuleNotFoundError: No module named 'Image'
Mar 12 20:35:25 weewx[4] ERROR weewx.reportengine:         ****  Generator 
ignored
Mar 12 20:35:25 weewx[4] INFO weewx.reportengine: Copied 0 files to 
/home/weewx/public_html
Mar 12 20:35:25 weewx[4] DEBUG weewx.reportengine: Report 'SmartphoneReport' 
not enabled. Skipping.
Mar 12 20:35:25 weewx[4] DEBUG weewx.reportengine: Report 'MobileReport' not 
enabled. Skipping.
Mar 12 20:35:25 weewx[4] DEBUG weewx.reportengine: Report 'StandardReport' not 
enabled. Skipping.
Mar 12 20:35:25 weewx[4] DEBUG weewx.reportengine: Report 'FTP' not enabled. 
Skipping.
Mar 12 20:35:25 weewx[4] DEBUG weewx.reportengine: Report 'RSYNC' not enabled. 
Skipping.
Mar 12 20:35:30 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:35:30 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:35:30 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275730, 'usUnits': 1}
Mar 12 20:35:30 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275730, 'usUnits': 1}
Mar 12 20:35:31 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:35:31 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:35:31 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275731, 'usUnits': 1}
Mar 12 20:35:31 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275731, 'usUnits': 1}
Mar 12 20:35:31 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:35:31 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:35:31 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275731, 'usUnits': 1}
Mar 12 20:35:31 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275731, 'usUnits': 1}
Mar 12 20:35:33 weewx[4] DEBUG user.interceptor: GET: 
Mar 12 20:35:33 weewx[4] DEBUG user.interceptor: raw data: 
Mar 12 20:35:33 weewx[4] DEBUG user.interceptor: raw packet: {'dateTime': 
1710275734, 'usUnits': 1}
Mar 12 20:35:33 weewx[4] DEBUG user.interceptor: mapped packet: {'dateTime': 
1710275734, 'usUnits': 1}

Reply via email to