As a test I replaced service ComputerMonitor with service alarm (copied
from examples/alarm.py) and got a similar exception.
weewx_cmon.conf
...
[[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 = ""
report_services = weewx.engine.StdPrint, weewx.engine.StdReport,
user.alarm.MyAlarm
I wonder if line 1624 in units.py has something to do with the error
(arbitrarily, pick the US unit system:)
# Is the record None?
if record_dict is None:
# Yes. Signal a value of None and, arbitrarily, pick the US unit
system:
val = None
std_unit_system = weewx.US
else:
# There is a record. Get the value, and the unit system.
val = record_dict[obs_type]
std_unit_system = record_dict['usUnits']
Op dinsdag 21 februari 2023 om 11:48:03 UTC-3 schreef Lucas Heijst:
> The Computer monitor program (cmon.py) doesn't call 'genLoopPackets' which
> yield loop data.
> Once per archive interval 'new_archive_record' is called which in version
> 5.0.0a16 generates an 'Unit system mismatch' error.
>
> Probably the default value is 'US' while cmon.py uses 'METRIC'.
>
> Do I have to solve this in cmon.py (e.g. call 'genLoopPackets' once
> during init)?
>
> Luc
>
--
You received this message because you are subscribed to the Google Groups
"weewx-development" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/weewx-development/d3a9ba87-b9e4-414a-ba9a-bb31855ed730n%40googlegroups.com.
Feb 21 20:26:59 pi36 systemd[1]: Started WeeWX cmon.
Feb 21 20:27:00 pi36 weewx[12049] INFO weewxd: Initializing weewx version
5.0.0a18
Feb 21 20:27:00 pi36 weewx[12049] INFO weewxd: Using Python 3.9.2 (default, Mar
12 2021, 04:06:34) #012[GCC 10.2.1 20210110]
Feb 21 20:27:00 pi36 weewx[12049] INFO weewxd: Located at /usr/bin/python3
Feb 21 20:27:00 pi36 weewx[12049] INFO weewxd: Platform
Linux-5.15.84-v7+-armv7l-with-glibc2.31
Feb 21 20:27:00 pi36 weewx[12049] INFO weewxd: Locale is 'en_GB.UTF-8'
Feb 21 20:27:00 pi36 weewx[12049] INFO weewxd: Using configuration file
/root/weewx-data/weewx_cmon.conf
Feb 21 20:27:00 pi36 weewx[12049] INFO weewxd: Debug is 1
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewxd: Initializing engine
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.engine: Loading station type
ComputerMonitor (user.cmon)
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: driver version is 0.21
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: polling interval is 10
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: sysinfo: Linux pi36
5.15.84-v7+ #1613 SMP Thu Jan 5 11:59:48 GMT 2023 armv7l
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: processor: 3
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: model name: ARMv7
Processor rev 4 (v7l)
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: BogoMIPS: 89.60
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: Features: half thumb
fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: CPU implementer: 0x41
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: CPU architecture: 7
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: CPU variant: 0x0
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: CPU part: 0xd03
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: CPU revision: 4
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: Hardware: BCM2835
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: Revision: a020d3
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: Serial:
00000000aea40eae
Feb 21 20:27:00 pi36 weewx[12049] INFO user.cmon: cpuinfo: Model: Raspberry Pi
3 Model B Plus Rev 1.3
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.engine.StdTimeSynch
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.engine.StdTimeSynch
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.engine.StdConvert
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.engine: StdConvert target unit is
0x1
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.engine.StdConvert
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.engine.StdCalibrate
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.engine.StdCalibrate
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.engine.StdQC
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.engine.StdQC
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.wxservices.StdWXCalculate
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.wxservices: StdWXCalculate will
use data binding wx_binding
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.manager: Daily summary version is
4.0
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.wxservices.StdWXCalculate
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.wxxtypes.StdWXXTypes
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.wxxtypes.StdWXXTypes
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.wxxtypes.StdPressureCooker
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.wxxtypes.StdPressureCooker
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.wxxtypes.StdRainRater
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.wxxtypes.StdRainRater
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.wxxtypes.StdDelta
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.wxxtypes.StdDelta
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.engine.StdArchive
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.engine: Archive will use data
binding wx_binding
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.engine: Record generation will be
attempted in 'hardware'
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.engine: Using archive interval of
300 seconds (specified in weewx configuration)
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Use LOOP data in hi/low
calculations: 1
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.engine.StdArchive
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: No services in service
group restful_services
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.engine.StdPrint
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.engine.StdPrint
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
weewx.engine.StdReport
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.engine: 'pyephem' detected,
extended almanac data is available
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
weewx.engine.StdReport
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Loading service
user.alarm.MyAlarm
Feb 21 20:27:00 pi36 weewx[12049] INFO user.alarm: Alarm set for expression:
'outTemp < 40.0'
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Finished loading service
user.alarm.MyAlarm
Feb 21 20:27:00 pi36 weewx[12049] INFO weewxd: Starting up weewx version
5.0.0a18
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.engine: Station does not support
reading the time
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.engine: Using binding 'wx_binding'
to database 'wx_cmon36'
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.manager: Starting backfill of
daily summaries
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.manager: Daily summaries up to date
Feb 21 20:27:00 pi36 weewx[12049] INFO weewx.engine: Starting main packet loop.
Feb 21 20:27:00 pi36 weewx[12049] DEBUG weewx.wxxtypes: Database error while
initializing rainRate: '(1054, "Unknown column 'rain' in 'field list'")'
Feb 21 20:30:23 pi36 weewx[12049] INFO weewx.engine: Main loop exiting.
Shutting engine down.
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: Caught unrecoverable
exception:
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** Unit system
mismatch 16 v. 1
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** Traceback (most
recent call last):
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 214, in run
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
self.dispatchEvent(weewx.Event(weewx.CHECK_LOOP, packet=packet))
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 245, in
dispatchEvent
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** callback(event)
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 634, in
check_loop
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** raise BreakLoop
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
weewx.engine.BreakLoop
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** During handling of
the above exception, another exception occurred:
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** Traceback (most
recent call last):
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 650, in
post_loop
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
self._catchup(self.engine.console.genArchiveRecords)
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 697, in
_catchup
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** for record in
generator(lastgood_ts):
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/drivers/__init__.py", line 30,
in genArchiveRecords
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** raise
NotImplementedError("Method 'genArchiveRecords' not implemented")
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
NotImplementedError: Method 'genArchiveRecords' not implemented
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** During handling of
the above exception, another exception occurred:
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** Traceback (most
recent call last):
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewxd.py", line 155, in main
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** engine.run()
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 221, in run
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
self.dispatchEvent(weewx.Event(weewx.POST_LOOP))
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 245, in
dispatchEvent
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** callback(event)
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 652, in
post_loop
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
self._software_catchup()
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 715, in
_software_catchup
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
self.engine.dispatchEvent(weewx.Event(weewx.NEW_ARCHIVE_RECORD,
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 245, in
dispatchEvent
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** callback(event)
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/engine.py", line 675, in
new_archive_record
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
dbmanager.addRecord(event.record,
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/manager.py", line 402, in
addRecord
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
self._updateHiLo(accumulator, cursor)
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/manager.py", line 1191, in
_updateHiLo
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
_stats_dict.updateHiLo(accumulator)
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/accum.py", line 451, in
updateHiLo
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: ****
self._check_units(accumulator.unit_system)
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** File
"/root/.local/lib/python3.9/site-packages/weewx/accum.py", line 622, in
_check_units
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** raise
ValueError("Unit system mismatch %d v. %d" % (self.unit_system,
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** ValueError: Unit
system mismatch 16 v. 1
Feb 21 20:30:23 pi36 weewx[12049] CRITICAL weewxd: **** Exiting.
Feb 21 20:30:23 pi36 systemd[1]: weewx_cmon.service: Main process exited,
code=exited, status=1/FAILURE
Feb 21 20:30:23 pi36 systemd[1]: weewx_cmon.service: Failed with result
'exit-code'.
Feb 21 20:30:23 pi36 systemd[1]: weewx_cmon.service: Consumed 1.341s CPU time.