LaCrosse: JeeLink hat alle Sensoren vergessen

Begonnen von SFAB, 01 Dezember 2016, 21:37:17

Vorheriges Thema - Nächstes Thema

SFAB

#30
Ich musste gerade feststellen, dass ich die globale Option für Backups vor Updates leider nicht gesetzt hatte. Daher war das manuelle Update vom 20.11. das letzte verfügbare.

Und siehe da, alle Sensoren (bis auf den, dessen ID sich durch die Batteriewechsel von vorhin geändert hatte), funktionieren wieder :)

Habe ich jetzt irgendeine Möglichkeit, um das Problem weiter einzugrenzen?

Update: Auch der letzte Sensor funktioniert jetzt nach erneutem Anlernen wieder.

Update 2:
Ich habe inzwischen einen Verdacht, was den "Nichtempfang" der Sensoren ausgelöst haben könnte:initCommands
0a 2m 868305f v

statt
initCommands
0a 30t 868305f v


Auf die Idee mit der Option "2m" bin ich über https://steigerbalett.wordpress.com/2015/05/24/lacrosse-proficelltfa-dostmanntechnoline-temperatursensoren-an-fhem-anlernen/#more-72 gekommen. Ich hatte die Option so interpretiert, dass ich mit "2m" die Datenrate auf 9.579 kbps einstellen kann, was für meine Temperatursensoren passen würde. Allerdings klappt das wohl nur in Verbindung mit der toggle-Option, z.B. "30t".

Was wäre denn die korrekte Einstellung, um die Datenrate auf einen bestimmten Wert zu fixieren?
Raspberry Pi 3
CUL v3 433 (Intertechno/Smartwares)
Jeelink v3 868 (LaCrosse)
Homematic CCU2
Philips Hue Bridge v2

HCS

Ich kann eure beiden Probleme leider nicht nachvollziehen.
Habe noch einen Banana rumstehen, der gerade nichts Wichtiges zu tun hat.

FHEM installiert
Update auf die aktuelle Version aus dem Trunk
JeeLink Clone (JeeNode mit RFM69) angestöpselt
JeeLink Modul definiert
define myJeeLink JeeLink /dev/ttyUSB0@57600
Sensoren gepaart
set myJeeLink LaCrossePairForSec 120 ignore_battery
und ruckzuck alle meine Sensoren (TX29DTH, ...) die mit 17241 kbps senden, von autocreate incl. filelog angelegt bekommen (siehe LaCrosse.png)

Läuft nun seit einem halben Tag, in den logs der Sensoren sind keine Leerwerte zu entdecken.

Der JeeLink hat inzwischen vom Sketch 26589 Message empfangen:
Internals:
   Clients    :PCA301:EC3000:RoomNode:LaCrosse:ETH200comfort:CUL_IR:HX2272:FS20:AliRF:Level:EMT7110:KeyValueProtocol
   DEF        /dev/ttyUSB0@57600
   DeviceName /dev/ttyUSB0@57600
   FD         8
   NAME       myJeeLink
   NR         14
   PARTIAL
   RAWMSG     OK 9 2 130 4 164 125
   STATE      initialized
   TYPE       JeeLink
   initMessages
   model      [LaCrosseITPlusReader.10.1q (RFM69 f:868300 r:17241)]
   myJeeLink_MSGCNT 26589
   myJeeLink_TIME 2016-12-05 20:41:25
   Matchlist:
     1:PCA301   ^\S+\s+24
     2:EC3000   ^\S+\s+22
     3:RoomNode ^\S+\s+11
     4:LaCrosse ^(\S+\s+9 |OK\sWS\s)
     5:AliRF    ^\S+\s+5
     6:EMT7110  ^OK\sEMT7110\s
     7:KeyValueProtocol ^OK\sVALUES\s
   Readings:
     2016-12-05 20:41:25   state           initialized
Attributes:
   flashCommand avrdude -p atmega328P -c arduino -P [PORT] -D -U flash:w:[HEXFILE] 2>[LOGFILE]
   room       JeeLink


Die LaCrosse devices auch schon eine Menge, das 2F z.B. 3326 Messages:
Internals:
   CFGFN
   DEF        2F
   IODev      myJeeLink
   LASTInputDev myJeeLink
   LaCrosse_lastRcv 2016-12-05 20:42:58
   MSGCNT     3326
   NAME       LaCrosse_2F
   NR         104
   STATE      T: 18.2 H: 50
   TYPE       LaCrosse
   addr       2F
   battery_new 0
   corr1      0
   corr2      0
   myJeeLink_MSGCNT 3326
   myJeeLink_RAWMSG OK 9 47 1 4 158 50
   myJeeLink_TIME 2016-12-05 20:42:58
   previousH  50
   previousT  18.2
   sensorType 0=T(H)
   Readings:
     2016-12-05 20:42:58   battery         ok
     2016-12-05 20:42:58   humidity        50
     2016-12-05 20:36:08   state           T: 18.2 H: 50
     2016-12-05 20:42:58   temperature     18.2
Attributes:
   IODev      myJeeLink
   room       LaCrosse


Das funktioniert alles wie es soll.
Eventuell habt ihr eine Konfiguration, die Probleme macht oder ein anderes Modul das dazwischenfunkt. Keine Ahnung.
Aber ohne es reproduzieren zu können bin ich etwas ratlos.

Ach ja, die "98_autocreate" warning hatte ich auch, das ist nicht schön aber erst mal kein Problem.
2016.12.05 11:56:30 2: autocreate: define LaCrosse_26 LaCrosse 26
2016.12.05 11:56:30 3: LaCrosse_26: I/O device is myJeeLink
2016.12.05 11:56:30 2: autocreate: define FileLog_LaCrosse_26 FileLog ./log/LaCrosse_26-%Y.log LaCrosse_26
2016.12.05 11:56:30 1: PERL WARNING: Use of uninitialized value $gplot in concatenation (.) or string at ./FHEM/98_autocreate.pm line 272.
2016.12.05 11:56:35 2: autocreate: define LaCrosse_02 LaCrosse 02
2016.12.05 11:56:35 3: LaCrosse_02: I/O device is myJeeLink
2016.12.05 11:56:35 2: autocreate: define FileLog_LaCrosse_02 FileLog ./log/LaCrosse_02-%Y.log LaCrosse_02
2016.12.05 11:56:35 2: autocreate: define LaCrosse_2A LaCrosse 2A
2016.12.05 11:56:35 3: LaCrosse_2A: I/O device is myJeeLink
2016.12.05 11:56:35 2: autocreate: define FileLog_LaCrosse_2A FileLog ./log/LaCrosse_2A-%Y.log LaCrosse_2A
2016.12.05 11:56:38 2: autocreate: define LaCrosse_0B LaCrosse 0B
2016.12.05 11:56:38 3: LaCrosse_0B: I/O device is myJeeLink
2016.12.05 11:56:38 2: autocreate: define FileLog_LaCrosse_0B FileLog ./log/LaCrosse_0B-%Y.log LaCrosse_0B
2016.12.05 11:56:38 2: autocreate: define LaCrosse_2D LaCrosse 2D
2016.12.05 11:56:38 3: LaCrosse_2D: I/O device is myJeeLink
2016.12.05 11:56:38 2: autocreate: define FileLog_LaCrosse_2D FileLog ./log/LaCrosse_2D-%Y.log LaCrosse_2D
2016.12.05 11:56:39 2: autocreate: define LaCrosse_2F LaCrosse 2F
2016.12.05 11:56:39 3: LaCrosse_2F: I/O device is myJeeLink
2016.12.05 11:56:39 2: autocreate: define FileLog_LaCrosse_2F FileLog ./log/LaCrosse_2F-%Y.log LaCrosse_2F
2016.12.05 11:57:32 2: autocreate: define LaCrosse_1B LaCrosse 1B
2016.12.05 11:57:32 3: LaCrosse_1B: I/O device is myJeeLink
2016.12.05 11:57:32 2: autocreate: define FileLog_LaCrosse_1B FileLog ./log/LaCrosse_1B-%Y.log LaCrosse_1B

SFAB

Vielen Dank für das Nachstellen!

Dein Beitrag hat sich mit meinem letzten Update zeitlich überschnitten. Hältst Du meine o.g. mutmaßliche Fehlerursache für plausibel?
Raspberry Pi 3
CUL v3 433 (Intertechno/Smartwares)
Jeelink v3 868 (LaCrosse)
Homematic CCU2
Philips Hue Bridge v2

HCS

Mann, verd..., jetzt sehe ich es, wie konnte ich so blind sein?

Zitat[LaCrosseITPlusReader.10.1q (RFM69 f:868300 r:17241)]
Der Sketch läuft auf 17.241 aber der 30.3155WD sendet mit 9.579 kbps

Diese initCommands wären korrekt:
0a 1r 868305f v

SFAB

Wald und Bäume, typisches Problem ;)

Sorry für die Unannehmlichkeiten und nochmals vielen Dank für die Unterstützung bei der Fehlersuche!

"1r" legt demnach die Datenrate fest, richtig? Sind diese Befehle irgendwo dokumentiert? In der Commandref habe ich dazu nichts gefunden.
Raspberry Pi 3
CUL v3 433 (Intertechno/Smartwares)
Jeelink v3 868 (LaCrosse)
Homematic CCU2
Philips Hue Bridge v2

HCS

Zitat von: SFAB am 05 Dezember 2016, 21:22:32
Sorry für die Unannehmlichkeiten und nochmals vielen Dank für die Unterstützung bei der Fehlersuche!
Gerne geschehen, ist immer noch besser als ein Fehler in der Software  ;)
Die 17.241 waren übrigens der Grund, warum Du den Sensor vom Nachbarn empfangen hast.

Zitat von: SFAB am 05 Dezember 2016, 21:22:32
"1r" legt demnach die Datenrate fest, richtig?
Korrekt.
0r = 17.241 kbps
1r = 9.579 kbps

Zitat von: SFAB am 05 Dezember 2016, 21:22:32
Sind diese Befehle irgendwo dokumentiert? In der Commandref habe ich dazu nichts gefunden.
ich befürchte: nur in irgend einem der 2023 Beiträge in diesem Thread: https://forum.fhem.de/index.php/topic,14786.0.html

es werden immer händeringend Autoren für das Wiki gesucht ...  ;)
http://www.fhemwiki.de/wiki/JeeLink

Skusi

So, ich hab nun auch mal weitergeforscht, und meine Logs nach leeren temperatur Events durchforstet. Dabei hab ich festgestellt, das es schon seit dem 20.10.16 immer mal wieder solche Einträge in meinen Temp Logs gibt, die keinen Wert haben.

Also so:

2016-12-09_12:55:18 TH_Buero temperature: 19.3
2016-12-09_13:42:35 TH_Kueche temperature:
2016-12-09_14:00:15 TH_Wohnzimmer temperature:


Dann muß ich wohl die entsprechenden DOIFs erstmal disabled haben und die Sache dann verdrängt.
Jetzt nach meinem Update am Samstag hab ich wohl entdeckt das die DOIFs aus sind und sie wieder enabled.
Nun bekomme ich wieder ständig die Meldungen von meinem Telegramm das die Temperatur un Raum X unter 16 Grad gesunken ist, weil der Sensor ein Event feuert ohne Wert, und das DOIF mit der Bedingung [TH_Wohnzimmer:temperature] < 16 getriggert wird.

Im Logfile ist dann Zeitgleich folgendes zu finden:

PERL WARNING: Use of uninitialized value in numeric lt (<) at (eval 12203) line 1.

Also Komando zurück: Es scheint nicht am kürzlichen Update der JeeLink.pm zu liegen.

Aber nun will ich die Sache auch gelöst haben.
Hat jemand ne Ahnung wie solche leer Events entstehen könnten.

Oder welches Update seit dem 20.10.16 könnte dafür verantwortlich sein ? Meine TempLog reicht bis 10.2015 zurück, und es gab bis dahin keine leeren Einträge. Also muß irgendein Bug sich eingeschlichen haben. Leider habe ich die Sache nicht gleich mit Nachdruck verfolgt, sodas es nun natürlich nicht einfach ist den Schuldigen zu finden. Aber ich habe Hoffnung das es jemanden gibt der Ähnliches Verhalten seiner LaCrosse Sensoren beobachtet hat und helfen kann.

Gruß Skusi
HP ThinClient 630, SIGNALduino, NanoCul868 (a-culfw), JeeLink Clone (LaCrosse), Firmata  für FB Heizung,Wasser+Gas+Klingel+Lux, Somfy Rolladen, Pollin Steckd.,TX29DTH,Tasmota+IR Lesekopf an Stromz., MAX Fensterkontakte, IButton, Fingerprint, SonOff Tasmota, ESP LED Controler, WLed,zigbee2mqtt...