
                                Linux IR HOWTO

Werner Heuser, < wehe@snafu.de >
Traduction franaise par Mathieu Arnold < arn_mat@club-internet.fr >

   v2.4, 9 Fvrier 1999
     _________________________________________________________________

   _Une introduction  Linux et aux priphriques infrarouges, et comment
   utiliser les logiciels fournis par le projet Linux/IrDA. Ce paquetage
   utilise utilise le standard IrDA(TM). IrDA(TM) est un standard
   industriel utilis pour les communications infrarouges sans fils, et
   la majorit des ordinateurs portables construits aprs janvier 1996
   sont quips de transmetteurs infrarouges compatibles IrDA. Les ports
   infrarouges permettent de communiquer avec des imprimantes, modems,
   fax, LAN et d'autres portables. La vitesse de transmission va de
   2400bps  4Mbps. La pile Linux/IrDA supporte IrLAP, IrLMP, IrIAS,
   IrIAP, IrLPT, IrCOMM, IrOBEX, et IrLAN. De nombreux protocoles sont
   implments en tant que clients et serveurs. Les connections multiples
   via IrLAPsont aussi supportes, via plusieurs priphriques IrDA en
   mme temps. Le projet Linux/IrDA  dmarr  la fin de l'anne 1997 et
   son statut est toujours exprimental, alors, n'esprez pas que tout
   marchera du premier coup. D'aprs ce que je sais, Linux/IrDA est la
   _seule_ implmentation libre disponible actuellement. Le contrle 
   distance (Remote Control : RC) via infrarouge n'est pas le but de ce
   projet, malgr tout, ce sujet est trait partiellement dans ce HOWTO._
     _________________________________________________________________

1. Introduction

   _Better red, than dead. - Unknown AuthorEss_

   Depuis 2.1.131 et 2.2.0, Linux/IrDA fait partie du noyau. Notez
   toutefois que le statut de ce projet est toujours exprimental. Si
   vous avez besoin d'informations  propos du support Linux/IrDA pour
   les noyaux 2.0.x, allez voir l'ancienne version de ce howto disponible
    http://www.snafu.de/~wehe/index_li.html. Mais d'aprs ce que je
   sais, ce paquetage n'est plus maintenu.

   Les compagnies et les dveloppeurs qui aimeraient participer  ce
   projet devraient contacter le projet Linux/IrDA 
   http://www.cs.uit.no/~dagb/irda ou moi  < wehe@snafu.de >.

   Maintenant, un peu d'histoire. Le projet dmarra  la fin de l'anne
   1997 avec le nom Linux/IrDA. A cause de problmes dus au fait que le
   nom IrDA est une marque dpose par l'Infrared Data Association IrDA
   http://www.irda.org/, le nom a t chang en Linux/IR. A la fin de
   l'anne 1998, les relations entre nous et eux devinrent meilleures, et
   le nom redevint Linux/IrDA.

   Ce document est bas sur la partie "Comment l'utiliser" du site
   Linux/IrDA http://www.cs.uit.no/~dagb/irda/howto.html. J'ai aussi
   inclus des informations provenant de l'quipe Linux/IrDA, de la liste
   de diffusion, ainsi que d'autres sources.

   Ce document fait partie du LINUX DOCUMENTATION PROJECT
   http://metalab.unc.edu/LDP.

   La dernire version de ce document est disponible 
   http://www.snafu.de/~wehe/index_li.html (version anglaise) et
   http://www.freenix.org/unix/linux/HOWTO/IR-HOWTO.html (version
   franaise)

   J'ai essay de vrifier toutes les informations, mais je n'ai pas tout
   le matriel infrarouge ncessaire, alors, si cela ne marche pas pour
   vous, ne m'accusez pas.

   Si vous avez des commentaires ou des questions, n'hsitez pas  me
   contacter. Je sais que ce document n'est ni fini ni parfait, mais
   j'espre qu'il vous sera utile.

   <Werner Heuser>

2. Prrequis

     * BIOS
       - Assurez vous que le port infrarouge est bien activ dans le
       BIOS, et vrifiez quelle interruption et quel port il utilise.
     * Puce contrleur infrarouge
       - Assurez vous que votre port infrarouge soit bien dtect par
       Linux. Pour plus de dtails, rfrez vous  la section "Aperu du
       matriel support" ci dessous.
     * modutils
       - Assurez vous que vous avez bien modutils 2.1.x (insmod
       --version). J'utilise la version 2.1.121.
     * Librairies partages
       - La librairie libc.so.5 et le chargeur ld-linux.so.1 doivent tre
       disponibles.
       - Mais glibc2 aka libc6 devrait aussi marcher.
       - Je ne suis pas sr que vous ayez besoin de la librairie zlib si
       vous utilisez la compression de donnes.
     * Interfaces graphiques :
       Il y a actuellement deux interfaces graphiques pour Linux/IrDA qui
       sont en dveloppement :
          + GNOBEX, une application GNOME dveloppe par Dag Brattli
            http://www.cs.uit.no/~dagb/irda/irda.html avec le support du
            glisser/dposer depuis le gestionnaire de fichier GNOME
            (gmc). Il indique aussi la progression du transfert en cours
            et donne de bons messages d'erreurs quand quelque chose
            tourne mal. L'interface graphique n'est pas termine pour
            autant, mais si vous voulez la tester, vous aurez besoin du
            module Perl-GTK+.
          + KDE, une application KDE dveloppe par Thomas Davis. Allez
            faire un tour sur sa page http://www.jps.net/tadavis/irda.
       Pour vous autres lecteurs - voici votre chance de contribuer ! Ces
       deux interfaces graphiques ncessitent des icnes. Toutes les
       icnes doivent :
       a) Avoir une taille fixe (je pense que 48x48 pixels semble tre la
       taille commune).
       b) Grosse & petite (les petites sont pour tre dockes).
       c) 16 couleurs.
       d) Libres de tous droits.
       e) SVP, ne copiez pas des icnes microsoft !
       Contactez les dveloppeurs.
     * Scurit
       - _Trs important_, vous devez faire un sync sur vos disques !!!
       Vous aurez peut tre  rebooter votre machine. N'avez vous pas lu
       le dsistement de responsabilit ?
     * Divers
       - Autres programmes utiles : APSFILTER, EZ-Magic, MagicFilter ou
       quelque chose de similaire pour configurer les imprimantes.

3. Noyau

   S'il vous plat, lisez le Kernel-HOWTO pour trouver plus
   d'informations sur la compilation. Vous trouverez les sources de
   Linux/IrDA dans :

   /usr/src/linux/net/irda (protocoles)

   /usr/src/linux/drivers/net/irda (pilotes de priphriques)

   /usr/src/linux/include/net/irda (fichiers d'en-ttes)

3.1 Configuration gnrale

   - Assurez vous que vous utilisez bien les sources du noyau _noyau
   2.2.x_. Si vous n'tes pas sr de la version de votre noyau, essayez
   uname -r.

   - Rcuprez le dernier patch du projet Linux/IrDA
   http://www.cs.uit.no/~dagb/irda/snapshots/. Mettez le dans /usr/src ou
    l'endroit o vous avez les sources de votre noyau, et appliquez
   quelque chose ressemblant  (remplacez le nom du patch
   patch-2_2.0-irdaXXX par le nom du fichier que vous avez) :

cd /usr/src
tar xvzf patch-2_2.0-irdaXXX.tar.gz
cd linux
patch -p1 -l < ./patch-2_2.0-irdaXXX

   - Le support pour le code exprimental doit tre activ
   (CONFIG_EXPERIMENTAL).

   - Activez sysctl dans le "General Setup" (CONFIG_SYSCTL).

   - Vous devriez avoir _proc file system support_ (CONFIG_PROC_FS).

   - De mme _serial support_ pour les fonctionnalits SIR
   (CONFIG_SERIAL).

   - Je ne suis pas certain qu'il y ait besoin d'y avoir le _printer
   support_ pour utiliser une imprimante avec Linux/IrDA
   (CONFIG_PRINTER). Mais je suppose que cette fonctionnalit n'est pas
   ncessaire

   - Le _Networking support_ doit tre activ (CONFIG_NET).

   - Assurez vous que vous avez le _module support_ (CONFIG_MODULES) dans
   votre noyau ! Testez en faisant lsmod.

   - De mme le support de kerneld (CONFIG_KERNELD) est recommand. Mais
   kmod (CONFIG_KMOD) marche aussi. Une noyau monolithique semble aussi
   marcher.

   - Matt Francis a crit : "J'ai remarqu que certains modules ont
   besoin non seulement du support pour les modules, mais aussi du _misc
   user device support_." (CONFIG_UMISC).

   Si vous avez juste appliqu le patch Linux/IrDA, vous ne devriez pas
   avoir  faire un make clean, alors, cela devrait aller un peu plus
   vite. Je vous suggre de faire un truc dans ce style :

make dep && make all && make modules && make install && make modules_install

   Si vous avez des erreurs vraiment bizarres, alors, essayez de
   recompiler aprs un make clean.

3.2 Paramtres spcifiques  IrDA

   Voici ce que j'ai suggr pour
   ../linux-2.2.x/Documentation/Configure.help, des morceaux viennent de
   Dag Brattli et Andreas Butz :

  IrDA subsystem support

   CONFIG_IRDA

   IrDA(TM) est un protocole industriel standardis pour les
   communications infrarouges sans fils. Les ports infrarouges vous
   permettent de communiquer avec des imprimantes, modems, fax, rseaux
   et ordinateurs portables. La vitesse de transmission varie de 2400bps
    4Mbps. Pour utiliser ces fonctionnalits, vous aurez besoin du
   paquetage irda_utils fournis par le projet Linux/IrDA (
   http://www.cs.uit.no/~dagb/irda/). Pour de plus amples informations,
   vous pouvez trouver le IR-HOWTO 
   http://www.snafu.de/~wehe/index_li.html. Pour l'instant, il est
   conseill de compiler le support IrDA en tant que module uniquement
   (Rfrez vous  Documentation/modules.txt). Notez que le support
   Linux/IrDA est toujours exprimental.

  Protocole IrDA

     * Protocole IrLAN
       CONFIG_IRLAN
       Compile le pilote IrDA rseau. Utilisez ``ifconfig eth0
       <IP-NUMBER>'' pour le configurer. - Rpondez juste Y.
     * Support des clients IrLAN
       CONFIG_IRLAN_CLIENT
       Si vous connectez des priphriques infrarouges via IrLAN, l'un
       doit tre serveur et l'autre client. Vous pouvez utiliser les deux
       en mme temps. Le premier  se connecter sera le client. -
       Rpondez juste Y.
       Note : Les derniers patch incluent le support peer-to-peer  la
       place.
     * Support pour le serveur IrLAN
       CONFIG_IRLAN_SERVER
       Si vous connectez des priphriques infrarouges via IrLAN, l'un
       doit tre serveur et l'autre client. Vous pouvez utiliser les deux
       en mme temps. Le premier a se connecter sera le client. -
       Rpondez juste Y.
       Note : Les derniers patch incluent le support peer-to-peer  la
       place.
     * Protocole IrOBEX
       CONFIG_IROBEX
       IrOBEX est un protocole pour changer des objets (fichiers, cartes
       de visite, etc.)  travers une connexion infrarouge. Vous pouvez
       l'utiliser pour changer des fichiers entre Linux et un PALM III.
       IrOBEX peut aussi tre utilis entre deux machines Linux, entre
       une machine Linux et une machine Windows95, etc. - Rpondez juste
       Y.
     * Protocole IrCOMM
       CONFIG_IRCOMM
       Via IrCOMM, il est possible de communiquer avec des tlphones
       cellulaires, etc. Pour utiliser ce service, vous aurez  crer un
       priphrique avec ``mknod /dev/irnine c 60 64'', il marche comme
       /dev/ttySx. - Rpondez juste Y.
       Note : les nombres majeurs et mineurs ne sont toujours pas
       officiels. Pour les dernires amliorations, (IrSocket est en
       chemin !), allez faire un tour sur la page de Takahide Higuchi
       http://www.pluto.dti.ne.jp/~thiguchi/irda/.
       Note : Actuellement, IrCOMM semble faire planter le noyau assez
       facilement, alors, vous devriez probablement attendre le prochain
       patch.
     * Support des clients IrLPT
       CONFIG_IRLPT_CLIENT
       Dites Y ici si vous voulez le support pour le protocole client
       IrLPT. Si vous voulez le compiler en tant que module, dites M ici
       et lisez Documentation/modules.txt. Le protocole client IrLPT peut
       tre utilis pour imprimer des documents sur des imprimantes
       compatibles IrDA telle la HP-5MP, ou sur un adaptateur IrLPT tel
       le ACTiSYS IR-100M. - Rpondez juste Y.
     * Support du serveur IrLPT
       CONFIG_IRLPT_SERVER
       Dites Y ici si vous voulez compiler le support pour le protocole
       serveur IrLPT. Si vous voulez le compiler en tant que module,
       dites M ici et lisez Documentation/modules.txt. Le protocole
       serveur IrLPT rends possible l'utilisation d'une machine Linux en
       tant qu'imprimante infrarouge pour d'autres portables. Alors, si
       votre machine Linux a une imprimante, d'autres portables pourront
       l'utiliser via la liaison infrarouge. - Rpondez juste Y.

  Options du protocole IrDA

   CONFIG_IRDA_OPTIONS

   Vous avez la possibilit de dfinir certaines options du protocole
   IrDA
     * Cache last
       LSAP CONFIG_IRDA_CACHE_LAST_LSAP
       Dites Y ici si vous voulez que IrLMP cache le dernier LSAP
       utilis. Ceci est intressant puisque la majorit des trames
       seront envoyes/reues via la mme connexion. L'activation de
       cette option vous fera gagner une recherche dans un tableau 
       chaque trame transmise. Si vous tes indcis, dites Y.
     * FAST RRs
       CONFIG_IRDA_FAST_RR
       Utilisez cette option si vous voulez envoyer les trames RR
       (Receive Ready) plus vite lorsque la queue est vide. Cela vous
       donnera de biens meilleurs temps de rponse, mais consommera plus
       de puissance,  cause des rebonds des trames RR.
     * Recycle RRs
       CONFIG_IRDA_RECYCLE_RR
       Lorsque le protocole IrLAP fonctionne normalement, il envoie
       beaucoup de petites trames RR (Receive Ready)  travers la liaison
       (tout du moins, lorsqu'il n'a rien d'autre  faire). Rpondre Y
       ici demandera  IrLAP de recycler ces trames, vitant par l mme
       plein de alloc_skb et de kfree_skb. Pour raliser cela, il va
       juste garder une trame ce qui est suffisant dans la majorit des
       cas.
     * Debug information
       CONFIG_IRDA_DEBUG
       Dites Y ici si vous voulez que IrDA donne des informations de
       dbogage  votre syslog. Vous pouvez changer le niveau de dbogage
       dans /proc/sys/net/irda/debug.
       Si vous tes indcis, dites Y (car il deviendra plus simple de
       dnicher les bogues).

  IrDA compressors

   CONFIG_IRDA_COMPRESSION

   Vous pouvez utiliser les mthodes de compression BZIP2 et BSD. Cela ne
   fait pas partie du standard IrDA. Cela permettra  deux machines Linux
   de compresser leur trafic. Cela devrait tre compatible avec les
   autres priphriques IrDA, mais les communications ne seront alors pas
   compresses.

     * Deflate compression (experimental)
       CONFIG_IRDA_DEFLATE
       Dites Y ici si vous voulez compiler le support pour le protocole
       de compression Deflate. Si vous voulez le compiler en tant que
       module, dites M et rfrez vous  Documentation/modules.txt. La
       compression deflate (GZIP) est exactement la mme que celle
       utilise par le protocole PPP. Activer cette option crera un
       module nomm irda_deflate.o.
     * BZIP2 compression
       CONFIG_IRDA_BZIP2
       Pas d'aide disponible.
     * BSD compression
       CONFIG_IRDA_BSD
       Pas d'aide disponible.

  Pilotes de priphriques infrarouges

   Trois types de pilotes sont disponibles : srie, dongle et FIR. Ils
   apparatrons dans /proc/net/dev (irda0) aprs initialisation.

  IrTTY (utilise le pilote srie)

   La majorit des puces IrDA supportent StandardInfraRed (SIR), qui
   marche jusqu' 115200 bps et mmule un port srie (UART 16550A). Sur
   beaucoup de portables, ce port est dtect par le pilote srie du
   noyau, rfrez vous a ``dmesg''. IrTTY connecte les services
   Linux/IrDA  ce port. - Vous devriez dire Y ici.

     * Support du dongle srie
       CONFIG_IRTTY_SIR
       Dites Y ici si vous voulez compiler le support pour la IrTTY line
       discipline. Si vous voulez le compiler en tant que module, dites M
       et rfrez vous  Documentation/modules.txt. IrTTY rends possible
       l'utilisation du pilote srie de Linux pour tous les ports IrDA
       qui sont compatibles 16550. La majorit des puces le sont, par
       consquent, vous devriez aussi dire Y  cette option.
       L'utilisation de IrTTY limitera toutefois la vitesse de connexion
        115200 bps (mode IrDA SIR). Si vous n'tes pas sr, dites Y.

  Support des dongles

   CONFIG_DONGLE

   Pour l'instant 4 dongles (adaptateurs infrarouges pour port srie)
   sont supports. Le dongle est un priphrique infrarouge qui se
   connecte au port srie, si vous n'avez pas de port infrarouge intgr
    votre machine. Si vous utilisez un dongle sur un ordinateur
   portable, vous aurez certainement  dsactiver le support IrDA dans le
   BIOS.

     * Dongle ESI JetEye PC
       CONFIG_ESI_DONGLE
       Dites Y ici pour compiler le support pour les dongles Extended
       Systems JetEye PC. Si vous voulez le compiler en tant que module,
       dites M et rfrez vous  Documentation/modules.txt. Ce dongle se
       branche sur un port srie 9 broches, et ne peut tre utilis que
       par IrTTY. Pour activer le support pour le dongle ESI, vous aurez
        insrer ``irattach -d esi'' dans le script /etc/irda/drivers.
       http://www.extendsys.com/support/ftp/infrared.html
     * Dongle ACTiSYS IR-220L and IR220L+
       CONFIG_ACTISYS_DONGLE
       Dites Y ici pour compiler le support pour les dongles ACTiSYS
       IR-220L et IR220L+. Si vous voulez le compiler en tant que module,
       dites M et rfrez vous  Documentation/modules.txt. Ce dongle se
       branche sur un port srie 9 broches, et ne peut tre utilis que
       par IrTTY. Pour activer le support pour les dongles ACTiSYS, vous
       aurez  insrer ``irattach -d esi'' ou ``irattach -d
       actisys_plus'' dans le script /etc/irda/drivers.
       http://www.actisys.com
     * Dongle Tekram IrMate 210B
       CONFIG_TEKRAM_DONGLE
       Dites Y ici pour compiler le support pour le dongle Tekram IrMate
       210B. Si vous voulez le compiler en tant que module, dites M et
       rfrez vous  Documentation/modules.txt. Ce dongle se branche sur
       un port srie 9 broches, et ne peut tre utilis que par IrTTY.
       Pour activer le support pour les dongles Tekram, vous aurez 
       insrer ``irattach -d tekram'' dans le script /etc/irda/drivers.
       http://www.tekram.de/
     * Dongle GirBIL
       CONFIG_GIRBIL_DONGLE
       Dites Y ici pour compiler le support pour le dongle Greenwich
       Instruments GirBIL. Si vous voulez le compiler en tant que module,
       dites M et rfrez vous  Documentation/modules.txt. Ce dongle se
       branche sur un port srie 9 broches, et ne peut tre utilis que
       par IrTTY. Pour activer le support pour les dongles Greenwich,
       vous aurez  insrer ``irattach -d girbil'' dans le script
       /etc/irda/drivers. http://www.greenwichinst.com/

  Support de FIR

   FastInfraredSupport (FIR) (support de l'infrarouge rapide) ncessite
   un contrleur spcial, qui supporte jusqu' 4Mbps. Dites juste "Y"

     * NSC PC87108
       CONFIG_NSC_FIR
       La puce FIR NationalSemiConductor NSC PC87108 (utilise par
       exemple dans l'IBM Thinkpad 560X et le dongle ACTiSYS IR2000). La
       puce FIR NSC PC87338 FIR est probablement aussi supporte. Le
       pilote supporte les vitesses SIR, MIR et FIR (4Mbps). - Dites
       juste Y.
     * Winbond W83977AF (IR)
       CONFIG_WINBOND_FIR
       La puce FIR Winbond W83977AF (IR) (utilise par exemple dans le
       Corel Netwinder PC). Le pilote supporte les vitesses SIR, MIR et
       FIR (4Mbps). - Dites juste Y.
     * Sharp UIRCC
       CONFIG_SHARP_FIR
       Dites Y ici pour compiler le support pour le chipset Sharp UIRCC
       IrDA. Si vous voulez le compiler en tant que module, dites M et
       rfrez vous  Documentation/modules.txt. Ce chipset est utilis
       dans les portables Toshiba de la gamme Tecra.

4. Utilitaires Linux/IrDA

     * Utilisez la dernire version des irda-utils disponible 
       http://www.cs.uit.no/~dagb/irda/irda-utils/.
     * Dtarez le paquetage en faisait tar xvzf irda-utils<VERSION>. Je
       vous recommande de le mettre dans /usr/src.
     * Faites un make depend.
     * Faites un make clean (ce n'est pas ncessaire si vous compilez le
       paquetage pour la premire fois).
     * Faites un make all pour compiler tous les excutables.
     * Faites un make install, cela installe irattach et irmanager au bon
       endroit, et installe quelques fichiers de configuration dans
       /etc/irda.

   Une recommandation de Bjoern Hansson <Bjorn.Hansson@signal.uu.se> : Si
   make depend choue sur stdef.h et stdarg.h ajoutez juste
   -I/usr/lib/gcc-lib/i586-linux/egcs-2.90.29/include/ ou le chemin
   adquate avec votre configuration  la ligne SYS_INCLUDES du fichier
   Makefile.

5. Configuration

5.1 Configuration gnrale

     * Tout d'abord vous devriez mettre vos priphriques infrarouges 
       porte l'un de l'autre. Bien que le service Linux/IrDA dtecte
       peut tre automatiquement les nouveaux priphriques, j'ai bonne
       exprience de la configuration quand les priphriques sont 
       porte l'un de l'autre.
     * Gardez vos priphriques infrarouges ensembles, dans un espace
       d'un mtre maximum et dans un angle de 30 degrs. Ils doivent tre
       en vis  vis. Si cela n'est pas possible, utilisez un miroir (un
       CD de M$ non utilis fera l'affaire).
     * Ajoutez les lignes suivantes  votre /etc/conf.modules :

alias tty-ldisc-11 irtty          #
alias char-major-60 ircomm_tty    # Si vous voulez le support IrCOMM

       Je ne suis plus tout  fait sr de ces paramtres. Il y a des
       informations contradictoires sur les page de Dag Brattli et sur la
       liste. Ces paramtres taient utiliss avec les anciens paquetages
       Linux/IrDA, ces paramtres ont certainement changs dans les
       versions 2.2.x des noyaux.
     * Allez faire un tour dans /etc/irda. ces fichiers sont similaires 
       ceux dans /etc/pcmcia. Editez /etc/irda/drivers pour que cela soit
       en accord avec votre configuration. La majorit des gens
       utiliseront irattach depuis ce fichier. les fichiers sont :

Makefile
network*
network.redhat*
serial
drivers
network.opts
obex
printer

     * Lancez un depmod -a.

5.2 IrManager

   Dag Brattli a crit : _IrManager_ [...]. est un dmon utilisateur qui
   s'inspire et qui est assez similaire  _cardmgr_ utilis pour
   contrler les cartes PCMCIA.

   _IrManager_ recevra les vnements qui proviennent de l'espace noyau
   de la pile du protocole. Quand _IrManager_ reoit un vnement, il
   peut excuter des commandes shell ou des scripts, par consquent, j'ai
   ajout le rpertoire /etc/irda pour contenir ces scripts. [...]

   Par exemple, si IrLMP dcouvre un priphrique qui peut fournir un
   service IrLAN, et qu'aucun client IrLAN ne s'est enregistr, alors,
   IrLMP enverra un vnement  IrManager et lui fera faire un "modprobe"
   sur le module requis. [...]

   Lorsque les clients (applications utilisateurs) sont prts  effectuer
   la configuration des paramtres de communication et de l'utilisateur,
   ils peuvent galement contacter IrManager, de faon  ce qu'il excute
   le bon script. Par exemple, IrLAN enverra un vnement
   EVENT_IRLAN_START quand le canal de donnes sera prt pour changer
   des trames ethernet. Quand IrManager reoit cet vnement, il excute
   /etc/irda/network start <devname> pour configurer l'interface rseau.
   Ce script network est d'ailleurs le mme que celui utilis par le code
   PCMCIA, et vu que j'utilise sa variante RedHat, il finira par excuter
   /sbin/ifup <devname>.

   Par consquent, en utilisant l'IrManager, j'ai "juste"  faire cela
   quand je dmarre la pile :

irattach /dev/ttyS2 &
irmanager -d 1           # -d 1 signifie : dmarre la reconnaissance automatiqu
e

   et quand mon portable dcouvre le fournisseur IrLAN (un HP Netbeamer
   dans mon cas) il demandera  _IrManager_ de charger le module
   irlan_client. Quand la connexion est tablie et prte, il demandera
   l'excution de /etc/irda/network start eth0. Si la connexion est
   perdue, il lui demandera de supprimer l'interface en lanant
   /etc/irda/network stop eth0.[...]

   C'est tout ce que vous avez  faire si vous utiliser une RedHat. Si
   vous utilisez une distribution qui n'a pas /sbin/ifup, alors, vous
   devriez copier /etc/pcmcia/network.opts vers /etc/irda/network.opts ou
   configurer le fichier vous mme.

   Si vous voulez utiliser le serveur IrLAN, vous aurez quand mme 
   faire un modprobe irlan_server avant de lancer irmanager _sans_ -d 1.

   Et tout comme le cardmgr, vous aurez (et si vous le voulez) un bip
   quand la connexion est tablie et prte et quand elle est dconnecte
   !!!

   J'espre que nous pourrons ajouter de tels scripts pour tous les
   autres services/clients qui ont besoin d'une configuration dans
   l'espace utilisateur. Cela serait super d'avoir un script
   /etc/irda/printer pour configurer les imprimantes compatibles IrDA(TM)
   de telle sorte que si vous entrez dans le champ d'une telle
   imprimante, IrManager charge le module irlpt_client et configure aussi
   ce qui doit l'tre pour utiliser cette imprimante.

   J'espre aussi que nous pourrons utiliser le fichier de configuration
   pour configurer les ports et les pilotes IrDA(TM). Quelque chose dans
   le style :

Device Drivers
  module "irtty" script="irattach /dev/ttyS2"
  module "smc_ircc" irq=11 port=0x34f

   de telle sorte que IrManager soit capable de charger et dmarrer tout
   a quand il est excut. De cette faon, il serait juste de lancer
   IrManager depuis /etc/rc.d/init.d/irda et le reste sera plug & play.
   Il ne serait plus ncessaire de dmarrer manuellement les programmes
   et de configurer les priphriques. Pour l'instant, lorsque irmanager
   reoit les vnements suivants, il fera :

   EVENT_IRLAN_START, dmarre et configure le priphrique avec
   /sbin/ifup <dev>

   EVENT_IRLAN_STOP, ferme l'interface avec /sbin/ifdown <dev>

   cela peut bien sur tre chang simplement par l'utilisateur, si ce
   n'est pas la faon qu'il a de le faire.

5.3 Pilotes de bas niveau

   Il y a trois sortes de pilotes de bas niveau : SIR, dongle et FIR. Si
   le bon pilote est trouv par le noyau, vous aurez un message
   ressemblant  :

IrDA irda_device irda0 registered.

  SIR

     * Essayez de trouver quel port srie est utilis par le priphrique
       infrarouge. Vous pouvez le faire en regardant ce que donne dmesg.
       Si le support srie est sous forme de module vous pouvez faire un
       insmod serial. Cherchez une entre telle :

Serial driver version 4.25 with no serial options enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A     #Permier port srie /dev/ttyS0
ttyS01 at 0x3000 (irq = 10) is a 16550A    #ex. port IR
ttyS02 at 0x0300 (irq = 3) is a 16550A     #ex. port modem PCMCIA

       Si ce n'est pas le cas, soit vous n'avez pas activ le support
       infrarouge dans le BIOS ou votre priphrique infrarouge n'est pas
       dtect par le noyau. Pour l'instant, je ne connais que deux
       portables qui ont ce comportement, le HP OmniBook 800 et les
       Toshiba Libretto. Je ne suis pas certain du rle que joue le PnP
       dans la dtection du port IR. Si vous n'tes pas sr, essayez et
       donnez moi le rsultat.
     * Dans certaines situations, vous aurez peut tre  faire un
       setserial /dev/ttyS<0-2> port 0xNNNN irq M pour donner les bonnes
       valeurs  votre port infrarouge srie, surtout si le port srie
       est sur une ligne srie spare. Normalement, il n'est pas
       ncessaire de modifier ces valeurs ! Pour plus d'informations,
       rfrez vous  la FAQ ci dessous.
     * Si vous n'utilisez pas kerneld ou kmod insrez le module irda avec
       modprobe irda.
     * Faites un lsmod. Les modules irda et irtty devraient apparatre.
     * Un coup d'oeil dans /var/log/messages devrait vous afficher
       "Serial connection established" maintenant.
     * Tapez irmanager -d1, cela lancera les programmes ncessaires, tels
       irattach.
     * Donnez  irattach un peu de temps (ex: sept secondes), pour
       dtecter les autres priphriques infrarouges. Ensuite, regardez
       ce que vous affiche le noyau dans /var/log/messages. Cela devrait
       ressembler aux lignes suivantes (j'ai supprim quelques lignes qui
       n'taient pas en relation avec Linux/IrDA) :

Jan  2 12:57:26 japh kernel: ttyS00 at 0x03f8 (irq = 4) is a 16550A
Jan  2 12:57:26 japh kernel: ttyS02 at 0x03e8 (irq = 4) is a 16550A
Jan  2 12:57:26 japh kernel: Linux Support for the IrDA (tm) protocols (Dag Bra
ttli)
Jan  2 12:59:09 japh syslog: executing: 'echo 1 > /proc/sys/net/irda/discovery'
Jan  2 12:59:09 japh syslog: Setting discovery to 1 exited with status 1
Jan  2 12:59:09 japh syslog: + 0.1 Fri Jul 25 11:45:26 1997 Dag Brattli
Jan  2 12:59:09 japh syslog: + 0.1 Fri Jul 25 11:45:26 1997 Dag Brattli
Jan  2 12:59:09 japh syslog: Serial connection established.
Jan  2 12:59:09 japh kernel: IrDA irda_device irda0 registered.
Jan  2 13:01:22 japh syslog: executing: './drivers start '
Jan  2 13:01:22 japh syslog: Serial connection established.
Jan  2 13:01:42 japh syslogd: Printing partial message
Jan  2 13:01:42 japh 0.1 Fri Jul 25 11:45:26 1997 Dag Brattli
Jan  2 13:02:49 japh kernel: IrDA Discovered: japh
Jan  2 13:02:49 japh kernel:     Services: Computer

  Connexion des dongles - Adaptateurs infrarouges sur port srie.

   Les dongles supports actuellement sont le Extended Systems Inc.
   ESI-9680 JetEye, le Tekram IRmate 210B, le ACTiSYS IR220L et 2\20L+,
   le Greenwich GIrBIL.

   Dag Brattli a crit (modifi par wh) : "Pour utiliser un dongle, vous
   aurez  faire un truc comme :

modprobe tekram         # ou esi ou actisys
irmanager -d 1          #
irattach -d tekram      # ou -d esi ou -d actisys

   Comme vous pouvez le voir, vous avez toujours  utiliser l'option -d
   avec irattach vu qu'il est possible d'avoir deux ports sries
   utilisant deux dongles diffrents au mme moment (le tty que vous liez
   doit savoir  quel dongle il a  faire). Donc, si vous avez deux
   dongles et deux ports sries, vous aurez  faire un truc comme cela :

modprobe tekram
modprobe esi
irattach /dev/ttyS0 -d esi &
irattach /dev/ttyS1 -d tekram &

   PS : Je n'essaierais pas de mettre les deux dongles l'un en face de
   l'autre, car je ne sais pas trop quelle serait la raction de la
   pile :-)

   Comme je n'ai pas de nouveaux dongles ACTiSYS 220L+ sous la main, je
   ne peut pas les tester. Et comme ces nouveaux dongles supportent une
   vitesse supplmentaire (28400bps), vous devez spcifier le dongle
   diffremment avec irattach de telle sorte que le noyau sache quel
   dongle vous utilisez (et quel QoS peut tre utilis) :

irattach /dev/ttyS0 -d actisys     # pour le dongle 220L
irattach /dev/ttyS0 -d actisys+    # pour le dongle 220L+

   L'implmentation actuelle du support des dongles n'a aucun tat
   prcis, il n'est donc pas possible d'utiliser les deux dongles ACTiSYS
   (220L et 220L+ en mme temps (connect  deux ports sries) pour
   l'instant. Si vous avez besoin de le faire, envoyez moi un e-mail (Dag
   Brattli) et j'y songerais peut tre !"

   Note : Quand j'ai essay d'utiliser un modem infrarouge (Swissmod
   56Ki, construit par Telelink AG) connect  mon portable (l'IrDA n'y
   marche qu'avec Windows 95 du  un matriel non standard) j'ai du
   dsactiver le support infrarouge depuis le BIOS pour le faire
   marcher !

  Connexion des dongles - Adaptateur infrarouge pour carte mre

   Le support pour le dongle ACTiSYS IR2000 a t implment dans un
   fichier appel px87108 que vous pouvez soit compiler dans le noyau,
   soit en tant que module :

irmanager -d 1
modprobe pc87108

   ou insrez modprobe pc87108 dans le fichier /etc/irda/drivers (je
   pense).

  Infrarouge rapide (FIR = Fast InfraRed)

   Le standard IrDA(TM) reconnat _trois_ vitesses diffrentes :

    1. SIR = IrDA standard (Standard IrDA), jusqu' 115kbps IrDA,
    2. MIR = IrDA  vitesse moyenne (Medium Speed IrDA),
    3. FIR = IrDA rapide (Fast IrDA) (4Mbps),
    4. VFIR = IrDA trs rapide (Very Fast IrDA) (16Mbps), semble devenir
       le standard futur

   Jusqu' 115,200 bps, beaucoup de contrleurs infrarouges fonctionnent
   comme un port srie. Jusqu' 4Mbps, ils marchent dans le mode "FIR".
   Actuellement, seuls deux contrleurs sont supports :
   NationalSemiConductor NSC PC87108 (utilis dans les IBM Thinkpad 560X)
   et la puce Winbond W83977AF (utilis dans le PC Corel Netwinder). Vous
   pouvez lancer le service FIR en chargeant le modules appropri.
   Linux/IrDA se chargera de dtecter vos priphriques  ce moment l.

6. Protocoles et connexions spcifiques

6.1 Connexion imprimante - IrLPT

   IrLPT est en phase de dveloppement active en ce moment. La partie
   cliente devrait marcher, mais le serveur pourrait planter.

     * Supprimer toutes les impressions en attente avec lprm "*".
     * Si vous n'utilisez pas kerneld faites un modprobe irtty.
     * Faites un modprobe irlpt_client.
     * Vrifiez que le module est bien charg avec lsmod. Il devrait y
       avoir irda, irtty et irlpt_client
     * cat /proc/misc vous donne le _numro mineur_ du priphrique.
       C'est le premier chiffre sur la ligne avec irlpt0.
     * faites un su pour devenir root, et faites un mknod /dev/irlpt0 c
       10 <numro mineur>. Note : quelque chose comme ./MAKEDEV irlpt0
       n'est toujours pas possible, mais un load_misc irlpt marche, bien
       que je ne puisse pas le confirmer.
     * Essayez d'crire un petit fichier vers /dev/irlpt0 en cat FILE
       >/dev/irlpt0 (ne pensez pas au format, c'est juste un test). Pour
       moi, a n'a pas toujours march, mais je n'ai jamais compris
       pourquoi.
     * La meilleure faon est de changer votre /etc/printcap pour
       utiliser plutt /dev/irlpt0 ou mme  la place de /dev/lp1.
       Rfrez vous au Printing-HOWTO pour plus de dtails.
     * Pour imprimer plus facilement, utilisez un logiciel d'impression
       tel APSFILTER, MagicFilter EZ-Magic (avec la RedHat il devrait
       aussi y avoir une interface graphique pour cette chose l). Faites
       toujours une copie de /etc/printcap avant :-).
     * Exemple pour APSFILTER avec une imprimante HP 6P (non postscript,
       HP 6MP est postscript). Les deux questions utiles sont :
       "Avez vous une interface (s)srie ou (p)parallle ?" Rponse "p"
       "Quelle est le nom du priphrique pour votre imprimante parallle
       ?" Rponse "/dev/irlpt0"
     * Redmarrez le dmon d'impression avec kill -HUP <PID de lpd>. Si
       vous utilisez un autre dmon d'impression, utilisez la commande
       approprie.
     * Regardez si l'indicateur de connexion de votre imprimante montre
       des signes d'activit, par exemple, sur les HP 6P/6MP le petit
       voyant vert au dessus du port infrarouge s'allume (en bas 
       gauche, prs du bac  papier).
     * Je n'ai jamais russi  imprimer des documents de plus d'environ
       10 pages jusqu' prsent. Mais cela dpend peut tre de la mmoire
       de mon systme (16Mo). Mais il semble qu'il y ait un problme
       logiciel aussi, Thomas Davis a crit : "Je ... limiterais IrLPT
       pour qu'il ne prenne pas trop de mmoire lors de l'impression d'un
       gros fichier.".

   Takahide Higuchi a rapport : "J'ai test IrCOMM avec une imprimante
   (Canon BJC-80v) ayant un port IrDA et le protocole IrCOMM (pas IrLPT).
   J'ai pu imprimer de petits textes, mais il se peut que cela cause
   facilement un blocage total lorsque j' essaye d'imprimer un fichier
   postscript avec gs.".

   Sur la page de Thomas Davis http://www.jps.net/tadavis/irda, on peut
   lire que pour utiliser le serveur IrLPT, il faut :

/sbin/insmod irlpt_server
/sbin/mknod /dev/irlptd c 10 `grep irlptd /proc/misc|cut -f 1`

   A ce moment l, le serveur IrLPT est prt  recevoir des fichiers 
   imprimer. Maintenant, tout ce dont vous avez besoin est un script :

#!/bin/sh
#
while (true)
do
cat /dev/irlptd | lpr
done

6.2 Connexion LAN - IrLAN

     * Vous pouvez connecter votre ordinateur sous Linux en utilisant
       IrLAN avec un autre priphrique, par exemple, une autre machine
       Linux avec IrLAN, un HP NetBeamer ou une machine Windows9* avec
       une interface infrarouge.
     * Dag Brattli a crit : "Si vous voulez utiliser IrLAN, vous devez
       faire un modprobe irlan_client avant ifup eth0. J'ai du supprimer
       toute la partie request_module() car cela ncessite un contexte
       non disponible dans le noyau.".
     * Lancez ifconfig eth0 up <addresse_ip> netmask <masque_sous_rseau>
       pour le configurer avec une adresse IP et d'autres paramtres. Si
       le protocole est toujours en mmoire, vous pourrez commencer 
       communiquer. Il est possible d'utiliser l'outil netcfg de la
       RedHat pour le faire, cela rend les choses plus faciles. La
       prochaine fois, vous aurez juste  faire un /sbin/ifup eth0.
     * Testez l'interface rseau en la pingant. Pour plus de dtails,
       rfrez vous au _NET3-HOWTO_.
     * N'oubliez pas d'ajouter une route, ex : route add default gw
       <ip_passerelle> ou route add -host <cible> dev eth0.
     * Pingez une autre IP, pour tester la connexion.
     * Pour des raisons de test, je recommande de n'utiliser qu'un seul
       portable et une seule interface infrarouge dans la mme pice. Si
       il y a des problmes, regardez quels sont les diffrents modes
       possibles pour l'interface infrarouge. Testez les...

   Pour une carte ou un dongle ACTiSYS FIR, vous aurez  faire :

irmanager -d1
/sbin/modprobe pc87108  # Supprimer irattach de /etc/irda/drivers, ou
                        # substituer irattach par modprobe !

   Sur la machine 1 :

modprobe irlan_client # Pas vraiment ncessaire, vu que irmanager devrait le fa
ire !

   Sur la machine 2 (si vous n'avez pas un point d'accs)

modprobe irlan_server

   Ne compilez pas irlan_server dans le noyau, car il n'aime pas a du
   tout pour l'instant ! Vous devriez avoir configur
   /etc/sysconfig/network-scripts/ircfg-eth0 avec le bon rseau si vous
   utilisez deux machines. Si vous avez un point d'accs, alors, le
   paramtrage par dfaut devrait tre bon.

   Remarquez que dans le dernier patch (2.2.0-irda1), irlan_client
   devrait appeler le priphrique irlan0 par dfaut, mais il est
   possible de modifier ce comportement en donnant eth=1 comme option 
   irlan_client (modprobe irlan_client eth=1 ou options irlan_client
   eth=1 dans /etc/conf.modules).

   La prochaine version d'IrLAN ne sera qu'un seul module, alors, vous
   n'aurez pas  penser au fait qu'il vous faut le client et/ou le
   serveur d'install.

   Il est possible de faire un ifconfig irlan0 -broadcast pour empcher
   l'AP de vous submerger avec des trames de broadcast ! Cela peut tre
   un problme si vous tes connects  un segment ethernet trs large.
   Le seul problme sera que votre machine aura  dmarrer toutes les
   communications, et donc, ne pourra pas marcher en tant que serveur
   (bon, vous devriez pouvoir trouver une machine fixe qui pourrait
   rpondre aux requtes ARP  votre place).

6.3 Connexion Palm III - IrOBEX

   La partie IrOBEX semble tre en constant dveloppement. Par
   consquent, les applications changent aussi. Par consquent, je ne
   peux pas vous donner des informations exactes. Allez voir la page de
   Dag Brattli  http://www.cdpubs.com/hhsys/archives/66/10brattl.pdf.

   Le script /etc/irda est vraiment juste bon pour configurer les
   priphriques, en faisant le bon mknod pour /dev/irobex etc, pas pour
   dmarrer des applications.

     * Palm III -> Linux
       1) Terminal 1> irattach /dev/ttyS<x>
       2) Terminal 2> load_misc irobex
       3) Terminal 3> Dmarrez irobex_app depuis le rpertoire irobex. Je
       suppose que irobex_app ne marche plus maintenant. Maintenant, vous
       devez utiliser le programme gtk/irobex ! Vous avez besoin que la
       librairie gtk soit installe pour pouvoir utiliser ce programme.
       Une interface graphique devrait tre dveloppe par quelqu'un. Le
       programme  utiliser devrait tre irobex_receive.
       4) Rcuprez quelque chose depuis votre Palm III.
       5) Si tout va bien, vous pouvez aller voir le fichier qui vient
       d'arriver dans le rpertoire depuis lequel a t lanc irobex_app
       (ou /tmp pour irobex_receive). Le nom de ce fichier dpendra de
       l'objet que vous avez transfr.
     * Linux -> Palm III
       Cela devrait tre possible, mais je n'ai pas d'informations pour
       l'instant.
     * PPP
       Rui Oliveira a crit : "Grce au dernier patch IrCOMM (050998) de
       Takahide Higuchi, j'ai russi  synchroniser et  tablir une
       connexion PPP entre mon Palm III et ma machine Linux. J'utilise
       IRLink (provenant de IsComplete) pour rediriger le port srie vers
       un port IR. La communication avec pilot-xfer marche sans aucun
       problme. Bien que j'aie russi  tablir une connexion PPP, je
       n'arrive toujours pas  rcuprer des emails et  naviguer sur le
       Web. Cela est probablement du  des timeouts de connexion. Je suis
       en train d'essayer de rsoudre ce problme.". Rfrez vous au
       _PPP-HOWTO_ pour de plus amples informations sur le PPP.
     * IrCOMM
       Jon Howell a crit : "Je pensais essayer IrCOMM, car le Palm III
       peut tre configur pour rerouter les infos du port srie vers le
       port IR (en utilisant IrLink de IS/Complete, disponible sur
       www.palmcentral.com), et ensuite, vous pouvez lancer un programme
       terminal (tel "PalmTelnet" en mode srie)  travers IrDA. Je peux
       seulement supposer qu'il utilise le protocole IrCOMM. J'ai test
       cette configuration entre deux Palm Pilots, mais l, je ne peux
       pas savoir quel protocole est utilis.
       Je n'ai pas russi  trouver une application au code IrCOMM. Je
       vois sur la page d'avancement qu'il y a un "support client
       (devrait commencer  tre utilisable)" mais je ne trouve aucune
       documentation sur comment l'utiliser.".

6.4 Connexion avec un tlphone cellulaire.

   D'aprs ce que je sais, quelques tlphones utilisent le standard
   IrCOMM, ex: Ericsson SH888 et NOKIA 8110. Benny Amorsen a crit :
   "J'ai utilis minicom avec le SH888, et j'ai russi  tablir une
   connexion (CONNECT 9600...). Je n'ai pas russi  lui faire faire quoi
   que ce soit d'autre aprs la connexion, et raccrocher en arrtant la
   porteuse ne marche pas. +++ J'ai bien travaill, maintenant, il sait
   raccrocher. Je dois dire que le SH888 n'est pas loin de marcher trs
   bien avec Linux/IrDA, et devrait mme marcher avec les noyaux 2.0.x.
   Je n'utilise que les noyaux 2.1.".

   Il se peut que d'autres tlphones utilisent le standard IrOBEX, allez
   faire un tour dans la section Palm III pour apprendre  faire une
   connexion.

   Carlos Vidal a crit : "Corrigez moi si j'ai tout faux, mais il me
   semble que les tlphones NOKIA ne contiennent pas de modem matriel,
   mais quelque chose assez similaire aux WinModems pour les PC. Car 
   chaque fois que NOKIA crit un truc  propos de communication via
   modem, ils utilisent le mme nom de "Modem Windows logiciel" (ou
   quelque chose de similaire). Ce qui est actuellement confirm par le
   fait qu'il faut utiliser les logiciels NOKIA pour Windows (nomms :
   NOKIA Cellular Data Suite).

   Joonas Lehtinen a crit : "Cela est vrai pour les modles 61xx. Les
   modles 8810, 9000(i) et 9110 devraient marcher (ils ont un modem
   intgr). Mon N9000 marche avec IrCOMM et Linux de la faon suivante :

   Pour dmarrer une session de communication avec /dev/irnine, par
   exemple, faites :

dip -t
> port irnine
> term

   Vous utiliserez peut tre cu  la place de dip. Il y a aussi du
   travail de fait avec l'Ericsson GF768 et le modem IR DI 27.

   Benny Amorsen a crit : Le SH888 mule le port IrDA quand vous vous
   connectez via un cble srie, alors que beaucoup penseraient que c'est
   une chose plutt obscure comme cela l'est pour moi. Mais c'est la
   seule manire de le faire fonctionner avec Windows, bien que je n'ai
   jamais russi  le faire marcher avec Windows.

6.5 Connexion avec un appareil photo numrique

   Markus Schill a crit : "Heureusement qu'il y a d'autre personnes qui
   sont intresses  faire fonctionner l'adaptateur IR SONY DSC-F1 sous
   Linux. Jusqu' maintenant, je n'ai fait que jouer avec les logiciels
   de la suite Linux/IrDA et l'adaptateur srie qui est fournit avec
   l'appareil photo. Voici o cela en est. J'utilise un noyau 2.0.33 et
   les derniers Linux/IrDA... Si je fait :

insmod irda
insmod irtty
irattach /dev/cua0

   L'adaptateur commence  discuter avec l'appareil photo.
   /var/log/messages dit que le SONY-DSC-F1 a t trouv, mais qu'aucun
   service n'a t dmarr. (notez que ce comportement ne s'applique peut
   tre pas aux noyaux 2.2.x).

   Il y a deux programmes pour Linux qui sont disponibles et qui peuvent
   tre utiliss avec l'appareil photo avec le cble : (1) chotplay et
   (2) stillgrab. Ils prennent tous les deux un tty comme ligne de
   commande, par consquent, je suppose qu'ils devraient marcher si la
   couche irtty et la pile de protocole fonctionnent correctement... Je
   n'ai pas jet de coup d'oeil au code Linux/IrDA pour l'instant ! Je ne
   suis pas certain de comprendre la pile, mais irtty ne devrait-il pas
   faire en sorte que cela ressemble  un vrai tty ? Quel service devrait
   tre dmarr ? "

   Dag Brattli a crit : "Je ne suis pas certain de savoir quel protocole
   l'appareil photo utilise, mais il est possible qu'il implmente les
   spcifications du protocole IrDA(TM) transfert d'images par infrarouge
   (Infrared Transfer Picture IrTran-P). Allez jeter un coup d'oeil 
   http://www.irda.org/standards/pubs/IrTran-P_10.pdf, vous verrez que le
   protocole est implment par dessus IrCOMM (pas IrTTY !). IrTTY est
   quelque chose que nous utilisons juste pour communiquer avec le pilote
   srie de Linux. "

6.6 Window$95 et Linux/IrDA

   Introduction

   Pourquoi cette section ? Malheureusement, les utilisateurs de Linux ne
   sont pas toujours capable de savoir tout sur leur configuration
   matrielle. Quelquefois, il est possible de trouver ces informations
   depuis Window$95.

   O commencer ? Sur http://www.microsoft.com/windows95/info/irda.htm
   vous trouverez un support pour "Infrared Transfer 2.0". C'est une
   archive auto extractible (W95IR.EXE) qui fait 331Ko.

   Avec certaines machines telles le HP Omnibook 800, il est ncessaire
   d'utiliser les spcifications du fabricant (pour cet Omnibook, cela se
   trouve sur votre CD de secours).

   Les fichiers les plus intressants pour trouver des dtails sur la
   configuration sont les ..\windows\inf\*.inf et les gestionnaires de
   priphriques.

   D'aprs ce que je sais, Window$NT ne supporte pas IrDA(TM). Et pour
   Windows98, je n'ai pas encore entendu parler de support IrDA(TM) pour
   l'instant.

   Il y a aussi quelques priphriques non M$ disponibles. Notez
   toutefois que certains utilisent des protocoles infrarouges
   propritaires :

     * CounterPoint: QuickBeam 1.15
     * LapLink 7.5
     * CarbonCopy 32 4.0
     * pc ANYWHERE 7.5
     * Puma Technology: TRANXIT pro 4.0

   Connexion entre Linux/IrDA et Window$95 IrDA(TM)

   Je pense qu'il y a trois faons de connecter Linux/IrDA et Window$95 :

   Une _connexion rseau_ entre les deux PC. Si vous avez mis en place
   _Infrared Transfer 2.0_, vous devriez trouver une interface rseau
   IrDA(TM) dans la liste des interfaces rseaux. Mais je n'ai pas encore
   russi  faire une connexion.

   Il est certainement aussi possible d'utiliser le _protocole IrOBEX_.
   Mais je ne sais pas quel logiciel utiliser et o le trouver. Je
   pensais que les logiciels ncessaires viendraient avec le Palm III,
   mais il s'avre que ce n'est pas le cas.

   Takahide Higuchi <thiguchi@pluto.dti.ne.jp> a fournit le _support
   IrCOMM_. Depuis sa page http://www.pluto.dti.ne.jp/~thiguchi/irda/
   j'ai rcupr la description suivante (que j'ai lgrement modifie) :
   "Avec IrCOMM, il est possible d'envoyer et de recevoir de petits
   messages entre une machine Linux et un programme de terminal sur un
   portable sous Win95 ! Ajoutez cette ligne  votre /etc/conf.modules :

alias char-major-60 ircomm_tty

   Ensuite, crez un fichier de priphrique mknod /dev/irnine c 60 64.
   Maintenant, les services Linux/IrDA peuvent tre dmarrs avec
   irattach /dev/ttyS? &. /dev/irnine peut tre utilis comme port srie.
   Les modules ircomm et ircomm_tty seront chargs automatiquement par
   kerneld/kmod quand un programme utilise /dev/irnine. NOTE : Je pense
   que le programme "setserial" ne devrait pas tre utilis sur
   /dev/irnine. Quelques petits trucs :

     * Pour autoriser les login via IrCOMM, utilisez cela en tant que
       root : Premirement, activez IrDA et IrCOMM, Ensuite, ditez
       /etc/inittab et ajoutez une ligne comme celle l :

T1:23:respawn:/sbin/getty -L -w irnine 38400 vt100

       Et faites ceci en tant que root : init q. Et init commencera 
       attendre les connexions IrCOMM. Vous verrez apparatre votre
       prompt de login prfr depuis un mulateur de terminal depuis
       Win95 !
     * Si vous essayez pppd, pensez  utiliser l'option -crtscts pour
       dsactiver le contrle de flux. J'ai implment une petite
       mulation de contrle de flux, mais cela n'a pas t test.
     * Maintenant, mon patch montre quel fonctionnalits sont ncessaires
        l'autre interface infrarouge. Des messages de ce style seront
       crits dans le syslog :
Sep 4 10:01:02 monolith kernel: parse_control:instruction(0x12)
Sep 4 10:01:02 monolith kernel: data:03
     * Je voudrais spcialement connatre les messages donns par SH888
       (ou tout autre type de priphriques sauf les PC sous windows 95).
       Donc, s'il vous plat envoyez moi vos syslog gnrs durant les
       connexions IrCOMM ! Si vous avez une copie des spcifications
       IrCOMM crites par IrDA(TM), rfrez vous aux pages 34 ou 38, et
       vous comprendrez ce que ces messages signifient."

6.7 Connexion de Linux  Linux

  Mthodes de connexions

   Il devrait y avoir _trois_ faons de connecter deux machines Linux via
   Linux/IrDA.

     * Dag Brattli a crit  propos du _support IrOBEX_ : "Le lecteur
       averti se demandera ce qui peut empcher de transfrer des
       fichiers d'une machine Linux  une autre machine Linux. Et bien,
       rien !! (mais je n'ai pas encore essay ;-)). Cela signifie que
       nous avons maintenant une manire "simple" de transfrer des
       fichiers entre deux portables Linux. Je pense que cela devrait
       tre la "fonctionnalit qui tue" que nous attendions tous !"
       Essayez de faire load_misc irobex des deux cots, et ensuite,
       essayer iroabex_app get sur l'une des deux machines et irobex put
       <file> sur l'autre.".
     * Via une connexion _rseau Linux/IrDA_. Je suppose que vous aurez 
       charger le module irlan_client sur l'une des machines et le module
       irlan_server sur l'autre.
     * Avec le support _IrCOMM_, c'est  dire via une liaison srie, ce
       qui signifierait minicom, pppd, etc.

  Compression

   Notez que cette fonctionnalit est toujours vraiment exprimentale !
   Dag Brattli a crit : "Je voulais juste vous dire que je viens juste
   d'ajouter de la COMPRESSION  IrLAP ! Comme vous le savez peut tre,
   cela ne fait pas partie du standard IrDA(TM), mais Linux peut ngocier
   avec son voisin et savoir si il est capable de compresser les donnes.
   Donc, si vous discutez avec une machine Win95, Palm III ou quoi que ce
   soit d'autre, vous n'aurez pas de compression !!! C'est une
   fonctionnalit propre  Linux d'autant que je sache ! Le standard
   IrDA(TM) dit que les priphriques doivent ignorer les champs inconnus
   dans les en-ttes de ngociations, donc, nous sommes toujours
   compatibles avec le standard IrDA(TM) (j'ai juste emprunt une valeur
   non utilise dans les en-ttes).

   Si vous voulez essayer d'utiliser la compression (Linux <-> Linux)
   vous aurez  insrer le module irda_deflate quelques temps avant de
   faire la connexion. Personnellement, je le fait avant irattach.

   Le standard de compression que j'ai ajout est le format deflate
   utilis par la librairie zlib qui est dcrit par les RFC (Request for
   Comments) 1950  1952 dans les fichiers
   ftp://ds.internic.net/rfc/rfc1950.txt (_format zlib_), rfc1951.txt
   (_format deflate_) et rfc1952.txt (_format gzip_).

   L'interface de compression est similaire  celle qu'utilise PPP, par
   consquent vous pouvez ajouter autant de compresseurs diffrents. Pour
   l'instant, seul GZIP est support, mais la compression BSD sera
   ajoute plus tard."

6.8 Instances multiples

   Dag Brattli a crit : "La couche IrLAP a t amliore de telle sorte
   qu'elle autorise plusieurs instances (de cette faon, je peux utiliser
   mon port infrarouge pour IrLAN et communiquer avec mon Pilot via un
   dongle IrDA en mme temps)... Comment faire pour avoir plusieurs
   connexions Linux/IrDA ? Et bien, facile, lancez tout simplement
   irattach autant de fois que vous avez de ports... procdez comme il
   suit : "

irattach /dev/ttyS0 &    (mon dongle ESI)
irattach /dev/ttyS2 &    (mon port IrDA intgr)

insmod irlan_client
insmod irobex

7. Matriel support par Linux/IrDA

7.1 Rcuprer des informations  propos des ports infrarouges des portables

   Pour faire marcher le port IrDA de votre portable avec Linux/IrDA vous
   pouvez utiliser StandardInfraRed (SIR) ou FastInfraRed (FIR).

  SIR

   Jusqu' 115.200 bps, le port infrarouge mule un port srie tel l'UART
   16550A. Ceci sera dtect par le pilote srie du noyau au boot ou
   lorsque vous chargerez le module serial. Si le support infrarouge est
   activ dans le BIOS, pour la majorit des portables, vous aurez un
   message du noyau dans le style :

Serial driver version 4.25 with no serial options enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A     #Premier port srie/dev/ttyS0
ttyS01 at 0x3000 (irq = 10) is a 16550A    #ex port infrarouge
ttyS02 at 0x0300 (irq = 3) is a 16550A     #ex port modem PCMCIA

  FIR

   Si vous voulez utiliser jusqu' 4 Mbps, votre machine doit tre
   quipe d'une puce FIR spcifique. Vous aurez besoin d'un pilote
   Linux/IrDA spcial pour cette puce. Par consquent, il est ncessaire
   de savoir exactement quelle puce vous avez. Vous pouvez trouver ces
   informations de diffrentes manires :

    1. Lisez les spcifications de votre machine, mais bon, il est trs
       rare que vous y trouviez suffisamment d'informations.
    2. Faites un cat /proc/pci, mais bon, les informations PCI sont
       souvent incompltes. Vous trouverez les dernires informations 
       propos des priphriques PCI et des numros de fabricants sur la
       page de Craig Hart http://members.hyperlink.net.au/~chart . Depuis
       les noyaux 2.1.82, vous pouvez utiliser lspci fourni avec les
       pci-utils. Les fichiers correspondants pour les noyaux 2.2.x sont
       dans /proc/bus/pci.
    3. Si vous avez install les logiciels Linux/IrDA, chargez le module
       FIR et regardez ce que donne dmesg, pour savoir si votre FIR est
       dtecte ou pas.
    4. Bien que je ne les utilise pas encore dans ce but, les outils
       isapnp devraient tre utiles.
    5. Une autre manire de trouver, explique par Thomas Davis : "Foncez
       sur le site FTP (du fabriquant), trouvez les pilotes FIR, et ils
       ont (pour la puce SMC) :

-rw-rw-r--   1 ratbert  ratbert       743 Apr  3  1997 smcirlap.inf
-rw-rw-r--   1 ratbert  ratbert     17021 Mar 24  1997 smcirlap.vxd
-rw-rw-r--   1 ratbert  ratbert      1903 Jul 18  1997 smcser.inf
-rw-rw-r--   1 ratbert  ratbert     31350 Jun  7  1997 smcser.vxd

       Si vous avez un doute, regardez toujours les fichiers .inf/.vxd de
       Win95; Win95 n'est livr avec _aucun_ pilotes FIR (ils viennent
       tous d'ailleurs, pour la plupart de Counterpoint, qui a t
       absorb par ESI)."
    6. Utilisez l'utilitaire DOS CTPCI330.EXE fourni au format ZIP par le
       magazine informatique allemand CT http://www.heise.de . Les
       informations fournies par ce programme sont parfois plus
       intressantes que celles des programmes Linux.
    7. Il y a aussi un petit utilitaire DOS fait par SMC appel
       "FindChip". Le paquetage fournit aussi un utilitaire "FirSetup"
       qui est suppos pouvoir tout rgler  part l'adresse de la puce.
       Rfrez vous 
       http://www.smsc.com/ftppub/chips/appnote/ir_utils.zip. Attention :
       Ce paquetage n'est pas fait pour l'utilisateur final, et certains
       de ces utilitaires peuvent faire trs mal. La seule documentation
       est au format M$ Word. Les utilisateurs de Linux pourront le lire
       avec catdoc, disponible  http://www.fe.msk.ru/~vitus/catdoc/ .
    8. Utilisez le gestionnaire de priphrique de Window$95/98/NT.
    9. Vous pouvez aussi vous rfrer  la section suivante.

7.2 Aperu du matriel support

   Il y a quelques pages qui parlent des priphriques infrarouges
   supports par Linux sur le WWW :

     * Le Linux/IrDA Project - rapport de matriel 
       http://www.cs.uit.no/~dagb/irda/hardware.html
     * Takahide Higuchi 
       http://www.pluto.dti.ne.jp/~thiguchi/ir/product.html. Cette page
       est en japonais.
     * J'ai aussi mis en place un rapport du matriel 
       http://www.snafu.de/~wehe/index_li.html. Cette liste contient
       aussi des informations se rapportant aux priphriques qui
       supportent l'infrarouge et qui ne sont pas mentionns ici (souris,
       imprimantes, tlcommandes, transmetteurs, etc.).
       Pour que cette liste soit la plus complte possible, il est
       ncessaire de collecter le plus d'informations possible  propos
       des diffrents priphriques infrarouges. Vous m'aiderez beaucoup
       en m'envoyant un court email contenant le nom exact du
       priphrique et quel type de contrleur infrarouge est utilis.
       Tenez moi aussi au courant sur la faon dont Linux/IrDA a march,
       sur quel tty, port, interruption a a march, et le priphrique
       infrarouge correspondant (imprimante, tlphone cellulaire) que
       vous utilisez.
       Vous pouvez aussi aider en donnant des dtails technologiques 
       propos de certains priphriques infrarouges, ce qui est
       ncessaire pour dvelopper un priphrique correspondant pour
       Linux.

8. Interface graphique

   Si vous voulez essayer une jolie interface graphique, vous pouvez
   essayer ircp.pl. Vous aurez besoin du module Perl-GTK+ (
   http://www.gnome.org) pour le faire marcher. Cette interface graphique
   est loin d'tre finie, alors, n'esprez pas trop :-)

9. conomie d'nergie

   Dans les spcifications de mon HP Ominbook 800, il est recommand
   d'teindre le port infrarouge si il n'est pas utilis parce qu'il peut
   consommer jusqu' 10 % de la batterie.

   Si ncessaire, vous pouvez aussi essayer de dsactiver la
   fonctionnalit Fast RRs dans la section IrDA du noyau. Cette option
   vous donnera de bien meilleurs temps d'attente, mais consommera bien
   plus de puissance.

10. Rsolution des problmes, liste de diffusions

10.1 Informations gnrales

   Si vous rencontrez des problmes, essayez ce qui suit :

     * Lisez la FAQ ci dessous.
     * Allez faire un tour dans /var/log/messages et/ou /var/log/kern.
     * Tapez dmesg.
     * Allez voir les diffrents fichiers dans /proc/irda.
     * Allez faire un tour sur les _archives de la liste de diffusion_ 
       http://www.ita.chalmers.se/~svinto/hypermail/irda/, pour savoir si
       votre problme est dj recens.
     * Posez votre question sur la _liste de diffusion Linux/IrDA_. Pour
       vous abonner  la liste, envoyez un email 
       linux-irda-request@list.uit.no avec "subscribe" (s'inscrire) dans
       le corps du message. Utilisez l'adresse linux-irda@list.uit.no
       pour poster un message. Vous tes le bienvenu sur cette liste pour
       poser des questions, rpondre aux questions, faire des rapports de
       bugs, envoyer des patchs, faire des suggestions et des
       commentaires. Pour viter le spam, la liste est dornavant
       modre, par consquent, il se peut qu'un certain temps se passe
       avant que votre message soit distribu aux autres membres de la
       liste.

10.2 Technique de rsolution des problmes

   Bien que je ne soit pas franchement un hacker, j'ai rcupr quelques
   erreurs possibles et quelques bugs de la suite Linux/IrDA.

     * Vous pouvez rgler le niveau de debug dans
       /proc/sys/net/irda/debug  1, 2, 3 ou 4.
     * Utilisez les fichiers dans /proc/sys/net/irda pour essayer
       diffrents paramtres comme echo 0 > /proc/sys/net/irda/discovery.
       Les diffrents fichiers prsents dans /proc/*/irda sont :

root@duckman:~# ls /proc/sys/net/irda/* /proc/net/irda/*
/proc/net/irda/discovery        /proc/net/irda/irlmp            /proc/sys/net/i
rda/devname
/proc/net/irda/irda_device      /proc/net/irda/irttp            /proc/sys/net/i
rda/discovery
/proc/net/irda/irias            /proc/sys/net/irda/compression
/proc/net/irda/irlap            /proc/sys/net/irda/debug

     * Il est aussi possible de dbogger le code. Mais je ne sais pas le
       faire. Si vous voulez utiliser le code de dbogage SKB, vous
       pouvez diter irda.h et changer /include/linux/skbuff.h (rfrez
       vous  l'historique des rvisions du code datant du 2/10/98).
     * Pour les problmes avec le module irda, un module provenant du
       _paquetage de modules_ kdstat pourra tre utile. Mais je n'ai pas
       t en mesure de l'essayer.
     * "Vous pouvez dornavant changer le nombre de paquets de dcouverte
       utiliss (1, 6, 8 ou 16) et le timeout entre deux missions (2-8 *
       10 ms) depuis /proc/sys/net/irda. Faites des tests si vous avez
       des problmes  faire reconnatre votre priphrique. Mon Palm III
       semble prfrer 16 discovery_slots et 8 (*10 ms) pour
       slot_timeout." ... "Le minimum absolu pour une dcouverte du
       IR-610 semble tre 9."
     * Si l'un d'entre vous rcupre un Oops du noyau, alors envoyez le
       dans le programme ../linux/scripts/ksymoops/ksymoops, pour que
       nous puissions trouver d'o vient le problme. Copiez juste l'Oops
       depuis votre syslog et coller le dans un fichier, ensuite, lancez
       ksymoops <fichier>.
     * Dag Brattli a crit : "J'ai dcouvert que la carte son cs4232 me
       faisait plusieurs centaines d'interruptions par secondes ! Je l'ai
       supprim du noyau, et la machine est approximativement 4 fois plus
       rapide !
       Linux/IrDA peut rencontrer des problmes si vous excutez le
       serveur esound (esd) sur votre machine. Aucune de mes deux
       machines, un portable P166 et un PPro 200, ne peut excuter
       Linux/IrDA quand esd est lanc. La raison est que esd fait faire
       plus de 300 interruptions par seconde  la carte son, ce qui fait
       que le pilote srie perd des donnes quand il en reoit. Cela est
       du au fait que le pilote srie utilise maintenant des
       interruptions lentes dans le noyau 2.2 (tout utilise des
       interruptions lentes dans le 2.2), par consquent le gestionnaire
       d'interruptions s'affole un peu. La bonne chose  propos des
       interruptions lentes est que les paquets sont dlivrs de manire
       plus rapide, puisque vous n'avez pas  attendre le tick suivant.
       La seule exception pour cela est le pilote pc87108 qui marche
       toujours bien car il utilise le DMA et ne fera que deux
       interruptions par paquets.

11. Bugs connus

   Si vous trouvez un bug, s'il vous plat, envoyez un rapport  la
   liste, incluant la sortie de dmesg, la version du noyau, et le
   matriel que vous utilisez. Merci !

   Quelques fois, IrCOMM n'arrive pas  se connecter (spcialement quand
   les deux priphriques se dcouvrent mutuellement. Vous pouvez
   dsactiver la dcouverte avec echo 0 >/proc/sys/net/irda/discovery).

   Un caractre CR (retour  la ligne) ne peut pas tre transfr entre
   deux machines Linux via IrCOMM avec cat file >/dev/irnine et cat
   /dev/irnine. Cela fait des drles de choses et bloque votre machine
   Linux.

   La compilation du pilote pc87108 dans le noyau le fait planter au
   boot. Solution temporaire : le compiler en tant que module.

   IrOBEX peut dtruire des donnes en rception. Ce bug est certainement
   dans la partie utilisateur de IrOBEX.

12. FAQ

     * Q1 - Question : Je ne sais pas du tout quels sont les ports
       utiliss et les irq. Que faire ?
     * Rponse :
       Premirement : Rglages matriels
       - 1  Allez regarder les spcifications de votre matriel. Si ce
       n'est pas disponible, rfrez vous  la page de support de votre
       constructeur, ou contactez son support technique. Vous pourrez
       peut tre trouver les informations dans les aperus du matriel
       mentionn plus haut.
       - 2  Utilisez un BIOS  jour. D'habitude sur la page du support
       technique de votre fabricant.
       - 3  Essayez de faire setserial /dev/ttyS? -g -a | egrep 16550A.
       L'un des priphriques mentionns est probablement celui que vous
       cherchez. D'habitude, c'est le deuxime, mais ce n'est pas
       toujours le cas.
       - 4  Note : Ce qui semble tre un UART est physiquement un
       contrleur IrDA, Pour mon HP Omnibook 800, c'est le contrleur
       VLSI VL82C147 PCI - IrDA. Ces contrleurs semblent pouvoir se
       connecter jusqu' 115 200 bps comme les UART 16550A. Mais c'est
       souvent difficile de trouver la bonne configuration.
       Deuximement : Comment donner au noyau les paramtres ncessaires
       pour votre matriel ?
       - 4  cat /proc/ioports pour voir quels ports sont dj utiliss.
       - 5  cat /proc/interrupts pour voir quelles interruptions sont
       dj prises.
       - 6  Librez les ports et interruptions pour le priphrique IR,
       par exemple : arrtez le service PCMCIA ou incluez cette ligne
       dans /etc/sysconfig/pcmcia :
       PCIC_OPTS="irq_list=3,4,5,7,9,10,12,14,15"
       - 7  Maintenant, essayez de deviner quel port et quelle
       interruption est utilise. Utilisez un setserial /dev/ttySx irq M
       port 0xNNNN pour le dire au noyau. Si il y a plusieurs
       possibilits, essayez les toutes (Note : comme il est dit dans le
       _Serial-HOWTO_, vous ne devriez pas essayer les interruptions 0, 1,
       6, 8, 13 et 14).
       - 8  Si vous avez russi, envoyez les paramtres utiles 
       l'auteur, car il aimerait bien les inclure dans son aperu du
       matriel.
       - 9  Bonne chance.
       Il sera peut tre aussi ncessaire d'affiner les rglages du port
       srie infrarouge avec setserial, ex : setserial /dev/ttyS0 spd_vhi
       (vitesse 115200).
     * Q2 - Question : irattach se fige, mais reconnait mon imprimante.
       /var/log/messages montre que irattach a trouv mon HP LaserJet 6P.
     * Rponse : Le "figement" est normal pour irattach. Tout marche bien
       si vous voyez l'imprimante dans les logs. Le "figement" signifie
       que irattach est en attente de connexion entrante. Si vous le tuez
       avec un <CTRL C> irattach plante et /dev/ttySx ne marche plus du
       tout. Le problme est dans le module irda, et pas dans le
       programme irattach. La seule chose  faire est de rebooter ! La
       prochaine fois mettez irattach en tche de fond en utilisant
       irattach &. Stoppez le si ncessaire avec un killall irattach.
       Recommandation d'Andreas Butz : "D'aprs ce que je sais, <CTRL Z>
       devrait marcher aussi, mais je ne l'ai pas test dans ce cas
       prcis. Normalement, cela a exactement le mme effet que de
       rajouter un &  la commande.
     * Q3 - Question : Je reois un message dans le style "tcsetattr
       read/write error" dans /var/log/messages.
     * Rponse : Probablement caus par un mauvais /dev/ttyS*, une
       mauvaise interruption ou un mauvais port.
     * Q4 - Question : tout semble marcher car j'ai les bons messages.
       Mais a ne marche toujours pas.
     * Rponse : Placez les priphriques  une distance de moins de 0.5
       mtre (1.5 pied). Vrifiez qu'une seule application utilise le
       port infrarouge. Vrifiez que les deux interfaces utilisent le
       mme protocole comme IrOBEX ou IrCOMM.
     * Q5 - Question : J'ai tlcharg la dernire version des pilotes,
       et a a trs bien compil sous Linux 2.0.33 sur mon IBM Thinkpad
       560E. En l'absence d'autre machine IrDA pour le tester, est-ce
       qu'il est possible d'affirmer qu'une fois que le module a t
       insr et que syslog rapporte "irattach: Serial connection
       established.", que l'IR marche vraiment, et se mettra-t-il 
       rpondre quand il aura une autre machine pour discuter ?
     * Rponse de Dag Brattli : Dsol, cela signifie juste que irattach
       a fait son boulot, qui est juste de dmarrer irda-tty. Peut tre
       que le message aurait du tre diffrent, mais comme je l'ai dit,
       il signifie que la connexion srie entre la puce irda et le pilote
       irda est tablie.
       Note : le support des noyaux 2.0 s'arrte. Vous tes vivement
       encourags  passer aux versions 2.2 et  utiliser les derniers
       patchs IrDA disponibles 
       http://www.cs.uit.no/~dagb/irda/snapshots/.
     * Q6 - Question : Au dmarrage modprobe -a vrifie
       /lib/modules/<uname -r>/net/irda.o et donne le message : "IrLAP;
       Missing IrTTY /IrLMP Error no IrLAP connection" (dans
       /var/log/messages et sur la console).
     * Rponse de Werner Heuser : Truc pour les systme style SYSTEM V :
       Mettez un script par exemple "ir_rmmod" contenant :

#!/bin/sh
echo "$0 : remove irda module"
rmmod irport.o
rmmod irtty.o
rmmod irda.o

       dans le processus de dmarrage (/etc/init.d et un lien symbolique
       par exemple "S100ir_rmmod" dans /etc/rc3.d vers "ir_rmmod").
       (Vrifiez le chemin vers "sh"). pour les systmes style BSD,
       essayez l'approche correspondante.
     * Q7 - Question de Ho Chin Keong : Y a-t-il une autre manire de
       faire communiquer deux machines sans crer un rseau entre les
       deux ?
     * Rponse de Dag Brattli : Oui et non ! L'un des standards IrDA,
       IrCOMM permet d'muler un cble srie entre deux machines, donc,
       vous pouvez utiliser n'importe quel programme crit pour les ports
       srie (terminaux, PPP, slip, etc.). Cela n'est, par ailleurs, pas
       encore implment dans Linux/IrDA. Le support IrLPT (imprimante)
       utilise un sous ensemble de IrCOMM, donc des morceaux
       fonctionnent !
     * Q8 - Question de Ho Chin Keong : Si je bloque dlibrment le
       faisceau infrarouge pendant plus de 10 secondes, la connexion ne
       peut tre rtablie. Je dois tuer irattach et redmarrer toute la
       procdure pour crer la connexion infrarouge. La connexion peut
       toutefois tre maintenue, si la coupure dure moins de 10 secondes.
       Est ce que cela fait partie de l'implmentation, ou est-ce un
       bug ? Y a-t-il un moyen d'augmenter cette limite de 10 secondes 
       plus, voir mme  l'infini ?
     * Rponse de Thomas Davis : Cela semble tre un bug dans la partie
       principale du code de IrLAP/IrLMP. Il semble que la notification
       de remise  zro/dconnexion ne remonte pas jusqu'en haut de la
       pile. On peut remarquer quand IrLPT se fige dans le mode query
       quand vous essayez de discuter avec une imprimante, et se
       dconnecte/interrompt quand il tablit la connexion. (et
       maintenant, cela arrive aussi dans la partie IrLAN)
     * Q9 - Pierre-Guillaume Raverdy a demand : Dois-je mettre  jour
       mon Palm Pilot, et mettre le systme 3.0.2 ?
     * Rponse de Dag Brattli : Il n'est pas ncessaire de mettre  jour
       votre Pilot, mais cela ne peut pas faire de mal. C'est par contre
       ncessaire si vous voulez utiliser la librairie IrCOMM de
       IsComplete.
     * Q10 - Pierre-Guillaume Raverdy a demand : De plus, un exemple
       simple de code source (spcialement du cot du Palm Pilot) serait
       trs pratique.
     * Rponse de Dag Brattli : Rcuprez le Pilot SDK de Palm.
       Dcompressez le fichier examples.zip et regardez le programme
       beamer.
     * Q11 - Kai Poehlmann a crit : J'ai un tlphone GSM Ericsson SH
       888 et une machine Linux sans port irda. J'ai entendu dire qu'il
       tait possible de discuter avec le protocole IrDA du tlphone en
       utilisant un cble srie... :-/ Est-il maintenant possible
       d'utiliser ce tlphone avec Linux/IrDA et un cble srie ?
     * Rponse de Matthias Lemke : Oui, c'est possible. J'ai essay il y
       a 6 semaines. Mais j'ai eu le mme problme qu'avec juste l'IrDA.
       Je peux me connecter au tlphone, le remettre  zro avec ATZ,
       mais aprs ATDT, plus rien ne se passe, que ce soit avec ou sans
       le cble. Mais je pense que vous devriez ressayer avec la dernire
       version de Linux/IrDA.
     * Q12 - Jonah Peskin a crit : Est ce que quelqu'un a russi 
       augmenter les capacits d'un metteur IrDA ? J'utilise un portable
       Dell Inspiron 7000, et il semble que son rayon d'mission soit
       d'environ 1 mtre. Je sais que cela rentre dans les spcifications
       de l'IrDA, mais y a-t-il des portables ou des priphriques qui
       permettent de faire plus d'un mtre ? Pourquoi ne pas prendre un
       cble d'un mtre ?
     * Rponse de tzeruch@ceddec.com : Parce qu'une connexion manuelle (
       part le rceptacle pour le Palm) est difficile et prend du temps
       et cre souvent des problmes (accder  l'arrire de mon
       ordinateur de bureau ncessite quelques contorsions).
       Le problme principal est qu'il est ncessaire de rendre le
       rcepteur plus sensible. Dans les bases de la physique on apprend
       la loi du carr inverse : L'intensit diminue proportionnellement
       au carr de la distance, donc, passer d'un mtre  5 demande 25
       fois plus de puissance (et la surcharge courant sur un ordinateur
       portable), ou 25 fois plus sensible (et la distance dynamique - il
       doit toujours tre possible de recevoir  10 centimtres). Et si
       vous voulez le faire de l'autre ct, il ne doit pas tre
       simplement 25 fois plus sensible, il doit pouvoir discerner le
       faible faisceau infrarouge des nons, conomiseurs d'crans et
       autres ombres en mouvement...
       Quelqu'un a essay avec une mise  jour du Palm III :
       http://home.t-online.de/home/PSPilot/ppppiii.htm 

13. Contrle  distance via infrarouge

13.1 Ressources

   La prise de contrle  distance par infrarouge n'est pas le but du
   projet Linux/IrDA mais est incluse dans ce HowTo pour couvrir de
   manire exhaustive "Linux et l'infrarouge". J'ai trouv _trois projets_
   qui oeuvraient dans cette direction. Vous pouvez trouver des liens
   vers des informations plus rcentes  http://
   www.snafu.de/~wehe/index_li.html.

     * LIRC LInux Remote Control
       LIRC est un paquetage qui supporte la rception et l'mission de
       signaux infrarouges des protocoles de contrle  distance IR les
       plus courants. Il contient un pilote pour les priphriques
       connects aux ports sries, un dmon qui dcode et encode les
       signaux IR en utilisant ce pilote, un dmon de souris qui traduit
       les signaux IR en mouvements de souris et quelques programmes
       utilisateurs qui vous permettent de contrler votre ordinateur
       avec une tlcommande. Takahide Higuchi a crit  propos de LIRC :
       "C'est gnial, et j'ai l'impression que c'est un projet trs
       complet, mais j'ai aussi l'impression que quasiment aucun des
       priphriques du march n'est support (vous aurez besoin d'un fer
        souder et de circuits spciaux... un peu dur pour le nophyte).
       Je suppose que LIRC deviendra plus populaire si le support
       infrarouge est implment dans les pilotes FastIR et qu'une API
       commune (par exemple un IrSocket brut et des ioctls communs) est
       disponible !". Vous trouverez LIRC 
       http://www.thp.uni-koeln.de/~rjkm/lirc/.
     * Tlcommande infrarouge srie
       Voici un priphrique simple et bon march qui peut tre connect
        tout port srie pour contrler presque tous les appareils qui
       possdent une tlcommande IR. Il a t conu et fabriqu sur une
       carte d'extension  sertir et est  prsent disponible sous forme
       d'une carte ISA. Vous trouverez de plus amples informations 
       http://www.armory.com/~spcecdt/remote/remote.html.
     * Outils infrarouges pour le COREL Netwinder PC
       Ryan Shillington a crit quelques outils pour contrler le COREL
       NetWinder par infrarouge, par exemple :
       Serveur pour l'administration Corel Palm. Il ncessite simplement
       d'avoir le port infrarouge install et en tat de marche. Avec
       lui, vous pouvez changer l'adresse IP, l'adresse de la passerelle,
       configurer eth1, etc. Vous pouvez aussi lancer quelques commandes
       simples ET vrifier la temprature, mmoire, charge de la machine.
       Client pour l'administration Corel Palm. Vous pouvez aussi lancer
       quelques commandes simples ET vrifier la temprature, mmoire,
       charge de la machine.
       Un pilote IR trs simple. Il ne supporte pas IrDA (seulement des
       transferts non fiables). Il ne cherche que des signaux venant de
       tlcommandes (et claviers, etc.). Il bloque et passe les donnes
       d'une faon trs diffrente.
       Vous trouverez tout ceci  http://www.netwinder.org/~ryansh/

13.2 Commande a distance IR - IrDA

   Deux des projets dcrits plus haut utilisent une sorte de dongle fait
    la main pour la commande  distance. Il y a aussi une description
   sur comment construire un dongle IrDA vous mme dans l'ELEKTOR
   allemand de mai 1997 p28. Peut tre que quelqu'un pourrait transformer
   ces dongles en un seul.

   Pour une discussion sur les relations entre les tlcommandes IR et
   IrDA, j'ai fait une compilation de la liste Linux/IrDA (raccourcie et
   modifie par wh) :

   Ryan Shillington a crit : "Les tlcommandes IR et ASK-IR sont trs
   diffrentes de FIR, MIR ou SIR.

   Les tlcommandes IR et ASK-IR ont des vitesses trs basses et des
   frquences trs basses (mais de longues portes). Elles oprent 
   environ 2400bps.

   SIR opre  des vitesses suprieures, et est vou  des transmissions
   longues portes o vous avez besoin que plus d'un ou deux caractres
   passent dans la liaison (pas comme les tlcommandes).

   MIR est lgrement plus rapide (mais a moins de porte), mais sa
   vitesse peut monter jusqu' 1.15Mbps et FIR (ou les priphriques
   doivent presque se toucher) a un dbit de 4Mbps. La porte est
   inversement proportionelle  la vitesse de transmission.

   Je travaille sur des pilotes pour les tlcommandes infrarouges, mais
   vous devriez dj le savoir si votre matriel IR le supporte. Cherchez
   des protocoles tels NEC, RC-5 ou RC-0 (ce sont les plus communs).

   Vous pouvez utiliser SIR pour recevoir des signaux de tlcommandes.
   Rglez bien votre dbit au plus bas et les donnes commenceront 
   affluer. MAIS d'aprs mon exprience, ce ne sont pas les BONNES
   donnes. Ce n'est pas analys de la bonne faon, et par consquent,
   vous ne pouvez ni calculer la somme de contrle ni la vrifier avec
   son complment.

   J'ai russi  rcuprer des donnes (en utilisant SIR) avec des
   tlcommandes. On m'a dit que SIR lisait les donnes venant d'une
   tlcommande diffremment en fonction de la temprature (malgr tout,
   je n'en ai jamais fait l'exprience)."

   Lichen Wang <lwang1@ix.netcom.com> a crit en rponse : "Le truc que
   l'on appelle ASKIR dans tant de portables n'est pas fait pour les
   tlcommandes infrarouges. ASKIR est fait pour le Sharp Wizard, les
   PDA Zauaus et quelques portables Sharp. Sharp avait cr cela bien
   avant l'arrive d'IrDA et le supporte toujours pour maintenir une
   compatibilit. Le Newton d'Apple avait aussi cette capacit l  un
   moment.

   Brivement, ASKIR utilise un format de transmission asynchrone  9.6
   Kbps (19.2 et 38.4 Kbps sont aussi possibles) avec 8 bits de donnes,
   1 bit d'arrt et une parit impaire. Le bit de dmarrage ainsi que
   tous les bits 0 sont transmis comme une onde carre de 500 KHz (sous
   porteuse DASK). Le bit "arrt" ainsi que tous les bits 1 sont
   reprsents par l'absence de transmission.

   Comme vous pouvez le constater, c'est totalement incompatible avec les
   tlcommandes IR.

   [..]

   Vrai. Non seulement il est possible d'utiliser le matriel SIR pour
   _recevoir_, mais vous pouvez aussi transmettre. Bien entendu, il y a
   quelques limitations.

   La majorit des tlcommandes utilisent une sous porteuse  38KHz. 3
   fois 38 a fait 114, trs proche de 115.2. Il est donc possible de
   rgler l'UART pour oprer  115.2 Kbps, 7 bits de donnes, 1 bit
   d'arrt et pas de parit - soit 9 bits. Tous les 3 cycles de la sous
   porteuse  38 KHz peuvent tre _reus_ ou _mis_ en tant qu'un octet
   Ox5B.

   Il y a quelques limitations physiques en plus du fait que la sous
   porteuse doive tre de 38KHz. Le _rcepteur_ SIR n'est pas aussi
   sensible au 38KHz que la tlcommande. Le _transmetteur_ SIR a un
   cycle d'utilisation beaucoup plus faible, et par consquent, ne peut
   mettre une trop forte sous porteuse.

   La tlcommande encode le signal de contrle en ajoutant un patron
   spcifique  la sous porteuse. Maintenant que vous pouvez _mettre_ et
   _recevoir_ la sous porteuse, tout ce qu'il reste  faire, c'est de
   tout synchroniser.

   Pour _mettre_, il est ncessaire de savoir combien d'octets de 0x5B
   conscutifs il sera ncessaire d'envoyer pour chaque coup de sous
   porteuse, et combien de temps rester silencieux pendant les missions.

   Pour _recevoir_, il sera ncessaire de savoir combien d'octets 0x5B
   vous recevez conscutivement, et quelle est la dure entre les trous
   d'octets conscutifs.

   [..]

   Mon exprience avec les distances de transmissions IrDA de SIR, MIR et
   FIR sont lgrement diffrentes de ce que Ryan a dit.

   [..]

   SIR, MIR et FIR devraient toujours marcher de 0  100 cm, mais dans la
   pratique :

   (a) Certains priphriques ont des problmes avec les _LONGUES_
   distances.

   Lorsque cela est possible, placez les priphriques  moins de 50 cm
   l'un de l'autre. Les priphriques ayant peu de puissance, comme les
   pagers et les tlphones cellulaires, etc. auront peut tre des
   distances encore plus petites bien qu'ils utilisent SIR  la place de
   MIR ou FIR.

   (b) Certains priphriques ont des problmes avec les _COURTES_
   distances.

   Placez les deux priphriques  au moins quelques centimtres l'un de
   l'autre. Les mettre plus prs peut causer des problmes.

   Il est un peu intuitif de rapprocher les deux priphriques lorsque la
   connexion n'est pas bien stable. Mais cela va  l'encontre de toute
   intuition que trop prs n'est pas bon non plus. La raison est que
   l'intensit lumineuse  1 cm est 10 000 fois plus forte qu' 100 cm. A
   0.5 cm, 40 000 fois, etc. Les constructeurs de rcepteur IR ont du mal
    grer cette distance dynamique. Nous avons tous du mal  lire avec
   une lampe de 10 W, imaginez comment a serait avec une lampe de
   100 000 W !

   [..]

   La couche physique IrDA est totalement incompatible avec la modulation
   DASK utilise dans les tlcommandes IR. Par consquent, il n'est pas
   possible d'utiliser la mme fonction de contrle avec FIR et les
   tlcommandes. Toutefois, presque tous les contrleurs FIR incluent
   des fonctions additionnelles pour supporter les tlcommandes IR.
   National, SMC, et Winbond (pour ne citer que ceux l) ont tous de
   telles puces.

   Les transmetteurs IR pour FIR et les tlcommandes sont trs
   semblables. J'ai essay avec un transmetteur FIR standard. Il est
   capable d'atteindre 10 mtres dans un but de tlcommande. Par
   consquent, il est aussi performant que les transmetteurs inclus dans
   les tlcommandes.

   Les rcepteurs IR pour FIR et les tlcommandes sont par contre assez
   diffrents. Un rcepteur FIR peut recevoir un signal de tlcommande,
   mais ceci seulement  1 mtre alors que les rcepteurs intgrs dans
   les tlcommandes atteignent 10 mtres.

   J'ai un adaptateur ISA avec une puce National qui supporte aussi bien
   FIR que les tlcommandes. J'ai aussi des dongles IR qui incluent les
   deux types de rcepteurs (ainsi qu'un transmetteur pour les deux
   modes). Je n'ai pour l'instant trouv aucun logiciel supportant les
   fonctions de tlcommandes. J'ai fait mes propres expriences sous DOS
   (je ne peux pas encore installer Linux). Quelqu'un est intress ? "

   Benny Amorsen a crit : "J'ai un portable qui est suppos supporter
   ASKIR. Le mode du port infrarouge peut tre chang en ASKIR dans le
   BIOS. Avoir  rebooter pour changer le mode dans le BIOS le rend
   inutile, donc, quelqu'un pourrait essayer de trouver un moyen de le
   changer  la vole. "

   Dag Brattli a crit : "Il devrait tre possible d'utiliser IrControl
   (auparavant IrBus) pour utiliser les tlcommandes compatibles IrDA.
   Je ne connais aucune tlcommande utilisant le standard IrControl,
   mais il devrait en exister quelques unes (quelqu'un en sait plus ?).
   Vous devriez aller jeter un coup d'oeil au site IrDA (
   http://www.irda.org) et rcuprer le standard de la couche physique
   (qui inclue IrControl je pense).

   IrDA "Normal" (en utilisant IrLAP) n'est _pas_ une bonne chose pour
   l'utilisation avec les tlcommandes  cause de la trop grande
   diffrence de nature (et il ne supporte que le 9600 bps pour les
   travaux hors connexions). La raison de cette limite de porte est la
   protection des yeux qu'ils disent (mais je ne sais pas pourquoi CIR
   marche mieux en utilisant la mme puissance). J'ai par ailleurs vu des
   portables connects avec 4  5 mtres entre eux (mais je ne pense pas
   qu'une grande vitesse de connexion soit possible).

   La majorit des chipset IrDA marchent en mode CIR, et il est assez
   facile de modifier les pilotes pour qu'ils parlent CIR. Takahide
   Higuchi a commenc  regarder IrSockets et il serait assez bien si il
   tait possible d'ouvrir une socket Ir(DA) brute qui permettrait
   d'envoyer et de recevoir des paquets CIR. Ensuite, toutes les
   applications CIR pourraient rester dans l'espace utilisateur.

   Je sais que CIR intresse Corel dans le but de contrler le NetWinder
   (et ils ont en ce moment du code qui marche). Allez jeter un coup
   d'oeil  http://www.slashdot.org/articles/98/12/05/0916216.shtml ou
   http://www.netwinder.org/~ryansh.

14. Infrarouge et protection des yeux.

   Cette section reprend quelques ides et penses qui ont t changes
   sur la liste Linux/IrDA. Rien ici n'est fond sur des connaissances
   mdicales, par consquent toute personne qui aurait des informations
   plus compltes et plus sures est encourage  contribuer  ce HowTo.

   Les spcifications d'IrDA disent que la porte des priphriques IrDA
   a t limite  1 mtre dans le but de protger les yeux des
   utilisateurs. Une autre explication possible serait que la
   consommation ainsi que la pollution IR soient aussi la cause de cette
   limitation. En principe, il devrait y avoir un danger pour l'oeil, car
   les IR ne sont pas dtects par l'oeil, et donc, la pupille ne se
   ferme pas pour protger la rtine des sources IR fortes. C'est la mme
   situation avec les UV, qui causent un aveuglement nbuleux, mais
   contrairement aux UV, les IR contiennent beaucoup moins de puissance
   destructrice  cause de leurs longueurs d'ondes plus grandes.

   Les seuls restrictions lgales et conseils mdicaux que nous ayons pu
   trouver sur le web taient les missions infrarouges des lampes 
   bronzer ou dans les processus de soudage. Cela suggre que la lumire
   IR mise par les priphriques IrDA serait sans aucun danger, vu que
   mme le pic de puissance des plus puissantes LED IR est d'environ
   300mW, ce qui n'est rien compar aux lampes a chauffer  usage mdical
   qui peuvent monter jusqu' 500W. Pour celles ci, il est ncessaire de
   porter des lunettes protectrices, alors, il se peut que regarder en
   face 1 000 LED IR en une seule fois ait le mme effet. Les effets de
   la lumire IR sont majoritairement la chaleur, pas une altration ou
   une destruction des structures cellulaires comme le font les UV.
   Toutefois, dans les spcifications du HP OmniBook 800, Hewlett-Packard
   recommande de ne pas regarder directement dans les LED IR.

   Comme je l'ai dit plus haut, cette discussion n'est base que sur des
   prsomptions et des dductions faites sur les donnes trouves dans
   les spcifications des LED IR et des lampes chauffantes. Si quelqu'un
   a des connaissances mdicales  partager, faites le !!!

15. Crdits

   Merci   :

     * Dag Brattli - au coeur de Linux/IrDA
     * Thomas Davis - au coeur de Linux/IrDA
     * Takahide Higuchi - au coeur de Linux/IrDA
     * Ralf Zabka
     * Benny Amorsen
     * Lichen Wang
     * Ryan Shillington
     * Richard Titmuss
     * Fons Botman
     * Rui Oliveira
     * Jon Howell
     * Carlos Vidal
     * Joonas Lehtinen
     * Markus Schill
     * Bjoern Hansson
     * Pawel Machek
     * Ho Chin Keong
     * Bjoern Mork
     * Andreas Butz
     * Tang Ning
     * Les membres de la liste Linux/IrDA.
     * Les crivains d'autres HowTo qui m'ont donn tout plein
       d'inspiration.
     * Les dveloppeurs des SGML-Tools qui m'ont permis d'crire ce
       HowTo.

   Dsol, je n'ai pas commenc  faire les crdits quand j'ai dmarr ce
   HowTo, j'ai certainement oubli quelqu'un.

16. Historique des versions

     * v0.1  v0.4a, 19 mars 1998 au 4 aot 1998, brouillons, non inclus
       dans le LDP.
     * v1.0, 14 aot 1998, ajout au LDP.
     * v1.1, 18 aot 1998, ajout des informations  propos du patch
       IrCOMM de Takahide Higuchi, changements mineurs.
     * v1.2, 24 aot 1998, mise  jour pour les pilotes
       linux-irda-1998-08-20, ajout de la section FIR et de cette
       section, changements mineurs.
     * v1.3, 27 septembre 1998, ajout des sections sur les instances
       multiples, tlphones cellulaires, appareils photo numriques,
       connexion Linux  Linux, le superbe CVS, conomie d'nergie,
       quelques changements dans la configuration systme gnrale,
       changements dans l'aperu du matriel, changements mineurs.
     * v1.4, 11 octobre 1998, meilleure description du support IrCOMM,
       changement de la section sur les dongles, changements dans la
       section Palm III, changements mineurs.
     * v1.5, 12 octobre 1998, changements mineurs.
     * v1.6, 26 octobre 1998, ajout de la section  propos de IrManager,
       mis  jour pour les pilotes linux-irda-1998-10-21, changements
       dans la section dongle, changements mineurs.
     * v1.7, 1 novembre 1998, ajout de la section contrle  distance,
       changements dans la section dongles, changements mineurs.
     * v2.0, 9 janvier 1999, rcriture quasi complte et un
       rarrangement en accord avec la nouvelle structure de Linux/Ir qui
       est maintenant inclus dans le noyau depuis la version 2.1.131,
       ajout des informations  propos du support BIOS dans la section
       dongle, ajout de la section outils de configuration et
       suppressions de la section CVS.
     * v2.1, 13 janvier 1999, changements mineurs.
     * v2.2, 26 janvier 1999, changement du nom du projet de Linux/IR en
       Linux/IrDA, extension de la section rsolution des problmes,
       changement dans l'ordre du chapitre des bugs connus, suppression
       de quelques coquilles.
     * v2.3, 4 fvrier 1999, ajout de la section Infrarouge et protection
       des yeux crite par Andreas Butz, correcteur d'orthographe...,
       remaniements dans la section paramtrage du noyau, ajout de
       quelques informations par Andreas Butz, changements mineurs.
     * v2.4, 9 fvrier 1999, changement des informations sur comment
       appliquer un patch.

17. Copyright et dngation

   Copyright  1998, 1999 par Werner Heuser (et  1999 par Mathieu Arnold
   pour la traduction franaise). Ce document peut tre distribu sous
   les termes de la licence du LDP 
   http://metalab.unc.edu/LDP/COPYRIGHT.html.

   Les informations contenues dans ce document sont exactes d'aprs ce
   que je sais, mais il y a toujours une chance pour que j'aie commis
   quelques erreurs, donc, ne suivez pas toutes les manipulations trop
   aveuglment, spcialement si cela vous semble faux. Rien ici ne
   devrait pouvoir causer de dommages  votre ordinateur, mais juste au
   cas o, les auteurs ne sont responsables d'aucun dommage encouru du
   fait d'actions effectues en se basant sur les informations comprises
   dans ce document.
