Welche Hardware brauche ich, um Raspberry Pi in eine TV-Fernbedienung zu verwandeln?

16

Ich möchte meinen Fernseher mit einem Raspberry Pi steuern. Ich möchte, dass mein Raspberry Pi sich wie eine TV-Fernbedienung verhält.

Welche Hardware brauche ich, um es zu machen? Benötige ich so etwas wie einen IR-Emitter und wenn ja, wo kann ich solche Hardware kaufen? … Oder hat der Raspberry Pi schon einen IR-Sender und ich wusste es nicht?

Ich habe meine Frage bereits bei Google gestellt, aber die Themen, die ich gefunden habe, beziehen sich auf die Steuerung des Raspberry Pi mit Infrarot. Das ist nicht das, was ich will. Ich möchte das Gegenteil: Ich möchte, dass mein Raspberry Pi meinen Fernseher mit IR steuert. Ich fand auch, dass wir den Fernseher dank HDMI-Kabel steuern können (wenn der Fernseher kompatibel ist), aber dies ist mir leider nicht angenehm.

Hier ist ein Schema, das erklärt, wie man das Ding sieht. Meine Frage bezieht sich auf Schritt 2:

Schema

Ashbay
quelle
2
Es ist einfach. Sie haben einen IR - Sender koppeln, dass die Übereinstimmungen mit Ihrer TV - Fernbedienung und senden Befehle über gpio
askmish
@askmish Ich stimme dem zu, was Sie gesagt haben, aber wie kann ich den IR-Sender mit der Himbeere verbinden? (zum Beispiel eine IR von einer nicht verwendeten TV-Fernbedienung, aber ich weiß nicht, wie ich die IR an die Himbeere anschließen soll, da ich ein Noob bin).
Ashbay

Antworten:

10

Ich habe dieses versucht , es schließt in den USB-Hafen an, kann die IR-Codes notieren und wiedergeben, die von LiRC gestützt werden. Ich habe sogar versucht, es an mein Android-Handy anzuschließen, und es funktioniert dort auch.

lenik
quelle
Upvote, das ist die Art von Hardware, die ich suche. Bonusfrage: Kennen Sie eine Möglichkeit, einen IR von einer nicht verwendeten TV-Fernbedienung an die Himbeere anzuschließen?
Ashbay
@Ashbay kurze Antwort: "NEIN", lange Antwort - Die TV-Fernbedienung verfügt normalerweise über einen Mikrocontroller, der die Tasten der Fernbedienung abtastet und Signale über die IR-LED an das Fernsehgerät sendet. Dieser Mikrocontroller verfügt höchstwahrscheinlich über keine externen Anschlüsse außer Tastatur und IR-LED.
Lenik
@lenik Wäre dies eine mögliche Lösung, um einen Satellitenempfänger zu "programmieren"? Ich überlege mir ein Projekt, um den Empfänger "aus der Ferne" für jemand anderen zu programmieren.
user10853
10

Alternativ zu Infrarot können Sie auch HDMI verwenden. Wenn Ihr Fernseher über HDMI 2.0 verfügt, wird eine Art CEC ( Consumer Electronics Control) - Implementierung unterstützt

Jede TV-Marke nennt das etwas anderes, wie Panasonic Viera Link. Aber es nutzt alle den gleichen Standard, nur einige Fernseher implementieren mehr, einige weniger, aber die Grundlagen sollten vorhanden sein. Zum Beispiel TV ein- oder ausschalten, durch Kanäle navigieren usw.

cec-o-matic ist ein nützliches Tool, mit dem Sie versuchen können, Meldungen zu dekodieren, die von einer Reihe von HDMI-Geräten über das CEC-Netzwerk gesendet werden. Denken Sie daran, dass Sie den Pi auch über eine Fernbedienung vom Fernseher aus steuern können, dies kann aber auch ein AMP, Blu Ray Play usw. sein. Es ist unidirektional.

Sie müssten CEC-CLIENT erstellen, damit Sie zuerst einige Abhängigkeiten benötigen

apt-get install build-essential autoconf liblockdev1-dev libudev-dev git libtool pkg-config

Dann hol es dir von GIT und baue

git clone git://github.com/Pulse-Eight/libcec.git
cd libcec
./bootstrap
./configure --with-rpi-include-path=/opt/vc/include --with-rpi-lib-path=/opt/vc/lib --enable-rpi
make
make install
ldconfig

Mit diesem Konsolenbefehl können Sie dann überprüfen, ob das CEC-Gerät auf dem Pi ordnungsgemäß funktioniert

cec-client -l

Hier sind ein paar weitere Befehle, mit denen Sie loslegen können

  • Scannen Sie den CEC-Bus und melden Sie alle Geräte:
    • echo "scan" | cec-client -s -d 1
  • Überprüfen Sie den Stromstatus des Fernsehgeräts (Gerät 0):
    • echo "pow 0" | cec-client -s -d 1
  • Schalt den Fernseher an:
    • echo "on 0" | cec-client -s -d 1
  • Schalte den Fernseher aus:
    • echo "standby 0" | cec-client -s -d 1

Das Ausarbeiten aller Befehle mag zunächst etwas schwierig sein, aber es ist eine sehr robuste Möglichkeit, über HDMI angeschlossene Geräte zu steuern.

Die meisten Tutorials zeigen, wie man den Pi über den Fernseher steuert, wie es XBMC tut. Grundsätzlich verwenden Sie Ihre TV-Fernbedienung, um im Menü der XBMC zu navigieren. Aber Sie können es auch anders machen.

Ich hoffe, das hilft jemandem in Zukunft als Alternative zu Infradead .

Piotr Kula
quelle
Nur eine geringfügige Korrektur, CEC wurde in der HDMI 1.2a-Spezifikation vollständig ausgearbeitet. HDMI 2.0 ist sehr neu (ab 2015) und konzentriert sich hauptsächlich auf 4K-Video und verbesserte Audiofunktionen.
zim2411