Fernbedienung - USB X10
Inhaltsverzeichnis |
Kompilieren von mind. LIRC 0.7.0
LIRC 0.7.0 runterladen und entpacken anschließend in Verzeichnis wechseln
- tar –xzvf lirc-0.7.0.tar.gz
- cd lirc-0.7.0
im LIRC Verzeichnis:
- ./setup.sh
-> grafisches Tool für Treiber
Folgendes auswählen:
- 1 - Driver configuration
- 8 - USB devices
- 1 - ATI/NVIDIA/X10
- 4 - Save configuration & exit
ACHTUNG notwendig fürs kompilieren: Der Symbollink /usr/src/linux muß auf die Kernel-Sourcen des (verwendeten) Kernels weisen
Die Kernel-Sourcen sind unter /usr/src (weiß jetzt nicht ob dies Distributionsabhängig ist). Ohne Kernel-Sourcen kann nicht kompiliert werden. Eventuell müssen diese runtergeladen werden.
Einen symbolischen Link kann man mit folgendem Befehl erstellen:
- cd /usr/src
- ln –s linux-VersionsnameKernel linux
Beispiel bei mir (anzeigen mit ls -l):
linux -> linux-2.4.29
Kompilieren und Installieren:
- make
- make install
Module laden
Einfach in ein Skript eintragen, welches bei jedem Start ausgeführt wird (z.B. SuSE /usr/init.d/boot.local)
- modprobe lirc_dev
- modprobe lirc_atiusb
ACHTUNG: Es muß USB und input ( bei Kernel kompilieren: Unter „input core support“ müssen die Optionen „input core support“ und „event interface support“ aktiviert sein) laufen
LIRC Konfiguration
Hinweis: Wenn keine passende Konfigurations-Datei (lircd.conf) vorhanden ist, so kann diese mit dem von LIRC mitgelieferten Programm „irrecord“ erstellt werden. Dazu:
- cd /usr/local/bin
- ./irrecord output_lircd.conf
Für die Medion USB Fernbedieung habe ich die lircd.conf bereits erstellt (siehe Anhang) ihr braucht diese nur noch nach /etc/lircd.conf kopieren.
Programm lirc ausführen:
- lircd –d /dev/lircd –c /etc/lircd.conf
ACHTUNG: Wenn alle Anwender auf das Lirc-Device Zugriff haben sollen, so müssen die Rechte von /dev/lircd entsprechend angepasst werden:
- chmod 666 /dev/lircd
Versuchsphase
Mit dem ebenfalls mitgelieferten Programm „irw“ könnt ihr überprüfen ob alles funktioniert. Führt dazu einfach dieses Programm aus und betätigt ein paar Tasten eurer Fernbedienung. Darauf müsste eine Ausgabe am Bildschirm erscheinen.
- cd /usr/local/bin
- ./irw
Programme und Skripte ausführen
Wird durch den Daemon irexec ermöglicht (zu finden unter /usr/local/bin)
Siehe hierzu den nächsten Punkt lircrc
Konfiguration der lircrc zum Ausführen von Aktionen
Konfigurations-Datei lircrc wird unter /etc/lircrc oder unter /home/anwendername/.lircrc abgespeichert.
Beispielhafter Aufbau der lircrc:
- begin
- prog = irexec # Daemon für Skript- und Programmausführungen
- button = tastenName # tastenName ist in der lircd.conf definiert
- config = /sbin/shutdown –h now # Auszuführendes Programm
- mode = modusName # Modus: Schaltet Modus ein oder aus (siehe weiter unten)
- repeat = 0 # Wiederholung an oder aus (0 oder 1)
- remote = Medion_X10 # Name der Fernbedienung in der lircd.conf
- prog = irexec # Daemon für Skript- und Programmausführungen
- end
Beispielhafter Aufbau für einen Modus in der lircrc:
- begin modusName
- begin
- prog = …
- …
- prog = …
- end
- begin
- end
Kanäle - Mehrere FB's gleichzeitig nutzen
Einstellen eines Kanals an der Fernbedienung
1. Setup(S)-Taste an der Fernbedienung drücken bis die LED erlischt ->Daraufhin blinkt die LED ->Die Anzahl des Blinkens entspricht dem momentan eingestellten Code 2. Code eingeben: 1 bis 16 3. Setup(S)-Taste an der Fernbedienung drücken ->Die LED blinkt erneut ->Die Anzahl des Blinkens entspricht dem neu eingestellten Code
Anpassen der Einstellungen für das lirc_atiusb Kernel-Modul
Um festzulegen, welche Kanäle von LIRC ausgewertet werden sollen, muss die 'channel acceptance bit mask' festgelegt werden. Jeder Kanal für den in der 16-bit Maske eine 1 gesetzt wird, wird ausgewertet. Wird eine 0 gesetzt, wird der enstsprechende Kanal ignoriert. Das Setzen der Maske wird über den Parameter 'mask' des lirc_atiusb Moduls realisiert. Dazu ist z.B. ein Eintrag in der /etc/modules.conf notwendig:
- options lirc_atiusb mask=0xffff
In diesem Beispiel werden alle Kanäle akzeptiert, was der Default-Einstellung des Moduls entspricht.
mask-Werte für die einzelnen Kanäle:
1: 0x0001 2: 0x0002 3: 0x0004 4: 0x0008 5: 0x0010 6: 0x0020 7: 0x0040 8: 0x0080 9: 0x0100 10: 0x0200 11: 0x0400 12: 0x0800 13: 0x1000 14: 0x2000 15: 0x4000 16: 0x8000
Um mehrere Kanäle freizuschalten, werden einfach die einzelnen gewünschten Kanäle mit den Werten der obigen Tabelle addiert.
Beispiele:
Alle geradzahligen Kanäle:
- mask=0xaaaa
Alle ungeradzahligen Kanäle:
- mask=0x5555
Kanäle von 1-8:
- mask=0x00ff
Kanäle 1,6,8 und 13:
- mask=0x10a1
Meine lircd.conf für die Medion USB X10
# Please make this file available to others # by sending it to <lirc@bartelmus.de> # # this config file was automatically generated # using lirc-0.7.0(atiusb) on Fri Feb 18 01:53:46 2005 # # contributed by FUX 2005-02-17 # # brand: Medion # model no. of remote control: RF Remote Control # FCC ID: B4S20016398 # devices being controlled by this remote: # begin remote name Medion_X10 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 227928 toggle_bit 0 begin codes 3 0x000000000000E40F 2 0x000000000000E30E 1 0x000000000000E20D 4 0x000000000000E510 5 0x000000000000E611 6 0x000000000000E712 7 0x000000000000E813 8 0x000000000000E914 9 0x000000000000EA15 0 0x000000000000EC17 ok 0x000000000000F31E up 0x000000000000EF1A down 0x000000000000F722 right 0x000000000000F41F left 0x000000000000F21D del 0x000000000000F520 ren 0x0000000000000B36 red 0x0000000000000732 green 0x0000000000000833 yellow 0x0000000000000934 blue 0x0000000000000A35 txt 0x000000000000EB16 ch- 0x000000000000E10C ch+ 0x000000000000E00B vol+ 0x000000000000DE09 vol- 0x000000000000DD08 mute 0x000000000000D500 tv 0x000000000000012C vcr 0x000000000000022D dvd 0x000000000000D904 music 0x000000000000DB06 radio 0x000000000000032E photo 0x000000000000DA05 preview 0x000000000000042F list 0x0000000000000530 desktop 0x0000000000000631 setup 0x000000000000F01B snapshot 0x000000000000ED18 acquire 0x0000000000000C37 play 0x000000000000FA25 reward 0x000000000000F924 forward 0x000000000000FB26 stop 0x000000000000FD28 rec 0x000000000000FC27 pause 0x000000000000FE29 skipr 0x000000000000F621 skipf 0x000000000000F823 dvdmenu 0x000000000000EE19 dvdaudio 0x0000000000000F3A off 0x000000000000D702 chsearch 0x000000000000F11C fullscreen 0x0000000000000E39 editimage 0x0000000000000D38 end codes end remote