Dieses Kapitel beschreibt die Installation und Einrichtung der X10 Funk-Fernbedienung von Pollin unter Ubuntu 10.04 LTS.
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
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
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:
#
# 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:
# /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=""
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
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:
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/:
options lirc_atiusb mask=0x0002
Der Wert mask=0x000x setzt eine Bitmaske auf den gewünschten Kanal, hier z.B. Kanal 2.
Jetzt muss man nur noch in den VLC-Einstellungen unter „Extras“ → „Einstellungen“ → „Einstellungen zeigen“ → „Alle“
Interfaces → Kontrollinterfaces → Infrarot-Fernbedienungsinterface „lirc“ einstellen.
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
Lirc startet nach einen Reboot nicht. –> Workaround: folgende Zeile in /etc/rc.local eintragen:
/etc/init.d/lirc restart
Quellen: