Yes, seems to be an old problem. 
I wonder how people using a Vaisala WXT520 has made it work without 
crashing. 

The code, in the driver, that I think is an issue, is probably this, 
however I am not a python programmer, so I have no idea how to fix it: 









*    537     @staticmethod    538     def _delta_rain(rain, last_rain):    
539         if last_rain is None:    540             loginf("skipping rain 
measurement of %s: no last rain" % rain)    541             return None    
542         if rain < last_rain:    543             loginf("rain counter 
wraparound detected: new=%s last=%s" %    544                    (rain, 
last_rain))    545             return rain    546         return rain - 
last_rain*

On Wednesday, February 21, 2024 at 4:36:37 PM UTC+1 Tom Keffer wrote:

> Looks like the author of the extension forgot to check whether the value 
> of "rain" could be None. This appears to be a known issue, but hasn't been 
> fixed. See https://github.com/matthewwall/weewx-wxt5x0/issues/8
>
>
>
> On Wed, Feb 21, 2024 at 1:18 AM awe <alfw...@gmail.com> wrote:
>
>> I got the same issue with the wxt5x0 running on a Raspberry with the 
>> latest everything..... 
>>
>> Did you find a fix? 
>>
>>
>>
>> Feb 21 06:31:56 hpii weewxd[427]: DEBUG user.wxt5x0: raw: 30 52 30 2C 44 
>> 6D 3D 30 38 38 44 2C 44 78 3D 31 30 36 44 2C 53 6D 3D 32 2E 31 53 2C 53 78 
>> 3D 32 2E 37 53 2C 54 61 3D 33 35 2E 36 46 2C 55 61 3D 36 38 2E 38 50 2C 50 
>> 61 3D 32 39 2E 33 32 49 2C 52 63 3D 30 52 32 2C 54 61 3D 33 35 2E 36 46 2C 
>> 55 61 3D 36 38 2E 38 50 2C 50 61 3D 32 39 2E 33 32 49 0D 0A
>> Feb 21 06:31:57 hpii weewxd[427]: ERROR user.wxt5x0: parse failed for 
>> b'Rc' (b'0R2'):could not convert string to float: b'0R'
>> Feb 21 06:31:57 hpii weewxd[427]: DEBUG user.wxt5x0: parsed: 
>> {'wind_dir_avg': 88.0, 'wind_dir_max': 106.0, 'wind_speed_avg': 
>> 0.9387840000000001, 'wind_speed_max': 1.207008, 'temperature': 
>> 2.000000000000001, 'humidity': 68.8, 'pressure': 992.889548, 'rain': None}
>> Feb 21 06:31:57 hpii weewxd[427]: INFO weewx.engine: Main loop exiting. 
>> Shutting engine down.
>> Feb 21 06:31:57 hpii weewxd[427]: INFO weewx.engine: Shutting down 
>> StdReport thread
>> Feb 21 06:31:57 hpii weewxd[427]: DEBUG weewx.engine: StdReport thread 
>> has been terminated
>> Feb 21 06:31:57 hpii weewxd[427]: DEBUG user.wxt5x0: close serial port 
>> /dev/ttyAMA0
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__: Caught unrecoverable 
>> exception:
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****  '<' not 
>> supported between instances of 'NoneType' and 'float'
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****  Traceback 
>> (most recent call last):
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****    File 
>> "/usr/share/weewx/weewxd.py", line 166, in main
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****     
>>  engine.run()
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****    File 
>> "/usr/share/weewx/weewx/engine.py", line 204, in run
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****      for 
>> packet in self.console.genLoopPackets():
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****    File 
>> "/etc/weewx/bin/user/wxt5x0.py", line 501, in genLoopPackets
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****      packet 
>> = self._data_to_packet(data)
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****    File 
>> "/etc/weewx/bin/user/wxt5x0.py", line 532, in _data_to_packet
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****     
>>  packet['rain'] = self._delta_rain(
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****    File 
>> "/etc/weewx/bin/user/wxt5x0.py", line 542, in _delta_rain
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****      if 
>> rain < last_rain:
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****  TypeError: 
>> '<' not supported between instances of 'NoneType' and 'float'
>> Feb 21 06:31:57 hpii weewxd[427]: Traceback (most recent call last):
>> Feb 21 06:31:57 hpii weewxd[427]:   File "/usr/share/weewx/weewxd.py", 
>> line 265, in <module>
>> Feb 21 06:31:57 hpii weewxd[427]:     main()
>> Feb 21 06:31:57 hpii weewxd[427]:   File "/usr/share/weewx/weewxd.py", 
>> line 166, in main
>> Feb 21 06:31:57 hpii weewxd[427]: CRITICAL __main__:     ****  Exiting.
>> Feb 21 06:31:57 hpii weewxd[427]:     engine.run()
>> Feb 21 06:31:57 hpii weewxd[427]:   File 
>> "/usr/share/weewx/weewx/engine.py", line 204, in run
>> Feb 21 06:31:57 hpii weewxd[427]:     for packet in 
>> self.console.genLoopPackets():
>> Feb 21 06:31:57 hpii weewxd[427]:   File "/etc/weewx/bin/user/wxt5x0.py", 
>> line 501, in genLoopPackets
>> Feb 21 06:31:57 hpii weewxd[427]:     packet = self._data_to_packet(data)
>> Feb 21 06:31:57 hpii weewxd[427]:   File "/etc/weewx/bin/user/wxt5x0.py", 
>> line 532, in _data_to_packet
>> Feb 21 06:31:57 hpii weewxd[427]:     packet['rain'] = self._delta_rain(
>> Feb 21 06:31:57 hpii weewxd[427]:   File "/etc/weewx/bin/user/wxt5x0.py", 
>> line 542, in _delta_rain
>> Feb 21 06:31:57 hpii weewxd[427]:     if rain < last_rain:
>> Feb 21 06:31:57 hpii weewxd[427]: TypeError: '<' not supported between 
>> instances of 'NoneType' and 'float'
>> Feb 21 06:31:58 hpii systemd[1]: weewx.service: Main process exited, 
>> code=exited, status=1/FAILURE
>> Feb 21 06:31:58 hpii systemd[1]: weewx.service: Failed with result 
>> 'exit-code'.
>> Feb 21 06:31:58 hpii systemd[1]: weewx.service: Consumed 1h 20min 28.253s 
>> CPU time.
>>
>> On Friday, April 2, 2021 at 10:43:02 AM UTC+2 Sven Gloor wrote:
>>
>>>
>>> Hello everybody
>>>
>>> I'm using weewx on a Raspi 3B together with the Vaisala WXT520. The WXT 
>>> is sending automatic messages (ASCII, 0R1: 3s, 0R2: 15s, 0R3: 60s, 0R0: 
>>> 60s).
>>> After starting weewx everthing looks OK but after sometimes houres, 
>>> sometimes days, weewx stop working. In the syslog I can see the following 
>>> entries:
>>> Apr  2 02:55:25 raspberrypi weewx[27403] ERROR user.wxt5x0: parse failed 
>>> for b'Rc' (b'0.00R0'):could not convert string to float: b'0.00R'
>>> Apr  2 02:55:35 raspberrypi weewx[27403] ERROR user.wxt5x0: parse failed 
>>> for b'Sn' (b'0.4N0R0'):could not convert string to float: b'0.4N0R'
>>> Apr  2 02:55:39 raspberrypi weewx[27403] INFO user.wxt5x0: unknown unit 
>>> 'b'D'' for rain
>>> Apr  2 02:55:45 raspberrypi weewx[27403] ERROR user.wxt5x0: parse failed 
>>> for b'Hp' (b'0.00R0'):could not convert string to float: b'0.00R'
>>> Apr  2 02:55:53 raspberrypi weewx[27403] ERROR user.wxt5x0: parse failed 
>>> for b'Hp' (b'0.00R0'):could not convert string to float: b'0.00R'
>>> Apr  2 02:55:55 raspberrypi weewx[27403] ERROR user.wxt5x0: parse failed 
>>> for b'Hp' (b'0.00R0'):could not convert string to float: b'0.00R'
>>> Apr  2 02:56:00 raspberrypi weewx[27403] ERROR user.wxt5x0: parse failed 
>>> for b'Hp' (b'0.00R0'):could not convert string to float: b'0.00R'
>>> Apr  2 02:56:02 raspberrypi weewx[27403] ERROR user.wxt5x0: parse failed 
>>> for b'Hp' (b'0.00R0'):could not convert string to float: b'0.00R'
>>> Apr  2 02:56:09 raspberrypi weewx[27403] ERROR user.wxt5x0: parse failed 
>>> for b'Rc' (b'0.0.9N'):could not convert string to float: b'0.0.9'
>>> Apr  2 02:56:09 raspberrypi weewx[27403] INFO weewx.engine: Main loop 
>>> exiting. Shutting engine down.
>>> Apr  2 02:56:09 raspberrypi weewx[27403] INFO weewx.engine: Shutting 
>>> down StdReport thread
>>> Apr  2 02:56:09 raspberrypi weewx[27403] CRITICAL __main__: Caught 
>>> unrecoverable exception:
>>> Apr  2 02:56:09 raspberrypi weewx[27403] CRITICAL __main__:     ****  
>>> '<' not supported between instances of 'NoneType' and 'float'
>>> Apr  2 02:56:09 raspberrypi weewx[27403] CRITICAL __main__:     ****  
>>> Traceback (most recent call last):
>>> Apr  2 02:56:09 raspberrypi weewx[27403] CRITICAL __main__:     ****    
>>> File "/usr/share/weewx/weewxd", line 157, in main
>>> Apr  2 02:56:09 raspberrypi weewx[27403] CRITICAL __main__:     
>>> ****      engine.run()
>>> Apr  2 02:56:09 raspberrypi weewx[27403] CRITICAL __main__:     ****    
>>> File "/usr/share/weewx/weewx/engine.py", line 208, in run
>>> Apr  2 02:56:09 raspberrypi weewx[27403] CRITICAL __main__:     
>>> ****      for packet in self.console.genLoopPackets():
>>> Apr  2 02:56:09 raspberrypi weewx[27403] CRITICAL __main__:     ****    
>>> File "/usr/share/weewx/user/wxt5x0.py", line 501, in genLoopPackets
>>> Apr  2 02:56:09 raspberrypi weewx[27403] CRITICAL __main__:     
>>> ****      packet = self._data_to_packet(data)
>>> Apr  2 02:56:10 raspberrypi weewx[27403] CRITICAL __main__:     ****    
>>> File "/usr/share/weewx/user/wxt5x0.py", line 533, in _data_to_packet
>>> Apr  2 02:56:10 raspberrypi weewx[27403] CRITICAL __main__:     
>>> ****      packet['rain_total'], self.last_rain_total)
>>> Apr  2 02:56:10 raspberrypi weewx[27403] CRITICAL __main__:     ****    
>>> File "/usr/share/weewx/user/wxt5x0.py", line 542, in _delta_rain
>>> Apr  2 02:56:10 raspberrypi weewx[27403] CRITICAL __main__:     
>>> ****      if rain < last_rain:
>>> Apr  2 02:56:10 raspberrypi weewx[27403] CRITICAL __main__:     ****  
>>> TypeError: '<' not supported between instances of 'NoneType' and 'float'
>>> Apr  2 02:56:10 raspberrypi weewx[27403] CRITICAL __main__:     ****  
>>> Exiting.
>>>
>>> After restarting weewx everthing is working again.
>>> So for me it looks like there are "collisions" between the automatic 
>>> messages and the polled messages.
>>> Can I reconfigure weewx to not poll the WXT and only use the automatic 
>>> messages?
>>>
>>> Kind regards
>>> Sven
>>>
>>> -- 
>> 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/f3120ead-3dac-4491-838d-c24a66bcfd35n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/weewx-user/f3120ead-3dac-4491-838d-c24a66bcfd35n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/weewx-user/7aa6ec0c-7a76-45d8-88aa-162dd26f41e6n%40googlegroups.com.

Reply via email to