Robins Blog – Technik und Multimedia

Fhem: Reichweitenerhöhung bei Jeelinks mit Relay – Temperatursensoren und PCA 301 Schaltsteckdosen

Ihr möchtet im ganzen Haus drahtlos die Temperatur messen? Oder eine etwas weiter entfernte Steckdose vom Typ PCA 301 schalten? Oder den Strom von dem Verbraucher an der Steckdose PCA 301 messen?

Mit den preiswerten Temperatursensoren der TX 29 DT-H Serie und einem Jeelink kein Problem. In meinem Blog gibt es schon einige Leser die mehr als 10 Temperatursensoren (auch unterschiedliche) am Fhem angeschlossen haben, siehe hier meinen Blog-Beitrag dazu. Dreh- und Angelpunkt ist wie immer die Reichweite. Bei mir empfängt der Transceiver Jeelink-Clone Temperaturen bis in den Keller. Das muss bei Euch aber nicht sein. Um die Reichweite zu erhöhen, haben die pfiffigen Programmmierer aus dem Fhem-Forum eine Funktionalität geschaffen, bei denen auch weite Strecken überbrückt werden kann. Sicherlich, immer ortsbezogen unterschiedlich, aber probieren geht über studieren. Die Rede ist von: Relay. Ihr besorgt euch 2 Jeelinks, den einen schließt ihr wie gewohnt an Eurem Fhem-Server an, den zweiten an einem 5 V Netzteil (z. B. Amazon.de: Hama Reiseladegerät Mini USB, 1A
) an einer geeigneten Stelle. Die Stelle sollte idealerweise zwischen den zu sendenden Sensor und dem Fhem-Server stehen.

Während der erste Jeelink am Fhem mit einem normalen Sketch geflashed werden kann, muss der Relay-Jeelink mit einem etwas angepassten Sketch geflashed werden. Den Programm-Code bekommt auf Sourceforge.

Der Relay-Jeelink nimmt das gesendete Signal von den Sensoren auf und leitet ungefiltert weiter.

Getestet habe ich die Möglichkeit leider nicht, weil meine Sensoren (derzeitig ungefähr 6 Stück davon auch unterschiedliche Typen), alle mit dem Standard-Jeelink-Clone empfangen werden.

 

Der relevante Bereich in dem Sketch sieht so aus:

[sourcecode language=“text“ gutter=“false“]
// — Configuration ———————————————————
#define RECEIVER_ENABLED 1 // Set to 0 if you don’t want to receive
#define ENABLE_ACTIVITY_LED 1 // set to 0 if the blue LED bothers
#define USE_OLD_IDS 0 // Set to 1 to use the old ID calcualtion
// The following settings can also be set from FHEM
bool DEBUG = 0; // set to 1 to see debug messages
bool ANALYZE_FRAMES = 0; // set to 1 to display analyzed frame data instead of the normal data
unsigned long DATA_RATE = 17241ul; // use one of the possible data rates
uint16_t TOGGLE_DATA_RATE = 0; // 0=no toggle, else interval in seconds
unsigned long INITIAL_FREQ = 868300; // initial frequency in kHz (5 kHz steps, 860480 … 879515)
bool RELAY = 1; // if 1 all received packets will be retransmitted —— HIER auf 1 ändern!
byte TOGGLE_MODE = 3; // bits 1: 17.241 kbps, 2 : 9.579 kbps, 4 : 8.842 kbps
byte PASS_PAYLOAD = 0; // transmitted the payload on the serial port
// 1: all, 2: only undecoded data
[/sourcecode]

Um nun aus einem normalen Jeelink-(Clone) einen Jeelink-Relay zu machen, muss das Relay-Flag (bool RELAY), wie oben abgebildet auf 1 gesetzt werden.
Anschließend muss dann der Jeelink neu geflashed werden über die Arduino-Oberfläche.

TFA 30.3155 WD an einem JeeLink-Clone, Klick zum Vergrößern

Informationen über den Jeelink-Clone bekommt ihr in meinem Blog, ebenfalls die Möglichkeiten, die man mit den Sensoren machen kann, z. B. hier, hier.

Wichtig: Aufgrund der ständigen Weiterentwicklung der Software kann diese Konfigurations-Übersicht in einigen Monaten anders aussehen!
Fertig!

Ein Versuch lohnt sich sicherlich.

Bei Fragen, Fragen unten in den Kommentaren. Danke nochmal für den Hinweis an Blog-Leser Daniel, welcher die Methode in seinem Netzwerk verwendet hat.

Die mobile Version verlassen