Annexe I. Faire marcher son port infrarouge

Table des matières
1. Comment on installe ?
1.1. Compiler les modules du noyau
1.2. Installer les programmes
2. Comment ça marche ?

Il faut bien reconnaître que depuis l'apparition des cartes bluetooth et wireless, le port IrDA est moins utilisé, mais il reste néanmoins un moyen de communication entre laptops très pratique quand on a rien sous la main ou encore pour une liaison avec un PDA.

1. Comment on installe ?

1.1. Compiler les modules du noyau

Afin de faire marcher le port infrarouge, il faut compiler les drivers du noyau. Ces derniers sont regroupés dans le sous-menu :


Networking support --> IrDA (infrared) subsystem support

Activez les options suivantes :


<M> IrDA subsystem support
---   IrDA protocols
<M>   IrLAN protocol
<M>   IrNET protocol
<M>   IrCOMM protocol
---   IrDA options
[*]   Cache last LSAP
[*]   Fast RRs (low latency)

Si vous avez des périphériques à connecter par IR, ceux-ci sont nommés "dongle" dans le kernel. Choissisez alors le driver qui convient (cette partie ne sera pas traitée ici pour le moment). Allez dans le sous-menu Infrared-port device drivers et choissisez :


--- SIR device drivers
<M> IrTTY (uses Linux serial driver)
--- Dongle support
[*] Serial dongle support

Nous allons utiliser les drivers SIR, bien que ceux-ci soient plus lents que les FIR. En effet, ils sont supportés par presque tous les matériels. En cas de soucis (avec les portables Toshiba en particulier) ou si vous voulez utiliser le FIR, il existe un howto, pas très à jour mais suffisant, à l'adresse http://tuxmobil.org/Infrared-HOWTO/Infrared-HOWTO.html

Attention

Une petite remarque en passant : sur mon portable, le port infrarouge (maintenant que nous sommes intimes appelons le IR), était désactivé dans le BIOS par défaut. Vérifiez bien que ce n'est pas le cas chez vous ! Quand vous l'activez, vérifiez qu'il est bien en mode SIR (Slow mode) et notez le port COM

Vérifiez que vous avez le support pour le ppp dans le noyau et vous pouvez alors compiler et installer votre nouveau noyau, comme indiqué au chapitre Compiler le noyau.

1.2. Installer les programmes

Nous pouvons installer la partie userland qui gère le port IR :


# apt-get install irda-utils

Il faut répondre à une série de questions posées via debconf :

  • If you want to enable IrDA, say "Yes" : Oui, bien sûr :)

  • Select IrDA device type : serial

  • Specify a serial device file for IrDA : Il faut saisir le numéro du port série que vous avez notez dans le BIOS, avec la règle suivante : COM1 -> /dev/ttyS0 ; COM2 -> /dev/ttyS1 ...

  • Specify the dongle type : si vous connaissez le driver de votre "dongle" précisez le à ce moment.

  • Specify discovery behavior : Oui

Toutes ces valeurs sont stockées dans le fichier /etc/irda.conf, que vous pouvez éditer ou modifier si vous voulez changer quelque chose. Une autre méthode est de passer par debconf en utilisant :


# dpkg-reconfigure irda-utils

L'installation de irda-utils a créé un fichier nommé /etc/modutils/irda. Comme nous utilisons le noyau 2.6.X, nous allons le copier dans /etc/modprobe.d/ :


# cp /etc/modutils/irda /etc/modprobe.d/

Il faut maintenant l'éditer et le changer ainsi :


alias tty-ldisc-11 irtty-sir
alias char-major-161 ircomm-tty
alias char-major-60 ircomm_tty
alias char-major-10-187 irnet
                                                                                
# for dongle
alias irda-dongle-0 tekram-sir
alias irda-dongle-1 esi-sir
alias irda-dongle-2 actisys-sir
alias irda-dongle-3 actisys-sir
alias irda-dongle-4 girbil-sir
alias irda-dongle-5 litelink-sir
alias irda-dongle-6 airport-sir
alias irda-dongle-7 old_belkin-sir

N'oubliez d'exécuter update-modules ensuite afin de tenir compte de ces changements.


# update-modules

Si ce n'est pas fait, vous pouvez redémarrer afin d'utiliser votre nouveau noyau.

2. Comment ça marche ?

TODO : Connexion avec un PDA, IrLAN

Une fois que tout est installé, il est possible d'utiliser le port IR de plusieurs manières. J'ai choisi ici de ne présenter que la méthode IrNET, qui me semble la plus pratique. Cette méthode utilise PPP pour créer une connexion entre 2 ordinateurs utilisant IrNET.

Avant de commencer, il faut créer un fichier /etc/ppp/options.irnet contenant :


local
noauth
nolock
connect-delay 0
idle 10
lcp-echo-failure 2
lcp-echo-interval 5
nobsdcomp
deflate 11 11

Vous pouvez maintenant lancer des connexions sur les 2 ordinateurs à connecter :


# pppd /dev/irnet 9600 local noauth

Le paramètre de vitesse est indispensable pour pppd, mais IrNet ne l'utilise pas. Si vous voulez qu'un ordinateur se comporte comme un serveur :


# pppd /dev/irnet 9600 local noauth passive

pppd devrait attribuer automatiquement les IP aux ordinateurs se connectant, mais dans le cas contraire (si noipdefault est activé par exemple), il est possible de les spécifier :


# pppd /dev/irnet 9600 local noauth 10.0.0.1:10.0.0.2

Vous pouvez maintenant utiliser la connexion comme n'importe quelle connexion PPP. Pour plus de finesse dans l'utilisation, un petit man pppd vous en apprendra beaucoup.