Version 2.2
This guide is depreciated. Configuring Lirc for Hardy Heron is slightly different than before. New guide coming soon for Kubuntu and Ubuntu
Get your Hauppauge remote control working in Ubuntu with Lirc and IRKICK. Based on the Hauppauge Nova-T PCI 909 with the newer remote control. This guide might work with other Hauppauge boards, though this is not confirmed. You may have to find / create different 'hardware.conf' and 'lircd.conf' configuration files.
Okay, let's get to it..
PART 1: Initial Configuration
We need to find out if the standard Kubuntu kernel has detected your remote control. We can check this by typing the following command into a terminal window.
Code:
cat /proc/bus/input/devices
A load of text will appear. Look for something similar to what is shown below:
Code:
I: Bus=0001 Vendor=0070 Product=9002 Version=0001
N: Name="cx88 IR (Hauppauge Nova-T DVB-T"
P: Phys=pci-0000:01:02.0/ir0
S: Sysfs=/class/input/input3
H: Handlers=kbd event3
B: EV=100003
B: KEY=100fc312 214a802 0 0 0 0 18000 41a8 4801 9e1680 7bb80 0 10000000
There are two important things to look for here. The 'N:Name' proves the remote control has been detected properly and the 'H:Handlers' shows us what 'event number' our remote control is mapped to. As you can see, my Event number is currently '3'.
Unfortunately, these event numbers are dynamically assigned, so your remote control will not always stay at the Event number it's at now. When the event numbers change, the remote control will simply not work, or worse, the mouse and keyboard will lock up. We can solve this problem by manually assigning an Event ID to our remote control, so it never changes.
Enter the command below into a terminal and replace 'eventx' with your Event number.
Code:
udevinfo -a -p $(udevinfo -q path -n /dev/input/eventx)
The output of that command should be similar to what you see below.
Code:
device '/sys/class/input/input3/event3' has major:minor 13:67
looking at class device '/sys/class/input/input3/event3':
KERNEL=="event3"
SUBSYSTEM=="input"
SYSFS{dev}=="13:67"
follow the "device"-link to the physical device:
looking at the device chain at '/sys/devices/pci0000:00/0000:00:0e.0/0000:02:09.0':
BUS=="pci"
ID=="0000:02:09.0"
DRIVER=="cx8800"
SYSFS{class}=="0x040000"
SYSFS{device}=="0x8800"
SYSFS{irq}=="209"
SYSFS{local_cpus}=="1"
SYSFS{modalias}=="pci:v000014F1d00008800sv00000070sd00009002bc04sc00i00"
SYSFS{subsystem_device}=="0x9002"
SYSFS{subsystem_vendor}=="0x0070"
SYSFS{vendor}=="0x14f1"
looking at the device chain at '/sys/devices/pci0000:00/0000:00:0e.0':
BUS=="pci"
ID=="0000:00:0e.0"
DRIVER=="unknown"
SYSFS{class}=="0x060400"
SYSFS{device}=="0x00ed"
SYSFS{irq}=="0"
SYSFS{local_cpus}=="1"
SYSFS{modalias}=="pci:v000010DEd000000EDsv00000000sd00000000bc06sc04i00"
SYSFS{subsystem_device}=="0x0000"
SYSFS{subsystem_vendor}=="0x0000"
SYSFS{vendor}=="0x10de"
looking at the device chain at '/sys/devices/pci0000:00':
BUS==""
ID=="pci0000:00"
DRIVER=="unknown"
As you can see, I have highlighted the 'Driver' and 'SYSFS(Vender)' entries. The driver entry will reflect the type of card you are using. This will always be the 'cx8800' for the Hauppauge Nova-T cards.
We will use the 'SYSFS{vendor}' entry to uniquely identify the remote control when we assign a static Event number. Make a note of your 'SYSFS(vender)=ID' because we will use it in the next step. For reference, my SYSFS(vender) is "0x14f1", which will probably be the same for all Nova-T cards.
Now we need to create a rule to map SYSFS(vender) to an Event ID. To do this, enter the command below.
Code:
sudo nano /etc/udev/rules.d/10-local.rules
Copy and paste the following into the new file.
Code:
KERNEL=="event*",SYSFS{vendor}=="0x14f1",SYMLINK="input/irremote"
IMPORTANT: Replace "0x14f1" with your own SYSFS(vender), if different.
Press 'CTRL+X', then 'Y', followed by 'Enter' to save and close the file.
Now we need to restart UDEV with the following command.
Code:
sudo /etc/init.d/udev restart
To confirm the configuration is a success, enter the following command.
If all has gone well, you should see an output similar to what you see below.
Code:
total 0
crw-rw---- 1 root root 13, 64 2006-10-02 22:27 event0
crw-rw---- 1 root root 13, 65 2006-10-02 22:27 event1
crw-rw---- 1 root root 13, 66 2006-10-02 22:27 event2
crw-rw---- 1 root root 13, 67 2006-10-02 22:27 event3
crw-rw---- 1 root root 13, 68 2006-10-02 22:27 event4
lrwxrwxrwx 1 root root 6 2006-10-02 22:27 irremote -> event3
crw-rw---- 1 root root 13, 63 2006-10-02 22:27 mice
crw-rw---- 1 root root 13, 32 2006-10-02 22:27 mouse0
crw-rw---- 1 root root 13, 128 2006-10-02 22:27 ts0
PART 2: Installing The Lirc Server
We need to install lirc, the Linux Infra-Red Receiver. Lirc will handle all of the communication between your remote control and your computer
Code:
sudo aptitude install lirc
Time for another little test! You will need to have two terminals open at the same time to perform this test. In the first terminal, type what you see below
Code:
sudo /usr/sbin/lircd -H dev/input -d /dev/input/irremote -n
And in the second terminal, type:
Press some buttons on the remote control and you should see some output in one of the terminals. Once you have done with that, press CTRL+C to finish.
PART 3: Configuration Files
You need to download the zip file attached to this post and extract it to reveal the "lircd.conf" and "hardware.conf" configuration files. You need to move these files to /etc/lirc
Code:
sudo chown root:root hardware.conf lircd.conf
Code:
sudo mv lircd.conf /etc/lirc
Code:
sudo mv hardware.conf /etc/lirc
Finally, activate the Lirc server by typing:
Code:
sudo /etc/init.d/lirc start
PART 4: Installing The KDE Lirc Front End, IRKICK
The next thing we need to do is install the KDE front end for lirc, called IRKICK.
Code:
sudo aptitude install kdelirc
NOTE: For this very reason, this guide is for Kubuntu users only. I am not aware of a GNOME front end for Lirc. But if you know of one, this is when you should install it.
PART 5: Key Mapping
Go to the K menu, point to Utilities and click on KDE Lirc Server (IRKICK).
If you don't see it there, you may have to wait a couple of seconds, or reboot your computer.
Look over at your taskbar and you will see a little antenna. If your configuration is a success, the antenna will be surrounded by red radiowaves.
This icon will light up whenever a button is pressed on the remote control. Press a few buttons now to test it for yourself!
All that is left to do now is to configure the buttons on the remote control to perform a specific action.
Right click the antenna icon in your taskbar and select configure. Click the add button on the right hand side and a wizard will begin and guide you through the rest!
PART 6: Starting IRKICK Automatically with KDE
This is actually quite simple. Right click the IRKICK icon in the taskbar and choose 'Quit'. A notice pops up asking if you would like IRKICK to start automatically with KDE. Simply click OK.
Enjoy!
***********************************************
Acknowledgements:
Thanks go out to the author of this guide, from which my own guide is based
Thanks to James Muscatt for helping out at Hauppauge forums.
Bookmarks