I've been running weewx 4.5.1 in a RaspberryPi for the last 2 years.
In the past, I have successfully used DB Browser for SQLite to fix erronous readings created by my system sensor behavior.
In the last 30 days, I edited some erronous wind speed values and now the "sudo bin/wee_database weewx.conf --rebuild-daily" command can't complete without errors.
The error messages suggest that some of my values are text strings rather than floating point numbers.
When I browse the weewx.sdb database with DB Broswer for SQLite, I can't see any difference between data fields with numbers and strings.
How can I detect the difference between text strings and floating point numbers in the database?
Here is the feedback I get:
pi@rpi3b:/home/weewx $ sudo bin/wee_database weewx.conf --rebuild-daily
Using configuration file weewx.conf
Using database binding 'wx_binding', which is bound to database 'archive_sqlite'
All daily summaries will be rebuilt.
Proceed (y/n)? y
Rebuilding daily summaries in database 'weewx.sdb' ...
Traceback (most recent call last):023-06-02 07:45:00 CDT (1685709900)
File "/home/weewx/bin/wee_database", line 1138, in <module>
main()
File "/home/weewx/bin/wee_database", line 236, in main
rebuildDaily(config_dict, db_binding, options)
File "/home/weewx/bin/wee_database", line 345, in rebuildDaily
nrecs, ndays = dbmanager.backfill_day_summary(start_d=from_d,
File "/home/weewx/bin/weewx/manager.py", line 1152, in backfill_day_summary
day_accum.addRecord(rec, weight=weight)
File "/home/weewx/bin/weewx/accum.py", line 436, in addRecord
func(self, record, obs_type, add_hilo, weight)
File "/home/weewx/bin/weewx/accum.py", line 495, in add_value
self[obs_type].addHiLo(val, record['dateTime'])
File "/home/weewx/bin/weewx/accum.py", line 168, in addHiLo
val = to_float(val)
File "/home/weewx/bin/weeutil/weeutil.py", line 1276, in to_float
return float(x) if x is not None else None
ValueError: could not convert string to float: ''