Infrarotfernsteuerung

Aus bytewerk-Wiki
Zur Navigation springen Zur Suche springen

Fernsteuerung von per Infrarot steuerbaren Geräter per Netzwerk

Ziel

Der Verstärker und der Beamer (und vielleicht noch weitere Geräte) des Bytewerks sollen per Netzwerk ferngesteuert werden.

Recherche

Erkenntnisse aus dem Service Manual

  • Aus dem Servicemanual geht hervor dass der RI-Port direkt mit einem Input-Pin am μC des Verstärkers verbunden ist. Daher sollte es möglich sein den Verstärker mit RI auch zu steuern. Ein erster Versuch der Steuerung des Verstärkers über den Remote Interactive-Port schlug jedoch fehl -- das Gerät zeigte keinerlei Reaktion.
  • Es wird die Teilenummer des Infrarot-Receivers angegeben (GP1U281X). Datenblätter ähnlicher Infrarot-Empfänger legen eine maximale Empfindlichkeit für λ≈1000nm nahe, so dass 940nm-IR-LEDs hoffentlich funktionieren sollten.

Eine Aufzeichnung des IR-Signals der Fernbedienung zeigt gewisse Ähnlichkeiten zum NEC-Protokoll.

Durchbruch am 8. August 2014

Die Infrarotempfänger-Wundertüte vom Pollin enthielt einen Empfänger mit dem es möglich war die Signale unserer Verstärker-Fernbedienung zu empfangen.

  1. Anschluss des Sensors (LiteOn LTM-9034) an Labornetzteil und Oszilloskop zum Test.
  2. Anschluss des Sensors an das NetIO Board mit der folgenden Schaltung. Die verlinkte Schaltung verwendet zwar einen anderen IR-Empfänger, diese funktionieren aber im Prinzip alle gleich: für eine logische 1 wird der Ausgang auf low gezogen, andernfalls liegt Vcc an.
  3. Konfiguration von Ethersex mit IRMP: Ethersex mit einkompiliertem IRMP mit Unterstützung für das NEC-Protokoll und ECMD wurde auf das Board geflasht.
  4. Auslesen der Fernbedienungscodes per ECMD über TCP: `while read; do echo "irmp receive"; done | nc <ETHERSEX_IP> 2701` sendet für jede Betätigung der Enter-Taste den Befehl zum Ausgeben des letzten dekodierten Fernbedienungs-Codes an Ethersex.

Nach dem erfolgreichen Auslesen der Codes der Verstärker-Fernbedienung wurde ausprobiert ob die Beamer-Fernbedienung zufällig das selbe Protokoll spricht. Es stellte sich heraus dass sie dies tatsächlich tut, und auch ihre Codes wurden ausgelesen.


TODO/Roadmap/Etappenziele

  1. Bau und Erprobung eines Infrarot-Senders
  2. Speicherung der Fernbedienungscodes im JSON-Format, da dieses sowohl in Webanwendungen als auch in nativen Anwendungen genutzt werden kann
  3. Erstellung eines Webinterfaces und eines Python-Moduls