If the 'setup up my sdr / rtl_433' was done in via the [SDR] [[sensor_map]] stanza in weewx.conf then all you were doing was limiting what sensor data is passed onto WeeWX in loop packets; the SDR driver would still have processed all sensor packets provided by rtl_433, but only those that match the sensors defined in the [SDR] [[sensor_map]] are included in loop packets. There is a typo in line 2690 of the SDR driver version you are using, and if it receives any more PrologueTH packets from rtl_433 it will fail and cause WeeWX to exit. I am no rtl_433 expert, but you may be able to configure rtl_433 to ignore the PrologueTH packets and not pass them to SDR and avoid the error that way, but I suspect fixing the typo in sdr.py will be easier.
Gary On Friday, 8 September 2023 at 00:04:03 UTC+10 Elie R wrote: > Update: it was neither of those issues. > My sdr.py was running fine for years the way it was. The issue seems to > be that my sdr must have been picking up that PrologueTHPacket, which isn't > even coming from any of my devices.I was monitoring rtl_433 yesterday, saw > one instance of the PrologueTH scroll by. Today, it's not showing, and > WeeWx is running and reporting just fine once again. > > I've previously set up my sdr / rtl_433 to only parse my own sensor_id > packets. So I'm wondering if mayhaps the PrologueTH just happens to have > the same sensor_id as mine, which caused it to throw a glitch? > > Thanks > > On Wednesday, 6 September 2023 at 16:00:38 UTC-4 gjr80 wrote: > >> Your error is in sdr.py, nothing to do with your hardware or rtl_433. >> Try editing /usr/share/weewx/user/sdr.py, goto line 2690, it should be: >> >> pkt = Packet.add_identifiers(pkt, sensor_id, PrologueTHPacket.name) >> >> change it to read: >> >> pkt = Packet.add_identifiers(pkt, sensor_id, PrologueTHPacket.__name__) >> >> (that is a double underscore before and after name). Save the file and >> restart WeeWX. >> >> Monitor the log and see how that goes. >> >> Gary >> >> On Wednesday, 6 September 2023 at 23:59:13 UTC+10 Elie R wrote: >> >>> Have been happily churning along with no issues on 4.10.2 >>> >>> Using SDR to capture from an Atlas sensor array, and a BME280 for >>> pressure. >>> >>> Just out of the blue, WeeWx stopped reporting a few days ago. Tried >>> rebooting and watching the log output. It starts off ok with the parsing of >>> the BME280 pressure data, but then it suddenly throws the following error >>> and exits: >>> >>> Sep 6 09:19:33 atlas weewx[2139] INFO weewx.engine: Main loop exiting. >>> Shutting engine down. >>> Sep 6 09:19:33 atlas weewx[2139] INFO user.sdr: shutdown process >>> /usr/local/bin/rtl_433 -M utc -F json >>> Sep 6 09:19:45 atlas weewx[2139] INFO user.sdr: timed out waiting for >>> stderr-thread >>> Sep 6 09:19:45 atlas weewx[2139] CRITICAL __main__: Caught >>> unrecoverable exception: >>> Sep 6 09:19:45 atlas weewx[2139] CRITICAL __main__: **** class >>> PrologueTHPacket has no attribute 'name' >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** Traceback >>> (most recent call last): >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** File >>> "/usr/share/weewx/weewxd", line 154, in main >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** >>> engine.run() >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** File >>> "/usr/share/weewx/weewx/engine.py", line 208, in run >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** for >>> packet in self.console.genLoopPackets(): >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** File >>> "/usr/share/weewx/user/sdr.py", line 3155, in genLoopPackets >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** for >>> packet in PacketFactory.create(lines): >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** File >>> "/usr/share/weewx/user/sdr.py", line 3026, in create >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** pkt = >>> PacketFactory.parse_json(lines) >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** File >>> "/usr/share/weewx/user/sdr.py", line 3042, in parse_json >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** >>> return parser.parse_json(obj) >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** File >>> "/usr/share/weewx/user/sdr.py", line 2690, in parse_json >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** pkt = >>> Packet.add_identifiers(pkt, sensor_id, PrologueTHPacket.name) >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** >>> AttributeError: class PrologueTHPacket has no attribute 'name' >>> Sep 6 09:19:46 atlas weewx[2139] CRITICAL __main__: **** Exiting. >>> >>> Any thoughts? I'm thinking my SDR dongle might have decided to give up >>> the ghost? >>> >> -- 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/beb33b24-c4e1-471a-98fb-efe5a50d20b3n%40googlegroups.com.