Hallo,
ich möchte mit einem Arduino und einer IR-LED, die ich aus einer FB ausgebaut habe über diese Library verschiedene Geräte ansteuern.
Hierfür habe ich mit einem IR-Empfänger am Arduino zunächst einmal die zu sendenen Codes ermittelt. Die Sendebefehle sendete ich hierbei über eine Multifunktionsfernbedienung, mit der sich sämtliche zu steuernden Geräte einwandfrei steuern lassen.
Bei der Ermittlung der zu sendenden Befehle habe ich festgestellt, dass ich je nach zu steuerndem Gerät entweder im “Raw”- oder “NEC”-Format senden muss. Hierfür habe ich innerhalb von Arduino unter den Beispielen der IR-Library den Beispielcode “IRrelay” verwendet.
Die “Raw”-Befehle funktionieren, die “NEC”-Befehle nicht, obwohl ich mittlerweile…
a) eine weitere IR-LED einer FB ausgebaut und diese eingebunden habe.
b) den Abstand zwischen IR-LED und der Empfangs-LED auf 5cm reduziert habe.
c) die NEC-Befehle auch als Raw gesendet habe.
Es befinden sich keine Neonröhren in unmittelbarer Nähe und der Aufbau ist auch nicht unmittelbarer Sonneneintrahlung ausgesetzt. Vewendet wird Arduino 1.6.5 und ein Uno.
Weiss nun nicht mehr weiter.
Wer kann helfen?
Gruß Chris
/*
* Aufnahme beenden und HiFi-Anlange vollumfänglich ausschalten.
*/
#include <IRremote.h>
IRsend irsend; // Eine IR-LED muss an Pin 3 angeschlossen sein.
void setup()
{
int khz = 38;
unsigned int stopSat[] = {1750, 950, 800, 950, 850, 1750, 1700, 950, 800, 950, 800, 1800, 1650, 1850, 800, 950, 1650, 1000, 800};
unsigned int enterSat[] = {1750, 1750, 1750, 1800, 1650, 950, 850, 950, 750, 1000, 750, 1850, 1650, 1850, 800, 950, 800, 950, 750};
delay(5000);
irsend.sendRaw(stopSat, sizeof(stopSat) / sizeof(stopSat[0]), khz); //Note the approach used to automatically calculate the size of the array.
delay(1000);
irsend.sendRaw(enterSat, sizeof(enterSat) / sizeof(enterSat[0]), khz); //Note the approach used to automatically calculate the size of the array.
delay(5000);
irsend.sendNEC(0x6D308976, 32); // Videotechnik ausschalten
delay(500);
irsend.sendNEC(0x1D008976, 32); // Umschaltung auf Tuner
delay(500);
irsend.sendNEC(0x1D00B946, 32); // Verstärker aus
}
void loop()
{
}