Raspberry jam

99 views
Skip to first unread message

pon...@gmail.com

unread,
Aug 5, 2015, 3:27:49 PM8/5/15
to weewx-user
I've been running weewx on a Raspberry Pi without any problem (actually, very happily indeed) for about a year. I've had some problems in the last day or so while trying to make some changes to a skin. I'm not sure yet that it was the only issue, but I think the cause was a coincidental change I made, which was to power the Pi from my Synology NAS box (a DS413) -- for want, temporarily, of a better way of connecting it to a UPS. I had read both that this would likely not work reliably and indications that in practice it worked. For what it's worth here's some output from syslog after restarting the Pi (and crashing again)

Aug  5 19:05:07 raspberrypi weewx[3571]: engine: Initializing weewx version 3.2.1
Aug  5 19:05:07 raspberrypi weewx[3571]: engine: Using Python 2.7.3 (default, Mar 18 2014, 05:13:23) #012[GCC 4.6.3]
Aug  5 19:05:07 raspberrypi weewx[3571]: engine: Platform Linux-3.18.11+-armv6l-with-debian-7.8
Aug  5 19:05:07 raspberrypi weewx[3571]: engine: pid file is /var/run/weewx.pid
Aug  5 19:05:08 raspberrypi weewx[3575]: engine: Using configuration file /etc/weewx/weewx.conf
Aug  5 19:05:08 raspberrypi weewx[3575]: engine: Loading station type FineOffsetUSB (weewx.drivers.fousb)
Aug  5 19:05:08 raspberrypi weewx[3575]: fousb: driver version is 1.7
Aug  5 19:05:08 raspberrypi weewx[3575]: fousb: polling mode is PERIODIC
Aug  5 19:05:08 raspberrypi weewx[3575]: fousb: polling interval is 53
Aug  5 19:05:08 raspberrypi weewx[3575]: fousb: found station on USB bus=001 device=005
Aug  5 19:05:08 raspberrypi weewx[3575]: engine: StdConvert target unit is 0x1
Aug  5 19:05:08 raspberrypi weewx[3575]: engine: Archive will use data binding wx_binding
Aug  5 19:05:08 raspberrypi weewx[3575]: engine: Record generation will be attempted in 'software'
Aug  5 19:05:08 raspberrypi weewx[3575]: fousb: unstable read: blocks differ for ptr 0x000000
Aug  5 19:05:08 raspberrypi weewx[3575]: fousb: unstable read: blocks differ for ptr 0x000020
Aug  5 19:05:08 raspberrypi weewx[3575]: fousb: unstable read: blocks differ for ptr 0x000040
Aug  5 19:05:08 raspberrypi weewx[3575]: fousb: unstable read: blocks differ for ptr 0x000060
Aug  5 19:05:08 raspberrypi weewx[3575]: fousb: unstable read: blocks differ for ptr 0x000080
Aug  5 19:05:09 raspberrypi weewx[3575]: fousb: unstable read: blocks differ for ptr 0x0000a0
Aug  5 19:05:09 raspberrypi weewx[3575]: fousb: unstable read: blocks differ for ptr 0x0000c0
Aug  5 19:05:09 raspberrypi weewx[3575]: fousb: unstable read: blocks differ for ptr 0x0000e0
Aug  5 19:05:09 raspberrypi weewx[3575]: fousb: unrecognised magic number 0000
Aug  5 19:05:09 raspberrypi weewx[3575]: engine: Caught unrecoverable exception in engine:
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****  unsupported operand type(s) for *: 'NoneType' and 'int'
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****  Traceback (most recent call last):
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****    File "/usr/share/weewx/weewx/engine.py", line 836, in main
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****      engine = EngineClass(config_dict)
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****    File "/usr/share/weewx/weewx/engine.py", line 75, in __init__
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****      self.loadServices(config_dict)
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****    File "/usr/share/weewx/weewx/engine.py", line 136, in loadServices
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****      self.service_obj.append(weeutil.weeutil._get_object(svc)(self, config_dict))
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****    File "/usr/share/weewx/weewx/engine.py", line 484, in __init__
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****      if software_interval != self.engine.console.archive_interval:
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****    File "/usr/share/weewx/weewx/drivers/fousb.py", line 994, in archive_interval
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****      return self._archive_interval_minutes() * 60
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****  TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'
Aug  5 19:05:09 raspberrypi weewx[3575]:     ****  Exiting.

sudo service restart weewx just indicated all was ok even after running through the same sequence. Reverting to mains power and restarting resolved (also to an unmodified skin).

Shared in case it's possible and worthwhile to trap and give an error message. --Paul


mwall

unread,
Aug 5, 2015, 10:32:54 PM8/5/15
to weewx-user
On Wednesday, August 5, 2015 at 3:27:49 PM UTC-4, ponolan wrote:
I've been running weewx on a Raspberry Pi without any problem (actually, very happily indeed) for about a year. I've had some problems in the last day or so while trying to make some changes to a skin. I'm not sure yet that it was the only issue, but I think the cause was a coincidental change I made, which was to power the Pi from my Synology NAS box (a DS413) -- for want, temporarily, of a better way of connecting it to a UPS. I had read both that this would likely not work reliably and indications that in practice it worked. For what it's worth here's some output from syslog after restarting the Pi (and crashing again)


paul,

your fine offset console is in a bogus state.  the 'unrecognized magic number' is the first clue.  try power cycling the console: unplug from usb, remove batteries, wait for 30 seconds, install batteries, plug in usb.  then start weewx.

m
Reply all
Reply to author
Forward
0 new messages