Table of Contents

IrDA History

Type Speed (max rate) Year WindowSize (frames)
SIR 115.2 Kbit/s 1994 7
FIR 576 Kbit/s 1995 7
FIR 1.152 Mbit/s 1995 7
FIR 4 Mbit/s 1995 7
VFIR 4 Mbit/s 1999 127

IrDA Glossary

IrDA Protocol Layer

A chart of IrDA Protocol Layers:

Linux IrDA Device Support

Supported IrDA devices:

Use IrDA Under Linux

  1. Configure the IrDA drivers:
    Make menuconfigNetworkingIrDA ( infrared ) subsystem supportInfrared-port device drivers
  2. Attach IrDA stack to IrDA devices:
    If you use Irtty driver on PC, please be sure you have enabled IR function in BIOS, usually it will enable the IR function on COM2. Then run:
    # modprobe irtty-sir
    # irattach /dev/ttyS1 -s

    If you use Irtty driver on blackfin, please enable UART1 driver first, as UART0 is used for Console, and attach the IRDA-SIR Add-On card to UART1's connector. Run:

    # modprobe irtty-sir
    # irattach /dev/ttyBF1 -s&

    If you use bfin_sir.ko as SIR drivers, run:

    # modprobe bfin_sir
    # irattach irda0 -s&

    If you use other drivers, please refer to: Linux-IRDA Project

  3. Test IrDA connections:
    If there are other active IrDA devices in the range (3 feet or 1 meter), you can find them through:
    # cat /proc/net/irda/discovery 
    IrLMP: Discovery log:
    nickname: blackfin, hint: 0x8420, saddr: 0x92bd07ac, daddr: 0xcce60c43

    Then you can use irdaping to test the connections:

    # irdaping 0xcce60c43

    You will see messages just like 'ping'.

  4. For example, use ircp to transfer files:
    On receiver side, run:
    # ircp -r

    On transfer side, run:

    # ircp some_file

    Program will exit until the transfers is finished.

Linux IrDA Device Driver Frame Work

Frame work initialize:

Core transive functions:

Frame work deinitialize:

Notes for Testing IrDA on Variant Boards

Blackfin IRDA Add-On-Card: irda_sir






Notes for all boards