Sensor sometimes detected as Kedsum-TH, sometimes as Conrad-S3318P
Closed this issue · 3 comments
So this is the same sensor:
time : 2024-09-29 11:19:56
model : Conrad-S3318P ID : 117
Channel : 1 Battery : 1 Temperature: 23.17 C Humidity : 43 % Button : 0 Integrity : CRC
Modulation: ASK Freq : 433.9 MHz
RSSI : -0.2 dB SNR : 6.6 dB Noise : -6.8 dB
time : 2024-09-29 11:20:46
model : Kedsum-TH ID : 117
Channel : 1 Battery : 0 Flags2 : 1 Temperature: 23.11 C Humidity : 43 % Integrity : CRC
Modulation: ASK Freq : 433.9 MHz
RSSI : -0.1 dB SNR : 7.4 dB Noise : -7.5 dB
As you see both has CRC integritty but different battery state. What's going on here and how to fix this?
This is btw a cheap no-name china weather station from ebay:
The protocol is almost identical and a small error in reception can lead to identification as either of the protocols. You can disable the ones you don't want to see with -R
https://github.com/merbanan/rtl_433/blob/master/src/devices/s3318p.c
https://github.com/merbanan/rtl_433/blob/master/src/devices/esperanza_ews.c
https://github.com/merbanan/rtl_433/blob/master/src/devices/kedsum.c
$ rtl_433 -C si -M time -M level -f 433900000 -R -57 -R -47
doesn't receive anything from the sensors.
$ rtl_433 -C si -M time -M level -f 433900000 -R -57
receives nothing since some minutes (sensors are sending all 50 + ((--ID) * 3)
seconds (IIRC)).
So I guess the correct one would be $ rtl_433 -C si -M time -M level -f 433900000 -R -47
but I need to change source codes to read the battery state correctly? Cause batteries are new and there is no low bat warning for any of the sensors on the weather station nor the sensors itself. Or am I interpreting something wrong here: B: Battery state 10 = Ok, 01 = weak, 00 = bad
? For me that would be (converted from binary to integer) : 2 = OK, 1 = weak, 0 = bad
but I see this (as shown above) : Battery : 0
Or is this maybe an unknown protocol?
//EDIT: Now I got Battery : 1
on sensor 3 and Battery : 0
on 1 and 2. Still no low battery warning on the station. Also is there any information about the flags?
//EDIT²: And with -R -47
the weather station just got an update rtl_433 missed.
We only have the information shown in the source files. You should be able to choose one of the protocols based on which one shows the correct battery value. With a fresh battery you are looking for Battery: 1
(in JSON the field is named battery_ok
).
If you have a recent version of rtl_433 then you can enable raw bytes output with e.g. -R 47:v
and inspect the flags, maybe use a known bad battery or a variable power supply to gleam what your flags do.