Jeelik Modul zur Einbindung von La Crosse!

Begonnen von Billy, 16 September 2013, 15:12:15

Vorheriges Thema - Nächstes Thema

Billy

@HCS
Ich würde das ganze mal gerne sauber über Terminalbefehle nachvollziehen.
Habe deshalb 2 Jeelink mit deinem [LaCrosseITPlusReader.10.0d] geflasht.

Beide jeelink loggen sauber wenn ein Sensor aktiviert wird
OK 9 8 129 4 196 106<\r>

Was mir nicht gelingt ist dass der eine jeelink vom andern was empfängt wenn ich z.B.
149,38,34,33s übers Terminal absetzte.

Hast du da eine Idee. Version bringt [LaCrosseITPlusReader.10.0d @17.241 kbps]<\r>
müsste also stimmen.

Gruss
Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

HCS

Genau so habe ich die ganze Zeit getestet, ein JeeLink auf dem FHEM Raspi und einer am Laptop, mit dem ich vom Terminal aus sende.

Sende mal beiden ein 1d um DEBUG zu aktivieren oder setze DEBUG=1 im Sketch und poste dann die Ausgaben.

JoeALLb

Habs über Mittag nochmal getestet:
Ich kann den ersten Wert nach dem Batterieeinlegen direkt über RAW wie auch über send setzen. kein Unterschied.
Es gingen bisher auch alle geprüften Temperaturwerte.
Die Wetterstation zeigt das an.
Danach kann ich den Wert jedoch nicht mehr ändern.
Da send ja das Batteryflag mitschickt, habe ich über ein at und raw alle 4 Sekunden
eine die selbe(jedoch eine andere wie zu begin mit dem batteryflag) gesendet: Sie wurde niemals angezeigt!!!

Kann das irgendwie mit dem Frequenztoggle der Firmware zusammenhäüngen?

Anbei das Log
2014.03.10 13:04:31 5: SW: 149,6,34,33s
2014.03.10 13:04:37 5: SW: 149,38,80,33s
2014.03.10 13:04:41 5: SW: 149,38,80,33s
2014.03.10 13:04:45 5: SW: 149,38,80,33s
2014.03.10 13:04:51 5: SW: 149,38,80,33s
2014.03.10 13:04:53 5: SW: 149,38,80,33s
2014.03.10 13:04:57 5: SW: 149,38,80,33s
2014.03.10 13:05:01 5: SW: 149,38,80,33s
2014.03.10 13:05:05 5: SW: 149,38,80,33s
2014.03.10 13:05:09 5: SW: 149,38,80,33s
2014.03.10 13:05:13 5: SW: 149,38,80,33s
2014.03.10 13:05:17 5: SW: 149,38,80,33s
2014.03.10 13:05:21 5: SW: 149,38,80,33s
2014.03.10 13:05:26 5: SW: 149,38,80,33s
2014.03.10 13:05:29 5: SW: 149,38,80,33s
2014.03.10 13:05:33 5: SW: 149,38,80,33s
2014.03.10 13:05:37 5: SW: 149,38,80,33s
2014.03.10 13:05:41 5: SW: 149,38,80,33s
2014.03.10 13:05:45 5: SW: 149,38,80,33s
2014.03.10 13:05:50 5: SW: 149,38,80,33s
2014.03.10 13:05:53 5: SW: 149,38,80,33s
2014.03.10 13:05:57 5: SW: 149,38,80,33s
2014.03.10 13:06:01 5: SW: 149,38,80,33s
2014.03.10 13:06:06 5: SW: 149,38,80,33s
2014.03.10 13:06:09 5: SW: 149,38,80,33s
2014.03.10 13:06:13 5: SW: 149,38,80,33s
2014.03.10 13:06:17 5: SW: 149,38,80,33s


Kann ich noch was testen?
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

ulli

@HCS:
Das habe ich garnicht mitbekommen das ursprünglich ein Fehler in der ID berechnung vorhanden ist.
Du meinstest:
msg->id |= (data[1] & 0xC0) >> 6;

Ich habe jetzt in Perl folgendes:
$addr = sprintf( "%02X", ((hex(substr($dmsg,3,2)) & 0x0F) << 2) | ((hex(substr($dmsg,5,2)) & 0xC0) >> 6) );

So ist es korrekt oder?

Billy

@HCS

Also ich habe jetzt mal einen Jeelink an FHEM als FakeSensor_14 definiert wie von dir vorgeschlagen.

Den anderen am Terminal: Dbug Modus ein.

Wenn ich am Terminal  --> 149,38,34,33s  sende, dann ist die Anzeige am Terminal:

Stop receiver
Sending data: 149 38 34 33 50
Start receiver

Am FHEM FakeSensor_14 passiert nichts.

DEF   14
IODev   myJeeLink
NAME   FakeSensor_14
NR   379
STATE   ???
TYPE   LaCrosse
addr   14

Was mache ich falsch?

Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

HCS

#470
Zitat von: Billy am 10 März 2014, 17:01:56
Stop receiver
Sending data: 149 38 34 33 50
Start receiver

Am FHEM FakeSensor_14 passiert nichts.
Der JeeLink könnte defekt sein (vertausche mal Sender und Empfänger)
Du musst mehrmals senden, dass FHEM etwas anzeigt, das liegt wohl am filterThreshold im LaCrosse Modul

Nachtrag:
Du hast die JeeLink nciht an einem Rechner direk nebeneinander stecken, oder?
Das würde eventuell den Empfänger so übersteuern, dass er nicht mehr klar kommt.

Was helfen würde ist die Ausgabe am Terminal des empfangenden JeeLink mit DEBUG=1

HCS

Zitat von: ulli am 10 März 2014, 13:24:59
@HCS:
Das habe ich garnicht mitbekommen das ursprünglich ein Fehler in der ID berechnung vorhanden ist.
Du meinstest:
msg->id |= (data[1] & 0xC0) >> 6;

Ich habe jetzt in Perl folgendes:
$addr = sprintf( "%02X", ((hex(substr($dmsg,3,2)) & 0x0F) << 2) | ((hex(substr($dmsg,5,2)) & 0xC0) >> 6) );

So ist es korrekt oder?
Ja, denke ich. Ich suche aber noch jemanden, der meine Ansicht über die 6 ID-Bits und deren decodierung teilt / bestätigt.

Der daten frame: SSSSDDDD DDN_TTTT usw.
Die D sind die ID des Sensors. Das sind 6 Bit die wie folgt als Byte zu decodieren sind: 00DDDDDD

also so:
msg->id = 0;
msg->id |= (data[0] & 0xF) << 2; 
msg->id |= (data[1] & 0xC0) >> 6;

Richtig?




Billy

Zitat von: HCS am 10 März 2014, 17:16:18
Der JeeLink könnte defekt sein (vertausche mal Sender und Empfänger)
Du musst mehrmals senden, dass FHEM etwas anzeigt, das liegt wohl am filterThreshold im LaCrosse Modul

Nachtrag:
Du hast die JeeLink nciht an einem Rechner direk nebeneinander stecken, oder?
Das würde eventuell den Empfänger so übersteuern, dass er nicht mehr klar kommt.

Was helfen würde ist die Ausgabe am Terminal des empfangenden JeeLink mit DEBUG=1

Also ich habe einen jeelink am Ubuntu Rechner den anderen an Win7. Jeweils am Terminal mit Debug ein.

Die Logs  sind in Anlage.
Vielleicht kannst du was erkennen.

Kann mir nicht vorstellen dass beide Jeelink defekt sind! Beide empfangen alle meine Sensoren einwandfrei.

Gruss

Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

HCS

Was mich an den Logs wundert:

Ist [LaCrosseITPlusReader.10.0d] die Antwort auf ein v?
Das sollte eigentlich so aussehen: [LaCrosseITPlusReader.10.0d @17.241 kbps]

Was sendet Du denn an den JeeLink, dass die Hilfe so oft ausgegeben wird?

Wo kommt der ganze Datenschrott her?
Also die alle:
End receiving, HEX raw data: 83 CC 52 CA C5
## CRC FAIL ##

Bist Du sicher, dass der Sketch richtig übertragen ist?
Welches Board hast Du eingestellt?

Billy

ZitatIst [LaCrosseITPlusReader.10.0d] die Antwort auf ein v?
Nein, v bringt bei beiden [LaCrosseITPlusReader.10.0d @17.241 kbps]<\r>
ZitatWas sendet Du denn an den JeeLink, dass die Hilfe so oft ausgegeben wird?
Wenn ich b sende kommt [LaCrosseITPlusReader.10.0d] und dann die Hilfe.
ZitatWo kommt der ganze Datenschrott her?
Also die alle:
End receiving, HEX raw data: 83 CC 52 CA C5
## CRC FAIL ##

Frage mich nicht kommt sobald ich debugging einschalte.
ZitatBist Du sicher, dass der Sketch richtig übertragen ist?
Nehme ich an, da alle meine Sensoren richtig anzeigen und funktionieren.
ZitatWelches Board hast Du eingestellt?
Schon immer uno
Auch mein PCA301 sketch läuft hervorragend. Übrigens auf einem anderen BBB damit da nicht passiert.

Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

Billy

Übrigens wenn ich 33x sende kommt folgendes am Terminal!

Sending data: 149 39 48 33 195 <\r>
Stop receiver
End receiving, HEX raw data: 0 0 0 0 0
## UNSUPPORTED START ##

Start receiver

FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*

JoeALLb

Warum schickst du b raus?
Ich bekam die Versionsinfo angezeigt, als ich die Luftfeuchtigkeit falsch (mit %) ausgesendet habe.

Kann es sein, dass die Wetterstation die Luftfeuchte nicht mag? Der sensor, der dabei war, hat dieses feature nicht.
Was wird von Temperatur only sensoren rausgeschickt? Minus 41 grad?

Gesendet von meinem Xperia Pro mit Tapatalk

FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270

HCS

Langsam gehen mir die Ideen aus ...
Die Senderei sieht im Log korrekt aus.
Irgend etwas muss doch bei Dir anders sein, als bei mir und JoeALLb

Das Pairing-Problem mit der WS ist dann nochmal ein weiteres, aber senden kann er ja, wie er berichtet.

HCS

Zitat von: JoeALLb am 10 März 2014, 21:53:21
Kann es sein, dass die Wetterstation die Luftfeuchte nicht mag? Der sensor, der dabei war, hat dieses feature nicht.
Was wird von Temperatur only sensoren rausgeschickt? Minus 41 grad?
Ich glaube die senden 106 als Feuchte.
Kannst ja mal 149,38,34,106s versuchen

Billy

@JoeALLb
ZitatWarum schickst du b raus?
Ich bekam die Versionsinfo angezeigt, als ich die Luftfeuchtigkeit falsch (mit %) ausgesendet habe.
Kann es sein, dass die Wetterstation die Luftfeuchte nicht mag? Der sensor, der dabei war, hat dieses feature nicht.

Darum geht es doch garnicht. ;)

Solange auf der Terminalebene die beiden Jeelink nicht sauber miteinander reden lässt sich das Verhalten zur Wetterstation
schlecht analysieren.

Tatsache ist, dass das was der eine jeelink sendet vom andern zumindest bei mir nicht empfangen wird. (Und umgekehrt)
Während das was die Sensoren aussenden sofort empfangen und decodiert wird.

Ich werde mich jetzt mal wieder eine Weile ausklinken aber den ja von mir eröffneten Thread weiter beobachten.

Danke für eure Unterstützung.

Billy

FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink ;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 3x HM-LC-SW1-PL2, viele ESP8266, Tasmota Scripting, Mqtt*