Unsupported Version
This article applies to an unsupported version of Ubuntu. More info...


Needs Updating
This article needs updating to include the latest versions of Ubuntu. More info...

This document outlines how to get IrDA infrared connections working with Ubuntu 5.04 and the FIR driver. This procedure also works for Ubuntu Breezy development release colony 3. It is unknown if these instructions apply to later versions of Ubuntu.

Working in FIR mode with (k)ubuntu 8.10 - Toshiba laptop, smsc-ircc device with "no" BIOS setting for IrDA. Setup is similar. See smsc-ircc2.

  1. Install the irda-utils and setserial packages from the Universe repository

  2. Ensure that infrared/IrDA is enabled in your BIOS; if not, enable it and reboot. Your computer's BIOS manual should have instructions on enabling infrared.
  3. Open a Terminal and type: sudo gedit /etc/default/irda-utils

  4. Change the line reading DEVICE="/dev/ttyS1" to DEVICE="irda0"

  5. Change the line reading SETSERIAL="" to SETSERIAL="/dev/ttyS1"

  6. Save the file and then open the /etc/modprobe.d/irda-utils file.

  7. Add the following two lines to the end of the file:
    alias irda0 nsc-ircc
    options nsc-ircc dongle_id=0x09
  8. Save the file and then open the /etc/modules file.

  9. Add the following line to the end of the file: ircomm-tty

  10. Save the file and exit the text editor.
  11. To restart irda, open a Terminal and type:

    sudo /etc/init.d/irda-utils stop
    sudo /etc/init.d/irda-utils start
  12. To load the FIR IRDA driver, type: sudo modprobe irda0

  13. To load the the ircomm-tty module, type: sudo modprobe ircomm-tty


1. smsc-ircc2 is configured as a module in the (k)ubuntu 2.6.27-9-generic kernel.

2. Install irda-utils and setserial packages.

3. Open a terminal and type (using nano editor).

sudo nano  /etc/modprobe.d/irda-utils

edit - add line:

alias irda0 smsc-ircc2

Ctrl-X then Y then Return to save. Then:

sudo nano /etc/default/irda-utils

edit - as follows:


Save as before. Then:

sudo nano /etc/init.d/irda-setup

edit - under: FIR="smsc-ircc2"; - edit:

OPTIONS="--ignore-install ircc_dma=3 ircc_irq=3 ircc_fir=0x130 ircc_sir=0x3f8"

Save as before.

4. Start IrDA as in the first section. However, following subsequent bootups, IrDA may be started and stopped in a terminal, as follows.

Start IrDA:

sudo irattach irda0 -s

Stop IrDA:

sudo killall irattach

  • Modules ircomm, ircomm-tty, etc may be loaded as required. Testing operation is the same as below. Outputs will vary of course.

NOTE: Invoking smcinit or setting to "yes" in /etc/defaults/irda-utils prevents operation of the smsc-ircc device. It is only useful to probe the device using the -v (verbose) option.

Testing operation

Open a Terminal and type dmesg. The output from dmesg should be similar to the following:

nsc-ircc, Found chip at base=0x02e
nsc-ircc, driver loaded (Dag Brattli)
IrDA: Registered device irda0
nsc-ircc, Using dongle: IBM31T1100 or Temic TFDS6000/TFDS6500
irlap_change_speed(), setting speed to 9600

If you put a mobile phone or something with an IR interface in front of the IR receiver on your laptop, the IR daemon should pick it up. You can confirm this by typing the following in a Terminal:

cat /proc/net/irda/discovery

The following is example output from the previous command:

IrLMP: Discovery log:
nickname: LGE U8xxx, hint: 0x9124, saddr: 0x00bfb934, daddr: 0x000034f6

You can confirm that the link is up by using irdaping:

$ sudo irdaping 0x000034f6

IrDA ping (0x000034f6 on irda0): 32 bytes
32 bytes from 0x000034f6: irda_seq=0 time=110.12 ms.
32 bytes from 0x000034f6: irda_seq=1 time=110.15 ms.

Another useful command to see if things are up and running is irdadump.

User applications

Gnome Phone Manager works using IRDA to send/receive SMS messages via phones. It has been tested using a Nokia 6610 and LG U8138 phone using the procedure described in this document. Install the gnome-phone-manager package from the Universe repository in order to use Gnome Phone Manager.

IrdaHowto (last edited 2017-09-13 01:18:07 by ckimes)