Wemos D1 mini Shield: IR Controller

In diesem Beitrag zeige ich dir, wie du das IR Controller Shield am Wemos D1 Mini programmierst.

Des Weiteren möchte ich dir zeigen, wie du eine Fernbedienung auslesen kannst und dir auf einer Webseite (welche auf dem Mikrocontroller läuft) Schaltflächen für definierbare Gerätefunktionen anlegen kannst.

Bezug des IR Controller Shields für den Lolin

Das Shield kannst du entweder auf ebay.de für knapp 6 € inkl. Versandkosten erstehen oder auf aliexpress.com für günstige 1,53 € zzgl. Versandkosten von 1,27 € jedoch mit einer Lieferzeit von knapp 20 Werktagen.

IR Controller Shield v1.0.0 verpackt
IR Controller Shield v1.0.0 verpackt

Lieferumfang

Zum Lieferumfang des Shields gehört neben der Platine noch zwei 8polige Stiftleisten zum Anlöten.

Lieferumfang des IR Controller Shield
Lieferumfang des IR Controller Shield

Aufbau des IR Controller Shields

Das IR Controller Shield verfügt über 4 Infrarot Empfänger und einen IR Sender.

Auf der Rückseite des Shields kannst du per Lötbrücke die Pins der IR Dioden ändern. (In diesem Beitrag verwende ich den Default und ändere somit die Pinbelegung nicht.)

Der Infrarot Empfänger ist per Default am digitalen Pin D4 angeschlossen und der IR Sender am digitalen Pin D3.

anlöten der Stiftleisten

Bevor man das Shield mit dem Mikrocontroller verbinden kann, muss man die mitgelieferten Stiftleisten auflöten.

Die meisten Shields für den Wemos D1 Mini sind mit einander bzw. übereinander Stapelbar d.h. du kannst diese mit den passenden Buchsen- /Stiftleisten übereinander stecken.

Wemos D1 Mini mit Datalogging Shield und DHT11 Shield
Wemos D1 Mini mit Datalogging Shield und DHT11 Shield

Jedoch ist dieses beim IR Controller Shield nicht zu empfehlen, denn die IR Sendediode ist so platziert, dass diese nach oben abstrahlt und daher wäre diese dann nicht zu benutzen.

Programmieren des Shields in der Arduino IDE

Wie viele andere Shields zuvor möchte ich auch dieses in der Arduino IDE mit C/C++ programmieren. Die Arduino IDE kannst du kostenfrei unter https://www.arduino.cc/en/software herunterladen.

Wie man die Arduino IDE installiert habe ich dir im Beitrag Arduino IDE installieren ausführlich erläutert.

Die offizielle Dokumentation zum Wemos D1 IR Remote Controller Shield findest du unter https://www.wemos.cc/en/latest/d1_mini_shield/ir.html.

Installieren der Bibliothek IRremoteESP8266

Für die Programmierung nutzen wir die Bibliothek IRremoteESP8266, welche man entweder als ZIP-Datei vom GitHub Repository crankyoldgit / IRremoteESP8266 herunterladen kann.

Alternativ kann man die Bibliothek auch im Bibliotheksverwalter der Arduino IDE installieren, zunächst sucht man nach der Zeichenkette „IRremoteESP8266“ (1) und wählt danach die aktuelle Version aus (2) ist dieses geschehen so braucht man nur noch die Schaltfläche „Installieren“ (3) betätigen und nach abschluss der Installation den Dialog über „Schließen“ (4) schließen.

Bibliotheksverwalter - IRremoteESP8266
Bibliotheksverwalter – IRremoteESP8266

So ziemlich jeder Bibliothek liegen ein paar Beispiele bei, so auch der IRremoteESP8266.

Beispiele zur Bibliothek "IRremoteESP8266"
Beispiele zur Bibliothek „IRremoteESP8266“

ein kleines Beispiel

Starten wir zunächst mit einem kleinen Beispiel.

Zunächst wollen wir eine IR Fernbedienung auslesen und den Hexadezimalen Code auf der seriellen Konsole ausgeben. Die Fernbedienungen findest du in den meisten Arduino Starter Sets oder auch einzeln für wenige Euro auf ebay.de.

IR Fernbedienung für den Arduino und Raspberry Pi
IR Fernbedienung für den Arduino und Raspberry Pi

Hier nun der vereinfachte Code aus dem Beispiel „IRrecvDemo“.

#include <Arduino.h>
#include <IRremoteESP8266.h>
#include <IRrecv.h>
#include <IRutils.h>

#define irReciverPin D4

IRrecv irrecv(irReciverPin);

decode_results results;

void setup() {
  Serial.begin(115200);
  irrecv.enableIRIn();
  while (!Serial) 
    delay(50);
  Serial.println();
}

void loop() {
  if (irrecv.decode(&results)) {
    Serial.println(String(results.value, HEX));
    irrecv.resume();
  }
  delay(100);
}

Hier nun ein kleines Video welches die Funktion zeigt:

auslesen einer Infrarot Fernbedienung am ESP8266

Ein Kommentar

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert