I suspect the parsing problem is caused by update to RTL_433 in August 
2019. See my post of 20 May below.
Rob Series

On Thursday, 21 May 2020 16:08:46 UTC+1, Andrew Mackey wrote:
>
> Gary,
>
> thank you for your post.  It has been helpful.  I have made some progress 
> now.
>
> First I think I might be confused about how to set up my config file as to 
> whether I am using the SDR option or the Acurite Option when configuring my 
> station.  I have come to the conclusion that choosing SDR is correct (I am 
> using an SDR to read the data from my weather station as opposed to having 
> the station directly connected to my Pi).
>
> Using you suggestion and configuring for the Acurite option I was able to 
> get the parser to show the total rain (rain_in) when I ran the sdr.py 
> code.  However, when I ran the weewx in direct mode, it said it could not 
> find the device on USB.  So I went back to choosing the SDR option.  I then 
> went to the SDR class and found where the sensor_map section was and added 
> a line for my rain_in fully qualified name.  Then when I re-ran the sdr.py 
> code I was still getting the rain_in/rain_total values showing in my parsed 
> data and when I reun weewx in direct mode it is working again, although no 
> rain data in the loops or in the records.  So that is some progress at 
> least.
>
> Also, I am still not getting any rain data when I look at my generated web 
> page.
>
>  
>
> On Wednesday, May 20, 2020 at 11:55:38 PM UTC-4, gjr80 wrote:
>>
>> Hi,
>>
>> Not a sdr driver or Acurite user but looking at the sdr driver as far as 
>> I can tell the sdr driver expects Acurite5n1PacketV2 rain data to be in 
>> field rain_mm whereas you appear to have rain_in. You could try adding 
>> the following two highlighted lines to /usr/share/weewx/user/sdr.py: 
>>
>>         if 'wind_dir_deg' in obj:
>>             pkt['wind_dir'] = Packet.get_float(obj, 'wind_dir_deg')
>>         if 'rain_mm' in obj:
>>             pkt['rain_total'] = Packet.get_float(obj, 'rain_mm') / 25.4
>>         if 'rain_in' in obj:
>>             pkt['rain_total'] = Packet.get_float(obj, 'rain_in')
>>         if 'temperature_F' in obj:
>>             pkt['temperature'] = Packet.get_float(obj, 'temperature_F')
>>
>> Save sdr.py then try running sdr.py directly again.
>>
>> Oh, and of course, make sure you keep a back of sdr.py before making any 
>> changes.
>>
>> Gary
>>
>> On Thursday, 21 May 2020 12:54:38 UTC+10, Andrew Mackey wrote:
>>>
>>> After installing the rtl software and the weewx software on my Pi 4 and 
>>> getting everything configured I am getting things to work as expected.  
>>>  Just no rain data.   I was expecting to have this problem because the 
>>> output from running the command sudo PYTHONPATH=/usr/share/weewx python 
>>> /usr/share/weewx/user/sdr.py --cmd="rtl_433 -M utc -F json" is missing the 
>>> rain data in the parsed section.  Notice in the output below that there is 
>>> a value in the 'rain_in' for the out section, but that rain data is not in 
>>> the parsed section.
>>>
>>>
>>> out:[u'{"time" : "2020-05-21 02:27:42", "model" : "Acurite-5n1", 
>>> "subtype" : 49, "id" : 1066, "channel" : "B", "sequence_num" : 0, 
>>> "battery_ok" : 1, "wind_avg_km_h" : 14.245, "wind_dir_deg" : 112.500, 
>>> "rain_in" : 28.500, "mic" : "CHECKSUM"}\n', u'{"time" : "2020-05-21 
>>> 02:27:42", "model" : "Acurite-5n1", "subtype" : 49, "id" : 1066, "channel" 
>>> : "B", "sequence_num" : 1, "battery_ok" : 1, "wind_avg_km_h" : 14.245, 
>>> "wind_dir_deg" : 112.500, "rain_in" : 28.500, "mic" : "CHECKSUM"}\n', 
>>> u'{"time" : "2020-05-21 02:27:42", "model" : "Acurite-5n1", "subtype" : 49, 
>>> "id" : 1066, "channel" : "B", "sequence_num" : 2, "battery_ok" : 1, 
>>> "wind_avg_km_h" : 14.245, "wind_dir_deg" : 112.500, "rain_in" : 28.500, 
>>> "mic" : "CHECKSUM"}\n']
>>>
>>>
>>> parsed: {'wind_speed.042A.Acurite5n1PacketV2': 14.245, 
>>> 'model.042A.Acurite5n1PacketV2': u'Acurite-5n1', 
>>> 'channel.042A.Acurite5n1PacketV2': u'B', 
>>> 'wind_dir.042A.Acurite5n1PacketV2': 112.5, 
>>> 'battery.042A.Acurite5n1PacketV2': 1, 'dateTime': 1590028062, 
>>> 'freq.042A.Acurite5n1PacketV2': None, 'mod.042A.Acurite5n1PacketV2': None, 
>>> 'snr.042A.Acurite5n1PacketV2': None, 
>>> 'sequence_num.042A.Acurite5n1PacketV2': 0, 'noise.042A.Acurite5n1PacketV2': 
>>> None, 'protocol.042A.Acurite5n1PacketV2': None, 
>>> 'rssi.042A.Acurite5n1PacketV2': None, 'msg_type.042A.Acurite5n1PacketV2': 
>>> 49, 'usUnits': 1}
>>>
>>>
>>> I have done a lot of searching on this forum and the web and I 
>>> understand that there have been many changes to the labeling of rain data 
>>> on the Acurite 5n1 system.  Howerver I just can't figure out where in the 
>>> code I can make a change that will accept label that my version of the 
>>> weather station uses for rain.
>>>
>>>
>>> I have done a fair share of programming and I have the help of my son 
>>> who is a computer science graduate.  I feel quite comfortable messing 
>>> around in the code
>>>
>>>
>>> So far the only change in code that I have tried was to change the line 
>>> in sdr.py
>>>
>>>
>>> I am running rtl_433 version 20.02-55-gc1d1f9f branch master at 
>>> 202005162227
>>>
>>>
>>> thanks for your help
>>>
>>

-- 
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/ce60f54e-e64d-4572-933a-fc7ef5cde91a%40googlegroups.com.

Reply via email to