Error in Weewx

271 views
Skip to first unread message

jon...@gmail.com

unread,
May 20, 2024, 2:02:32 PM5/20/24
to weewx-user
Hello,
Since the light has gone out, weewx does not update and gives this error:
(Translated with google translator)
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: Initializing weewxd version 5.0.1
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: Command line: /usr/share/weewx/weewxd.py /etc/weewx/weewx.conf
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: Using Python 3.7.3 (default, Mar 23 2024, 16:12:05) #012[GCC 8.3.0]
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: Located at /usr/bin/python3
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: Platform Linux-5.10.103-v7+-armv7l-with-debian-10.13
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: Locale: 'ca_AD.UTF-8'
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: Entry path: /usr/share/weewx/weewxd.py
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: WEEWX_ROOT: /etc/weewx
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: Configuration file: /etc/weewx/weewx.conf
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: User module: /etc/weewx/bin/user
May 20 19:55:34 raspberrypi weewxd[367]: INFO __main__: Debug: 1
May 20 19:55:34 raspberrypi weewxd[367]: DEBUG __main__: Initializing engine
May 20 19:55:34 raspberrypi weewxd[367]: INFO weewx.engine: Loading station type Vantage (weewx.drivers.vantage)
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Driver version is 3.6.2
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Option loop_request=1
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Opened up serial port /dev/ttyUSB0; baud 19200; timeout 4.00
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Successfully woke up Vantage console
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Hardware type is 16
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: ISS ID is 1
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Hardware name: Vantage Pro2
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.engine.StdTimeSynch
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.engine.StdTimeSynch
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.engine.StdConvert
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.engine: StdConvert target unit is 0x1
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.engine.StdConvert
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.engine.StdCalibrate
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.engine.StdCalibrate
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.engine.StdQC
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.engine.StdQC
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.wxservices.StdWXCalculate
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.wxservices: StdWXCalculate will use data binding wx_binding
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.manager: Daily summary version is 4.0
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.wxservices.StdWXCalculate
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.wxxtypes.StdWXXTypes
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdWXXTypes
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.wxxtypes.StdPressureCooker
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdPressureCooker
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.wxxtypes.StdRainRater
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdRainRater
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.wxxtypes.StdDelta
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.wxxtypes.StdDelta
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.engine.StdArchive
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.engine: Archive will use data binding wx_binding
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.engine: Record generation will be attempted in 'hardware'
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.engine: Using archive interval of 900 seconds (specified by hardware)
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Use LOOP data in hi/low calculations: 1
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.engine.StdArchive
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.restx.StdStationRegistry
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.restx: StationRegistry: Registration not requested.
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.restx.StdStationRegistry
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.restx.StdWunderground
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.restx: Wunderground: Posting not enabled.
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.restx.StdWunderground
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.restx.StdPWSweather
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.restx: PWSweather: Posting not enabled.
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.restx.StdPWSweather
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.restx.StdCWOP
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.restx: CWOP: Posting not enabled.
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.restx.StdCWOP
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.restx.StdWOW
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.restx: WOW: Posting not enabled.
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.restx.StdWOW
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.restx.StdAWEKAS
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.restx: AWEKAS: Posting not enabled.
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.restx.StdAWEKAS
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.engine.StdPrint
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.engine.StdPrint
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Loading service weewx.engine.StdReport
May 20 19:55:35 raspberrypi weewxd[367]: INFO weewx.engine: 'pyephem' detected, extended almanac data is available
May 20 19:55:35 raspberrypi weewxd[367]: DEBUG weewx.engine: Finished loading service weewx.engine.StdReport
May 20 19:55:35 raspberrypi weewxd[367]: INFO __main__: Starting up weewx version 5.0.1
May 20 19:55:36 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Successfully woke up Vantage console
May 20 19:55:36 raspberrypi weewxd[367]: INFO weewx.engine: Clock error is -0.51 seconds (positive is fast)
May 20 19:55:36 raspberrypi weewxd[367]: INFO weewx.engine: Using binding 'wx_binding' to database 'weewx.sdb'
May 20 19:55:36 raspberrypi weewxd[367]: INFO weewx.manager: Starting backfill of daily summaries
May 20 19:55:36 raspberrypi weewxd[367]: INFO weewx.manager: Daily summaries up to date
May 20 19:55:36 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Getting archive packets since 2024-05-20 19:30:00 CEST (1716226200)
May 20 19:55:37 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Successfully woke up Vantage console
May 20 19:55:37 raspberrypi weewxd[367]: DEBUG weewx.drivers.vantage: Retrieving 1 page(s); starting index= 3
May 20 19:55:37 raspberrypi weewxd[367]: INFO weewx.engine: Main loop exiting. Shutting engine down.
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__: Caught unrecoverable exception:
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****  ''
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****  Traceback (most recent call last):
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewxd.py", line 166, in main
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      engine.run()
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 174, in run
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      self.dispatchEvent(weewx.Event(weewx.STARTUP))
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 241, in dispatchEvent
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      callback(event)
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 610, in startup
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      self._catchup(self.engine.console.genStartupRecords)
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 728, in _catchup
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      origin='hardware'))
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/engine.py", line 241, in dispatchEvent
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      callback(event)
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/wxservices.py", line 114, in new_archive_record
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      self.do_calculations(event.record, self.archive_calc_dict)
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/wxservices.py", line 136, in do_calculations
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      val = weewx.xtypes.get_scalar(obs_type, data_dict, self.db_manager)
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/xtypes.py", line 86, in get_scalar
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      return xtype.get_scalar(obs_type, record, db_manager, **option_dict)
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/wxxtypes.py", line 404, in get_scalar
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      return self.pressure(record, dbmanager)
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/wxxtypes.py", line 420, in pressure
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      temp_12h_vt = self._get_temperature_12h(record['dateTime'], dbmanager)
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/wxxtypes.py", line 391, in _get_temperature_12h
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      unit = weewx.units.getStandardUnitType(record['usUnits'], 'outTemp')
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****    File "/usr/share/weewx/weewx/units.py", line 1524, in getStandardUnitType
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****      return StdUnitConverters[target_std_unit_system].getTargetUnit(obs_type, agg_type)
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****  KeyError: ''
May 20 19:55:37 raspberrypi weewxd[367]: CRITICAL __main__:     ****  Exiting.
May 20 19:55:37 raspberrypi weewxd[367]: Traceback (most recent call last):
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewxd.py", line 265, in <module>
May 20 19:55:37 raspberrypi weewxd[367]:     main()
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewxd.py", line 166, in main
May 20 19:55:37 raspberrypi weewxd[367]:     engine.run()
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/engine.py", line 174, in run
May 20 19:55:37 raspberrypi weewxd[367]:     self.dispatchEvent(weewx.Event(weewx.STARTUP))
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/engine.py", line 241, in dispatchEvent
May 20 19:55:37 raspberrypi weewxd[367]:     callback(event)
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/engine.py", line 610, in startup
May 20 19:55:37 raspberrypi weewxd[367]:     self._catchup(self.engine.console.genStartupRecords)
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/engine.py", line 728, in _catchup
May 20 19:55:37 raspberrypi weewxd[367]:     origin='hardware'))
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/engine.py", line 241, in dispatchEvent
May 20 19:55:37 raspberrypi weewxd[367]:     callback(event)
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/wxservices.py", line 114, in new_archive_record
May 20 19:55:37 raspberrypi weewxd[367]:     self.do_calculations(event.record, self.archive_calc_dict)
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/wxservices.py", line 136, in do_calculations
May 20 19:55:37 raspberrypi weewxd[367]:     val = weewx.xtypes.get_scalar(obs_type, data_dict, self.db_manager)
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/xtypes.py", line 86, in get_scalar
May 20 19:55:37 raspberrypi weewxd[367]:     return xtype.get_scalar(obs_type, record, db_manager, **option_dict)
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/wxxtypes.py", line 404, in get_scalar
May 20 19:55:37 raspberrypi weewxd[367]:     return self.pressure(record, dbmanager)
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/wxxtypes.py", line 420, in pressure
May 20 19:55:37 raspberrypi weewxd[367]:     temp_12h_vt = self._get_temperature_12h(record['dateTime'], dbmanager)
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/wxxtypes.py", line 391, in _get_temperature_12h
May 20 19:55:37 raspberrypi weewxd[367]:     unit = weewx.units.getStandardUnitType(record['usUnits'], 'outTemp')
May 20 19:55:37 raspberrypi weewxd[367]:   File "/usr/share/weewx/weewx/units.py", line 1524, in getStandardUnitType
May 20 19:55:37 raspberrypi weewxd[367]:     return StdUnitConverters[target_std_unit_system].getTargetUnit(obs_type, agg_type)
May 20 19:55:37 raspberrypi weewxd[367]: KeyError: ''

Tom Keffer

unread,
May 20, 2024, 6:06:11 PM5/20/24
to weewx...@googlegroups.com
I suspect you have a bad value for the database field "usUnits". 

Use the tool sqlite3 (you may have to install it first) to find any bad values. This assumes that you did not change the unit system used by the database from its default of "US".

sqlite3 /var/lib/weewx/weewx.sdb
sqlite> select datetime(dateTime,'unixepoch','localtime'), usUnits from archive where usUnits != 1;
sqlite> .quit

Let us know what the results are.

-tk

--
You received this message because you are subscribed to the Google Groups "weewx-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email to weewx-user+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/weewx-user/70bb1569-f509-4c53-bfba-cb9e2245be74n%40googlegroups.com.

jon...@gmail.com

unread,
May 21, 2024, 2:51:46 AM5/21/24
to weewx-user
I deleted yesterday's files. I think I was wrong. Now it seems to work, but it doesn't update the seassons skin

May 21 08:30:14 raspberrypi weewxd[389]: DEBUG weewx.drivers.vantage: Getting archive packets since 2024-05-21 08:15:00 CEST (1716272100)
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.drivers.vantage: Successfully woke up Vantage console
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.drivers.vantage: Retrieving 1 page(s); starting index= 4
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.manager: Added record 2024-05-21 08:30:00 CEST (1716273000) to database 'weewx.sdb'
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.manager: Added record 2024-05-21 08:30:00 CEST (1716273000) to daily summary in 'weewx.sdb'
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Running reports for latest time in the database.
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Running report 'SeasonsReport'
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.drivers.vantage: Requesting 200 LOOP packets.
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/Seasons/skin.conf for report 'SeasonsReport'
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Running generators for report 'SeasonsReport' in directory '/etc/weewx/skins/Seasons'
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.cheetahgenerator: Using search list ['user.historygenerator.MyXSearch', 'user.forecast.ForecastVariables', 'weewx.cheetahgenerator.Almanac', 'weewx.cheetahgenerator.Current', 'weewx.cheetahgenerator.DisplayOptions', 'weewx.cheetahgenerator.Extras', 'weewx.cheetahgenerator.Gettext', 'weewx.cheetahgenerator.JSONHelpers', 'weewx.cheetahgenerator.PlotInfo', 'weewx.cheetahgenerator.SkinInfo', 'weewx.cheetahgenerator.Station', 'weewx.cheetahgenerator.Stats', 'weewx.cheetahgenerator.UnitInfo']
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.manager: Daily summary version is 4.0
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.cheetahgenerator: Skipping template NOAA/NOAA-%Y-%m.txt.tmpl: cannot find start time
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.cheetahgenerator: Skipping template NOAA/NOAA-%Y.txt.tmpl: cannot find start time
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.cheetahgenerator: Skipping template index.html.tmpl: cannot find start time
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.cheetahgenerator: Skipping template statistics.html.tmpl: cannot find start time
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.cheetahgenerator: Skipping template telemetry.html.tmpl: cannot find start time
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.cheetahgenerator: Skipping template tabular.html.tmpl: cannot find start time
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.cheetahgenerator: Skipping template celestial.html.tmpl: cannot find start time
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.cheetahgenerator: Skipping template rss.xml.tmpl: cannot find start time
May 21 08:30:15 raspberrypi weewxd[389]: INFO weewx.cheetahgenerator: Generated 0 files for report SeasonsReport in 0.05 seconds
May 21 08:30:15 raspberrypi weewxd[389]: DEBUG weewx.manager: Daily summary version is 4.0
May 21 08:30:16 raspberrypi weewxd[389]: DEBUG weewx.drivers.vantage: Successfully woke up Vantage console
May 21 08:30:19 raspberrypi weewxd[389]: INFO weewx.imagegenerator: Generated 15 images for report SeasonsReport in 3.94 seconds
May 21 08:30:19 raspberrypi weewxd[389]: INFO weewx.reportengine: Copied 0 files to /var/www/html/weewx
May 21 08:30:19 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Report 'SmartphoneReport' not enabled. Skipping.
May 21 08:30:19 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Report 'MobileReport' not enabled. Skipping.
May 21 08:30:19 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Report 'StandardReport' not enabled. Skipping.
May 21 08:30:19 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Running report 'StackedWindRose'
May 21 08:30:19 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Found configuration file /etc/weewx/skins/StackedWindRose/skin.conf for report 'StackedWindRose'
May 21 08:30:19 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Running generators for report 'StackedWindRose' in directory '/etc/weewx/skins/StackedWindRose'
May 21 08:30:19 raspberrypi weewxd[389]: DEBUG weewx.manager: Daily summary version is 4.0
May 21 08:30:20 raspberrypi weewxd[389]: INFO user.stackedwindrose: Generated 4 images for StackedWindRose in 0.62 seconds
May 21 08:30:20 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Report 'FTP' not enabled. Skipping.
May 21 08:30:20 raspberrypi weewxd[389]: DEBUG weewx.reportengine: Report 'RSYNC' not enabled. Skipping.
May 21 08:36:52 raspberrypi weewxd[389]: DEBUG weewx.drivers.vantage: Requesting 200 LOOP packets.
May 21 08:36:53 raspberrypi weewxd[389]: DEBUG weewx.drivers.vantage: Successfully woke up Vantage console
May 21 08:43:30 raspberrypi weewxd[389]: DEBUG weewx.drivers.vantage: Requesting 200 LOOP packets.
May 21 08:43:31 raspberrypi weewxd[389]: DEBUG weewx.drivers.vantage: Successfully woke up Vantage console
El dia dimarts, 21 de maig del 2024 a les 0:06:11 UTC+2, Tom Keffer va escriure:

Tom Keffer

unread,
May 21, 2024, 10:33:59 AM5/21/24
to weewx...@googlegroups.com
The messages that look like, "Skipping template index.html.tmpl: cannot find start time" are saying that there is nothing in the database. Yet, the Vantage put something in the database.

One possibility is that the Vantage is putting data into a different database than what the Seasons report is using. 

Could you please use the tool "weectl debug" to create a sanitized version of your weewx.conf, then post? For example,

weectl debug --output /var/tmp/weewx.debug

then post /var/tmp/weewx.debug.

-tk


jon...@gmail.com

unread,
May 21, 2024, 11:40:33 AM5/21/24
to weewx-user
weewx.debug


System info
  Platform:       Linux-5.10.103-v7+-armv7l-with-debian-10.13
  Python Version: 3.7.3

Load Information
   1 minute load average:  0.30    
   5 minute load average:  0.19    
  15 minute load average:  0.25    

General Weewx info
  Weewx version 5.0.1 detected.

Currently installed extensions
Extension Name    Version   Description
Hfw               0.3.2     WeeWX support for plotting observational data using Highcharts.
StackedWindRose   3.0.1     Stacked windrose image generator for WeeWX.
forecast          3.4.0b11  Generate and display weather and tide forecasts.
mem               1.1       Collect and display process memory usage.
xaggs             0.7       XTypes extension that calculates historical highs and lows for a date, or days above or below a mean value

Archive info
  Database name:        weewx.sdb
  Table name:           archive
  Version               4.0
  Unit system:          1 (US)
  First good timestamp: 1970-01-01 01:00:00 CET (0)
  Last good timestamp:  2024-05-21 17:00:00 CEST (1716303600)
  (no archive records found)
  weewx (weewx.conf) is set to use an archive interval of 900 seconds.
  The station hardware was not interrogated to determine the archive interval.

Supported SQL keys
  dateTime             usUnits              interval            
  barometer            pressure             altimeter          
  inTemp               outTemp              inHumidity          
  outHumidity          windSpeed            windDir            
  windGust             windGustDir          rainRate            
  rain                 dewpoint             windchill          
  heatindex            ET                   radiation          
  UV                   extraTemp1           extraTemp2          
  extraTemp3           soilTemp1            soilTemp2          
  soilTemp3            soilTemp4            leafTemp1          
  leafTemp2            extraHumid1          extraHumid2        
  soilMoist1           soilMoist2           soilMoist3          
  soilMoist4           leafWet1             leafWet2            
  rxCheckPercent       txBatteryStatus      consBatteryVoltage  
  hail                 hailRate             heatingTemp        
  heatingVoltage       supplyVoltage        referenceVoltage    
  windBatteryStatus    rainBatteryStatus    outTempBatteryStatus
  inTempBatteryStatus  appTemp            

Databases configured in weewx.conf:
  archive_sqlite:
     database_name weewx.sdb          
            driver weedb.sqlite        
       SQLITE_ROOT /var/lib/weewx      
  archive_mysql:
     database_name weewx              
            driver weedb.mysql        
              host localhost          
              user weewx              
          password weewx              

--- Start configuration file /etc/weewx/weewx.conf ---
# WEEWX CONFIGURATION FILE
#
# Copyright (c) 2009-2024 Tom Keffer <tke...@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 = 1

# Root directory of the weewx data file hierarchy for this station
WEEWX_ROOT = /etc/weewx

# 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 = 5.0.1
config_path = /etc/weewx/weewx.conf
WEEWX_ROOT_CONFIG = /

##############################################################################

#   This section is for information about the station.

[Station]
   
    # Description of the station location
    location = "Girona, Catalunya"
   
    # Latitude in decimal degrees. Negative for southern hemisphere
    latitude = 41.58
   
    # Longitude in decimal degrees. Negative for western hemisphere.
    longitude = 2.49
   
    # Altitude of the station, with unit it is in. This is downloaded from
    # from the station if the hardware supports it.
    altitude = 80, 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 = Vantage
   
    # 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

##############################################################################

[Vantage]
    # This section is for the Davis Vantage series of weather stations.
    # Connection type: serial or ethernet
    #  serial (the classic VantagePro)
    #  ethernet (the WeatherLinkIP or Serial-Ethernet bridge)
    type = serial
   
    # If the connection type is serial, a port must be specified:
    #   Debian, Ubuntu, Redhat, Fedora, and SuSE:
    #     /dev/ttyUSB0 is a common USB port name
    #     /dev/ttyS0   is a common serial port name
    #   BSD:
    #     /dev/cuaU0   is a common serial port name
    port = /dev/ttyUSB0
   
    # If the connection type is ethernet, an IP Address/hostname is required:
    host = 1.2.3.4
   
    ######################################################
    # The rest of this section rarely needs any attention.
    # You can safely leave it "as is."
    ######################################################
   
    # Serial baud rate (usually 19200)
    baudrate = 19200
   
    # TCP port (when using the WeatherLinkIP)
    tcp_port = 22222
   
    # TCP send delay (when using the WeatherLinkIP):
    tcp_send_delay = 0.5
   
    # The id of your ISS station (usually 1). If you use a wind meter connected
    # to a anemometer transmitter kit, use its id
    iss_id = 1
   
    # How long to wait for a response from the station before giving up (in
    # seconds; must be greater than 2)
    timeout = 4
   
    # How long to wait before trying again (in seconds)
    wait_before_retry = 1.2
   
    # How many times to try before giving up:
    max_tries = 4
   
    # Vantage model Type: 1 = Vantage Pro; 2 = Vantage Pro2
    model_type = 2
   
    # The driver to use:
    driver = weewx.drivers.vantage







##############################################################################

#   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 = XXXXXX
        password = XXXXXX
   
    [[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 = XXXXXX
   
    # 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 = false
        station = XXXXXX
        password = XXXXXX
   
    [[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 = XXXXXX
        password = XXXXXX
   
    [[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 = XXXXXX
        password = XXXXXX
       
        # If you plan on using wunderfixer, set the following
        # to your API key:
        api_key = XXXXXX
       
        # 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

##############################################################################

#   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
    [[StackedWindRose]]
        skin = StackedWindRose
        [[[Units]]]
            [[[[Labels]]]]
                mile_per_hour = mph
                meter_per_second = m/s
                knot = knots
                km_per_hour = km/h
            [[[[Groups]]]]
                group_speed = km_per_hour
        [[[Labels]]]
            compass_points = N, S, E, W
            [[[[Generic]]]]
                windSpeed = Vent
                windGust = Ratxa
        [[[StackedWindRoseImageGenerator]]]
            windrose_plot_border = 5
            windrose_legend_bar_width = 10
            windrose_legend_font_size = 10
            image_background_box_color = 0xFFFFFF
            windrose_plot_font_size = 10
            image_background_circle_color = 0xF5F5F5
            image_width = 382
            image_background_image = None
            image_background_range_ring_color = 0xC3D9DD
            windrose_plot_petal_colors = aqua, 0xFF9900, 0xFF3300, 0x009900, 0x00CC00, 0x33FF33, 0x00FFCC
            image_height = 361
            windrose_label_font_size = 12
            windrose_font_path = /usr/share/fonts/truetype/freefont/FreeSansBold.ttf
            windrose_plot_petal_width = 16
            windrose_label_font_color = 0x000000
            windrose_legend_font_color = 0x000000
            windrose_plot_font_color = 0x000000
            [[[[day_images]]]]
                time_length = 86400
                [[[[[daywindrose]]]]]
                    format = png
                    [[[[[[windSpeed]]]]]]
                        time_stamp_location = bottom, right
                        time_stamp = %H:%M %-d %b %y
                        label = Direccio
                [[[[[daywindrosegust]]]]]
                    format = png
                    [[[[[[windGust]]]]]]
                        time_stamp_location = bottom, left
                        time_stamp = %H:%M %-d %b %y
                        label = Ratxa
            [[[[week_images]]]]
                period = 604800
                [[[[[weekwindrose]]]]]
                    format = png
                    [[[[[[windSpeed]]]]]]
                        time_stamp_location = bottom, right
                        time_stamp = %H:%M %-d %b %y
                        label = Setmanal
            [[[[month_images]]]]
                period = 2592000
                [[[[[monthwindrose]]]]]
                    format = png
                    [[[[[[windSpeed]]]]]]
                        time_stamp_location = bottom, right
                        time_stamp = %H:%M %-d %b %y
                        label = Mes
            [[[[year_images]]]]
                period = 31104000
                [[[[[yearwindrose]]]]]
                    format = png
                    [[[[[[windSpeed]]]]]]
                        time_stamp_location = bottom, right
                        time_stamp = %H:%M %-d %b %y
                        label = Any
                [[[[[yearwindrosegust]]]]]
                    format = png
                    [[[[[[windGust]]]]]]
                        time_stamp_location = bottom, left
                        time_stamp = %H:%M %-d %b %y
                        label = Ratxa
    #    [[forecast]]
    #        skin = forecast
    #        HTML_ROOT = /var/www/html/weewx/forecast
   
   
   
    [[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 = XXXXXX
        password = XXXXXX
        server = XXXXXX    # 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 = XXXXXX
        user = XXXXXX
        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]]
        unit_system = us
       
        [[[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', 'hPa', or 'kPa'
                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
                kPa = %.2f
                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 = Barometre
                dewpoint = Rosada
                ET = ET
                heatindex = Index Calor
                inHumidity = Humitat Interior
                inTemp = Temperatura Interior
                outHumidity = Humitat
                outTemp = Temperatura Exterior
                radiation = Radiacio
                rain = PLuja
                rainRate = Intensitat Pluja
                UV = UV Index
                windDir = Direccio Vent
                windGust = Ratxa Velocitat
                windGustDir = Ratxa Direccio
                windSpeed = Velocitat Vent
                windchill = Sensació Fred
                windgustvec = Vector ratxa
                windvec = Vector Vent
                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 = Nova, Lluna creixent, Quart creixent, Gibosa creixent, Plena, Gibosa minvant, Quart minvant, Lluna minvant

##############################################################################

#   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
        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 = 900
   
    # 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
#    [[forecast_binding]]
#        database = forecast_sqlite
#        manager = weewx.manager.Manager
#        schema = user.forecast.schema
#        table_name = archive

##############################################################################

#   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

#    [[forecast_sqlite]]
#        database_name = forecast.sdb
#        database_type = SQLite

##############################################################################

#   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 = XXXXXX
        # The password for the user name (quotes guard against parsing errors)
        password = XXXXXX

##############################################################################

#   This section configures the internal weewx engine.

[Engine]
   
    # The following section specifies which services should be run and in what order.
    [[Services]]
        prep_services = weewx.engine.StdTimeSynch
        data_services = ,
        process_services = weewx.engine.StdConvert, weewx.engine.StdCalibrate, weewx.engine.StdQC, weewx.wxservices.StdWXCalculate
        xtype_services = weewx.wxxtypes.StdWXXTypes, weewx.wxxtypes.StdPressureCooker, weewx.wxxtypes.StdRainRater, weewx.wxxtypes.StdDelta
        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
        report_services = weewx.engine.StdPrint, weewx.engine.StdReport

El dia dimarts, 21 de maig del 2024 a les 16:33:59 UTC+2, Tom Keffer va escriure:

Tom Keffer

unread,
May 21, 2024, 7:08:32 PM5/21/24
to weewx...@googlegroups.com
The configuration file looks good, but the database has some strange values.

The first timestamp in the database is zero ("0"). This is usually caused by weewxd starting up when there is no real-time clock attached. Start by fixing that. 

You will need to figure out the first "real" timestamp in the database. This should do it:

sqlite3 /var/lib/weewx/weewx.sdb
sqlite> select dateTime, datetime(dateTime,'unixepoch','localtime'), usUnits from archive where dateTime > 100000000 order by dateTime asc limit 1;

This will find the first record with a timestamp greater than 100,000,000 (which is sometime in 1973). This will be your first "real" record. Once you have that timestamp, you can delete all records before it. For example, suppose the timestamp is 1511422900. 

MAKE A BACKUP!

Then you want to do:

sqlite> delete from archive where dateTime < 1511422900;




jon...@gmail.com

unread,
May 22, 2024, 9:08:28 AM5/22/24
to weewx-user
With this database repair the weewx service has been restored. It's just been a day full of inconsistent data.
Thanks

El dia dimecres, 22 de maig del 2024 a les 1:08:32 UTC+2, Tom Keffer va escriure:

Tom Keffer

unread,
May 22, 2024, 9:40:22 AM5/22/24
to weewx...@googlegroups.com
One step I forgot to mention: dropping and rebuilding the daily summaries. 

weectl database drop-daily
weectl database rebuild-daily

But, hey, if it's working for you! 

-tk

Reply all
Reply to author
Forward
0 new messages