Externe Integration - RFlink

Hallo,

Ich habe gerade Claude für die RFlink-Integration gestartet, nachdem @elfedagger eine Nachricht dazu gepostet hat. Wie er habe ich immer weniger Geräte, die über NodeRed weitergeleitet werden.

Ich habe nur ein Gerät auf diesem Protokoll und es ist schreibgeschützt. Es handelt sich um einen Bewegungsmelder. Ich wäre dankbar für euer Feedback zum Testen.

Ich stelle die Infos zum Testen bereit, sobald alles fertig ist.

Eine erste Version der Integration ist verfügbar. Ich habe sie auf meiner Installation mit einem einzelnen Bewegungsmelder getestet und konnte sie mit den Geräten meiner Nachbarn (Klingel und Temperatursensoren) testen. Bisher funktioniert alles gut.

Die Integration: GitHub - PhilippeMA/gladys-RFlink: Gladys Assistant external integration to read and control RFlink devices. (accès anticipé BETA : DEV en cours) · GitHub

Voraussetzungen, um das RFlink-Gateway für die externe Integration freizugeben (einfach / <5 min)

Dieses Verfahren ermöglicht es, ein per USB angeschlossenes RFLink-Gateway über ser2net im lokalen Netzwerk freizugeben, damit es von der Integration remote genutzt werden kann.

1. Aktuelle Nutzung von RFLink deaktivieren

Bevor Sie beginnen, deaktivieren Sie die Anwendung, die das RFLink-Gateway derzeit direkt per USB nutzt.

In meinem Fall habe ich den entsprechenden Fluss in Node-RED deaktiviert.

2. ser2net installieren

Auf Fedora:

sudo dnf install ser2net

3. ser2net konfigurieren

Bearbeiten:

/etc/ser2net/ser2net.yaml

Am Ende hinzufügen:

connection: &rflink
  accepter: tcp,2002
  enable: on
  options:
    kickolduser: true
  connector: serialdev,
            /dev/ttyACM1,
            57600n81

Anpassen:

  • /dev/ttyACM1 → Der USB-Port, der von Ihrem RFLink-Gateway verwendet wird.
  • 2002 → Der TCP-Port, über den Sie RFLink freigeben möchten.
  • 57600: Dies ist die Baudrate

In meinem Fall ist das Gateway auf /dev/ttyACM1 und ich habe den TCP-Port 2002 gewählt (die Baudrate sollte bei Ihnen dieselbe sein).

4. ser2net beim Start aktivieren

sudo systemctl enable --now ser2net

Um den Dienst zu überprüfen:

systemctl status ser2net

Zuletzt müssen Sie die Integration mit der richtigen IP-Adresse und dem von Ihnen gewählten Port konfigurieren

Ein besonderes Merkmal, das gut von der Integration gehandhabt wird (mein Anwendungsfall)

Mein Bewegungsmelder basiert auf einer EV1527, die mehrere Gerätetypologien sein kann… (Bewegungsmelder, Schalter, Alarm…). Claude hat in den Einstellungen ein Tool implementiert, das es ermöglicht, nach dem Hinzufügen des Geräts dessen Eigenschaften zu ändern; mein Bewegungsmelder wurde als Schalter erkannt. Ich bin in die Integrationseinstellungen gegangen, « Gerätetyp festlegen » und habe das Gerät ausgewählt, und eine Dropdown-Liste hat mir ermöglicht, es als Bewegungsmelder zu ändern (mit einstellbarer Zeit!). Dann nur noch das Gerät im Entdeckungsteil der Integration aktualisieren und fertig!

Um ser2net auf einem Ubuntu-Server zu installieren, sind das dieselben Befehle?

Für Ubuntu wird der einzige Unterschied bei der Installation liegen: sudo apt install ser2net

Und ich kann einfach zurückkehren, indem ich meinen Node-RED-Fluss wieder aktiviere, wenn es für mich nicht funktioniert?

Mein RFlink ist auf 433,42 MHz für den Somfy RTS eingestellt. Wird das ein Problem geben?

In NodeRed deaktivierst du nur. Wenn es nicht funktioniert, musst du den Dienst ser2net mit dem Befehl deaktivieren und dann in NodeRed wieder aktivieren:

sudo systemctl disable --now ser2net

Für RTS Somfy gibt es keinen Grund, warum es nicht funktionieren sollte, aber ich kenne mich nicht aus. Welches Modul verwendest du in NodeRed, um dein System zu steuern? Rollläden?

Ich verwende die Knoten Serial Out und Serial In und ja, das ist für meine Rollläden.

Würde deine Integration mit einem RFPlayer (RFPlayer) funktionieren?

Ich musste Gemini verwenden, um mir zu helfen, ich beherrschte nano überhaupt nicht.
er hat mir Folgendes empfohlen und ich habe seinen Rat befolgt, da ich dieses Problem bereits beim Neustarten meines Servers hatte.

Ein letzter wichtiger Rat

Derzeit zeigt Ihre Konfiguration auf /dev/ttyUSB1. Wenn Sie den Server mit anderen USB-Geräten trennen oder neu starten, kann Ubuntu dem RFLink stattdessen den Namen /dev/ttyUSB0 zuweisen, was die Verbindung unterbricht.

Um dies zu vermeiden, wird empfohlen, den festen Pfad des Schlüssels zu verwenden:

  1. Finden Sie die eindeutige Kennung Ihres RFLink:

    Bash

    ls -l /dev/serial/by-id/
    
    
  2. Ersetzen Sie in /etc/ser2net.yaml /dev/ttyUSB1 durch diesen vollständigen Pfad (Beispiel: /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0).

Es gibt keinen Rollladen-Typ in den Gerätetypen deiner Anwendung, ist das normal?
Deine Anwendung hat eine meiner Rollladen-Fernbedienungen gesehen, aber ich weiß nicht, welchen Gerätetyp ich ihr zuweisen soll, um sie in Gladys zu verwenden.


Im Anwendungsprotokoll sehe ich die drei Befehle, die ich mit meiner Fernbedienung gesendet habe.

[2026-08-15T19:30:11.064Z] [INFO] RFLink <- 20;1E;RTS;ID=f1e260;SWITCH=01;CMD=DOWN;
[2026-08-15T19:30:11.064Z] [INFO] [registry] New RFLink device: RTS f1e260 (unit 01) [CMD]
[2026-08-15T19:30:19.337Z] [INFO] RFLink <- 20;1F;PONG;
[2026-08-15T19:30:59.920Z] [INFO] RFLink <- 20;20;Debug;RTS P1;a82f10d826d460;
[2026-08-15T19:30:59.924Z] [INFO] RFLink <- 20;21;RTS;ID=26d460;SWITCH=01;CMD=UP;
[2026-08-15T19:30:59.925Z] [INFO] [registry] New RFLink device: RTS 26d460 (unit 01) [CMD]
[2026-08-15T19:31:02.275Z] [INFO] RFLink <- 20;22;Debug;RTS P1;a91c10d926d460;
[2026-08-15T19:31:02.279Z] [INFO] RFLink <- 20;23;RTS;ID=26d460;SWITCH=01;CMD=STOP;

Die Dropdown-Liste, die du verwendet hast, ist für andere Geräte bestimmt.

Für die Rollläden gibt es meiner Meinung nach einen Pairing-Prozess, um die Rollläden zu exponieren? Ich habe das Thema bei Claude angesprochen, damit er die Funktionsweise detailliert beschreibt. Ich sage dir Bescheid, sobald ich Neuigkeiten habe.

In der Zwischenzeit, um auf die Funktionsweise mit Node-RED zurückzukommen, kannst du in dieser Reihenfolge vorgehen:

  1. ser2net mit dem Befehl deaktivieren: sudo systemctl disable --now ser2net
  2. Deinen Node-RED-Knoten wieder aktivieren

Die Korrektur wird gerade bereitgestellt.

Es gibt tatsächlich ein Paarungsverfahren, um Gladys als neue Fernbedienung zu deklarieren. Das ist in der Dokumentation detailliert beschrieben.

Auszug:

Der RTS ist ein Protokoll mit rotierendem Code. Jede Übertragung trägt einen Zähler, den der Motor überprüft und speichert, und RFLink hat seinen eigenen Zähler pro Adresse — der nicht der Ihrer Fernbedienung ist. Das erneute Ausführen von f1e260 steuert den Rollladen nicht.
Der korrekte Ansatz besteht darin, RFLink als zusätzliche Fernbedienung zu deklarieren, mit einer Adresse Ihrer Wahl:

  1. Wählen Sie eine freie Adresse, sechs hexadezimale Ziffern, eine pro Rollladen: 100001, 100002…
  2. Auf der bestehenden Somfy-Fernbedienung, halten Sie PROG auf der Rückseite gedrückt (~2-3 s) bis zum kurzen Hin- und Herbewegen des Rollladens.
  3. Innerhalb weniger Sekunden, senden Sie einen Rohbefehl (über die Konfiguration der Integration, unten auf der Seite): 10;RTS;100001;0;PAIR;
  4. Der Rollladen bewegt sich erneut hin und her → es ist gepaart.
  5. Testen Sie: 10;RTS;100001;0;DOWN;
  6. Senden Sie einen Befehl und die virtuelle Fernbedienung erscheint in der Entdeckung. Fügen Sie sie hinzu und benennen Sie sie nach dem Raum.

Sie haben also zwei Geräte pro Rollladen: das, das von Ihrer physischen Fernbedienung entdeckt wurde (nützlich, damit ein Szenario auf eine manuelle Betätigung reagiert) und das, das RFLink besitzt (das, das steuert). Wenn Sie nur die Steuerung interessiert, „Vergessene Geräte entfernen“ bereinigt das erste.

Wenn es mit RFlink funktioniert, denke ich, dass wir es schaffen sollten. Wofür brauchst du es? Welche Frames werden gesendet?

Das soll meinen RFXCOM durch einen RFPlayer ersetzen, den ich schon eine Weile habe.
Ich habe fast keine 433MHz-Geräte mehr, aber der RFPlayer kann als Überkochungserkennung verwendet werden.
Ich werde mal schauen, ob es dazu schon Diskussionen gibt, da ich ihn direkt per USB an meinem Host angeschlossen habe.

Kann diese Integration die Lösung für diese Anfrage sein: Intégration du boîtier Rfxcom - #3 par pierre-gilles ?

Da mein RFlink bereits mit meinen Rollläden gepaart ist, dachte ich, dass die Anwendung mir ein Gerät erstellen würde, das den Rollladen steuert, wenn ich einen Befehl sende, den der RFlink bereits kennt. Der Rollladen bewegt sich, aber es wird kein Gerät erstellt. Es ist doch das Senden des Befehls, das das Gerät erstellt, oder nicht das Paaren?

Hast du eine Antwort auf den Befehl:

10;RTSSHOW;

Gib die Antwort nicht hier an, ich möchte nur wissen, ob du eine Antwort aus deinem Bereich hast.

Tatsächlich besteht Claudias Antwort auf deine Situation darin, manuell ein neues Fenster zu erstellen, wenn du die Informationen zum Eingeben hast.

Falls das nicht funktioniert, wird ein neues Gerät benötigt. Nach meinem Verständnis verlierst du die vorherigen Geräte nicht.

Ich bekomme das, wenn ich 10;RTSSHOW; ausführe
Keine Antwort vom RFLink-Gateway nach 8000 ms
Ich wollte vermeiden, alles neu zu paarieren, wenn möglich, aber mit deiner Anwendung wird das schnell gehen.

Claude hat empfohlen, eine dedizierte Integration für den RFplayer :confused: zu entwickeln. Dieses Gerät hat viele Funktionen, die scheinbar nichts mit RFlink zu tun haben.