TRX Weather unzuverlässig

Begonnen von c2j2, 21 November 2016, 08:23:17

Vorheriges Thema - Nächstes Thema

c2j2

Moin,

ich habe für die Rolladensteuerung von TFA Dostmann ein Anemometer ("TFA WIND") besorgt, und ein RFXCom 433. Alles klappt eigentlich recht gut, aber TRX_WEATHER empfängt immer wieder Schrott-Daten, also legt immer wieder irgendwelche Geräte an, oder schimpft wegen falscher Daten. Nun, das kann man halbwegs ignorieren, aber es kommen dann teilweise fehlerhafte Daten an:

2016-11-21_07:44:22 Sensor_aussen_Anemometer temperature: 3.5
2016-11-21_07:44:22 Sensor_aussen_Anemometer windchill: 3.5
2016-11-21_07:44:22 Sensor_aussen_Anemometer wind_speed: 0
2016-11-21_07:44:22 Sensor_aussen_Anemometer wind_avspeed: 0
2016-11-21_07:44:22 Sensor_aussen_Anemometer wind_dir: 67 ENE
2016-11-21_07:44:22 Sensor_aussen_Anemometer battery: ok 100%
2016-11-21_07:44:22 Sensor_aussen_Anemometer T: 3.5 CT: 3.5 W: 0 WA: 0 WD: 67 WDN: ENE BAT: ok
2016-11-21_07:46:34 Sensor_aussen_Anemometer temperature: 2202
2016-11-21_07:46:34 Sensor_aussen_Anemometer windchill: -322.8
2016-11-21_07:46:34 Sensor_aussen_Anemometer wind_speed: 1.6
2016-11-21_07:46:34 Sensor_aussen_Anemometer wind_avspeed: 0
2016-11-21_07:46:34 Sensor_aussen_Anemometer wind_dir: 67 ENE
2016-11-21_07:46:34 Sensor_aussen_Anemometer battery: ok 70%
2016-11-21_07:46:34 Sensor_aussen_Anemometer T: 2202 CT: -322.8 W: 1.6 WA: 0 WD: 67 WDN: ENE BAT: ok


und dann bis jetzt (08:13 Uhr) keine Daten mehr, obwohl das RFXCom-Modul korrekte anzeigt:

================================================
Reset receiver/transceiver
================================================
Get Status
------------------------------------------------
Packettype        = Interface Message
subtype           = Interface Response
Sequence nbr      = 1
response on cmnd  = Get Status
Transceiver type  = 433.92MHz
Firmware version  = 1008
Firmware Type     = Type2
Transmit power    = 10dBm
Hardware version  = 1.3
Undec             off
X10               enabled
ARC               enabled
AC                enabled
HomeEasy EU       disabled
Meiantech         disabled
Oregon Scientific enabled
ATI               disabled
Visonic           disabled
Mertik            disabled
AD                disabled
Hideki            enabled
La Crosse         disabled
FS20/Legrand      disabled
ProGuard          disabled
BlindsT0          disabled
BlindsT1          disabled
AE                disabled
Rubicson          disabled
FineOffset        disabled
Lighting4         disabled
RSL               disabled
Byron SX          disabled
Imagintronix      disabled
KeeLoq            disabled
Home Confort      disabled
RFU2              disabled
RFU3              disabled
RFU4              disabled
RFU5              disabled
RFU6              disabled
RFU7              disabled

------------------------------------------------
------------------------------------------------
------------------------------------------------
Packettype    = WIND
subtype       = WIND4 - TFA
Sequence nbr  = 0
ID            = 9C16 decimal:39958
Direction     = 67 degrees  ENE
Average speed = 0 mtr/sec = 0 km/hr = 0 mph
Wind gust     = 0 mtr/sec = 0 km/hr = 0 mph
Temperature   = 3,8 °C
Chill         = 3,8 °C
Signal level  = 6  -72dBm
Battery       = OK
------------------------------------------------
------------------------------------------------
Packettype    = WIND


Natürlich könnte das am RESET liegen beim Umstecken an den PC...

Irgendwann fischen sich die Daten dann wieder und das FHEM-Modul liefert wieder korrekte Werte.

Ist das irgendwo bekannt, dass da mal falsche Daten enthalten sein können? Oder kann man einbauen, dass solange offensichtlich falsche Daten kommen (Windstärke > 12, Temperaturen < 20 oder > 60 °C) keine geliefert werden?

Oder kann man einen Reset schicken, wenn man die Fehler im FHEM-Notify bemerkt? Wie kann man das?

palatin8

Zitat von: c2j2 am 21 November 2016, 08:23:17
Ist das irgendwo bekannt, dass da mal falsche Daten enthalten sein können? Oder kann man einbauen, dass solange offensichtlich falsche Daten kommen (Windstärke > 12, Temperaturen < 20 oder > 60 °C) keine geliefert werden?
Meine Feuchtesensoren liefern manchmal unwahrscheinliche Werte von 100% rel. Luftfeuchte und mehr. Mit userReadings kann man das herausfiltern. Ich bin aber kein Perl-Crack und traue mich kaum, mein userReading hier zu posten, das ich mir irgendwo zusammengeklaubt habe.
humidity_real none {if (ReadingsVal($name,"humidity","")>95) {;;} else {ReadingsVal($name,"humidity","");;} }
Ich werte humidity_real aus, das bei Werten über 95% rel. Feuchte gar kein Ergebnis liefert, andernfalls das ReadingsVal humidity vom Sensor übernimmt. Nicht schön, aber funktioniert.