RFD-FHEM / RFFHEM

Counterpart of SIGNALDuino, it's the code for FHEM to work with the data received from the uC
GNU General Public License v3.0
44 stars 33 forks source link

ecowitt WH51 Auswertung mehrerer Bodenfeuchtesensoren #1163

Open Antannah opened 1 year ago

Antannah commented 1 year ago

Hallo, mehrere Sensoren des Typs werden in FHEM nicht verarbeitet. Ich habe zwei WH51 Bodenfeuchtesensoren gekauft und den Signalduino aus einem WemosD1mini (ESP8266) und einem cc1101 mit 868MHz aufgebaut. Dort habe ich das binary 3.5.0 geflashed und im FHEM die aktuellen 3.5.4er updates (1.4.2023) aufgespielt. Signalduino geht prinzipiell auch, die Botschaften werden empfangen und dekodiert. Es wird allerdings nur ein Sensor (SD_WS) ausgewertet. Sensor S1 hat die ID 0D32C1 (Aufkleber auf dem Sensor) heißt im FHEM se_bodenfeuchteC1 Sensor S2 hat die ID 0D2F91 heißt im FHEM se_bodenfeuchte91 Der SignalDuino in FHEM heißt sduinoESP, dort habe ich "rfmode Fine_Offset_WH51_868" und "longids 1" eingestellt.

Die Readings von S2 tragen das heutige Datum und scheinen damit ab und zu aktualisiert zu werden. Die Readings von S1 tragen als letztes Datum den Moment, als ich S21 hinzugefügt habe und werden folglich nicht aktualisiert.

Hier das LOG:

2023.04.02 10:59:56 4: sduinoESP: KeepAlive, ok, retry = 0
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, Error! id 117 msg=510D32C1107F00F837FFFFFFEEFA, message is to short
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116.1 WH57 msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^57)
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116 WH57 msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^57)
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, Error! id 115 msg=510D32C1107F00F837FFFFFFEEFA, message is to short
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, Error! id 112 msg=510D32C1107F00F837FFFFFFEEFA, message is to long
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, Error! id 109 msg=510D32C1107F00F837FFFFFFEEFA, message is to long
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, Error! id 108 msg=510D32C1107F00F837FFFFFFEEFA, message is to short
2023.04.02 10:59:46 4: sduinoESP: Dispatch, W107#510D32C1107F00F837FFFFFFEEFA, Dropped due to short time or equal msg
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107.1 -> WH51 868.35 MHz with match (?^:^51)
2023.04.02 10:59:46 3: sduinoESP: se_bodenfeuchte91 ERROR - Hum diff too large (old 54, new 0, diff 54.0)
2023.04.02 10:59:46 4: sduinoESP: using longid for 1 device SD_WS_107_H_0D32C1
2023.04.02 10:59:46 4: sduinoESP: SD_WS_Parse decoded protocol-id 107 (WH51, DP100, MISOL/1), sensor-id 0D32C1
2023.04.02 10:59:46 4: sduinoESP: SD_WS_Parse protocol 107, rawData 510D32C1107F00F837FFFFFFEEFA
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107 -> WH51 433.92 MHz with match (?^:^51)
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, 2-FSK Protocol id 103 Lacrosse mode 2 msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^9)
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, GFSK Protocol id 102 KoppFreeControl msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^0)
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, Error! method ConvPCA301, checksumCalc:8D1E != checksum:FFFF
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 101 -> PCA 301
2023.04.02 10:59:46 4: sduinoESP: Parse_MN, 2-FSK Protocol id 100 Lacrosse mode 1 msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^9)
2023.04.02 10:59:46 4: sduinoESP: Read, msg: MN;D=510D32C1107F00F837FFFFFFEEFA;R=88;
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, Error! id 117 msg=510D2F91107F00F83DFFFFFFC09F, message is to short
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116.1 WH57 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^57)
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116 WH57 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^57)
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, Error! id 115 msg=510D2F91107F00F83DFFFFFFC09F, message is to short
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, Error! id 112 msg=510D2F91107F00F83DFFFFFFC09F, message is to long
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, Error! id 109 msg=510D2F91107F00F83DFFFFFFC09F, message is to long
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, Error! id 108 msg=510D2F91107F00F83DFFFFFFC09F, message is to short
2023.04.02 10:59:07 4: sduinoESP: Dispatch, W107#510D2F91107F00F83DFFFFFFC09F, Dropped due to short time or equal msg
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107.1 -> WH51 868.35 MHz with match (?^:^51)
2023.04.02 10:59:07 3: sduinoESP: se_bodenfeuchte91 ERROR - Hum diff too large (old 54, new 0, diff 54.0)
2023.04.02 10:59:07 4: sduinoESP: using longid for 1 device SD_WS_107_H_0D2F91
2023.04.02 10:59:07 4: sduinoESP: SD_WS_Parse decoded protocol-id 107 (WH51, DP100, MISOL/1), sensor-id 0D2F91
2023.04.02 10:59:07 4: sduinoESP: SD_WS_Parse protocol 107, rawData 510D2F91107F00F83DFFFFFFC09F
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107 -> WH51 433.92 MHz with match (?^:^51)
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, 2-FSK Protocol id 103 Lacrosse mode 2 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^9)
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, GFSK Protocol id 102 KoppFreeControl msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^0)
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, Error! method ConvPCA301, checksumCalc:B455 != checksum:FFFF
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 101 -> PCA 301
2023.04.02 10:59:07 4: sduinoESP: Parse_MN, 2-FSK Protocol id 100 Lacrosse mode 1 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^9)
2023.04.02 10:59:07 4: sduinoESP: Read, msg: MN;D=510D2F91107F00F83DFFFFFFC09F;R=80;
2023.04.02 10:58:56 4: sduinoESP: KeepAlive, ok, retry = 0
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, Error! id 117 msg=510D32C1107F00F838FFFFFF606D, message is to short
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116.1 WH57 msg 510D32C1107F00F838FFFFFF606D not match (?^:^57)
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116 WH57 msg 510D32C1107F00F838FFFFFF606D not match (?^:^57)
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, Error! id 115 msg=510D32C1107F00F838FFFFFF606D, message is to short
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, Error! id 112 msg=510D32C1107F00F838FFFFFF606D, message is to long
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, Error! id 109 msg=510D32C1107F00F838FFFFFF606D, message is to long
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, Error! id 108 msg=510D32C1107F00F838FFFFFF606D, message is to short
2023.04.02 10:58:36 4: sduinoESP: Dispatch, W107#510D32C1107F00F838FFFFFF606D, Dropped due to short time or equal msg
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107.1 -> WH51 868.35 MHz with match (?^:^51)
2023.04.02 10:58:36 3: sduinoESP: se_bodenfeuchte91 ERROR - Hum diff too large (old 54, new 0, diff 54.0)
2023.04.02 10:58:36 4: sduinoESP: using longid for 1 device SD_WS_107_H_0D32C1
2023.04.02 10:58:36 4: sduinoESP: SD_WS_Parse decoded protocol-id 107 (WH51, DP100, MISOL/1), sensor-id 0D32C1
2023.04.02 10:58:36 4: sduinoESP: SD_WS_Parse protocol 107, rawData 510D32C1107F00F838FFFFFF606D
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107 -> WH51 433.92 MHz with match (?^:^51)
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, 2-FSK Protocol id 103 Lacrosse mode 2 msg 510D32C1107F00F838FFFFFF606D not match (?^:^9)
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, GFSK Protocol id 102 KoppFreeControl msg 510D32C1107F00F838FFFFFF606D not match (?^:^0)
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, Error! method ConvPCA301, checksumCalc:AF1E != checksum:FFFF
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 101 -> PCA 301
2023.04.02 10:58:36 4: sduinoESP: Parse_MN, 2-FSK Protocol id 100 Lacrosse mode 1 msg 510D32C1107F00F838FFFFFF606D not match (?^:^9)
2023.04.02 10:58:36 4: sduinoESP: Read, msg: MN;D=510D32C1107F00F838FFFFFF606D;R=90;
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, Error! id 117 msg=510D2F91107F00F83DFFFFFFC09F, message is to short
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116.1 WH57 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^57)
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116 WH57 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^57)
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, Error! id 115 msg=510D2F91107F00F83DFFFFFFC09F, message is to short
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, Error! id 112 msg=510D2F91107F00F83DFFFFFFC09F, message is to long
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, Error! id 109 msg=510D2F91107F00F83DFFFFFFC09F, message is to long
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, Error! id 108 msg=510D2F91107F00F83DFFFFFFC09F, message is to short
2023.04.02 10:57:57 4: sduinoESP: Dispatch, W107#510D2F91107F00F83DFFFFFFC09F, Dropped due to short time or equal msg
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107.1 -> WH51 868.35 MHz with match (?^:^51)
2023.04.02 10:57:57 3: sduinoESP: se_bodenfeuchte91 ERROR - Hum diff too large (old 54, new 0, diff 54.0)
2023.04.02 10:57:57 4: sduinoESP: using longid for 1 device SD_WS_107_H_0D2F91
2023.04.02 10:57:57 4: sduinoESP: SD_WS_Parse decoded protocol-id 107 (WH51, DP100, MISOL/1), sensor-id 0D2F91
2023.04.02 10:57:57 4: sduinoESP: SD_WS_Parse protocol 107, rawData 510D2F91107F00F83DFFFFFFC09F
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107 -> WH51 433.92 MHz with match (?^:^51)
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, 2-FSK Protocol id 103 Lacrosse mode 2 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^9)
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, GFSK Protocol id 102 KoppFreeControl msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^0)
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, Error! method ConvPCA301, checksumCalc:B455 != checksum:FFFF
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 101 -> PCA 301
2023.04.02 10:57:57 4: sduinoESP: Parse_MN, 2-FSK Protocol id 100 Lacrosse mode 1 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^9)
2023.04.02 10:57:57 4: sduinoESP: Read, msg: MN;D=510D2F91107F00F83DFFFFFFC09F;R=79;
2023.04.02 10:57:56 4: sduinoESP: KeepAlive, ok, retry = 0

2023.04.02 10:57:26 4: sduinoESP: Parse_MN, Error! id 117 msg=510D32C1107F00F837FFFFFFEEFA, message is to short
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116.1 WH57 msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^57)
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116 WH57 msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^57)
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, Error! id 115 msg=510D32C1107F00F837FFFFFFEEFA, message is to short
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, Error! id 112 msg=510D32C1107F00F837FFFFFFEEFA, message is to long
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, Error! id 109 msg=510D32C1107F00F837FFFFFFEEFA, message is to long
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, Error! id 108 msg=510D32C1107F00F837FFFFFFEEFA, message is to short
2023.04.02 10:57:26 4: sduinoESP: Dispatch, W107#510D32C1107F00F837FFFFFFEEFA, Dropped due to short time or equal msg
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107.1 -> WH51 868.35 MHz with match (?^:^51)
2023.04.02 10:57:26 3: sduinoESP: se_bodenfeuchte91 ERROR - Hum diff too large (old 54, new 0, diff 54.0)
2023.04.02 10:57:26 4: sduinoESP: using longid for 1 device SD_WS_107_H_0D32C1
2023.04.02 10:57:26 4: sduinoESP: SD_WS_Parse decoded protocol-id 107 (WH51, DP100, MISOL/1), sensor-id 0D32C1
2023.04.02 10:57:26 4: sduinoESP: SD_WS_Parse protocol 107, rawData 510D32C1107F00F837FFFFFFEEFA
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107 -> WH51 433.92 MHz with match (?^:^51)
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, 2-FSK Protocol id 103 Lacrosse mode 2 msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^9)
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, GFSK Protocol id 102 KoppFreeControl msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^0)
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, Error! method ConvPCA301, checksumCalc:8D1E != checksum:FFFF
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 101 -> PCA 301
2023.04.02 10:57:26 4: sduinoESP: Parse_MN, 2-FSK Protocol id 100 Lacrosse mode 1 msg 510D32C1107F00F837FFFFFFEEFA not match (?^:^9)
2023.04.02 10:57:26 4: sduinoESP: Read, msg: MN;D=510D32C1107F00F837FFFFFFEEFA;R=89;
2023.04.02 10:56:56 4: sduinoESP: KeepAlive, ok, retry = 0
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, Error! id 117 msg=510D2F91107F00F83DFFFFFFC09F, message is to short
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116.1 WH57 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^57)
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116 WH57 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^57)
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, Error! id 115 msg=510D2F91107F00F83DFFFFFFC09F, message is to short
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, Error! id 112 msg=510D2F91107F00F83DFFFFFFC09F, message is to long
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, Error! id 109 msg=510D2F91107F00F83DFFFFFFC09F, message is to long
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, Error! id 108 msg=510D2F91107F00F83DFFFFFFC09F, message is to short
2023.04.02 10:56:47 4: sduinoESP: Dispatch, W107#510D2F91107F00F83DFFFFFFC09F, Dropped due to short time or equal msg
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107.1 -> WH51 868.35 MHz with match (?^:^51)
2023.04.02 10:56:47 3: sduinoESP: se_bodenfeuchte91 ERROR - Hum diff too large (old 54, new 0, diff 54.0)
2023.04.02 10:56:47 4: sduinoESP: using longid for 1 device SD_WS_107_H_0D2F91
2023.04.02 10:56:47 4: sduinoESP: SD_WS_Parse decoded protocol-id 107 (WH51, DP100, MISOL/1), sensor-id 0D2F91
2023.04.02 10:56:47 4: sduinoESP: SD_WS_Parse protocol 107, rawData 510D2F91107F00F83DFFFFFFC09F
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107 -> WH51 433.92 MHz with match (?^:^51)
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, 2-FSK Protocol id 103 Lacrosse mode 2 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^9)
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, GFSK Protocol id 102 KoppFreeControl msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^0)
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, Error! method ConvPCA301, checksumCalc:B455 != checksum:FFFF
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 101 -> PCA 301
2023.04.02 10:56:47 4: sduinoESP: Parse_MN, 2-FSK Protocol id 100 Lacrosse mode 1 msg 510D2F91107F00F83DFFFFFFC09F not match (?^:^9)
2023.04.02 10:56:47 4: sduinoESP: Read, msg: MN;D=510D2F91107F00F83DFFFFFFC09F;R=84;
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, Error! id 117 msg=510D32C1107F00F838FFFFFF606D, message is to short
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116.1 WH57 msg 510D32C1107F00F838FFFFFF606D not match (?^:^57)
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, 2-FSK Protocol id 116 WH57 msg 510D32C1107F00F838FFFFFF606D not match (?^:^57)
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, Error! id 115 msg=510D32C1107F00F838FFFFFF606D, message is to short
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, Error! id 112 msg=510D32C1107F00F838FFFFFF606D, message is to long
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, Error! id 109 msg=510D32C1107F00F838FFFFFF606D, message is to long
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, Error! id 108 msg=510D32C1107F00F838FFFFFF606D, message is to short
2023.04.02 10:56:16 4: sduinoESP: Dispatch, W107#510D32C1107F00F838FFFFFF606D, Dropped due to short time or equal msg
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107.1 -> WH51 868.35 MHz with match (?^:^51)
2023.04.02 10:56:16 3: sduinoESP: se_bodenfeuchte91 ERROR - Hum diff too large (old 54, new 0, diff 54.0)
2023.04.02 10:56:16 4: sduinoESP: using longid for 1 device SD_WS_107_H_0D32C1
2023.04.02 10:56:16 4: sduinoESP: SD_WS_Parse decoded protocol-id 107 (WH51, DP100, MISOL/1), sensor-id 0D32C1
2023.04.02 10:56:16 4: sduinoESP: SD_WS_Parse protocol 107, rawData 510D32C1107F00F838FFFFFF606D
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 107 -> WH51 433.92 MHz with match (?^:^51)
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, 2-FSK Protocol id 103 Lacrosse mode 2 msg 510D32C1107F00F838FFFFFF606D not match (?^:^9)
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, GFSK Protocol id 102 KoppFreeControl msg 510D32C1107F00F838FFFFFF606D not match (?^:^0)
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, Error! method ConvPCA301, checksumCalc:AF1E != checksum:FFFF
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, Found 2-FSK Protocol id 101 -> PCA 301
2023.04.02 10:56:16 4: sduinoESP: Parse_MN, 2-FSK Protocol id 100 Lacrosse mode 1 msg 510D32C1107F00F838FFFFFF606D not match (?^:^9)
2023.04.02 10:56:16 4: sduinoESP: Read, msg: MN;D=510D32C1107F00F838FFFFFF606D;R=88;

Ich erkenne: S1 wird auf S2 gemapped, kommt mit den dortigen Werten durcheinander, und wird dann gedropped:

 2023.04.02 10:56:16 3: sduinoESP: se_bodenfeuchte91 ERROR - Hum diff too large (old 54, new 0, diff 54.0)
2023.04.02 10:56:16 4: sduinoESP: using longid for 1 device SD_WS_107_H_0D32C1
2023.04.02 10:56:16 4: sduinoESP: Dispatch, W107#510D32C1107F00F838FFFFFF606D, Dropped due to short time or equal msg'
elektron-bbs commented 1 year ago

Tja, kann ich nicht nachvollziehen, da bei allen Nachrichten der Feuchtewert gleich 0 ist. Wieso jeweils die Meldung se_bodenfeuchte91 ERROR - Hum diff too large (old 54, new 0, diff 54.0) erscheint, ist mir schleierhaft.

Poste bitte mal ein list beider Sensoren.

Antannah commented 1 year ago
define se_bodenfeuchteC1 SD_WS SD_WS_107_H_0D32C1
setuuid se_bodenfeuchteC1 642854c3-f33f-c50d-9e8a-34ac0e9eba80b1ee
attr se_bodenfeuchteC1 group Feuchte
attr se_bodenfeuchteC1 icon weather_rain_gauge
attr se_bodenfeuchteC1 room Bewaesserung,Blumen
define se_bodenfeuchte91 SD_WS SD_WS_107_H_0D2F91
setuuid se_bodenfeuchte91 64285ce1-f33f-c50d-1790-7b280a76decde256
attr se_bodenfeuchte91 group Feuchte
attr se_bodenfeuchte91 icon weather_rain_gauge
attr se_bodenfeuchte91 room Bewaesserung,Blumen
define sduinoESP SIGNALduino 192.168.125.131:23
setuuid sduinoESP 5c6268e0-f33f-c50d-70ad-7ae2f0c49c82d535
attr sduinoESP group Devices
attr sduinoESP hardware ESP8266cc1101
attr sduinoESP longids 1
attr sduinoESP rfmode Fine_Offset_WH51_868
attr sduinoESP room System
attr sduinoESP verbose 3
elektron-bbs commented 1 year ago

Ich kann es nicht nachvollziehen. Bei mir landen die Nachrichten im jeweils richtigen Device:

Internals:
   CFGFN      
   CODE       SD_WS_107_H_0D2F91
   DEF        SD_WS_107_H_0D2F91
   FUUID      64294fe2-f33f-9025-fb24-10663c093f6d7a56
   LASTInputDev [sduino_dummy](http://raspberrypi3:8083/fhem?detail=sduino_dummy)
   MSGCNT     4
   NAME       [se_bodenfeuchte91](http://raspberrypi3:8083/fhem?detail=se_bodenfeuchte91)
   NR         2723
   STATE      
   TYPE       SD_WS
   bitMSG     0101000100001101001011111001000100010000011111110000000011111000001111011111111111111111111111111100000010011111
   eventCount 4
   lastMSG    510D2F91107F00F83DFFFFFFC09F
   lastReceive 1680435271.42514
   sduino_dummy_DMSG W107#510D2F91107F00F83DFFFFFFC09F
   sduino_dummy_MSGCNT 5
   sduino_dummy_Protocol_ID 107.1
   sduino_dummy_RAWMSG MN;D=510D2F91107F00F83DFFFFFFC09F;R=80;
   sduino_dummy_RSSI -34
   sduino_dummy_TIME 2023-04-02 13:34:31
   Helper:
     DBLOG:
       RSSI:
         [myDbLog](http://raspberrypi3:8083/fhem?detail=myDbLog):
           TIME       1680435271.43084
           VALUE      -34
     RXMIT_TIME:
       1680435271.42521
   READINGS:
     2023-04-02 13:34:31   adc             61
     2023-04-02 13:34:31   batteryVoltage  1.6
     2023-04-02 13:34:31   state           
     2023-04-02 11:50:30   type            WH51, DP100, MISOL/1
Attributes:
   event-min-interval .*:300
   event-on-change-reading .*
   room       Test
Internals:
   CFGFN      
   CODE       SD_WS_107_H_0D32C1
   DEF        SD_WS_107_H_0D32C1
   FUUID      64294f17-f33f-9025-422a-d5ba9a701ec996f1
   LASTInputDev [sduino_dummy](http://raspberrypi3:8083/fhem?detail=sduino_dummy)
   MSGCNT     10
   NAME       [se_bodenfeuchteC1](http://raspberrypi3:8083/fhem?detail=se_bodenfeuchteC1)
   NR         2676
   STATE      
   TYPE       SD_WS
   bitMSG     0101000100001101001100101100000100010000011111110000000011111000001110001111111111111111111111110110000001101101
   eventCount 10
   lastMSG    510D32C1107F00F838FFFFFF606D
   lastReceive 1680435200.67498
   sduino_dummy_DMSG W107#510D32C1107F00F838FFFFFF606D
   sduino_dummy_MSGCNT 10
   sduino_dummy_Protocol_ID 107.1
   sduino_dummy_RAWMSG MN;D=510D32C1107F00F838FFFFFF606D;R=88;
   sduino_dummy_RSSI -30
   sduino_dummy_TIME 2023-04-02 13:33:20
   Helper:
     DBLOG:
       RSSI:
         [myDbLog](http://raspberrypi3:8083/fhem?detail=myDbLog):
           TIME       1680435200.68071
           VALUE      -30
     RXMIT_TIME:
       1680435200.67504
   READINGS:
     2023-04-02 13:33:20   adc             56
     2023-04-02 13:33:20   batteryVoltage  1.6
     2023-04-02 13:33:20   state           
     2023-04-02 11:47:07   type            WH51, DP100, MISOL/1
Attributes:
   event-min-interval .*:300
   event-on-change-reading .*
   room       Test

Der einzige Unterschied ist, das ich beim Attribut longids als Wert SD_WS_107_H eingetragen habe. Die 1 kann ich nicht probieren, da es mir dann etliche Sensoren neu anlegen würde.

sidey79 commented 1 year ago

@elektron-bbs Ich könnte das auf meinem Testsystem testen. Was hast Du dispatcht?

elektron-bbs commented 1 year ago

Ich habe die Nachrichten aus seinem ersten Posting dispatcht.

Antannah commented 1 year ago

So, jetzt geht es auch bei mir. Habe longids auf SD_WS_107_H gesetzt und die event.* kommandos in den sensoren gesetzt. Außerdem habe ich für den Anfang max-deviation-hum auf 50 gestellt. Außerdem habe ich neu-gestartet. Danke schonmal, ich setze sie jetztmal in den Garten.

sidey79 commented 1 year ago

Ich hab es bei mir getestet

  1. Habe ich die Geräte per define angelegt
  2. Danach habe ich die Nachrichten mittels Dispatch weitergegeben

Klappt auch wenn das attribut longid auf 1 gesetzt ist:

2023.04.02 16:18:38.069 5: dummyDuino: dispatch W107#510D32C1107F00F838FFFFFF606D
2023.04.02 16:18:38.070 4: dummyDuino: SD_WS_Parse protocol 107, rawData 510D32C1107F00F838FFFFFF606D
2023.04.02 16:18:38.070 4: dummyDuino: SD_WS_Parse decoded protocol-id 107 (WH51, DP100, MISOL/1), sensor-id 0D32C1
2023.04.02 16:18:38.071 4: dummyDuino: using longid for 1 device SD_WS_107_H_0D32C1

Ich habe auch vorher eine Definition ohne longids angelegt. Einzig ist mir aufgefallen, dass das Reading humidity nicht gesetzt wird, aber das steht vermutlich auf 0.

sidey79 commented 1 year ago

@elektron-bbs

Sollten wir das Reading nicht moisture benennen? Mit AdC kann ich nichts anfangen. Was bedeutet das überhaupt?

Grüße Sidey

elektron-bbs commented 1 year ago

Moisture bedeutet ja auch nur Feuchtigkeit. Ich wollte nicht noch ein zusätzliches Reading.

ADC = AnalogDigitalConverter - das ist der RAW-Wert vom Analog-Digital-Wandler. Der User hat damit die Möglichkeit, den Bodenfeuchtewert selbst zu kalibrieren. Zitat aus der Doku zum DP100:

Der Feuchtigkeitsgehalt wird basierend auf der standardmäßigen Trocken- und Nassdefinition berechnet: Dry (Trocken) (0%AD) AD: 70 Wet (Feucht) (100% AD) AD: 500 Soil Moisture (Bodenfeuchte) = (moisture AD – 0%AD) 100% / (100% AD – 0%AD) Beispiel: wenn die Sensorfeuchte AD 310 beträgt, ist die berechnete Feuchte: (310 – 70)*100% / (500 – 70) = 56% Dies ist ein lineares System mit fester Steigungsrate.

Wenn die Topferde bei trockenem oder nassem Zustand nicht den Ausgangswert des Feuchtesensors angibt, der nahe an seiner Standardannahme liegt, liefert sie ungenaue Feuchtewerte. Es kommt häufig bei verschiedenen Bodenarten vor, die bei gleichem Feuchtigkeitsgehalt sehr unterschiedliche Leistungswerte liefern. Wir haben diesen benutzerdefinierten Modus eingeführt, um diesen Hang flexibel zu gestalten, so dass er an Ihre Bodenart angepasst werden kann.

Dies wird zu einem linearen System mit variabler Steigungsrate. Einstellprinzip: 0%AD wird verwendet, um die Inkonsistenz der Messwerte bei Trockenheit anzupassen. Wenn die angezeigten Feuchtewerte bei trockenem Boden zu hoch sind, können Sie die Neigungsrate durch Erhöhen des 0%AD-Wertes verringern. 100%AD wird verwendet, um die Inkonsistenz der Messwerte bei Nässe anzupassen. Wenn die angezeigten Feuchtewerte bei extrem nasser Bodenbeschaffenheit zu niedrig sind, können Sie den 100%AD-Wert verringern, um ihn zu fixieren. Bitte beachten Sie das folgende Beispiel zum besseren Verständnis. Beispiel: Wenn Sie dieses Produkt zum ersten Mal verwenden, schalten Sie bitte den Custom-Modus aus und testen Sie das Produkt in den folgenden beiden Situationen: Situation 1: Sie haben Ihre Topfpflanze mit genügend Wasser gegossen und der Boden sollte extrem nass sein, aber die angezeigten Feuchtigkeitswerte sind viel niedriger als 95% (z.B. 70%). Lösung: Aktivieren Sie den Custom-Modus und passen Sie den Wert 100%AD an. Berechnen Sie den 100%AD-Wert mit der Formel: Bodenfeuchte = (Feuchtigkeit AD - 0%AD) 100% / (100% AD - 0%AD) Wenn: Jetzt AD = 183 0%AD = 70 Soll-Bodenfeuchtemessung = 95%. Dann: 95% = (183 - 70)100%/(100%AD- 70) Lösung: 100%AD= 188 (nimm den ganzzahligen Teil) Dann können Sie den Standardwert von 0%AD auf 188 einstellen und den Bildschirm einmal berühren, um die Daten zu aktualisieren. Wenn Sie den erwarteten Feuchtigkeitswert erhalten haben, klicken Sie auf Speichern, um die Einstellung zu speichern. Situation 2: Ihre Topfpflanze wird seit sehr langer Zeit nicht mehr gegossen und die Erde ist extrem trocken. Bei diesem trockenen Zustand sind die angezeigten Feuchtewerte deutlich höher als 10% (z.B. 40%). Lösung: Aktivieren Sie den Custom-Modus und passen Sie den 0%AD-Wert an. Berechnen Sie den 0%AD-Wert mit der Formel: Bodenfeuchte = (Feuchtigkeit AD - 0%AD) 100% / (500 - 0%AD) Wenn: Jetzt AD = 183 100%AD = 500 Ziel: Bodenfeuchtemessung = 10%. Dann: 10% = (183 - 0%AD)100%/(500 - 0%AD) Ergebnis: 0%AD= 147 (nimm den ganzzahligen Teil)