Is my USB IrDA dongle supported by LIRC?
No, it's technically not possible to use USB IrDA
dongles (as specified by the Infrared Data Association) with LIRC. This does not apply to USB receivers in general.
Can I use my home-brew receiver and transmitter on
the same serial port?
Yes, just make sure that you enable transmitter
support during configuration of LIRC.
The value of the resistor in the receiver circuit
is labeled as '4k7' Ohm. Is this 4.7 Ohm, 4.7 kOhm
4k7 Ohm means 4700 Ohm. k is the abbreviation of
Can I use a home-brew LIRC receiver with a Serial
to USB adapter?
No, this won't work. But there is a project
working on a dedicated USB
transceiver or you can connect an IR
receiver to a FTDI
based USB chip. Using an Irman with USB
adapter should work though.
I have a Hauppauge TV card. Can I use a different
remote control with this TV card except the
original Hauppauge remote control?
The Hauppauge remote control uses the RC-5
protocol. You should be able to use any TV remote
control that uses this protocol. Common brands
that use this protocol are Philips and
Marantz. A short description how to setup LIRC with an universal remote control was posted on the mailing list.
How do the drivers for the home-brew receivers
work? Do they use polling?
No, the serial port driver is fully interrupt
driven. On each edge of the IR signal the
interrupt handler is called and the time since the
last interrupt is calculated. As the parallel port
only generates interrupts on the rising edge of
the input signal, the parallel port driver uses
polling with the help of the hardware timer until
the signal becomes low again. As it is polling
only for microseconds this has no noticeable effect
on system performance.
I would like to connect an LCD display and an
home-brew IR receiver to the same serial
port. Will this work?
No, unless somebody writes a driver that merges
the functionality of the kernel serial port driver
and the LIRC lirc_serial driver. This is not
trivial. I don't have any plans to do it.
I'm unable to compile lirc-0.8.7 with kernel 2.x.x.
lirc-0.8.7 has been tested with kernel
versions up to 2.6.35. Older versions should
also work. 2.4.x kernels are not supported
anymore, but chances are good that it's still
working. The last release officially
supporting 2.4.x was 0.8.2. Please don't
report problems with compilation on 2.4.x
kernels. 2.2.x kernels are not supported
From 2.6.36 on all LIRC kernel drivers are
already included in the kernel. There has been
a slight interface change in the LIRC ioctls
that will affect 64-bit kernels. For recent
kernels please only use 0.9.0 which is
compatilbe with the in-kernel drivers.
When I try to compile LIRC I get this error message.
make: Entering directory `/usr/src/lirc-0.6.4/drivers/lirc_serial'
DIR=`pwd`; (cd /usr/src/linux/; make SUBDIRS=$DIR obj-m=lirc_serial.o modules)
/usr/src/linux/scripts/pathdown.sh: TOPDIR: parameter null or not set
make: Entering directory `/usr/src/linux'
make: *** No rule to make target `lirc_serial.o', needed by `modules'.
This means that you did not set up and compile
your current kernel from the given Linux kernel
sources. Recompile your kernel and reboot before
proceeding to compile LIRC. There is no other
reliable way to get working LIRC modules than
compiling your kernel yourself. During compilation
LIRC uses the kernel sources to get the current
When I try to compile a LIRC kernel module I get
this error message.
The present kernel configuration has modules disabled.
Type 'make config' and enable loadable module support.
Then build a kernel with module support enabled.
You did not configure
your kernel sources properly. Some people have
reported that it's sufficient to simply run 'make
[menu|x]config' once. But I don't recommend this
as it may lead to problems that are really hard to
track down. You have to make sure that you are
compiling LIRC modules with your current kernel
configuration. The only way to make this sure is
to compile your own kernel.
I have compiled the kernel modules necessary for
my hardware ok, but when I try to load them with
modprobe I get lots of unresolved symbols.
Your modules do not match the currently running
kernel. See the answers to the previous two
I have trouble to create a working lircd config file
for my remote. What can I do?
Please read the documentation about how to add
new remote controls.
Which kernel module do I have to load for my
The documentation contains a detailed list
how to setup the various devices supported by
When I run irrecord or mode2 I get an error
message like this:
mode2: error opening /dev/lirc
mode2: Device or resource busy
Another application is probably already accessing
/dev/lirc. Only one process can use the device at
a time. You can find out which process uses the
device by calling (as root) fuser
Most of the time I have to push a button twice for
LIRC to recognize it. What's wrong?
The remote control probably uses the RC-5,
RC-6 or RECS80 protocol, but irrecord wasn't
able to recognize this correctly.
Try running irrecord
remotes/generic/RC-6.conf or irrecord
remotes/generic/RECS80.conf. You will
find these template config files inside the
LIRC source package. If this won't work read
Every time I press a button on my remote control
irw will show at least 5 events (or any other
number > 1) independent of how short I try
pressing the button.
In most cases this is the correct behavior. Many
remote controls send the same code multiple times
to make sure that at least one code comes through
to the receiver when you press a button for a
short time. The default .lircrc setup ignores
repeat events. If you want to use the button to do
things repeatedly when it is being hold down, like
e.g. increasing the volume or something similar,
you should use the delay token (will be
available in 0.7.0) in your .lircrc file.
You can identify such remotes by the fact that
irrecord usually will add a min_repeat
field for this remote control to the lircd.conf
If you want to suppress those repeats
already at lircd level, you can also add
suppress_repeat x to the
lircd.conf config file where x is
the number of repeats you want to
suppress. This feature is available in lircd
since release 0.8.6.
Only root can run LIRC applications. When I run
LIRC applications (e.g. irexec) I get
this error message:
irexec: could not connect to socket
You have to change the file permissions of
/dev/lircd. Usually it should be safe to give
everyone read and write permissions. I try to make
the daemon as secure as possible. You can also
create a special group for this purpose.
chmod 666 /dev/lircd
I'm running Mandrake 9.2 and the LIRC applications
could not connect to socket
These applications expect the lircd socket in /tmp
The following command will fix the problem.
ln -s /dev/lircd /tmp/.lircd
Please note that you might have to execute this
command on every system startup as /tmp usually is
cleaned up during startup.
I need a config file for <brand>
<device>. Do you have such a config
If it's not on the website, then I don't have
it. Please don't ask me for config files.
Do you speak German?
use English when sending emails.
Why didn't you answer my mail?
I get way more mails than I can handle. If you
don't get an answer to your question the
probability is very high that you will find the
answer in the documentation.
Mails about Total irRemote will go to /dev/null