ESP als IR-Fernbedienung
Verfasst: So 27. Mai 2018, 20:44
Moin!
Hier ein kleines Projekt für einen ESP8266 in jeglicher Bauform.
Ziel des Projektes ist ein Gateway zu haben welches mit einer IR-LED beliebige Geräte die über eine IR-Fernbedienung verfügen, anzusteuern in dem die Fernbedienung emittiert wird.
Dazu brauchen wir einen ESP oder NodeMCU oder dergleichen, dazu eine IR-LED und einen IR-Empfänger.
Als erstes wollen wir die Tasten der Fernbedieung auslesen, dies geschieht nur einmal und wird daher am besten auf einem Steckbrett oder lose verkabelt, jedoch eher nicht gelötet.
Verkabelt wird das dann wie hier im oberen Bild beschrieben: https://github.com/markszabo/IRremoteESP8266/wiki
Dann die Library installieren:
Arduino IDE öffnen, dann Sketch -> Bibliothek einbinden -> Bibliotheken verwalten. Dort nach IRremoteESP8266 suchen und die gefundene installieren mit einem Click auf installieren, ggfs vorher noch die aktuellste Version auswählen.
Dann das Beispiel zum Empfangen (Datei -> Beispiele -> IRremoteESP8266 ->IRrecvDumpV2) öffnen, auf den ESP laden,
Wenn ihr nun eine Fernbediung in die nähe des Empfängers haltet und eine Taste drückt sollte sie auf dem seriellen Monitor ein paar Zeilen produzieren.
Davon notiert ihr euch am besten das Protokoll, den Code selbst und die Bitlänge.
Sind alle Tasten der Fernbedienung gedrückt und notiert worden kann die LED angeschlossen werden und der eigentliche Code geflasht werden.
Dazu die LED wie dort im Bild zu sehen an den ESP anschließen: https://github.com/markszabo/IRremoteES ... ir-sending
Dann die angehängte Datei in der Arduino IDE öffnen, IP-Adresse, SSID (WLAN-Name), Passwort und Pin für die LEG ggf. anpassen und dann die Software hochladen.
In der Webapp sieht es dann so aus das ihr einfach ein Gerät vom Typ RAW anlegt und eure Daten dann dort nach folgendem Muster eintragt:
Als Beispiel:
Protokolle gibt es folgende: NEC, SONY, RC5, RC6. (Wenn ihr andere Braucht einfach fragen...)
IR-Code muss immer mit folgenden Zeichen beginnen: 0x (null und x; aus 23C6AF wird 0x23C6AF)
Bitlengh muss eine Zahl sein.
Ist das alles erledigt und das Gerät angelegt sollte sich die Fernbedienung über die Webapp emitieren lassen.
Viel Spaß und Erfolg
Kleiner Mann
Hier ein kleines Projekt für einen ESP8266 in jeglicher Bauform.
Ziel des Projektes ist ein Gateway zu haben welches mit einer IR-LED beliebige Geräte die über eine IR-Fernbedienung verfügen, anzusteuern in dem die Fernbedienung emittiert wird.
Dazu brauchen wir einen ESP oder NodeMCU oder dergleichen, dazu eine IR-LED und einen IR-Empfänger.
Als erstes wollen wir die Tasten der Fernbedieung auslesen, dies geschieht nur einmal und wird daher am besten auf einem Steckbrett oder lose verkabelt, jedoch eher nicht gelötet.
Verkabelt wird das dann wie hier im oberen Bild beschrieben: https://github.com/markszabo/IRremoteESP8266/wiki
Dann die Library installieren:
Arduino IDE öffnen, dann Sketch -> Bibliothek einbinden -> Bibliotheken verwalten. Dort nach IRremoteESP8266 suchen und die gefundene installieren mit einem Click auf installieren, ggfs vorher noch die aktuellste Version auswählen.
Dann das Beispiel zum Empfangen (Datei -> Beispiele -> IRremoteESP8266 ->IRrecvDumpV2) öffnen, auf den ESP laden,
Wenn ihr nun eine Fernbediung in die nähe des Empfängers haltet und eine Taste drückt sollte sie auf dem seriellen Monitor ein paar Zeilen produzieren.
Davon notiert ihr euch am besten das Protokoll, den Code selbst und die Bitlänge.
Sind alle Tasten der Fernbedienung gedrückt und notiert worden kann die LED angeschlossen werden und der eigentliche Code geflasht werden.
Dazu die LED wie dort im Bild zu sehen an den ESP anschließen: https://github.com/markszabo/IRremoteES ... ir-sending
Dann die angehängte Datei in der Arduino IDE öffnen, IP-Adresse, SSID (WLAN-Name), Passwort und Pin für die LEG ggf. anpassen und dann die Software hochladen.
In der Webapp sieht es dann so aus das ihr einfach ein Gerät vom Typ RAW anlegt und eure Daten dann dort nach folgendem Muster eintragt:
Code: Alles auswählen
sendIr:Protokoll:IR-Code:Bitlengh;
Code: Alles auswählen
sendIr:NEC:0x4B36D32C:32;
IR-Code muss immer mit folgenden Zeichen beginnen: 0x (null und x; aus 23C6AF wird 0x23C6AF)
Bitlengh muss eine Zahl sein.
Ist das alles erledigt und das Gerät angelegt sollte sich die Fernbedienung über die Webapp emitieren lassen.
Viel Spaß und Erfolg
Kleiner Mann