IR Fernbedienung - Anfänger

Ich würde das nur in (sehr) kleinen Schritten entwickeln.
Erst wenn (zum Beispiel) das Einschalten des Fernsehers total betriebssicher funktioniert den nächsten Schritt machen. Dann (zum Beispiel) Fernseher auf AppleTV umschalten. Erst wenn das völlig zuverlässig funktioniert der nächste Schritt und so weiter.
Im Endeffekt müssen von 100 Versuchen 99,8 erfolgreiche Versuche sein :slight_smile:

Bsonders achte auf:

  • kritisches Timing
  • sicherer IR-Empfang aller Komponenten
  • Besonderheiten der Code-Protokolle
    Kritisches Timing
    Möglicherweise ist das Timing kritisch.
    Besonders wenn du in Menüs navigieren musst (wie z.B. bei AppleTV), kann es sein, dass die Reaktionszeit "situationsabhängig" ist. So etwas hatte ich vor kurzem bei einem HDMI-Umschalter mit Reaktionszeiten zwischen 0,2 und 3(!) Sekunden - das war sehr frustrierend. Wann immer möglich würde ich deshalb Menünavigationen vermeiden :slight_smile:

sicherer IR-Empfang aller Komponenten
Wie sicher ist der IR-Empfang aller Geräte?
Die IR-Empfänger in den Geräten sind auf eine bestimmte IR-Wellenlänge und IR-Modulationsfrequenz optimiert. Meist empfangen sie zwar auch "danebenliegende" Wellenlängen und Frequenzen, aber niemals so betriebssicher wie die "Originalwerte".
Typische Wellenlängen liegen zwischen etwa 875 und 950nm.
Typische Modulations-Frequenzen sind 36, 38 oder 40kHz. Manche Fernbedienungen laufen aber auch mit viel höheren Frequenzen (z.B. manche Geräte von Bang & Olufsen: auf 455kHz).
Du musst sicherstellen, dass alle Geräte die Signale sehr gut empfangen können.
Eventuell brauchst du dazu ein "recht kräftiges" IR-Signal:
Du kannst versuchen mehrere IR-Sende-LEDs parallel zu betreiben und auch solche mit unterschiedlichen Wellenlängen verwenden (parallel). Du brauchst ziemlich sicher eine Ansteuerung über Transistor, weil der Arduino-Pin nicht genug Strom liefern kann.

Besonderheiten der Code-Protokolle
Du verwendest verschiedene IR-Code-Protokolle: NEC und RC6.
Diese sind sehr unterschiedlich (näheres siehe hier)
So kann es sein, dass manchmal ein Wiederholungscode (z.B. NEC), manchmal Bit-Toggling (z.B. RC6) nötig ist. Nicht immer kümmert sich die Library darum. Versuche also den "Originalcode" deiner Fernbedienungen möglichst aufmerksam zu anaysieren.
Manche Geräte reagieren erst nachdem ein bestimmter Code mehrmals hintereinander empfangen wurde (früher war das hauptsächlich bei Sony so, mittlerweile machen das aber auch andere Marken).

Dein Projekt ist durchaus komplex.
Ich wünsche viel Erfolg! :slight_smile: