Inhaltsverzeichnis
VLC per Fernbedienung steuern
Dieses Kapitel beschreibt die Installation und Einrichtung der X10 Funk-Fernbedienung von Pollin unter Ubuntu 10.04 LTS.
Quellen
Nützliche und sehr hilfreiche Quellen die mir bei der Lösung dieser kleinen Aufgabe hilfreich zur Seite standen sind die folgenden:
X10 Artikel im VDR Wiki
Blog von Christoph Langner auf Linuxundich.de
Blog von Nico Hartung auf www.loggn.de
Vorbereitungen
Zu aller erst muss lirc
insalliert werden:
/# sudo apt-get install lirc
Lirc
-Dienste stoppen falls sie nach der Installation automatisch gestartet wurden:
/# ./etc/init.d/lirc stop
Alle evtl. geladenen *lirc*
Module enfernen:
/# rmmod lirc_atiusb /# rmmod lirc_dev
Konfiguration
lircd
benötigt zwei von drei Konfigurationsdateien die unter /etc/lirc/
erwartet werden. Die eine ist die hardware.conf
und die andere die lircd.conf
. Die dritte, lircmd.conf
, wird weiter nicht verwendet und kann unverändert bleiben.
Die /ect/lirc/lircd.conf
sieht dann bei mir so aus:
- lircd.conf
# # contributed by ChrvTh # # brand: X10 # Remote P/N: 20029725 # Receiver P/N: 20017629 # model no. of remote control: X10 RF remote # devices being controlled by this remote: # begin remote name X10_20029725 bits 16 eps 30 aeps 100 one 0 0 zero 0 0 pre_data_bits 8 pre_data 0x14 post_data_bits 16 post_data 0x0 gap 227999 min_repeat 5 toggle_bit_mask 0x80800000 begin codes Live_TV 0x719C Rec_TV 0x6D98 On/Standby 0xD702 Photo 0x5A85 Music 0x5B86 Guide 0x0631 DVD_Menu 0x5984 Video 0x022D Text 0x6B96 Red/Audio 0x0732 Yellow/Angle 0x0934 Blue/Title 0x0A35 Green/Subtitle 0x0833 Vol+ 0x5E89 Vol- 0x5D88 Up 0x6F9A Down 0x77A2 Left 0x729D Right 0x749F Ok 0x739E Mute 0x5580 Ch+ 0x608B Ch- 0x618C 1 0x628D 2 0x638E 3 0x648F 4 0x6590 5 0x6691 6 0x6792 7 0x6893 8 0x6994 9 0x6A95 * 0x0C37 0 0x6C97 # 0x0D38 Back 0x75A0 Info 0x042F Select 0x709B Rewind 0x79A4 Play 0x7AA5 Forward 0x7BA6 Pause 0x7EA9 Start 0x76A1 End 0x78A3 Stop 0x7DA8 Record 0x7CA7 end codes end remote
Die /ect/lirc/hardware.conf
sieht dann bei mir so aus:
- hardware.conf
# /etc/lirc/hardware.conf # #Chosen Remote Control REMOTE="ATI/NVidia/X10 I & II RF Remote" REMOTE_MODULES="lirc_dev lirc_atiusb" REMOTE_DRIVER="" REMOTE_DEVICE="/dev/lirc0" REMOTE_SOCKET="" #REMOTE_LIRCD_CONF="atiusb/lircd.conf.atiusb" REMOTE_LIRCD_ARGS="" #Chosen IR Transmitter TRANSMITTER="None" TRANSMITTER_MODULES="" TRANSMITTER_DRIVER="" TRANSMITTER_DEVICE="" TRANSMITTER_SOCKET="" TRANSMITTER_LIRCD_CONF="" TRANSMITTER_LIRCD_ARGS="" #Enable lircd START_LIRCD="true" #Don't start lircmd even if there seems to be a good config file #START_LIRCMD="false" #Try to load appropriate kernel modules LOAD_MODULES="true" # Default configuration files for your hardware if any LIRCMD_CONF="" #Forcing noninteractive reconfiguration #If lirc is to be reconfigured by an external application #that doesn't have a debconf frontend available, the noninteractive #frontend can be invoked and set to parse REMOTE and TRANSMITTER #It will then populate all other variables without any user input #If you would like to configure lirc via standard methods, be sure #to leave this set to "false" FORCE_NONINTERACTIVE_RECONFIGURATION="false" START_LIRCMD=""
''lirc'' Kommandos zuweisen
Zum Steuern des VLC Players kommt in die ~/.lircrc
im Home-Verzeichnis folgendes:
begin prog = vlc button = Video config = key-deinterlace end begin prog = vlc button = On/Standby config = key-quit end begin prog = vlc button = Play config = key-play end begin prog = vlc button = Pause config = key-play-pause end begin prog = vlc button = Stop config = key-stop end begin prog = vlc button = Mute config = key-vol-mute end begin prog = vlc button = Vol- config = key-vol-down end begin prog = vlc button = Vol+ config = key-vol-up end begin prog = vlc button = Ch+ config = key-next end begin prog = vlc button = Ch- config = key-prev end begin prog = vlc button = Live_TV config = key-toggle-fullscreen end begin prog = vlc button = Rewind config = key-slower end begin prog = vlc button = FastForward config = key-faster end begin prog = vlc button = Left config = key-prev end begin prog = vlc button = Down config = key-vol-down end begin prog = vlc button = Up config = key-vol-up end begin prog = vlc button = Right config = key-next end begin prog = vlc button = CD_Menu config = key-disc-menu end begin prog = vlc button = BACK config = key-vol-mute end begin prog = vlc button = Red/Audio config = key-audio-track end begin prog = vlc button = Blue/Title config = key-vol-mute end begin prog = vlc button = Yellow/Angle config = key-vol-mute end begin prog = vlc button = Green/Subtitle config = key-vol-mute end begin prog = vlc button = Music config = key-vol-mute end
X10 Kanal einstellen
Damit man nicht mit einer evtl. schon vorhandenen, zweiten X10 Funk-Fernbedienung in Konflikte bei der Bedienug eines anderen Gerätes kommt, läßt sich je Fernbedienung ein individueller Kanal einstellen. Die Einstellung funktioniert bei diesem Modell folgedermaßen:
- die Select-Taste (kleine, runde, blaue Taste im unteren Drittel) für ein paar Sekunden gedrückt halten bis die blaue LED um die OK-Taste kurz blinkt und dann dauerhaft leuchtet. Die Fernbedienung befindet sich jetzt im „Programmiermodus“
- Jetzt die Zifferntaster des gewünschten Kanals drücken, z.B. die „2“.
- Abschließend wieder die Select-Taste einmal drücken. Die blaue OK-LED blinkt zur Bestätigung danach entsprchend des gewählten Kanals. Hier also zwei mal.
Damit der Empfänger bzw. der Treiber auch nur auf den an der Fernbedienung eingestellten Kanal „hört“ benötigt man noch folgende Datei unter /etc/modprobe.d/
:
- lirc_atiusb.conf
options lirc_atiusb mask=0x0002
Der Wert mask=0x000x
setzt eine Bitmaske auf den gewünschten Kanal, hier z.B. Kanal 2.
VLC für ''lirc'' Verwendung einstellen
Jetzt muss man nur noch in den VLC-Einstellungen unter „Extras“ → „Einstellungen“ → „Einstellungen zeigen“ → „Alle“
Interfaces → Kontrollinterfaces → Infrarot-Fernbedienungsinterface „lirc“ einstellen.
Test
Um zu sehen ob die Konfiguration auch funktioniert kann man sich mit irw
die empfangenen Kommandos auf der Konsole ansehen. Dazu zu erst den lirc
-Dienst starten:
Start des lirc
-Dienstes
/# ./etc/init.d/lirc start
/# irw 00000014739e0000 00 Ok X10_20029725 00000014739e0000 01 Ok X10_20029725 00000014709b0000 00 Select X10_20029725 00000014709b0000 01 Select X10_20029725 000000147aa50000 00 Play X10_20029725 000000147aa50000 01 Play X10_20029725 000000147da80000 00 Stop X10_20029725 000000147da80000 01 Stop X10_20029725 00000014719c0000 00 Live_TV X10_20029725 00000014719c0000 01 Live_TV X10_20029725
Probleme ;-)
Lirc startet nach einen Reboot nicht. –> Workaround: folgende Zeile in /etc/rc.local
eintragen:
/etc/init.d/lirc restart
Quellen: