Closed ebnerjoh closed 3 years ago
Hi, please tell us more about your setup. I can say for myself that the driver and weewx runs stable without crashes.
Hi,
I have Weewx 4.1.1 with Python 3 on an RPi 3.
The whole thing is running since 1 week. I have seen this issue yesterday. It happend at the evening. After restart of weewx it was happening again after about 2 hours. I noticed that then today in the morning again and a restart of weewx didnt help.
I restartet the WLL and then Weewx and now it is working again.
The only differnce from yesterday to the other days before was that it was raining yesterday.
Had rain yesterday too, don't think the rain is the problem. But the log says that something is not supported.
Sep 23 20:06:03 weewx weewx[1525] CRITICAL __main__: **** unsupported operand type(s) for *: 'NoneType' and 'float'
But unfortunately I do not know what to do there. did you change anything else in the weewx config? post them here, without coordinates, passwords etc.
I will provide the config in the evening when I am back at home.
HEre is my weewx config:
# WEEWX CONFIGURATION FILE
#
# Copyright (c) 2009-2019 Tom Keffer <tkeffer@gmail.com>
# See the file LICENSE.txt for your rights.
##############################################################################
# This section is for general configuration information.
# Set to 1 for extra debug info, otherwise comment it out or set to zero
debug = 0
# Root directory of the weewx data file hierarchy for this station
WEEWX_ROOT = /
# Whether to log successful operations
log_success = True
# Whether to log unsuccessful operations
log_failure = True
# How long to wait before timing out a socket (FTP, HTTP) connection
socket_timeout = 20
# Do not modify this. It is used when installing and updating weewx.
version = 4.1.1
##############################################################################
# This section is for information about the station.
[Station]
# Description of the station location
location = "Sonnleiten, Metnitz, Austria"
# Latitude in decimal degrees. Negative for southern hemisphere
latitude =
# Longitude in decimal degrees. Negative for western hemisphere.
longitude =
# Altitude of the station, with unit it is in. This is downloaded from
# from the station if the hardware supports it.
altitude = 846, meter
# Set to type of station hardware. There must be a corresponding stanza
# in this file with a 'driver' parameter indicating the driver to be used.
station_type = WeatherLinkLiveUDP
# If you have a website, you may specify an URL
#station_url = http://www.example.com
# The start of the rain year (1=January; 10=October, etc.). This is
# downloaded from the station if the hardware supports it.
rain_year_start = 1
# Start of week (0=Monday, 6=Sunday)
week_start = 0
##############################################################################
#[Simulator]
# This section is for the weewx weather station simulator
# The time (in seconds) between LOOP packets.
# loop_interval = 2.5
# The simulator mode can be either 'simulator' or 'generator'.
# Real-time simulator. Sleep between each LOOP packet.
# mode = simulator
# Generator. Emit LOOP packets as fast as possible (useful for testing).
#mode = generator
# The start time. Format is YYYY-mm-ddTHH:MM. If not specified, the default
# is to use the present time.
#start = 2011-01-01T00:00
# The driver to use:
# driver = weewx.drivers.simulator
##############################################################################
# This section is for uploading data to Internet sites
[StdRESTful]
[[StationRegistry]]
# To register this weather station with weewx, set this to true
register_this_station = false
[[AWEKAS]]
# This section is for configuring posts to AWEKAS.
# If you wish to do this, set the option 'enable' to true,
# and specify a username and password.
# To guard against parsing errors, put the password in quotes.
enable = false
username = replace_me
password = replace_me
[[CWOP]]
# This section is for configuring posts to CWOP.
# If you wish to do this, set the option 'enable' to true,
# and specify the station ID (e.g., CW1234).
enable = false
station = replace_me
# If this is an APRS (radio amateur) station, uncomment
# the following and replace with a passcode (e.g., 12345).
#passcode = replace_me (APRS stations only)
[[PWSweather]]
# This section is for configuring posts to PWSweather.com.
# If you wish to do this, set the option 'enable' to true,
# and specify a station and password.
# To guard against parsing errors, put the password in quotes.
enable = true
station = XYZ
password = XYZ
[[WOW]]
# This section is for configuring posts to WOW.
# If you wish to do this, set the option 'enable' to true,
# and specify a station and password.
# To guard against parsing errors, put the password in quotes.
enable = false
station = replace_me
password = replace_me
[[Wunderground]]
# This section is for configuring posts to the Weather Underground.
# If you wish to do this, set the option 'enable' to true,
# and specify a station (e.g., 'KORHOODR3') and password.
# To guard against parsing errors, put the password in quotes.
enable = false
station = replace_me
password = replace_me
# If you plan on using wunderfixer, set the following
# to your API key:
api_key = replace_me
# Set the following to True to have weewx use the WU "Rapidfire"
# protocol. Not all hardware can support it. See the User's Guide.
rapidfire = False
[[MQTT]]
server_url = mqtt://XYZ
topic = weather/weewx
unit_system = METRIC
binding = archive, loop
#aggregation = aggregate
# [[[inputs]]]
# [[[[dayRain]]]]
# name = dayRain_mm
# units = mm
# [[[[rainRate]]]]
# name = rainRate_mm_per_hour
# units = mm_per_hour
##############################################################################
# This section specifies what reports, using which skins, to generate.
[StdReport]
# Where the skins reside, relative to WEEWX_ROOT
SKIN_ROOT = /etc/weewx/skins
# Where the generated reports should go, relative to WEEWX_ROOT
HTML_ROOT = /var/www/html/weewx
# The database binding indicates which data should be used in reports.
data_binding = wx_binding
# Whether to log a successful operation
log_success = True
# Whether to log an unsuccessful operation
log_failure = True
# Each of the following subsections defines a report that will be run.
# See the customizing guide to change the units, plot types and line
# colors, modify the fonts, display additional sensor data, and other
# customizations. Many of those changes can be made here by overriding
# parameters, or by modifying templates within the skin itself.
[[SeasonsReport]]
# The SeasonsReport uses the 'Seasons' skin, which contains the
# images, templates and plots for the report.
skin = Seasons
enable = true
[[SmartphoneReport]]
# The SmartphoneReport uses the 'Smartphone' skin, and the images and
# files are placed in a dedicated subdirectory.
skin = Smartphone
enable = false
HTML_ROOT = /var/www/html/weewx/smartphone
[[MobileReport]]
# The MobileReport uses the 'Mobile' skin, and the images and files
# are placed in a dedicated subdirectory.
skin = Mobile
enable = false
HTML_ROOT = /var/www/html/weewx/mobile
[[StandardReport]]
# This is the old "Standard" skin. By default, it is not enabled.
skin = Standard
enable = false
[[Belchertown]]
skin = Belchertown
HTML_ROOT = /var/www/html/weewx/belchertown
[[[Extras]]]
belchertown_root_url = https://XYZ
belchertown_locale = de_DE.UTF-8
webpage_autorefresh = 60000
pi_kiosk_bold = true
station_observations = barometer, cloudbase, visibility, dewpoint, outHumidity, rainWithRainRate, UV, radiation
footer_copyright_text = XYZ
site_title = XYZ
manifest_name = XYZ
manifest_short_name = Weather
show_apptemp = 1
show_windrun = 1
show_cloudbase = 1
#radar_html = "http://www.meteox.com/h.aspx?r=&jaar=-3&soort=loop1uur&lightning=1"
forecast_enabled = 1
forecast_provider = aeris
forecast_api_id = XYZ
forecast_api_secret = XYZ
forecast_units = ca
#darksky_secret_key = XYZ
#darksky_units = si
#darksky_lang = de
#forecast_alert_enabled = 0
mqtt_websockets_enabled = 1
#mqtt_websockets_host = mqtt.eclipse.org
mqtt_websockets_host = mqtt.XYZ
mqtt_websockets_port = 443
#mqtt_websockets_port = 9001
mqtt_websockets_ssl = 1
#mqtt_websockets_ssl = 0
mqtt_websockets_topic = weather/weewx/loop
#disconnect_live_visitor = 1800000
show_last_updated_alert = 1
#last_updated_alert_threshold = 1800
belchertown_debug = 0
[[FTP]]
# FTP'ing the results to a webserver is treated as just another report,
# albeit one with an unusual report generator!
skin = Ftp
# If you wish to use FTP, set "enable" to "true", then
# fill out the next four lines.
# Use quotes around passwords to guard against parsing errors.
enable = false
user = replace_me
password = replace_me
server = replace_me # The ftp server name, e.g, www.myserver.org
path = replace_me # The destination directory, e.g., /weather
# Set to True for an FTP over TLS (FTPS) connection. Not all servers
# support this.
secure_ftp = False
# To upload files from something other than what HTML_ROOT is set
# to above, specify a different HTML_ROOT here.
#HTML_ROOT = /var/www/html/weewx
# Most FTP servers use port 21
port = 21
# Set to 1 to use passive mode, zero for active mode
passive = 1
[[RSYNC]]
# rsync'ing to a webserver is treated as just another report
skin = Rsync
# If you wish to use rsync, you must configure passwordless ssh using
# public/private key authentication from the user account that weewx
# runs to the user account on the remote machine where the files
# will be copied.
#
# If you wish to use rsync, set "enable" to "true", then
# fill out server, user, and path.
# The server should appear in your .ssh/config file.
# The user is the username used in the identity file.
# The path is the destination directory, such as /var/www/html/weather.
# Be sure that the user has write permissions on the destination!
enable = false
server = replace_me
user = replace_me
path = replace_me
# To upload files from something other than what HTML_ROOT is set
# to above, specify a different HTML_ROOT here.
#HTML_ROOT = /var/www/html/weewx
# Rsync can be configured to remove files from the remote server if
# they don't exist under HTML_ROOT locally. USE WITH CAUTION: if you
# make a mistake in the remote path, you could could unintentionally
# cause unrelated files to be deleted. Set to 1 to enable remote file
# deletion, zero to allow files to accumulate remotely.
delete = 0
####
# Various options for customizing your reports.
[[Defaults]]
[[[Units]]]
# The following section sets what unit to use for each unit group.
# NB: The unit is always in the singular. I.e., 'mile_per_hour',
# NOT 'miles_per_hour'
[[[[Groups]]]]
group_altitude = meter # Options are 'foot' or 'meter'
group_degree_day = degree_C_day # Options are 'degree_F_day' or 'degree_C_day'
group_distance = km # Options are 'mile' or 'km'
group_pressure = mbar # Options are 'inHg', 'mmHg', 'mbar', or 'hPa'
group_rain = mm # Options are 'inch', 'cm', or 'mm'
group_rainrate = mm_per_hour # Options are 'inch_per_hour', 'cm_per_hour', or 'mm_per_hour'
group_speed = km_per_hour # Options are 'mile_per_hour', 'km_per_hour', 'knot', or 'meter_per_second'
group_speed2 = km_per_hour2 # Options are 'mile_per_hour2', 'km_per_hour2', 'knot2', or 'meter_per_second2'
group_temperature = degree_C # Options are 'degree_F' or 'degree_C'
# The following section sets the formatting for each type of unit.
[[[[StringFormats]]]]
centibar = %.0f
cm = %.2f
cm_per_hour = %.2f
degree_C = %.1f
degree_F = %.1f
degree_compass = %.0f
foot = %.0f
hPa = %.1f
hour = %.1f
inHg = %.3f
inch = %.2f
inch_per_hour = %.2f
km = %.1f
km_per_hour = %.0f
km_per_hour2 = %.1f
knot = %.0f
knot2 = %.1f
mbar = %.1f
meter = %.0f
meter_per_second = %.1f
meter_per_second2 = %.1f
mile = %.1f
mile_per_hour = %.0f
mile_per_hour2 = %.1f
mm = %.1f
mmHg = %.1f
mm_per_hour = %.1f
percent = %.0f
second = %.0f
uv_index = %.1f
volt = %.1f
watt_per_meter_squared = %.0f
NONE = " N/A"
# The following section overrides the label used for each type of unit
[[[[Labels]]]]
meter = " meter", " meters" # You may prefer "metre".
day = " day", " days"
hour = " hour", " hours"
minute = " minute", " minutes"
second = " second", " seconds"
NONE = ""
# The following section sets the format for each time scale.
# The values below will work in every locale, but they may not look
# particularly attractive.
[[[[TimeFormats]]]]
hour = %H:%M
day = %X
week = %X (%A)
month = %x %X
year = %x %X
rainyear = %x %X
current = %x %X
ephem_day = %X
ephem_year = %x %X
[[[[Ordinates]]]]
# Ordinal directions. The last one is for no wind direction
directions = N, NNE, NE, ENE, E, ESE, SE, SSE, S, SSW, SW, WSW, W, WNW, NW, NNW, N/A
# The following section sets the base temperatures used for the
# calculation of heating, cooling, and growing degree-days.
[[[[DegreeDays]]]]
# Base temperature for heating days, with unit:
heating_base = 65, degree_F
# Base temperature for cooling days, with unit:
cooling_base = 65, degree_F
# Base temperature for growing days, with unit:
growing_base = 50, degree_F
# A trend takes a difference across a time period. The following
# section sets the time period, and how big an error is allowed to
# still be counted as the start or end of a period.
[[[[Trend]]]]
time_delta = 10800 # 3 hours
time_grace = 300 # 5 minutes
# The labels to be used for each observation type
[[[Labels]]]
# Set to hemisphere abbreviations suitable for your location:
hemispheres = N, S, E, W
# Formats to be used for latitude whole degrees, longitude whole
# degrees, and minutes:
latlon_formats = %02d, %03d, %05.2f
# Generic labels, keyed by an observation type.
[[[[Generic]]]]
barometer = Barometer
dewpoint = Dew Point
ET = ET
heatindex = Heat Index
inHumidity = Inside Humidity
inTemp = Inside Temperature
outHumidity = Humidity
outTemp = Outside Temperature
radiation = Radiation
rain = Rain
rainRate = Rain Rate
UV = UV Index
windDir = Wind Direction
windGust = Gust Speed
windGustDir = Gust Direction
windSpeed = Wind Speed
windchill = Wind Chill
windgustvec = Gust Vector
windvec = Wind Vector
extraTemp1 = Temperature1
extraTemp2 = Temperature2
extraTemp3 = Temperature3
# Sensor status indicators
rxCheckPercent = Signal Quality
txBatteryStatus = Transmitter Battery
windBatteryStatus = Wind Battery
rainBatteryStatus = Rain Battery
outTempBatteryStatus = Outside Temperature Battery
inTempBatteryStatus = Inside Temperature Battery
consBatteryVoltage = Console Battery
heatingVoltage = Heating Battery
supplyVoltage = Supply Voltage
referenceVoltage = Reference Voltage
[[[Almanac]]]
# The labels to be used for the phases of the moon:
moon_phases = New, Waxing crescent, First quarter, Waxing gibbous, Full, Waning gibbous, Last quarter, Waning crescent
##############################################################################
# This service acts as a filter, converting the unit system coming from
# the hardware to a unit system in the database.
[StdConvert]
# The target_unit affects only the unit system in the database. Once
# chosen it cannot be changed without converting the entire database.
# Modification of target_unit after starting weewx will result in
# corrupt data - the database will contain a mix of US and METRIC data.
#
# The value of target_unit does not affect the unit system for
# reporting - reports can display US, Metric, or any combination of units.
#
# In most cases, target_unit should be left as the default: US
#
# In particular, those migrating from a standard wview installation
# should use US since that is what the wview database contains.
# DO NOT MODIFY THIS VALUE UNLESS YOU KNOW WHAT YOU ARE DOING!
target_unit = US # Options are 'US', 'METRICWX', or 'METRIC'
##############################################################################
# This section can adjust data using calibration expressions.
[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
##############################################################################
# This section is for quality control checks. If units are not specified,
# values must be in the units defined in the StdConvert section.
[StdQC]
[[MinMax]]
barometer = 26, 32.5, inHg
pressure = 24, 34.5, inHg
outTemp = -40, 120, degree_F
inTemp = 10, 120, degree_F
outHumidity = 0, 100
inHumidity = 0, 100
windSpeed = 0, 120, mile_per_hour
rain = 0, 10, inch
##############################################################################
# This section controls the origin of derived values.
[StdWXCalculate]
[[Calculations]]
# How to calculate derived quantities. Possible values are:
# hardware - use the value provided by hardware
# software - use the value calculated by weewx
# prefer_hardware - use value provide by hardware if available,
# otherwise use value calculated by weewx
pressure = prefer_hardware
altimeter = prefer_hardware
appTemp = prefer_hardware
barometer = prefer_hardware
beaufort = prefer_hardware
cloudbase = prefer_hardware
dewpoint = prefer_hardware
ET = prefer_hardware
heatindex = prefer_hardware
humidex = prefer_hardware
inDewpoint = prefer_hardware
maxSolarRad = prefer_hardware
rainRate = prefer_hardware
windchill = prefer_hardware
windrun = prefer_hardware
##############################################################################
# For hardware that supports it, this section controls how often the
# onboard clock gets updated.
[StdTimeSynch]
# How often to check the weather station clock for drift (in seconds)
clock_check = 14400
# How much it can drift before we will correct it (in seconds)
max_drift = 5
##############################################################################
# This section is for configuring the archive service.
[StdArchive]
# If the station hardware supports data logging then the archive interval
# will be downloaded from the station. Otherwise, specify it (in seconds).
archive_interval = 300
# If possible, new archive records are downloaded from the station
# hardware. If the hardware does not support this, then new archive
# records will be generated in software.
# Set the following to "software" to force software record generation.
record_generation = hardware
# Whether to include LOOP data in hi/low statistics
loop_hilo = True
# The data binding used to save archive records
data_binding = wx_binding
##############################################################################
# This section binds a data store to a database.
[DataBindings]
[[wx_binding]]
# The database must match one of the sections in [Databases].
# This is likely to be the only option you would want to change.
database = archive_sqlite
# The name of the table within the database
table_name = archive
# The manager handles aggregation of data for historical summaries
manager = weewx.manager.DaySummaryManager
# The schema defines the structure of the database.
# It is *only* used when the database is created.
schema = schemas.wview_extended.schema
#schema = user.extensions.schema_extended
##############################################################################
# This section defines various databases.
[Databases]
# A SQLite database is simply a single file
[[archive_sqlite]]
database_name = weewx.sdb
database_type = SQLite
# MySQL
[[archive_mysql]]
database_name = weewx
database_type = MySQL
##############################################################################
# This section defines defaults for the different types of databases.
[DatabaseTypes]
# Defaults for SQLite databases
[[SQLite]]
driver = weedb.sqlite
# Directory in which the database files are located
SQLITE_ROOT = /var/lib/weewx
# Defaults for MySQL databases
[[MySQL]]
driver = weedb.mysql
# The host where the database is located
host = localhost
# The user name for logging in to the host
user = weewx
# The password for the user name (quotes guard against parsing errors)
password = weewx
##############################################################################
# This section configures the internal weewx engine.
[Engine]
[[Services]]
# This section specifies the services that should be run. They are
# grouped by type, and the order of services within each group
# determines the order in which the services will be run.
prep_services = weewx.engine.StdTimeSynch
data_services = ,
process_services = weewx.engine.StdConvert, weewx.engine.StdCalibrate, weewx.engine.StdQC, weewx.wxservices.StdWXCalculate
archive_services = weewx.engine.StdArchive
restful_services = weewx.restx.StdStationRegistry, weewx.restx.StdWunderground, weewx.restx.StdPWSweather, weewx.restx.StdCWOP, weewx.restx.StdWOW, weewx.restx.StdAWEKAS, user.mqtt.MQTT
report_services = weewx.engine.StdPrint, weewx.engine.StdReport
##############################################################################
# Options for extension 'WeatherLinkLiveUDP'
[WeatherLinkLiveUDP]
wll_ip = 192.168.1.223
poll_interval = 30
driver = user.weatherlinkliveudp
Looks good so far. But I think you will get further support in the weewx google support group. It is probably not the plugin.
I have done a clean and new installation. It is happening again. I opened a Thread in the Groups.
Ok @c0by85 , already a Feedback:
_It looks like the extension author forgot to check 'rain_ratelast' for None values. Try filing an issues report with him/her.
Hi, No it is a problem with the driver missing UDP data. Why it is missing UDP data is strange. I have to make a check for that.
Hi,
Maybe this is helping. I had a crash Sept 23, on UDP timeout.
Sep 23 21:46:48 weewx weewx[965] INFO weewx.restx: Wunderground-RF: Published record 2020-09-23 21:46:47 CEST (1600890407) Sep 23 21:46:50 weewx weewx[965] INFO weewx.restx: MQTT: Published record 2020-09-23 21:46:49 CEST (1600890409) Sep 23 21:46:50 weewx weewx[965] INFO weewx.restx: Wunderground-RF: Published record 2020-09-23 21:46:49 CEST (1600890409) Sep 23 21:46:55 weewx weewx[965] ERROR user.weatherlinkliveudp: UDP Socket Time Out Sep 23 21:46:58 weewx weewx[965] WARNING urllib3.connectionpool: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f5bee0eb520>, 'Connection to 192.168.2.33 timed out. (connect timeout=3)')': /v1/real_time?duration=3600 Sep 23 21:47:01 weewx CRON[1482892]: (maarten) CMD (sh /home/maarten/ownapps/webcam/webcam.sh) Sep 23 21:47:01 weewx CRON[1482891]: (maarten) CMD (touch /home/maarten/weerstation/keepalive.txt) Sep 23 21:47:01 weewx CRON[1482893]: (maarten) CMD (/usr/bin/php^I/home/maarten/ownapps/getdata/getdata.php) Sep 23 21:47:03 weewx weewx[965] WARNING urllib3.connectionpool: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f5bee0eba60>, 'Connection to 192.168.2.33 timed out. (connect timeout=3)')': /v1/real_time?duration=3600 Sep 23 21:47:10 weewx weewx[965] WARNING urllib3.connectionpool: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f5c0c30e3d0>, 'Connection to 192.168.2.33 timed out. (connect timeout=3)')': /v1/real_time?duration=3600 Sep 23 21:47:13 weewx weewx[965] ERROR user.weatherlinkliveudp: {'message': ConnectTimeout(MaxRetryError("HTTPConnectionPool(host='192.168.2.33', port=80): Max retries exceeded with url: /v1/real_time?duration=3600 (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f5bedc7d580>, 'Connection to 192.168.2.33 timed out. (connect timeout=3)'))"))} Sep 23 21:47:13 weewx weewx[965] ERROR user.weatherlinkliveudp: Unable to connect to Weather Link Live Sep 23 21:47:16 weewx weewx[965] WARNING urllib3.connectionpool: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f5c0fd9fb50>, 'Connection to 192.168.2.33 timed out. (connect timeout=3)')': /v1/current_conditions Sep 23 21:47:21 weewx weewx[965] WARNING urllib3.connectionpool: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f5bedc7d8b0>, 'Connection to 192.168.2.33 timed out. (connect timeout=3)')': /v1/current_conditions Sep 23 21:47:28 weewx weewx[965] WARNING urllib3.connectionpool: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x7f5bee2b57c0>, 'Connection to 192.168.2.33 timed out. (connect timeout=3)')': /v1/current_conditions Sep 23 21:47:28 weewx weewx[965] INFO weewx.engine: Main loop exiting. Shutting engine down. Sep 23 21:47:28 weewx weewx[965] INFO weewx.engine: Shutting down StdReport thread Sep 23 21:47:48 weewx weewx[965] ERROR weewx.engine: Unable to shut down StdReport thread Sep 23 21:47:48 weewx weewx[965] CRITICAL main: Caught unrecoverable exception: Sep 23 21:47:48 weewx weewx[965] CRITICAL main: unsupported operand type(s) for *: 'NoneType' and 'float' Sep 23 21:47:48 weewx weewx[965] CRITICAL main: Traceback (most recent call last): Sep 23 21:47:48 weewx weewx[965] CRITICAL main: File "/usr/share/weewx/weewxd", line 154, in main Sep 23 21:47:48 weewx weewx[965] CRITICAL main: engine.run() Sep 23 21:47:48 weewx weewx[965] CRITICAL main: File "/usr/share/weewx/weewx/engine.py", line 188, in run Sep 23 21:47:48 weewx weewx[965] CRITICAL main: for packet in self.console.genLoopPackets(): Sep 23 21:47:48 weewx weewx[965] CRITICAL main: File "/usr/share/weewx/user/weatherlinkliveudp.py", line 440, in genLoopPackets Sep 23 21:47:48 weewx weewx[965] CRITICAL main: packet = self.station.decode_data_wll(current_conditions['data']) Sep 23 21:47:48 weewx weewx[965] CRITICAL main: File "/usr/share/weewx/user/weatherlinkliveudp.py", line 239, in decode_data_wll Sep 23 21:47:48 weewx weewx[965] CRITICAL main: *** packet['rainRate'] = iss_udp_data['rain_rate_last'] self.rainbarrel.bucketsize Sep 23 21:47:48 weewx weewx[965] CRITICAL main: TypeError: unsupported operand type(s) for *: 'NoneType' and 'float' Sep 23 21:47:48 weewx weewx[965] CRITICAL main: **** Exiting. Sep 23 21:47:48 weewx systemd[1]: Starting Process error reports when automatic reporting is enabled... Sep 23 21:47:50 weewx whoopsie[843]: [21:47:50] Parsing /var/crash/_usr_share_weewx_weewxd.0.crash. Sep 23 21:47:50 weewx whoopsie-upload-all[1482915]: Collecting info for /var/crash/_usr_share_weewx_weewxd.0.crash... Sep 23 21:47:50 weewx whoopsie-upload-all[1482915]: Marking /var/crash/_usr_share_weewx_weewxd.0.crash for whoopsie upload Sep 23 21:47:50 weewx whoopsie-upload-all[1482915]: All reports processed Sep 23 21:47:50 weewx whoopsie[843]: [21:47:50] Uploading /var/crash/_usr_share_weewx_weewxd.0.crash. Sep 23 21:47:50 weewx systemd[1]: apport-autoreport.service: Succeeded. Sep 23 21:47:50 weewx systemd[1]: Finished Process error reports when automatic reporting is enabled. Sep 23 21:47:57 weewx whoopsie[843]: [21:47:57] Sent; server replied with: No error Sep 23 21:47:57 weewx whoopsie[843]: [21:47:57] Response code: 200 Sep 23 21:47:57 weewx whoopsie[843]: [21:47:57] Reported OOPS ID ac05e526-fdd5-11ea-bc11-fa163e983629 Sep 23 21:47:57 weewx systemd[1]: Starting Process error reports when automatic reporting is enabled... Sep 23 21:47:57 weewx whoopsie-upload-all[1483256]: /var/crash/_usr_share_weewx_weewxd.0.crash already marked for upload, skipping Sep 23 21:47:57 weewx whoopsie-upload-all[1483256]: All reports processed Sep 23 21:47:57 weewx systemd[1]: apport-autoreport.service: Succeeded. Sep 23 21:47:57 weewx systemd[1]: Finished Process error reports when automatic reporting is enabled. Sep 23 21:48:01 weewx CRON[1483278]: (maarten) CMD (sh /home/maarten/ownapps/webcam/webcam.sh) Sep 23 21:48:01 weewx CRON[1483277]: (maarten) CMD (touch /home/maarten/weerstation/keepalive.txt) Sep 23 21:48:01 weewx CRON[1483279]: (maarten) CMD (/usr/bin/php^I/home/maarten/ownapps/getdata/getdata.php)
Van: grebleem notifications@github.com Verzonden: 25 September 2020 16:55 Aan: grebleem/weewx-weatherlinkliveudp weewx-weatherlinkliveudp@noreply.github.com CC: Subscribed subscribed@noreply.github.com Onderwerp: Re: [grebleem/weewx-weatherlinkliveudp] Weewx crashing (#15)
Hi, No it is a problem with the driver missing UDP data. Why it is missing UDP data is strange. I have to make a check for that.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/grebleem/weewx-weatherlinkliveudp/issues/15#issuecomment-698976882, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AASOZTFC3AA2YEF2BTMFVODSHSVM5ANCNFSM4RXMQKCQ.
Any ideas what is the best way to check for that error and do a restart of weewx until a bug fix is available?
This should not happen, I am working on a fix in the driver. Somehow if there is no UDP data, or some is missing the calculations are running in an error. The problem with these bug is, that they are hard to reproduce and I never encountered this.
Btw, is your wll connected to the network via wifi or cable?
On 25 Sep 2020, at 17:02, ebnerjoh notifications@github.com wrote:
Any ideas what is the best way to check for that error and do a restart of weewx until a bug fix is available?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/grebleem/weewx-weatherlinkliveudp/issues/15#issuecomment-698981095, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZOS6L7WT7LMFW2WKPKWWDSHSWJ7ANCNFSM4RXMQKCQ.
Mhh, good idea, it is Wifi, but I can use LAN. I will give it a try
@grebleem at least I can reproduce it now.
While connecting it to LAN I disconnected the WLL from Power and Weewx immediatly crashed
Hi,
That should not happen. It should give a Time-Out error.
On 25 Sep 2020, at 17:23, ebnerjoh notifications@github.com wrote:
@grebleem https://github.com/grebleem at least I can reproduce it now.
While connecting it to LAN I disconnected the WLL from Power and Weewx immediatly crashed
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/grebleem/weewx-weatherlinkliveudp/issues/15#issuecomment-698992455, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZOS6IB2KRA5PXZGKIVMGDSHSYYFANCNFSM4RXMQKCQ.
Hi, can you try to run this new branch:
https://github.com/grebleem/weewx-weatherlinkliveudp/tree/bugfix_september20
You want me to test then with WLAN again?
It should work both, but try the initial setup first.
On 25 Sep 2020, at 18:23, ebnerjoh notifications@github.com wrote:
You want me to test then with WLAN again?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/grebleem/weewx-weatherlinkliveudp/issues/15#issuecomment-699023917, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABZOS6L3NRQTM2LGQO3FVNTSHS7XXANCNFSM4RXMQKCQ.
I have already updated, but because I am two days not at home I will keep it now on LAN.
I will revert back to WLAN on Sunday evening.
Hi, I have reverted back to WLAN 72 hours ago. So far it is still running. I will monitor it another couple of days.
Still working without outage on WLAN.
That is good news! Thank you for the update.
Its running now more then a week without issues. I have the feeling that you fixed it :-)
Thank you. It looks good here as well. I made a few more tweaks, if all goes well I will release this version later this week.
Thanks, no issues anymore.
Hi, every 24 to 48 hours my weewx is crashing with the following error messages: