8.2 PC Laptop with Built-In IrDA

 <  Day Day Up  >  

There is a lot of hardware out there, and it's all put together slightly differently. We got infrared working under a couple of different distributions, both with a dongle and the internal infrared. Your configuration should be similar, but if you run into any trouble, check out Jean Tourrilhes's Linux-IrDA Quick Tutorial at http://www.hpl.hp.com/personal/Jean_Tourrilhes/IrDA/IrDA.html.

To make sure you are up to date with the most recent bug and security fixes, make sure you've installed the most recent updates that are available for your Linux distribution, especially for the kernel and associated modules.


Out of the box, we were unable to get infrared working in SIR or FIR mode on our computer, a ThinkPad A20m. On a whim, we went into the BIOS and tried different IRQ and port settings. The combination of IRQ 4 and port 0x3E8 did the trick. The ThinkPad didn't let us switch from FIR to SIR mode in the BIOS, but it let us use SIR mode without any complaints under several Linux distributions.

On all of the Linux distributions described in the following list, we performed some initial steps to discover the infrared port. First, we booted the system, and then inspected the output of dmesg to get a list of serial ports:

 debian:~#  dmesg  grep tty  ttyS01 at 0x02f8 (irq = 3) is a 16550A ttyS02 at 0x03e8 (irq = 4) is a 16550A 

We used this information to figure out which serial devices corresponded to the infrared hardware. If there are a lot of serial devices on your system, this may involve some guesswork or at least a look around the BIOS settings. In this infrared port, we knew that the first serial devices listed ( /dev/ttyS1 ) corresponds to the 9-pin serial port on the back of the computer, so that left /dev/ttyS2 .

In each of the following examples, we rebooted after making the changes to ensure that everything worked. If you'd like to preserve your uptime, try running /etc/init.d/irda restart after making the changes instead of rebooting.


Debian 3.0r1

Because the latest 2.4 kernel-image package (2.4.18-14.1) was showing its age, we compiled and installed the latest kernel from source (2.4.24). Other than that, we worked with a stock 3.0r1 install with the latest updates. To get infrared working, we installed the irda-common and irda-tools packages, and edited /etc/irda.conf , setting IRDADEV=/dev/ttyS2 . irda-common sets up /etc/init.d/irda to start in all runlevels, so we didn't need to modify any startup scripts. However, Debian did not put our mortal user into the correct group ( dialout ) to access serial ports, so we fixed that with usermod -G dialout username .


SuSE 9.0

The irda package, which was installed by default, provided all the utilities we needed for IrDA support. We set IRDA_PORT="/dev/ttyS2 " in /etc/sysconfig/irda . Next, we ran insserv /etc/init.d/irda to enable IrDA support to start at boot time.


Mandrake 9.2

To get infrared working, we installed the irda- utils package and edited /etc/sysconfig/irda , setting DEVICE=/dev/ttyS2 . irda-utils sets up /etc/init.d/irda to start in all runlevels, so we didn't need to modify any startup scripts. Mandrake did not put our mortal user into the correct group ( uucp ) to access serial ports, so we fixed that with usermod -G uucp username .


RedHat 9

The irda-utils package, which was installed by default, provided all the utilities we needed for IrDA support. We set DEVICE=/dev/ttyS2 in /etc/sysconfig/irda . Next, we ran chkconfig --level 5 irda on to enable IrDA support to start in runlevel 5, the default runlevel for Red Hat Linux running in graphical mode (check your /etc/inittab to see the default runlevel for your system or use the runlevel command to see your current runlevel). Red Hat did not put our mortal user into the correct group ( uucp ) to access serial ports, so we fixed that with usermod -G uucp username .


Gentoo 1.4

We installed the infrared utilities with emerge irda-utils and set IRDADEV=/dev/ttyS2 in /etc/conf.d/irda . Next, we enabled the irda startup script with rc-update add irda default . The ircomm devices were owned by root, so we gave the uucp group access to them with chgrp uucp /dev/ircomm* and chmod g+rw /dev/ircomm* , and then gave our mortal user access with usermod -G uucp username .

 <  Day Day Up  >  


Linux Unwired
Linux Unwired
ISBN: 0596005830
EAN: 2147483647
Year: 2004
Pages: 100

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net