Day 3: Conferences: Linux/IrDA



Dag Brattli wrote the initial IrDA support for linux and he was later joined by Thomas Davis, who gave this talk. He explained the different layers and protocols involved. There are actually quite a few, and they are implemented in the recent linux kernels.

[picture]

For more details, you should look at his slides in the picture library

As far as the kernel is concerned, irLAN is for peer to peer networking, IrCOMM is for com and lpt support, while the other kernel options are for speeding up connections, like caching LSAP info, or fast RR (receiver ready) where you keep sending data even if you haven't received the acknowledgement.

[picture]

Linux has deflate compression over the IrDA link. There is however no compression scheme set in the standard currently, and when Dag and Thomas talked to the standard people, they thought it was a good idea and when Dag or Thomas gets a chance to present their work, it should be added in the standard.

As for the device drivers, there is are SIR (slow speed infrared 0->115kb/s) and FIR (Fast speed infrared will go to 4Mbit/s or even up to 16Mbit/s). For FIR, there is a list of chipsets to choose from and pretty much the only way to find out is to check the Win98 driver, or try all of them one for one. The SMC IrCC is rather popular.
Another option is to buy a dongle that plugs into the serial port in order to add SIR support to an older PC.

If you have FIR support, it will look like a network interface, but for it to work you will need to disable the serial port associated to it first: setserial /dev/ttyS2 port 0, as FIR is backward compatible with SIR, and you can't have the irda0 network device up at the same time than the tty serial port.

As far as status of completeness of the project, the kernel part is mostly done, but there is still work needed in userland. For instance, ifconfig/route/netstat are unaware of Ir network devices. The kernel side can be improved a bit by having a kernel thread for Irmanager instead of a user tool which comes with irda-utils.
The setup that you get with irda-utils looks a bit like the pcmcia setup.

As for non IrDA infrared transfers, like remote controls for TVs. Lirc is a linux package that will sample those signals and resend them through your infrared serial port.

[library] Picture library [back] Back to Main Page [next] Next page


[ms free site] Email
Link to Home Page

99/08/13 (05:22): Version 1.0