Jeelik Modul zur Einbindung von La Crosse!

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

Vorheriges Thema - Nächstes Thema

ph1959de

Zitat von: PeMue am 03 Mai 2014, 08:26:59
nachdem ich gefühlte zehnmal das Wiki aktualisiert habe, es aber dann doch nicht ging  >:( >:( >:(,
Ich habe die Tabelle jetzt mal hier (http://www.fhemwiki.de/wiki/Jeelink#Lacrosse_Sketch) eingefügt - ich hoffe, das war es, was Du vorhattest.

Was genau ging denn nicht? Wilde Vermutung meinerseits: nachdem Du einen externen Link (http://...) einfügen wolltest, bist Du beim ersten Drücken des "Speichern" Buttons nach dem Ergebnis einer Rechenaufgabe gefragt worden (Deine Bearbeitung enthält neue externe Links. Um das Wiki vor automatisiertem Spam zu schützen, bitten wir dich die untenstehende einfache Rechenaufgabe zu lösen und deine Antwort in das Feld einzugeben, ...) ... was Du möglicherweise übersehen hast.

Gruß, Peter
Aktives Mitglied des FHEM e.V. | Moderator im Forenbereich "Wiki"

justme1968

ich hab eben die version 10.0f aus dem beitrag 534 eingecheckt.

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

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

pinky

Zitat von: HCS am 02 Mai 2014, 22:32:57
Allerdings sehen die Daten aus dem Log weiter oben auch eher schelcht aus. Da ist keinerlei Sinn zu erkennen, was bedeuten könnte, dass auch die data rate nicht passt. Kann mal jemand mit 9.579 kbps so ein Log erstellen, ob da ein sinnvolleres Log rauskommt?

Die von digital.Arts (Karl) beschriebenen Probleme mit dem 30.3181.IT decken sich mit meinen Erfahrungen mit den 30.3180.IT Sensoren.
Ich habe bereits mit data rate 9.579 und 17.241 bzw. mit wechselnder data rate getestet. Mit 9.579 habe ich valide Daten von meinem WetterDirekt Außensensor ermpfangen, der Rest der empfangenen Daten (mutmaßlich von den 30.3180.IT)  haben genau so wenig Sinn ergeben, wie mit data rate 17.241 - ich kann aber gerne wie oben gewünscht noch einmal ein Log mit data rate 9.579 zur Verfügung stellen. Ich bin allerdings gerade verreist und kann die Daten frühestens am Montag aufzeichnen.

PeMue

Zitat von: ph1959de am 03 Mai 2014, 09:59:32
Wilde Vermutung meinerseits: nachdem Du einen externen Link (http://...) einfügen wolltest, bist Du beim ersten Drücken des "Speichern" Buttons nach dem Ergebnis einer Rechenaufgabe gefragt worden (Deine Bearbeitung enthält neue externe Links. Um das Wiki vor automatisiertem Spam zu schützen, bitten wir dich die untenstehende einfache Rechenaufgabe zu lösen und deine Antwort in das Feld einzugeben, ...) ... was Du möglicherweise übersehen hast.
Hm, äh, *räusper*,  8) 8) 8) 8)
Ja, habe ich echt übersehen.

Danke für den Tipp und für's Einbauen.

Gruß Peter
RPi3Bv1.2 rpiaddon 1.66 6.0 1xHM-CC-RT-DN 1.4 1xHM-TC-IT-WM 1.1 2xHB-UW-Sen-THPL-O 0.15 1x-I 0.14OTAU  1xCUNO2 1.67 2xEM1000WZ 2xUniroll 1xASH2200 3xHMS100T(F) 1xRFXtrx 90 1xWT440H 3xTFA30.3150 5xFA21
RPi1Bv2 LCDCSM 1.63 5.8 2xMAX HKT 1xMAX RT V200KW1 Heizung Wasser

HCS

#619
Neue Version 10.0h

Zwei Neuerungen gibt es in dieser Version:

Relay
Da ich Sensoren habe, die zu weit vom Raspi entfernt sind, habe ich eine Relay-Funktion eingebaut. Muss man sich vorstellen wie einen WLAN Range Extender. Wenn man den Sketch als Relay konfiguriert, dann wird jedes empfangene IT+ Datenpaket, das eine gültige Prüfsumme hat, direkt nach dem Empfang wieder gesendet.

Die Konfiguration sieht dann so aus:
// --- Configuration ---------------------------------------------------------
#define RECEIVER_ENABLED      1              // Set to 0 if you don't want to receive
#define ANALYZE_FRAMES        0              // Set to 1 to display analyzed frame data instead of the normal data
#define USE_OLD_IDS           0              // Set to 1 to use the old ID calcualtion
#define RELAY                 1              // If 1 all received packets will be retransmitted 
bool    DEBUG               = 0;             // set to 1 to see debug messages
bool    ENABLE_ACTIVITY_LED = 1;             // set to 0 if the blue LED bothers
int     DATA_RATE           = DATA_RATE_17;  // use one of the data rates defined above
int     TOGGLE_DATA_RATE    = 0;             // 0=no toggle, else interval in seconds

Entscheidend ist #define RELAY 1

Den JeeLink steckt man einfach auf einen billigen 5V USB Ladestecker, wie man ihn auch für das Handy usw. verwendet und sucht sich eine Steckdose auf halber Strecke zum eigentlichen Empfänger. Siehe angehängtes Bild.


LevelSender
Der Sketch unterstützt nun einen batteriebetriebenen Eigenbau-Sender, der den Füllstand von z.B. Regenwassertanks sendet. Dieses Projekt stelle ich dann noch in einem eigenen Thread vor.

Edit: hier ist er nun: http://forum.fhem.de/index.php/topic,23217.msg165163.html#msg165163

Billy

Zitat von: HCS am 04 Mai 2014, 11:31:13
Relay
Da ich Sensoren habe, die zu weit vom Raspi entfernt sind, habe ich eine Relay-Funktion eingebaut. Muss man sich vorstellen wie einen WLAN Range Extender. Wenn man den Sketch als Relay konfiguriert, dann wird jedes empfangene IT+ Datenpaket, das eine gültige Prüfsumme hat, direkt nach dem Empfang wieder gesendet.

Ich könnte mir vorstellen, dass die Relay funktion auch für dei Jeelink Anwender im Forum:
Thema: Einbindung der kostengünstigen Funkschaltsteckdose PCA 301 mit Energiemessung
interessant wäre.

Lässt sich das realisieren?

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

Das wird nicht so einfach gehen. Um keinen Datenmüll unnötig weiter zu verbreiten, wird die empfangene IT+ Aussendung dekodiert und auf korrektes CRC getestet. Nur wenn das OK ist, wird das Paket neu ausgesendet.

Dazu muss man aber den Aufbau der Daten kennen und dieser Sketch kennt momentan nur das IT+ und das LevelSender Format. Ich denke, es ist einfacher, die Relay-Funktionalität in den PCA 301 Sketch einzubauen. Im LaCrosseITPlusReader10 Sketch war es ein  Dreizeiler.

HCS

Die IT+ Sensoren senden alle 4 Sekunden.
Mit event-min-interval state:60 möchte ich das auf 60 Sekunden begrenzen.
Soweit funktioniert das.

Wenn sich aber zwei Stunden lang der Wert am Sensor nicht ändert, bekomme ich die zwei Stunden kein Event für state und keinen Log-Eintrag, ich hätte aber gerne nach 60 Sekunden wieder einen.

Der Grund scheint darin zu liegen, dass ein Update von state nur erfolgt, wenn es sich ändert.
Das verhindert aber, dass ich das für state mit event-min-interval state:xx selbst bestimme.

Sollte der "if" eher nicht da sein oder habe ich da ein Verständnisproblem?
     

my $state = "T: $temperature";
$state .= " H: $humidity" if( $humidity && $humidity <= 99 );
$state .= " D: $dewpoint" if( $dewpoint );
readingsBulkUpdate($rhash, "state", $state) if( Value($rname) ne $state );

justme1968

das modul aktualisiert zur zeit nur temperatur und humidity bei jeder empfangen message. state nur wenn sich wirklich etwas geändert hat.

das möchte ich eigentlich ungern ändern weil es sonst bei allen anderen plötzlich events erzeugt.

warum loggst du denn state und nicht temperature und humidity?

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

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

marvin78

Zitat von: justme1968 am 05 Mai 2014, 15:57:31
das modul aktualisiert zur zeit nur temperatur und humidity bei jeder empfangen message. state nur wenn sich wirklich etwas geändert hat.

Und das ist SEHR gut so!

HCS

Ich wollte nur ein event, und die anderen unterdrücken, was das event log übersichtlicher macht.
Und state ist auch bereits so ein passender "Einzeiler".

Darum habe ich diesen Weg eingeschlagen.

Bekomme ich das mit einem UserReading, das ich aus temperature und humidity bilde, hin?
Also ein UserReading myState bilden und mit event-min-interval myState:60 versehen und das dann loggen?

justme1968

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

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

HCS


Billy

Zitat von: HCS am 05 Mai 2014, 15:31:12
Ich denke, es ist einfacher, die Relay-Funktionalität in den PCA 301 Sketch einzubauen. Im LaCrosseITPlusReader10 Sketch war es ein  Dreizeiler.

Sorry hatte mich wahrscheinlich nicht deutlich genug ausgedrückt. :-\

Genau das hatte ich gemeint:
die Relay-Funktionalität in den PCA 301 Sketch einzubauen

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*

JoWiemann

Zitat von: HCS am 04 Mai 2014, 11:31:13
Neue Version 10.0h

Zwei Neuerungen gibt es in dieser Version:

Relay
Da ich Sensoren habe, die zu weit vom Raspi entfernt sind, habe ich eine Relay-Funktion eingebaut. Muss man sich vorstellen wie ..., direkt nach dem Empfang wieder gesendet.

Entscheidend ist #define RELAY 1

Wie stellst Du sicher, dass die JeeLinks nicht Ping Pong spielen?

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM