Inhaltsverzeichnis:
- Schritt 1: Erforderliche Komponenten und Werkzeuge
- Schritt 2: Schema
- Schritt 3: Konstruktion
- Schritt 4: Software und Erstkonfiguration
- Schritt 5: Erfassen von Codes
Video: ILumos-Fernbedienung - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:19
Die iLumos-Reihe von intelligenten Lichtschaltern und Dimmern funktioniert sehr gut. Sie können problemlos in Großbritannien installiert werden, da sie keinen neutralen Anschluss benötigen, der in britischen Beleuchtungsschaltern oft nicht vorhanden ist.
Sie verwenden 433 MHz-Übertragungen von ihren Fernbedienungen und haben die berührungsempfindlichen Bedienelemente auf ihrer Frontplatte. Wenn man sie über eine App steuern oder eine Sprachsteuerung wie Alexa verwenden möchte, empfiehlt sich die Verwendung eines Broadlink RM-Controllers, der entweder IR- oder 433MHz-RF-Nachrichten senden kann. Da das Protokoll nicht integriert ist, muss das Broadlink-Produkt trainiert werden, um die Fernbedienungssignale zu lernen. Es ist schwierig, dieses Training durchzuführen, und selbst wenn es scheinbar erfolgreich ist, führt es nicht zu einem zuverlässigen Ergebnis. Ich denke, dies liegt an der Tatsache, dass das iLumos-Protokoll ziemlich schwer von normalen 433 MHz-Hintergrundrauschen zu unterscheiden ist und das trainierte Signal, das der Broadlink reproduziert, daher keine gute Darstellung dessen ist, was erforderlich ist.
Dieses anweisbare ist, wie man einen zuverlässigen Controller macht. Dazu wurden die HF-Nachrichten der Fernbedienungen erfasst und analysiert, damit sie in einem 433Mhz-Sender richtig reproduziert werden konnten.
Einzelheiten zum Protokoll und Format dieser Nachrichten sind in der Dokumentation enthalten, aber es ist nicht erforderlich, dies zu verstehen, um diese Ersatzsteuerung zu bauen und zu verwenden.
Der Controller verwendet einen ESP8266-WLAN-Mikrocontroller in Form eines Moduls (ESP-12F). Diese können Webbefehle empfangen und in das erforderliche Nachrichtenformat konvertieren und dann über ein einfaches kostengünstiges 433Mhz-Sendermodul senden. Vieles davon basiert auf einem früheren IR-Controller, der Codes an IR-Geräte wie Fernseher usw. senden kann. Die IR-Funktionalität wurde beibehalten, sodass der gleiche Controller sowohl für iLumos als auch für eine Reihe von IR-Geräten verwendet werden kann. Es ist auch möglich, andere 433Mhz-Geräte wie Steckdosen hinzuzufügen, indem Sie einfach Konfigurationstextdateien über das Webinterface hinzufügen.
Schritt 1: Erforderliche Komponenten und Werkzeuge
Folgende Komponenten werden benötigt
- ESP-12F WLAN-Modul
- 433Mhz Sendermodul
- Spannungserhöhungswandler
- 3.3V-Regler
- 220uF 6V Kondensator
- IR-Diode
- n-Kanal-MOSFET (AO3400)
- 47R Widerstand
- 4K7 Widerstände x2
- 100K Widerstand x 1
- USB-Mikrobuchse
- Draht anschließen
- Gehege; habe ein 3D-gedrucktes Gehäuse verwendet -
www.thingiverse.com/thing:3318386
Folgende Werkzeuge werden benötigt
- Lötkolben mit feiner Spitze
- Pinzette
- Epoxidklebstoff
- Raspberry Pi und 433 MHz Empfänger zum Erfassen von Codes
Beachten Sie, dass das von mir verwendete Gehäuse so klein wie möglich gehalten wurde und SMD-Komponenten verwendet wurden. Wenn ein größeres Gehäuse verwendet wird, können auch größere Komponenten wie NodeMCU esp8266-Module verwendet werden.
Schritt 2: Schema
Die Schaltung ist sehr einfach.
Das ESP-12F-Modul wird über einen linearen 3,3-V-Regler über eine USB-5-V-Buchse mit Strom versorgt.
Die 5V dienen als Stromquelle für die IR-Diode und werden zusätzlich über ein Modul auf 10V angehoben. Dies wird als Stromquelle für die 433 MHz verwendet. Die einfachen TX-Module können direkt mit einer 5V-Quelle verwendet werden, aber der Betrieb ab 10V erhöht die Sendeleistung und die Reichweite. Einige TX-Module werden mit der 3,3-V-Versorgung betrieben, können jedoch wieder etwas weniger Strom haben.
GPIO14 wird als modulierter Ausgang für IR- und 433MHz-Signale verwendet. Im IR-Fall wird es durch einen Träger moduliert (typischerweise 38KHz), aber für die HF-Nutzung steuert es das Sende-Ein-/Aus-Signal direkt. Obwohl das IR immer dann sendet, wenn RF-Nachrichten gesendet werden, können sie nicht mit normalen IR-Nachrichten verwechselt werden.
Schritt 3: Konstruktion
Der Aufbau ist sehr einfach.
Ich baue den IR-Teil als separates kleines Modul mit dem MOSFET-Transistor und seinem Gate-Widerstand auf, der direkt an das Bein der LED gelötet ist, um die Größe zu minimieren. Ich füge dann etwas Epoxidharz hinzu, um es zu sichern.
Der Regler- und Entkopplungskondensator wird direkt auf das ESP-12F-Modul montiert.
Der Rest ist nur ein Anschlusskabel, um die Stromversorgung und das Datensignal anzuschließen.
Ich mache eine Antenne für die 433-MHz-Verbindung mit der in https://www.instructables.com/id/433-MHz-Coil-loaded-antenna/ beschriebenen Methode
Schritt 4: Software und Erstkonfiguration
Die Software ist in einer Arduino-Umgebung gebaut.
Der Quellcode dafür ist unter
Im Code können aus Sicherheitsgründen einige Konstanten geändert werden, bevor er kompiliert und auf das ES8266-Gerät geflasht wird.
- AP_PORT definiert den Listening-Port zum Empfangen von Befehlen
- WM_PASSWORD definiert das Passwort, das von wifiManager verwendet wird, wenn das Gerät im lokalen WLAN-Netzwerk konfiguriert wird
- AP_AUTHID definiert einen Autorisierungscode, der mit jedem Befehl gesendet werden muss, um ihn zu autorisieren.
- update_password definiert ein Passwort, das verwendet wird, um Firmware-Updates zuzulassen.
Bei der ersten Verwendung wechselt das Gerät in den WLAN-Konfigurationsmodus. Verwenden Sie ein Telefon oder Tablet, um eine Verbindung mit dem vom Gerät eingerichteten Zugangspunkt herzustellen, und navigieren Sie dann zu 192.168.4.1. Von hier aus können Sie das lokale WLAN-Netzwerk auswählen und sein Passwort eingeben. Dies muss nur einmal oder beim Ändern von WLAN-Netzwerken oder Passwörtern durchgeführt werden.
Sobald sich das Gerät mit seinem lokalen Netzwerk verbunden hat, hört es auf Befehle. Angenommen, seine IP-Adresse lautet 192.168.0.100, dann verwenden Sie zuerst 192.168.0.100:AP_PORT/upload, um die Dateien in den Datenordner hochzuladen. Dadurch kann 192.168.0.100/edit weitere Dateien anzeigen und hochladen und 192.168.0100:AP_PORT zum Senden von Testbefehlen verwenden.
Der Quellcode read me enthält weitere Anweisungen zum Senden von Steuerbefehlen, Makrobefehlen und zum Anschließen des Geräts an den Alexa-Dienst.
Schritt 5: Erfassen von Codes
iLumos-Switches müssen zuerst mit ihrem Steuergerät gekoppelt werden. Dies wird in der iLumos-Anleitung beschrieben und beinhaltet das Versetzen des Geräts in den Pairing-Modus und das anschließende Senden eines ON-Befehls. Dadurch kann das Gerät weitere Befehle anhand der in jeder Nachricht enthaltenen gepaarten Adresse erkennen.
Hier sind zwei Strategien für den Einsatz des Controllers möglich.
Zuerst können Sie die Codes von vorhandenen iLumos-Fernbedienungen erfassen und diese dann mit dem Controller replizieren.
Zweitens können für diesen Controller neue Adressen verwendet und die Geräte dann mit den bereits in vorhandenen Fernbedienungen identifizierten Befehlscodes mit der neuen Adresse gepaart werden.
Ich bevorzuge die erstere Methode.
Der Quellcode auf github enthält ein Dienstprogramm, das auf einem Raspberry Pi mit einer 433-MHz-Empfängerplatine ausgeführt werden kann, um die Codes von iLumos-Fernbedienungen zu erfassen. Eine Anleitung dazu finden Sie in der Protokollbeschreibungs-PDF auf dieser Seite.