Jeelik Modul zur Einbindung von La Crosse!

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

Vorheriges Thema - Nächstes Thema

corny456

Zitat von: HCS am 10 Juni 2015, 17:55:09
@corny456: wärst Du so nett, diese Version kurz zu testen?

Hallo HCS,

Klar doch...  :)
eingespielt und Läuft... Danke dir!

Gruß Marius

noice

#1261
Hallo,

Also es scheint am sensor gelegen zu haben. Hab ihm neue Batterien verpasst und nochmals neu eingelernt ... jetzt geht er ... mal sehen wie lang ...

Grüsse

Edit: Fehler gefunden. Mein Nachbar hat an seinem Sender die Batterien gewechselt. Damit hatte der Sensor die gleiche id wie meiner.
BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

Kalli01

Zitat von: HCS am 07 Juni 2015, 20:16:50
Es hatten schon mehrere Anwender nach Austausch der Spannungsversorgung das Problem dann nicht mehr.
Reden wir über einen Raspi als Server?

Also mit einem anderen Netzteil für den Raspberry Pi habe ich noch keine Aussetzer gehabt. Werde es aber nochmal tauschen müssen, da es mit 1A vielleicht etwas zu schwach ist.

Wie genau messen die TX29DTH-IT? Die Messwerte mehrerer Sensoren weichen um 1.0°C ab.
Kann man irgendwo einen Offset einstellen?

HCS

Zitat von: Kalli01 am 12 Juni 2015, 18:25:49Wie genau messen die TX29DTH-IT? Die Messwerte mehrerer Sensoren weichen um 1.0°C ab.
Kann man irgendwo einen Offset einstellen?

Meine sind auch nicht genauer.

define <name> LaCrosse <addr> [corr1...corr2]

addr is a 2 digit hex number to identify the LaCrosse device.
corr1..corr2 are up to 2 numerical correction factors, which will be added to the respective value to calibrate the device.





Kalli01

Ok das habe ich hin bekommen.
Jetzt wollte ich noch die resolution auf 2 setzen aber irgendwie ändert sich da die Luftfeuchtigkeit anstelle der Temperatur.
Mache ich da etwas falsch?

HCS

Zitat von: Kalli01 am 14 Juni 2015, 13:59:23
Jetzt wollte ich noch die resolution auf 2 setzen aber irgendwie ändert sich da die Luftfeuchtigkeit anstelle der Temperatur.

Hast Du doAverage gesetzt? Average wird nach resolution gerechnet. Wenn man also average gesetzt hat, kommt selten etwas raus, was der resolution entspricht.

Wäre mal zu überlegen, ob man das nicht rumdrehen sollte. Gibt es Meinungen dazu?

Kalli01

Nein doAverage habe ich nicht gesetzt.
Ich habe resolution jetzt mal auf 20 gesetzt, dann springt die Luftfeuchtigkeit von 48 auf 40. Bei der Temperatur ändert sich gar nichts.

Meiner Meinung nach sollte erst der Durchschnitt berechnet werden und danach gerundet werden.

justme1968

ich denke man sollte beides entfernen und statt dessen das neue event-aggregator attribut verwenden.

gruss
  andre
 
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

HCS

Zitat von: Kalli01 am 14 Juni 2015, 22:35:00
Ich habe resolution jetzt mal auf 20 gesetzt, dann springt die Luftfeuchtigkeit von 48 auf 40. Bei der Temperatur ändert sich gar nichts.
Die resolution wird in 10tel Grad angegeben, da macht 20 ja keinen Sinn.

Zitat von: justme1968 am 14 Juni 2015, 22:43:23ich denke man sollte beides entfernen und statt dessen das neue event-aggregator attribut verwenden.
Dann muss ich mir wohl mal das neue event-aggregator attribut anschauen...

Muss aber jetzt erst mal endlich dazu kommen, das autocreateThreshold und das geänderte Logging einzubauen

aj

Zitat von: HCS am 04 Juni 2015, 19:34:40
WS 1600: Das an FHEM übermittelte Error-Flag und LowBattery wird nun im LaCrosse-Modul korrekt ausgewertet und angezeigt (neues Reading "error")
Allerdings forsche ich noch, ob und wie der TX22 den Batteriestatus übermittelt. Solange liefert der Sketch immer "Batterie gut"

Habe mich hier gerade neu registriert um dir auf diesen Beitrag antworten zu können. Ich hatte nämlich erst gestern das Problem dass ich die Werte vom TX22 in einem eigenen Programm nicht richtig verarbeiten konnte, da das LowBattery-Flag gesetzt war. Bei meiner Suche habe ich bemerkt dass dein Code anscheinend dasselbe Problem hat bzw. haben dürfte.
Bei meiner WS1600 ist es nämlich so dass das LowBattery-Flag anscheinend im Bit nach dem Error-Flag gesendet wird, d.h. die weit verbreitete TX22 Analyse dürfte da nicht ganz korrekt sein - die Anzahl der Datenpakete besteht anscheinend nicht aus 4 Bit sondern nur aus 3, da es sich beim 4. Bit vorne um das LowBattery Flag handeln dürfte. Bei gesetzten LowBattery Flag wird ansonsten die Anzahl der Messwert-Pakete falsch interpretiert (Wert+8) und somit können die Datenpakete des TX22 nicht mehr verarbeitet werden.
Nachdem ich das bei mir entsprechend korrigiert habe klappt nun die Auswertung unabhängig vom Status des LowBattery-Flags.

D.h. in deinem Fall müsste ca. Folgendes funktionieren bzw. das Problem lösen (ungetestet!):

// byte ct = bytes[1] & 0xF;
byte ct = bytes[1] & 0x7;

frame->LowBatteryFlag = ((bytes[1] & 0xF) >> 3);


sowie dasselbe weiter unten:

byte TX22IT::GetFrameLength(byte data[]) {
  //return 3 + 2 * (data[1] & 0xF);
return 3 + 2 * (data[1] & 0x7);
}


Hoffe das hilft - Korrekturen erwünscht :)

Kalli01

Zitat von: HCS am 14 Juni 2015, 22:56:06
Die resolution wird in 10tel Grad angegeben, da macht 20 ja keinen Sinn.

Das habe ich nur gemacht um eine deutliche Änderung zu sehen.

Nochmal mein Problem. Eine Änderung auf 1 oder 2 oder auch 5 wirkt sich nur auf die Luftfeuchtigkeit aus.
Ich würde aber gerne die Temperatur runden.

Verstehe ich das jetzt falsch?

uwirt

Hallo Ihr alle

hat jemand Erfolg mit dem Einbinden von Funk-Außensensoren vom Typ TX4-868 (Temperatur u. Luftfeuchte) von LaCrosse?

Theoretisch sollte das mit dem JeeLink 868 funktionieren.

Urs
FHEM / Ubuntu / fitlet2
HomeMatic: CCU3|HmIP-STHD|HmIP-PCBS|HmIP-PCBS2|HmIP-PCBS-BAT|HM-WDC7000|HM-WDS40|HM-LC-Sw1-FM|HM-LC-RGBW-WM|HM-ES-PMSw1-Pl|HM-ES-TX-WM
NAS: DS218+|DS209j|DS216+II|DS412+
Devices: Panasonic Webcams|Withings|Gardena Smart|Tuya|EcoWitt

HCS

Zitat von: aj am 15 Juni 2015, 11:04:23Bei meiner WS1600 ist es nämlich so dass das LowBattery-Flag anscheinend im Bit nach dem Error-Flag gesendet wird, d.h. die weit verbreitete TX22 Analyse dürfte da nicht ganz korrekt sein - die Anzahl der Datenpakete besteht anscheinend nicht aus 4 Bit sondern nur aus 3, da es sich beim 4. Bit vorne um das LowBattery Flag handeln dürfte. Bei gesetzten LowBattery Flag wird ansonsten die Anzahl der Messwert-Pakete falsch interpretiert (Wert+8) und somit können die Datenpakete des TX22 nicht mehr verarbeitet werden.
Nachdem ich das bei mir entsprechend korrigiert habe klappt nun die Auswertung unabhängig vom Status des LowBattery-Flags.

D.h. in deinem Fall müsste ca. Folgendes funktionieren bzw. das Problem lösen (ungetestet!):

// byte ct = bytes[1] & 0xF;
byte ct = bytes[1] & 0x7;

frame->LowBatteryFlag = ((bytes[1] & 0xF) >> 3);


sowie dasselbe weiter unten:

byte TX22IT::GetFrameLength(byte data[]) {
  //return 3 + 2 * (data[1] & 0xF);
return 3 + 2 * (data[1] & 0x7);
}


Hoffe das hilft - Korrekturen erwünscht :)

Hi, vielen Dank für diese Information. Genau das hat mir noch gefehlt. Das werde ich so übernehmen.
Hast Du das LowBattery flag experimentell durch runterregeln der Spannung ermittelt?

Dann bleibt noch ein Rätsel: ab und zu sendet der TX22 seltsame Pakete, bei denen das error flag gesetzt ist und eine Windgeschwindigkeit von 25.4 m/s übertragen wird. Zu diesen Zeitpunkten verschwindet auch die Wind-Geschwindigkeit und -Richtung auf der Basisstation. Hast Du das auch beobachtet und dazu evtl. auch eine Erklärung?

Dich extra zu registrieren um mir den Tip zu geben ist grandios. Danke!

HCS

Zitat von: Kalli01 am 15 Juni 2015, 17:08:20Nochmal mein Problem. Eine Änderung auf 1 oder 2 oder auch 5 wirkt sich nur auf die Luftfeuchtigkeit aus.
Ich würde aber gerne die Temperatur runden.
Gerade nochmal den code studiert und ausprobiert. resolution wirkt bei mir auf humidity und temperature, habe 2, 5 und 10 getestet. Sobald der nächste Wert reinkommt, hat auch die temperature den korrekt gerundeten Wert.

Welche Version hat Deine 36_LaCrosse.pm denn?

Zitat von: Kalli01 am 15 Juni 2015, 17:08:20
Verstehe ich das jetzt falsch?
Eigentlich nicht.

HCS

Zitat von: uwirt am 16 Juni 2015, 11:57:50
Hallo Ihr alle

hat jemand Erfolg mit dem Einbinden von Funk-Außensensoren vom Typ TX4-868 (Temperatur u. Luftfeuchte) von LaCrosse?

Theoretisch sollte das mit dem JeeLink 868 funktionieren.

Urs
Also ich bin mir nicht ganz sicher, aber ich glaube schon, dass der TX4 ein anderes Protokoll sendet.