Linux Infrared HOWTO

Werner Heuser

Copyright (C) 2000, 2001 by Werner Heuser

$Date: 2002/04/02 15:28:45 $

 Infrared-HOWTO ( IR-HOWTO) ł Linux ł̐ԊOʐMfoCXɂ
ďЉA킹 Linux/IrDA vWFNgŊJĂ\tgEF
A̎g܂B̃vWFNg̃pbP[W IrDA(TM) 
WpĂ܂B IrDA(TM) ͐ԊOpCAXʐM̍HƕW
łA1996 N 1 ȍ~ɏoׂ̖wǂ̃bvgbv PC ɂ IrDA(TM) 
̃gV[oڂĂ܂B̐ԊO|[gpăv^A
fAt@bNXALAN ⑼̃bvgbv PC ƒʐM邱Ƃł܂
B IrDA(TM)ΉʐMx 2400bps  4Mbps ܂łłB

Linux/IrDA X^bN IrLAPAIrLMPAIrIASAIrIAPAIrLPTAIrCOMMAIrOBEX
 IrLAN T|[gĂ܂B̃vgR̓NCAgƃT
[oT|[g悤Ă܂B܂ IrDA(TM) foCX
pɕ IrLAP RlNV𒣂@\T|[gĂ܂
B Linux/IrDA vWFNg 1997 NɊJnA_ł܂I
ł̂ŁAׂĂ̋@\蓮Ƃ͊҂ȂłB̒m
 Linux/IrDA ͌_ő݂B IrDA ̃I[v\[XȎ
łB

ԊOɂ郊[gRg[ Linux Infrared Remote Contron - LIRC
vWFNgełAɂĂHOWTOŉĂ܂B

Copyright (c) 2000 Werner Heuser. For all chapters permission is
granted to copy, distribute and/or modify this document under the terms
of the GNU Free Documentation License, Version 1.1 or any later version
published by the Free Software Foundation; with the Invariant Sections
being "Preface" and "Credits", with the Front-Cover Texts being "Linux
Infrared HOWTO", and with the Back-Cover Texts being the section "About
the Document and the Author". A copy of the license is included in the
section entitled "GNU Free Documentation License". 

{̂ǂ̏͂AzzѕύX GNU Free Documentation License
o[W 1.1 ȍ~̋Kɏ]A܂BGNU GNU Free
Documentation License  Free Software Foundation ɂ蔭sĂ
B{̕sϕ́uPrefacevƁuCreditsvłA\eLXg ??
Linux Infrared HOWTO?? ŁA\eLXg ??About the Document and
the Author?? łBCZX̎ʂ ??GNU Free Documentation License
?? Ɏ^Ă܂B



Table of Contents
Preface
   
    1. ̕ƒ҂ɂ
    2. ݂̌̏̕
   
I. IrDA
   
    1. Linux/IrDA vWFNgɂ
    2. ͂߂悤
    3. IrDA ڑ̏ڍ - vgR
    4. Linux/IrDA ŃT|[gĂn[hEFA
    5. 荂xȘb
   
II. ԊO[gRg[
   
    6. ͂߂
    7. Linux Infrared Remote Control (Linux ԊO[gRg[)
        - LIRC
    8. Lego }ChXg[
    9. VAԊORg[
    10. COREL Netwinder PC p̐ԊOc[
    11. ir
    12. irmctl
    13. IRManager
    14. irXxD
    15. gmd
    16. ԊO[gRg[ IrDA
   
III. t^
   
    A. Credits (ӎ)
    B. ł̗
    C. VAԊO|[gXjt@
    D. ԊOƖڂ̈Sɂ
    E. 쌠AƐӁAW
   
List of Figures
5-1. IrDA X^bN



Preface

1. ̕ƒ҂ɂ

̐߂ Invariant Ȃ̂ŁAȀɎ܂B

                                    Better red, than dead. y: Y
                                    `҂ł͎񂾕܂A 
                                    ̍ԂBred ͐ԊOɒʂ 
                                    ̂ŁAdead ͊OƑSʐMs\A̟
                                    Bz                             
                                                                       
                                      Unknown AuthorEss (ҕs (Karl
                                                              Jasper?))

This document is based on the How to use part of the Linux/IrDA project
homepage <http://irda.sourceforge.net> and the Linux/IrDA Tutorial
<http://www.hpl.hp.com/personal/Jean_Tourrilhes/IrDA/index.html> by
Jean Tourillhes. I have also included material provided by the Linux/
IrDA core team, the Linux/IrDA mailing list and other sources.

The document is included in the LINUX DOCUMENTATION PROJECT - LDP
<http://www.linuxdoc.org> .

The latest version of this document is available at MobiliX-HOWTOs
<http://mobilix.org/howtos.html>. You may find my Linux-Mobile-Guide
(the former Laptop-HOWTO), the Linux-Ecology-HOWTO and the
Linux-Medicine-HOWTO there also.

Mathieu Arnold provides an earlier version of the IR-HOWTO in French
<http://www.mat.cc/>.

Please feel free to contact me for comments or questions about the
HOWTO. I know this material is not finished or perfect, but I hope you
find it useful anyway. For other questions and current information
about Linux/IrDA please ask in the Linux/IrDA mailing list as explained
below.

yz

̕ How to use part of the Linux/IrDA project homepage <http://
irda.sourceforge.net>  Jean Tourillhes  Linux/IrDA Tutorial
<http://www.hpl.hp.com/personal/Jean_Tourrilhes/IrDA/index.html> 
Ă܂Bɉ Linux/IrDA RA`[ALinux/IrDA [O
Xg̍ޗĂ܂B

̕ LINUX DOCUMENTATION PROJECT - LDP <http://www.linuxdoc.org>
Ɏ^Ă܂B

̍̕ŐVł MobiliX-HOWTOs <http://mobilix.org/howtos.html> ɂ
܂Bɂ͓҂ Linux-Mobile-Guide ( Laptop-HOWTO)A
Linux-Ecology-HOWTO  the Linux-Medicine-HOWTO ܂B

Mathieu Arnold 񂪈ȑO̔ł̕ IR-HOWTO in French <http://
www.mat.cc/> ŌJĂ܂B

 HOWTO ɊւĈӌ⎿₪΁ACyɎɘAĂB
͊̂łSȂ̂łȂƂ͕Ă܂A
Ȃ炩̂ɂ͗Ă̂ł͂ȂƎvĂ邩łB Linux/IrDA
ɂĂ̑̎A_ł̏ɂĂ͈ȉŐ Linux/
IrDA [OXgɂ肢܂B

<Werner Heuser> <mailto:wehe@mobilix.org>



2. ݂̌̏̕

ŗpĂŐṼJ[l 2.4.2 ŁAirda ̍ŐVł 0.9.13 ł
BׂĂ̏`FbN悤w͂Ă܂AKvȂׂĂ̐ԊO
n[hEFAĂ킯ł͂Ȃ̂ŁAȂ̂Ƃ
B


                              Warning                               

Âo[W̃J[l irda-utils o[Wł͑Sʂ̃ZbgA
bvKvłBȑÕo[WgƂ͐܂񂵁Â悤
ȃZbgAbvɊւ錾y͂̕폜Ă܂BR[h
̏͂ɑ̃qgł傤B                          


̕ɂ 2.4.x J[lV[YƁAŐV Linux/IrDA Jɓ
C܂܂B̂ߑ̃eXgAꕔ̍ǂ͂܂Ȃ
Ă܂Bȉ̋Lڂ̂Ƃɂ΂Ȃ蓮AƂ͊҂Ȃł
B

I. IrDA

Table of Contents
1. Linux/IrDA vWFNgɂ
   
    1.1. vWFNg̗j
    1.2. R[h
   
2. ͂߂悤
   
    2.1. \tgEFA
    2.2. J[l
    2.3. J[lW[IvV
    2.4. ݒɂ
   
3. IrDA ڑ̏ڍ - vgR
   
    3.1. IrDA X^bNgĂ݂
    3.2. v^ڑ - IrLPT, IrTTP, IrCOMM?
    3.3. LAN ڑ - IrLAN
    3.4. HP NetBeamer Ƃ̐ڑ
    3.5. Palm III RlNV - IrCOMM
    3.6. Palm (Handspring Visor) p IR oR Linux ^[~i
    3.7. Psion 5 Ƃ̐ڑ
    3.8. Linux  WinCE ڑ
    3.9. gѓdbڑ
    3.10. fW^Jڑ
    3.11. Window$9x/NT  Linux/IrDA
    3.12. Linux  Linux ̐ڑ
    3.13. foCX̓gp
    3.14. hbLOXe[VƂ̐ڑ
    3.15. L[{[hڑ
    3.16. VAP[ugڑ
    3.17. kfP[uڑ
    3.18. sAc[sAڑ / ڃ[h
    3.19. ł̃m[gubNł Linux/IrDA
    3.20. fXNgbvRs[^ł IrDA J[h
   
4. Linux/IrDA ŃT|[gĂn[hEFA
   
    4.1. bvgbv@ IR |[g̏𓾂ɂ
    4.2. n[hEFAT[xB
    4.3. rbOGfBA
    4.4. SMP
    4.5. IrDA n[hEFA
    4.6. IrDA  USB
    4.7. PDA ł Linux/IrDA
   
5. 荂xȘb
   
    5.1. guV[eBO
    5.2. [OXg
    5.3. ԊO悤ɂ
    5.4. ߓdɂ
    5.5. IrDA dl𒴂
    5.6. IrDA lbg[N̗אl
    5.7. Linux/IrDA  APM
    5.8. \eXg
    5.9. IrDA vgR
    5.10. mĂoO
    5.11. FAQ
   


Chapter 1. Linux/IrDA vWFNgɂ

1.1. vWFNg̗j

vWFNg Linux/IrDA ̖ 1997 NɊJn܂BIrDA Ƃ
̂ Infrared Data Association (IrDA) ̏Wł邽ߖƂȂA
̂ Linux/IR ɕύX܂B 1998 NɃvWFNg Infrared
Data Association ̊֌W͉PAēx̂ Linux/IrDA ɕύX܂
B1999 N 2 AvWFNg IrDA ̐oɂȂĂ܂B

̊Jւ̎QɋЂ܂͊J҂́ALinux/IrDA vWFNg
 <wehe@mobilix.org> ܂ŘAĂB



1.2. R[h

Linux/IrDA ł̓vOR[hɕύXƂ܂̂ŁA
邽߈ȉ̂ƂmĂKv܂B

2.0.x J[lł Linux/IrDA T|[g͑Sʂ̕ ([Ũv
O) ̗pĂ܂A͂ Linux/IrDA vWFNgł
T|[gĂ܂B2.1.131 ȍ~Ay 2.2.0 ȍ~ł̓J[l̈ꕔ
ɂȂĂ܂B

ƂāAȉLڂ̃p[^̕ύXKvȏCĂꍇ
܂B_ł͂͐ƎvĂ܂AŎƂĔY
܂B̐V`̂̂ 2.2.15/2.4.0 ȍ~œ삵܂B

 

 E irda foCX̃W[ԍ 61  161 ɕύXĂ܂ (L
    ɂƁA60 t߂gĂƂ܂)Bȍ~̏͂ŋLڂ
    ݂̃foCXԍ\QƉB
   
 E irmanager ͔p~ɂȂ܂B̋@\ irattach Ŏ悤
    ȂĂ܂B
   
 E foCX /dev/ircomm_tty  /dev/ircomm-tty ɕύXɂȂĂ܂
    B
   
 E foCX /dev/irnine  /dev/ircomm_new ͔p~ɂȂ܂B
   


Chapter 2. ͂߂悤

2.1. \tgEFA

irda-utils pbP[WŒ񋟂ĂR}h IrDA ̐ڑs߂
{ƂȂc[QłB̑̃c[ (e-SquirtAIrNET Ȃ) ̓IvV
łBvOɂ̓}jAy[W܂܂񂪁A 
MobiliX - Software <http://mobilix.org/software/irda/> ɒuꂽ
man y[WgƂł܂B



2.1.1. IrDA [eBeB (irda-utils)

2.1.1.1. RpC

 

 E Linux/IrDA vWFNg̍ŐV irda-utils ̃\[XgĂ
    B܂Aglibc Cu̎gp߂܂B݂̃o[W ldd
    --version Œm邱Ƃł܂BÂ libc5 ̎gp̓RpCG[
    NłB
   
 E tar xvzf irda-utils<VERSION> ƂăpbP[WWJĂB/
    usr/src fBNgł邱Ƃ߂܂B
   
 E make clean sĂ (ŏ̃RpC̍ۂɂ͕Kv܂
    )B
   
 E make all săoCi쐬܂B
   
 E make install s܂BőSR}ḧʒuɒuA/etc
    /irda ɐݒt@CCXg[܂B
   
 E Ƃ IrDA X^bNe IrDA pbP[WRpCۂɃR
    pC IRLMP_HINT_MASK_SET  IRDAPROTO_ULTRA `Ă
    ƌG[fꍇ܂B̓fBXgr[V
    ̃J[lwb_̈̕sɂ̂ŁA 2.4.x J[l\[
    XȂΏC͊ȒPłBPɈȉ̂悤ɂăJ[l irda.h
     include fBNgɃRs[ĂB
   
    cp /usr/src/linux/include/linux/irda.h /usr/include/linux
   
 



2.1.1.2. RpCς݃pbP[W

Mkɂ irda-utils  Debian pbP[W񋟂Ă܂B
 Debian 2.2 (potato) [XɎ^Ă܂BMandrake ł
6.1 ȍ~ARedHat ł 6.1 ȍ~ASuSE ł 6.1 ȍ~ irda-utils  RPM
pbP[W^Ă܂BRpCς݃pbP[Ẅ̖ꕔ́A
J[lo[WƎgĂpbP[Wo[WƂ̊Ԃ̔݊
ƂȂĂ邽߂܂B



2.1.1.3. Linux/IrDA-Utils ̊evO

2.1.1.3.1. irattach

irattach ̓p[^ɃW[Qw肵܂B͓ FIR h
Co (Ⴆ irattach toshoboe) ł邱ƂAircomm ł (̂
"irda0" ̃GCAX /etc/modules.conf ɋLڂꂽW[
[h܂) Ƃ܂B

ȂcCĂāAFIR `bvZbgT|[gĂꍇA
irattach gKv͂ȂȂ܂BPɃhCo modprobe 邾
B



2.1.1.3.2. irdadump

ԊOʐMő󂳂ꂽSt[\邽߂̃vOłB

IrDA foCXhColbg[NfoCXhCoƂĎ邱Ƃ
_̈ɂ́AfoCX (邢̓pPbg^Cv) ɑ΂ăvgR
̓c[ (sniffer) ڑł邱Ƃ܂B܂ tcpdump ̑
ƂȂ irdadump ̂悤ȎɎ荠ȃ[eBeBgƌ
łBɂfobOfReՂɂȂ܂B Linux-2.2 ł BPF
(Berkeley Packet Filter) Ă̂ŁAt[tB
^邱Ƃł܂B

: irdadump R}hgۂɂ́Aʏ root ɂȂĂKv
BCONFIG_PACKET J[lŗLɂĂKv܂BW[
ƂăRpCĂꍇAW[蓮Ń[hKv邩
܂B irdadump ̓CuĂA GUI AvP[V
gƂł܂B

ȉ Linux  Palm III Ƃ̊Ԃ̒ZZbV̏o͗܂B
Oł̓[J irobex CȂ߁APalm III  disc t
[𑗂Ă܂B

dagbnb /home/dagb/linux/irda-utils/irdadump/ # ./irdadump                          
                                                                                   
20:18:15.305711 xid:cmd:saddr=0x05c589 > daddr=0xffffffff,S=6,s=0                  
20:18:15.385597 xid:cmd:saddr=0x05c589 > daddr=0xffffffff,S=6,s=1                  
20:18:15.465568 xid:cmd:saddr=0x05c589 > daddr=0xffffffff,S=6,s=2                  
20:18:15.545953 xid:cmd:saddr=0x05c589 > daddr=0xffffffff,S=6,s=3                  
20:18:15.625574 xid:cmd:saddr=0x05c589 > daddr=0xffffffff,S=6,s=4                  
20:18:15.705575 xid:cmd:saddr=0x05c589 > daddr=0xffffffff,S=6,s=5                  
20:18:15.785601 xid:cmd:saddr=0x05c589 > daddr=0xffffffff,S=6,s=255,info=Linux     
20:18:18.075526 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=0                 
20:18:18.225498 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=1                 
20:18:18.375495 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=2                 
20:18:18.526355 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=3                 
20:18:18.675614 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=4                 
20:18:18.676364 xid:rsp:saddr=0x05c589 > daddr=0xb50c14b,S=6,s=4                   
20:18:18.765506 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=5                 
20:18:18.927221 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=255,info=Palm III 
20:18:18.975796 snrm:cmd,ca=0xfe,pf=1                                              
20:18:18.976534 ua:rsp,ca=0x58,pf=1                                                
20:18:18.977145 ua:rsp,ca=0x58,pf=1                                                
20:18:19.585627 rr:rsp,ca=0x58,nr=0,pf=1                                           
20:18:19.585810 rr:rsp,ca=0x58,nr=0,pf=1                                           
20:18:19.606413 i:cmd,ca=0x58,nr=0,ns=0,pf=1                                       
20:18:19.606582 rr:rsp,ca=0x58,nr=1,pf=1                                           
20:18:19.627708 rr:cmd,ca=0x58,nr=0,pf=1                                           
20:18:19.627871 i:rsp,ca=0x58,nr=1,ns=0,pf=1                                       
20:18:19.650571 disc:cmd,ca=0x58,pf=1                                              
20:18:19.650736 ua:rsp,ca=0x58,pf=1                                                
20:18:21.165524 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=0                 
20:18:21.315608 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=1                 
20:18:21.315793 xid:rsp:saddr=0x05c589 > daddr=0xb50c14b,S=6,s=1                   
20:18:21.395499 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=2                 
20:18:21.545516 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=3                 
20:18:21.695500 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=4                 
20:18:21.845840 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=5                 
20:18:22.007222 xid:cmd:saddr=0xb50c14b > daddr=0xffffffff,S=6,s=255,info=Palm     
III                                                                                
20:18:22.056143 snrm:cmd,ca=0xfe,pf=1                                              
20:18:22.056310 ua:rsp,ca=0xc8,pf=1                                                
20:18:22.056381 ua:rsp,ca=0xc8,pf=1                                                
                                                                                   
37 pacckets received by filter                                                     

 



2.1.1.3.3. irdaping

IrDA eXgt[pă[gfoCX ping ݂邱Ƃł
BׂẴfoCXeXgt[T|[gĂ킯ł͂܂
B ping (8) Ɠl̃vOłB̃vÓAIrDA eX
gt[ (уt[ԍƃt[𑗂Ԃ܂ރ[Uf[^
Ă܂) 𑗂܂B -s IvVpăt[̃TCY
X邱Ƃł܂BƂ IP AhXł͂ȂAIrDA foCXAh
Xw肷Kv܂Birdadump gẴAhX𓾂Kv
܂B

ȉɏo͗܂ (ACTiSYS IR-100M  ping Ă܂)B

dagbnb /home/dagb/linux/irda-utils/irdaping/ # ./irdaping 0xf7be8388   
IrDA ping (0xf7be8388): 32 bytes                                       
32 bytes from 0xf7be8388: irda_seq=0 time=102.466003 ms.               
32 bytes from 0xf7be8388: irda_seq=1 time=102.202003 ms.               
32 bytes from 0xf7be8388: irda_seq=2 time=102.170998 ms.               
32 bytes from 0xf7be8388: irda_seq=3 time=101.633003 ms.               
                                                                       
4 packets received by filter                                           

 

Christian Gennerat ̃[: ̓p[^ݒ肵Ȃȉ
alias  $HOME/.bashrc ɒ`ĎgĂ܂B alias irping=
"irdaping \`grep daddr /proc/net/irda/discovery|sed s/.*daddr://\`" 
̓NCAgꍇɂ͗ǍDɓ삵܂B



2.1.1.3.4. irkbd

Tekram IR-660 ԊOhbLOXe[VŎgpĂ}EXƃL[
{[hvgRT|[głB



2.1.1.3.5. findchip

Ȃ̃}VŎgĂ FIR IrDA `bvZbgł邩ׂ܂B 
findchip -v ƂĒׂĂBȊÕ`bvZbgo@
ɂĂ͈ȉQƉB



2.1.1.3.6. irsockets

IrDA \PbggvOW߂̂łB



2.1.1.3.7. irpsion5

Psion PDA Ƃ̊ԂŃt@C肷t@C]vOłB



2.1.1.3.8. /etc/irda

ݒt@CŁASIR hCõVA|[g܂݂܂Bŏ̎s
̍ۂ SIR IrDA hCoݒ肷Kvł傤B



2.1.2. openobex

OpenOBEX <http://sourceforge.net/projects/openobex/> vWFNgōŏI
IɎ悤ƂĂ̂́AObject Exchange (OBEX) vgR̃I[v
\[X̎łBOBEX ̓ZbVvgRŁAoCi HTTP v
gRƂłׂ̂łBT^IȃAvP[VƂāAPalmOS 
Beam @\܂B



2.1.3. e-squirt

e-Squirt <http://www.hpl.hp.com/personal/Jean_Tourrilhes/IrDA/
index.html>  IrDA fBA URL 𑗂邽߂̒PȃvgRłB
ɂ CoolTown LȃfoCXƂ̊ԂłƂ肪ł܂B



2.1.4. Linux-IrDA p IrNET

IrNET <http://www.hpl.hp.com/personal/Jean_Tourrilhes/IrDA/index.html>
 2  IrDA sAԂ IrDA Ɍ悭 TCP/IP ʐM悹邽߂̃v
gRłB IrTTP \Pbg PPP pPbg󂯓nyʃC
łBグ邽 PPP 𓯊[hŗpĂA_ɕxݗl
Xȋ@\񋟂Ă܂B IrNET ̎啔̓J[l 2.4.x Ɋ܂܂Ă
AƑgݍ킹ĒʐMs[UXy[Xf[ web y[W
Ă܂B



2.1.5. Java - IrDA C^[tF[X

 Java Infrared Socket API <http://www.hpl.hp.com/personal/
Jean_Tourrilhes/IrDA/index.html>  Java g Linux }VƐԊO
foCXƂ̒ʐMsi񋟂܂B Java ̃AvP
[VJ҂͐ԊOʐMpAvP[VeՂɊJł
܂B API  java.net.Socket API ɂ悭̂ŁALinux IrDA X^bN
pĎĂ܂BRlNVwXg[ (IrSocket 
IrServerSocket) ƁARlNVXXg[ (UltraSocket 
UltraPacket) ̂ǂT|[gĂ܂B



2.2. J[l

2.2.1. ͂߂

܂AKernel-HOWTO ĂŃRpC菇ɂď𓾂ĂĂ
B܂Ahttp://irda.sourceforge.net  Linux/IrDA [OX
gA[JCu𒲂ׂčŐṼpb`肵ĂB

IrDA ̃R[h

/usr/src/linux/net/irda (protocol ֘A)

/usr/src/linux/drivers/net/irda (foCXhCo)

/usr/src/linux/include/net/irda (wb_t@C)

̊eꏊɂ܂B

ʓIȃp[^J[l 2.4.x \[XgĂ邩mFĂB
J[l̃o[WɎMȂ uname -r R}hgĂ
B

Linux/IrDA vWFNgŐṼJ[lpb`肵ĂB܂
 Alan Cox ̃J[lV[YgĂB /usr/src A
J[l\[X𕁒iuĂꏊɒu܂B̂ƂAȉ
patch-2_2.0-irdaXXX ۂ̃t@CɓǂݑւĂB

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

ŐṼhCoł́AJ[l̎I@\̃T|[g
(CONFIG_EXPERIMENTAL) LɂKvł傤By: 2.4.17 
ł͂قړςł邻łBz

"General Setup" ̍ŁAsysctl  CONFIG_SYSCTL ŗLɂ܂B

CONFIG_PROC_FS  proc t@CVXeT|[gLɂׂłB

CONFIG_SERIAL  SIR @\̃VAT|[gLɂ܂B

Linux/IrDA Ńv^gۂ CONFIG_PRINTER LɂKv邩
ǂɂẮA͂悭m܂Bsvł͂ȂƎv܂B

CONFIG_NET ɂlbg[NT|[g͕K{łB

W[T|[g CONFIG_MODULES J[lɊ܂߂悤mFĂ
B lsmodpȂǂăeXgĂĂB

CONFIG_KERNELD  kerneld ̃T|[g܂߂ĂBAAɂ
Ă kmod (CONFIG_KMOD) ł삵܂BW[ł͂ȂSgݍ
悤ɂĂ悤łAW[gƂ߂܂
B

irdadump gɂ́A炭 CONFIG_PACKET LɂKvł
傤B

Linux/IrDA pb`𓖂Ă̏CłނȂA make clean sK
v͂ȂAԂ̐ߖɂȂ܂Bȉ̂悤ɂ邱Ƃ߂łB

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

ŕςȃG[o悤ȂAmake clean sčŏ쐬
B



2.2.2. IrDA ŗL̃p[^

ȉ ../linux-2.4.3/Documentation/Configure.help Ă̂
BƐVhCoɂĂ͍ŐṼJ[lɓĂ
B

y: 邽߁A2001/12/13 t̃J[l Configure.help 
{̖+p܂BAƌ킹邽߂Ȃ
Ă܂Bz



2.2.2.1. IrDA subsystem support (IrDA TuVXeT|[g)

IrDA subsystem support (IrDA TuVXeT|[g)

CONFIG_IRDA
   
    IrDA (TM) vgRLɂȂA Y ƓĂB
    The Infrared Data Associations (tm) ͖ԊOʐM̋Ki肷
    ĉŁA̋Ki͂قƂǂ̃bvgbv PDA ŃT|[gĂ
    ܂B
   
    IrDA (tm) vgRLƂ Linux gpɂ́Airmanager 
    Aɉċ炭 irattach ̂悤Ȃ̃[Ũ[eB
    eBKvɂȂł傤Bڂ Documentation/networking/
    irda.txt BInfrared-HOWTO QƂꍇ́A http:/
    /www.linuxdoc.org/docs.html#howto ł܂B
   
    ̋@\̓W[ƂĂpł܂BW[ irda.o 
    BW[ƂăRpCȂA M ƓA
    Documentation/modules.txt ǂ݂B
   
IrDA Cache last LSAP (IrDA ōŏI LSAP LbV)

CONFIG_IRDA_CACHE_LAST_LSAP
   
    IrLMP ōŌɎg LSAP LbVĂȂA Y 
    ĂB́AقƂǂ̃t[ڑőM/M
    悤ɂȂ̂ŁAӖ܂B̃IvVLɂƈt
    [̃nbV̎sߖł܂B
   
    悭킩Ȃ Y ƓĂB
   
IrDA Fast RR's (IrDA  RR)

CONFIG_IRDA_FAST_RR
   
    Xe[VƂĉғƂAIrLAP ɍ RR (M) t
    [𑗂悤ɂȂ炱 Y ƓĂB̃IvV
    LɂƁAt[̎M㑗ML[Ȃ炽
    IrLAP  RR t[𑗐M悤ɂȂ܂B邱ƂőX
    e[V́Aʂ̃f[^MƂȂMO
    Aő turn around time ܂ő҂KvȂȂAx傫
    ܂BXe[V̑ML[ȂAXe[V́A
    ^CAEgʏlɒB܂ RR t[𑗐M邽߂ɒ
    ҂߂܂B̃IvVLɂƁAIR _CI[h̓d
    ͏Ǎʃobe̎k܂܂B
   
    悭킩Ȃ N ƓĂB
   
IrDA fobO

CONFIG_IRDA_DEBUG
   
    IrDA TuVXe syslog ɃfobOނ悤ɂȂ
    A Y ƓĂBfobOEx /proc/sys/net/irda/
    debug ŕύXł܂B
   
    悭킩Ȃ (oO݂̂eՂɂȂ̂) Y ƓĂ
    B
   
IrLAP kT|[g

CONFIG_IRDA_COMPRESSION
   
    k IrDA (tm) vgR̎dl̈ꕔł́u܂vAł
    ΂炵܂Ă܂B Linux ߂ IrLAP wł̈k̃T|
    [g݂܂B Linux <-> Linux ԂŒʐMꍇɌ
    Akɂ闘v󂯂邱Ƃł܂B
   
     Y Ƃꍇ́Aȉ̈kvgR̂Ƃł Y ܂ M
    ƂKv܂B
   
IrLAP Deflate kvgR (I)

CONFIG_IRDA_DEFLATE
   
    Deflate kvgRLɂ΁A Y ƓĂ
    B deflate k (GZIP)  PPP vgRŎgĂ@ƑS
    ̂łB
   
    W[ƂăRpC΁Ał M ƓA
    Documentation/modules.txt ǂłBW[̖O
    irda_deflate.o ɂȂ܂B
   
IrLAN vgR

CONFIG_IRLAN
   
    IrLAN vgRLɂȂA Y ƓĂBW
    [ (irlan.o) ƂăRpCȂA M ƓA
    Documentation/modules.txt ǂ݂B IrLAN  Ethernet G
    ~[gAԊOp LAN 񋟂ł悤ɂȂ܂B
   
    IrLAN vgR HP  NetbeamIR  ESI  JetEye NET ̐ԊOA
    NZX|CgƒʐMł܂BLrLAN gp Linux }VƐ
    Ăyȃlbg[LOł܂B
   
IrCOMM vgR

CONFIG_IRCOMM
   
    IrCOMM vgRLɂȂA Y ƓĂB
    W[ƂăRpCȂA M ƓA Documentation
    /modules.txt ǂ݂ (ircomm.o  ircomm-tty.o W[
    ł)BIrCOMM ̓VA|[gEG~[VĂA
    TTY F̑SAvP[VԊONoRŎgp\
    ɂȂ܂B] PPPAminicom Ȃǂ TTY pAvP[V
    𗘗pł悤ɂȂ܂B̃IvVLɂircomm 
    ircomm_tty ƌĂ΂ӂ̃W[܂B
   


2.2.2.2. foCXhCo

IrTTY IrDA foCXEhCo

CONFIG_IRTTY_SIR
   
    IrTTY CEfBVvLɂȂA Y ƓĂ
    BW[ (irtty.o) ƂăRpCȂA M 
    ADocumentation/modules.txt ǂ݂B IrTTY ɂ
    Linux ̃VAEhCo[ 16550 ݊ IrDA ̑S|[gŎgp
    悤ɂȂ܂BقƂǂ IrDA `bv 16550 ݊Ȃ̂ŁA
    IvVɂ͋炭 Y Ɠ邱ƂɂȂł傤BȂ
    IrTTY pꍇɂ͂̃hCoł͐ڑx 115200 bps (IrDA
    SIR [h) ɐ܂B
   
    悭킩Ȃ Y ƓĂB
   
IrPORT IrDA foCXhCo

CONFIG_IRPORT_SIR
   
    IrPORT IrDA ̃foCXhCoLɂɂ́A Y ƓĂ
    BW[ (irport.o) ƂăRpCȂ M ƓA
    Documentation/modules.txt ǂłB IrPORT  IrTTY ̑
    Ɏgp邱Ƃł܂AꍇɂĂ IrPORT ̕s
    Ƃ܂BƁAȂ̃Rs[^ IrDA |[
    gɃGR[ELZ̋@\ȂꍇŁA̎̃|[gł IrPORT
    gƂ܂܂BƂ̂́ÃhCo͔d[hł
    ݓ삷邩łBIrPORT ł irattach gȂĂA"insmod
    irport io=0x3e8 irq=11" ̂悤 FIR hCoƓ@őgݍނ
    Ƃł܂B
   
    MȂȂAY ƓĂB
   
Winbond W83977AF IrDA foCXEhCo

CONFIG_WINBOND_FIR
   
    Winbond W83977AF super-io `bvZbgp IrDA LɂȂ
    A Y ƓĂBCorel NetWinder  IrDA `bvZbgp
    ɂ͂̃hCogׂłBhCoT|[gĂ鑬x
    SIRAMIRAFIR (4Mbps) łB
   
    W[ƂăRpCȂA M ƓA
    Documentation/modules.txt ǂ݂BW[
    w83977af_ir.o ɂȂ܂B
   
NS PC87108 IrDA foCXEhCo

CONFIG_NSC_FIR
   
    NS  PC87108  PC87338 IrDA `bvZbg̃T|[gLɂ
    ȂA Y ƓĂB̃hCo SIRAMIRAFIR
    (4Mbps) T|[gĂ܂B
   
    W[ƂăRpCȂA M ƓA
    Documentation/modules.txt ǂ݂BW[
    nsc-ircc.o ɂȂ܂B
   
Toshiba Type-O IR |[g̃foCXhCo

CONFIG_TOSHIBA_FIR
   
    Toshiba Type-O IR `bvZbgLɂɂ́A Y ƓĂ
    B̃`bvZbǵAToshiba Libretto 100CT ⑽̃bvg
    bvERs[^ŎgpĂ܂BW[ƂăRpC
    Ȃ M ƓA Documentation/modules.txt ǂłB
    W[ toshoboe.o ɂȂ܂B
   
SMC IrCC (I)

CONFIG_SMC_IRCC_FIR
   
    SMC Ђ̐ԊOʐMRg[̃T|[gLɂȂ炱 Y
    ƓĂB͕xm Lifebook 635t  Sony VAIO PCG-505TX
    ŎgĂ܂BW[ƂăRpCȂ M ƓA
    Documentation/modules.txt ǂłBW[
    smc-ircc.o ɂȂ܂B
   
ALi M5123 FIR Rg[hCo (I)

CONFIG_ALI_FIR
   
    ALi Ђ M5123 ԊOʐMRg[̃T|[gLɂȂ炱
     Y ƓĂB ALi M5123 FIR Rg[ ALi 
    M1543CA M1535AM1535DAM1535+AM1535D ̊eTEXubW̓R
    g[ł܂B̃hCo SIRA MIRAFIR (4Mbps) T|
    [gĂ܂B
   
    W[ƂăRpCȂ M ƓA Documentation/
    modules.txt ǂłBW[ ali-ircc.o ɂȂ܂
    B
   
VAhOT|[g

CONFIG_DONGLE
   
    Ȃ̃Rs[^̃VA|[gɐڑԊOfoCXg
    Ăꍇ Y ƓĂB̃foCX𑍏̂ăhO
    Ăт܂BɁAgĂhŐ@ɂ킹Ĉȉ Y ܂ M
    ƓăhCoIĂB
   
    ̎ɑ΂铚́Aڂɂ̓J[lɂ͉e܂B N Ɠ
    邱ƂɂĈȉ̃VAhOɂĂ̎₪ׂăXLbv
    邾łB
   
ESI JetEye PC hO

CONFIG_ESI_DONGLE
   
    Extended Systems Ђ JetEye PC dongle ̃T|[gLɂȂ
    A Y ƓĂBW[ƂăRpCȂA
     M ƓADocumentation/modules.txt ǂ݂B ESI
    dongle ͒ʏ 9 sEVAE|[gERlN^[ɐڑA
     IrTTY Ŏg邾łBESI hOLɂɂ́A
    "irattach -d esi" Ƃ irattach X^[gKv܂B
   
ACTiSYS  IR-220L y IR220L+ hO

CONFIG_ACTISYS_DONGLE
   
    ACTiSYS IR-220L, IR220L+ hÕT|[gLɂȂA
     Y ƓĂBW[ƂăRpCȂA
    M ƓADocumentation/modules.txt ǂ݂B ACTiSYS
    dongle ͒ʏ 9 sEVAE|[gERlN^[ɐڑA
     IrTTY Ŏg邾łB ACTiSYS hOLɂɂ́A
    "irattach -d actisys" ܂ "irattach -d actisys+" Ƃ irattach
    X^[gKv܂B
   
Tekram IrMate 210B hO

CONFIG_TEKRAM_DONGLE
   
    Tekram IrMate 210B hÕT|[gLɂȂA Y
    ƓĂBW[ƂăRpCȂA M 
    ADocumentation/modules.txt ǂ݂B Tekram hO
    ͒ʏ 9 sEVAE|[gERlN^[ɐڑA IrTTY
    Ŏg邾łBTekram hOLɂɂ́A"irattach -d
    tekram" Ƃ irattach X^[gKv܂B
   
Greenwich Ђ GIrBIL hO

CONFIG_GIRBIL_DONGLE
   
    Greenwich Ђ GIrBIL hÕT|[gLɂɂ́A Y
    ƓĂBW[ƂăRpCȂ M ƓA
    Documentation/modules.txt ǂłB Greenwich hO͒
     9 sVAE|[gERlN^ɐڑA_ł IrTTY 
    ݂Ŏgpł܂B /etc/irda/drivers XNvg "irattach -d
    girbil" ƋLq邱ƂŁAGreenwich hO𗘗p\ɂ邱Ƃ
    ł܂B
   
Parallax Litelink hO

CONFIG_LITELINK_DONGLE
   
    Parallax Litelink hÕT|[gLɂɂ́A Y Ɠ
    ĂBW[ƂăRpCȂ M ƓA
    Documentation/modules.txt ǂłB Parallax hO͒
     9 sVAE|[gERlN^ɐڑA_ł IrTTY 
    ݂Ŏgpł܂BParallax hOg߂ɂ́A "irattach -d
    litelink" Ƃ irattach X^[gKv܂B
   
 Belkin hO

CONFIG_OLD_BELKIN_DONGLE
   
    Adaptec Ђ Airport 1000  2000 hÕT|[gLɂ
    Ȃ Y ƓĂBW[ƂăRpCȂ M 
    ADocumentation/modules.txt ǂłB̃W[
    old_belkin.o ƂOɂȂ܂B̏񂪃hCo drivers/net
    /irda/old_belkin.c ̓̃̕RgɏĂ܂B
   
    y:Berkin hOɂ͐VLÂ݃T|[gƈȑÕJ[l
    Configure.help ɂ͂BOŌ͂A΂炵Ă݂Kv
    RBz
   


2.2.3. ݂̃J[lpb`

L: donauoboe  toshoboe ̐VłŁAFIR T|[gǂA
Donauoboe `bṽT|[gǉĂ܂Bhttp://libxg.free.fr/
lib-irda.html B

USB hOpb`ɂĂ Linux/IrDA [OXgA[JCu
ׂĂB



2.3. J[lW[IvV

ȉ̃W[IvṼT[xB modinfo R}hō쐬̂
B

actisys.o                                                              
Dag Brattli  - Jean Tourrilhes                                         
ACTiSYS IR-220L and IR-220L+ hOhCo                          
                                                                       
ali-ircc.o                                                             
Benjamin Kong                                                          
ALi FIR Rg[hCo                                           
io int array (min = 1, max = 4), "Base I/O addresses" w肵܂     
irq int array (min = 1, max = 4), "IRQ ԍ" w肵܂              
dma int array (min = 1, max = 4), "DMA `l" w肵܂          
                                                                       
esi.o                                                                  
Dag Brattli                                                            
Extended Systems Ђ JetEye PC hOhCo                       
                                                                       
girbil.o                                                               
Dag Brattli                                                            
Greenwich Ђ GIrBIL hOhCo                                 
                                                                       
irport.o                                                               
Dag Brattli                                                            
IrDA SIR [h̔dVAhCo                                
io int array (min = 1, max = 4), "Base I/O addresses" w肵܂     
irq int array (min = 1, max = 4), "IRQ ԍ" w肵܂              
                                                                       
irtty.o                                                                
Dag Brattli                                                            
IrDA TTY foCXhCo                                              
qos_mtt_bits int, "ŏ؂ς" w肵܂B                    
                                                                       
litelink.o                                                             
Dag Brattli                                                            
Parallax  Litelink hOhCo                                  
                                                                       
nsc-ircc.o                                                             
Dag Brattli                                                            
NS Ђ IrDA foCXhCo                                          
qos_mtt_bits int, "ŏ؂ς" w肵܂B                    
io int array (min = 1, max = 4), "Base I/O addresses" w肵܂     
irq int array (min = 1, max = 4), "IRQ ԍ" w肵܂              
dma int array (min = 1, max = 4), "DMA `l" w肵܂          
dongle_id int, "gĂhÕfoCXԍ" w肵܂         
                                                                       
old_belkin.o                                                           
Jean Tourrilhes                                                        
Belkin () SmartBeam hOhCo                                 
                                                                       
smc-ircc.o                                                             
Thomas Davis                                                           
SMC IrCC Rg[̃hCo                                        
ircc_dma int, "DMA `l" w肵܂                              
ircc_irq int, "IRQ ԍ" w肵܂                                  
                                                                       
tekram.o                                                               
Dag Brattli                                                            
Tekram IrMate IR-210B hOhCo                                 
                                                                       
toshoboe.o                                                             
James McKenzie                                                         
Toshiba OBOE IrDA foCXhCo                                     
max_baud int, ő{[[g                                           
                                                                       
w83977af_ir.o                                                          
Dag Brattli                                                            
Winbond W83977AF IrDA foCXhCo                                 
qos_mtt_bits int, "ŏ؂ς" w肵܂B                    
io int array (min = 1, max = 4), "Base I/O addresses" w肵܂     
irq int array (min = 1, max = 4), "IRQ ԍ" w肵܂              
                                                                       
irda.o                                                                 
Dag Brattli                                                            
The Linux IrDA vgRTuVXe                                  
irda_debug_R07c03e02 long                                              
                                                                       
irlan.o                                                                
Dag Brattli                                                            
Linux IrDA LAN vgR                                              
eth int, "foCX ethX (0) y irlanX (1)" w肵܂            
access int, "ANZX DIRECT=1, PEER=2, HOSTED=3" w肵܂     
                                                                       
ircomm-tty.o                                                           
Dag Brattli                                                            
IrCOMM VA TTY hCo                                           
                                                                       
ircomm.o                                                               
Dag Brattli                                                            
IrCOMM vgR                                                      
                                                                       
irnet.o                                                                
                                                                       



2.4. ݒɂ

2.4.1. Device ԍ

mknod /dev/ircomm0 c 161 0                                             
mknod /dev/ircomm1 c 161 1                                             
mknod /dev/irlpt0 c 161 16                                             
mknod /dev/irlpt1 c 161 17                                             
mknod /dev/irnet c 10 187                                              
chmod 666 /dev/ir*                                                     

irkbd gꍇAKvɂȂfoCXԍȊOɂł傤B
ṼfoCXԍ ../src/linux/Documentation/devices.txt ɂ܂B



2.4.2. Device zu

܂AIrDA foCXʐM\ȋɂĂB^ǂ Linux
/IrDA T[rXׂĂ̐VfoCXIɌoł邱Ƃ邩
܂񂪁AoRtBO[Vɏ̋ɂꍇ
ǍDȌʂł傤B

ԊOfoCX 1m ȓŁApx̌X 30 xȓɂĂB
̃foCX^ʂԂɂKv܂BłȂꍇ
ɂ͋gĂ (gp M$  CD-ROM ǂƂĎg܂)B



2.4.3. /etc/modules.conf

/etc/conf.modules Ɉȉ̍sĂB

# IrDA over a normal serial port, or a serial port compatible IrDA port       
alias tty-ldisc-11 irtty                                                      
# IrCOMM (for printing, PPP, Minicom etc)                                     
alias char-major-161 ircomm-tty     # if you want IrCOMM support              
# IRLAN                                                                       
alias irlan0 irlan                                                            
# To be able to attach some serial dongles                                    
# These values are hard-coded in irattach (not instance order)                
alias irda-dongle-0 tekram          # Tekram IrMate IR-210B                   
alias irda-dongle-1 esi             # ESI JetEye                              
alias irda-dongle-2 actisys         # Actisys IR-220L                         
alias irda-dongle-3 actisys         # Actisys IR-220L+                        
alias irda-dongle-4 girbil          # Greenwich GIrBIL                        
alias irda-dongle-5 litelink        # Parallax LiteLink                       
alias irda-dongle-6 airport         # Adaptec Airport 1000 and 2000           
# To use the FIR driver. This applies only to the specific device!!!          
#options nsc-ircc dongle_id=0x09        # NSC driver on a IBM Thinkpad laptop 
#options nsc-ircc dongle_id=0x08        # HP Omnibook 6000                    
#alias irda0 nsc-ircc                                                         
#alias irda0 smc-ircc                                                         
# IrNET module...                                                             
alias char-major-10-187 irnet       # Official allocation of IrNET            

̂ depmod -a sčXV𔽉fĂBőS IrDA foC
XKvɉĎIɃ[h͂łBӂKvȓ_ƂāAe
Xgɂ̃W[蓮Ń[h邱Ƃ͂ł܂A񃍁[
h邱ƂȂ悤ɊmFĂĂB irkbd  USB hO
gꍇɂ́AȊOɂKvȃGg邩܂Bݒ
ƂȂ irda-utils pbP[WɊ܂܂Ă܂B



2.4.4. /etc/irda

/etc/irda ɖڂʂĂBȂ̐ݒ𔽉f悤KXҏW
B



2.4.5. BIOS ݒ

BIOS ŐԊO|[gLɂȂĂ邱ƂmFA̍ۂɐԊO|[g
gpĂ銄荞݂ƃ|[gAhX`FbNĂBꕔ̃
bvgbvł BIOS ̃p[^ݒ肷̂ Window$ CXg[
ĂKvꍇ悤łB

ꕔ̋@ł́AhbLOXe[VɐڑꍇɐԊO|[g
ɂꂽAƂ񍐂󂯂Ă܂B



2.4.6. VA|[g (setserial)

VAfoCXƂ̂̋邽߁A setserial /dev/ttyS1
uart none ƂĂKv܂BȂ SIR |[gɂ킹 ttySx
͕̕ύXĂBqg: dmesg | grep tty

Florian Lohoff 񂩂:  "port 0x0 irq 0" ĂKv
BĂȂƓˑRʂ S1 VXeŎg悤ɂȂƂ
(Ⴆ΃f PCMCIA J[h}Ƃ) ȂƂɂȂ܂B̍ۂ
VAhCóA̎xzɂȂ̂ɂւ炸|[gANZX
邽߁AIrDA ֌W񂾂nO肵Ă܂܂B܂AVA
hCołǂ̂Ă܂񂪁A͂葶݂oOł
(serial_out  serial_in ֌W̑O printk Ă݂)B



2.4.7. IrDA 𓮂Ă݂

܂AƂɂ Disk  sync ĂBu[gHڂɂȂ邩
܂Bŏ̖Ɛӂ̍QƁB

[xhCoɂ́ASIRAhO FIR ̎O̃JeS܂
B Linux/IrDA n߂ɂ͂܂ SIR gĂ݂邱ƂE߂܂B

modprobe irda irtty ŃW[[h܂B irattach /dev/ttyS1 -s
1  IrDA T[rX IrDA foCXڑ܂Blsmod ̏o͂ dmesg 
`FbNĂB

irdadump ͓͈͂͂̑S IrDA foCX񋓂܂Bqg: ʂ Linux
}VƂ̊ԂŐڑĂꍇAhostname YOUR_HOSTNAME ƂĊeRs
[^ɌŗL̖O^邱Ƃł܂B

T[oɂȂ}VŁA"pppd /dev/ircomm0 LOCAL_IP:REMOTE_IP" NC
Ag "pppd /dev/ircomm0" sĂB

Őڑ ping ŃeXgł悤ɂȂ܂B܂Aẽlbg[
Nڑ (ssh, NFS Ȃ) A̎_ŎgĂ݂ĂB



Chapter 3. IrDA ڑ̏ڍ - vgR

3.1. IrDA X^bNgĂ݂

჌xhCoɂ́ASIRAhO FIR ̎O̃JeS܂B
hCoIĂȂAȍ~̊e߂ŋLڂĂ郁bZ[
Wo͂܂B



3.1.1. SIR

 

 E ǂ̃VA|[g IR foCXŎgĂ邩𒲂ׂĂB
    ɂ dmesg ̏o͂Ă݂̂ĂłBVAT|[gW
    [ĂꍇA܂ modprobe serial sĂB
    Ĉȉ̂悤ȃGgT܂B
   
    Serial driver version 4.25 with no serial options enabled                
    ttyS00 at 0x03f8 (irq = 4) is a 16550A     #first serial port /dev/ttyS0 
    ttyS01 at 0x3000 (irq = 10) is a 16550A    #e.g. infrared port           
    ttyS02 at 0x0300 (irq = 3) is a 16550A     #e.g. PCMCIA modem port       
   
    ȂȂ悤Ȃ΁ABIOS ŐԊOT|[gLɂȂĂȂ
    AJ[lȂ̐ԊOfoCX SIR [hołĂ܂
    B_œ@̃bvgbvł̌ۂN̂Ă܂
    B HP  OmniBook 800 Ɠł Libretto fłB PnP T|[
    g IR |[ǧoɉe邩ǂ͒m܂B肭Ȃ
    ̂͂̂肪Ƃꍇ́AĂ݂Čʂ܂ŘA
    ܂B܂ SIR ȂƂ FIR g邩܂B
   
 E ꍇɂẮA setserial /dev/ttyS<0-2> port 0xNNNN irq M Ƃ
    ԊOVA|[g̒lݒ肷Kv邩܂BɁA
    ԊO|[gƗVA|[g̏ꍇAꂪKvɂȂP[X
    悤łBʏ킱̒lύXKv͂Ȃł傤Bȏ
    ́Aȉ FAQ ̍QlɂĂB
   
 E kerneld  kmod gĂȂꍇAmodprobe irda g irda 
    W[ǂݍłB
   
 E lsmod sĂBirda  irtty W[\͂
    łB
   
 E /var/log/messages ɂ͂̎_ "Serial connection established" 
    bZ[Wo͂Ă͂łB
   
 E irattach sāA IR foCXo邽ߏX (Ⴆ΂Vb
    ق) ҂ĂB̌A/var/log/messages ɏoꂽb
    Z[WĂ݂ĂBȉ̂悤ȏo͂Ă͂ł
    (Linux/IrDA ɖ֌Wȍs𑽏폜Ă܂)B
   
    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                             
   
     
   
 E Xɏڂ cat /proc/net/irda/discovery œ܂B
   
 



3.1.2. hOڑ - VA|[gp̐ԊOA_v^

݃T|[gĂhÓAExtended Systems Ђ ESI-9680 JetEye
ATekram Ђ IRmate 210BAACTiSYS Ђ IR220L and 220L+A Greenwich 
 GIrBIL hOłB

Dag Brattli ɂ (: CĂ܂)

uhOgɂ͈ȉ̂悤ɂĂB

modprobe tekram         # or esi or actisys                            
irattach -d tekram      # or -d esi or -d actisys                      

modprobe  /etc/modules.conf ȂΕKv܂B̂Ƃ
Airattach ɂ -d IvVtȂ΂܂B͓ɂQ
̃VA|[gɕʁX̃hOĂꍇÂ悤ȏ
ɂ tty ŃoChhOǂȂ̂m点Ȃ΂Ȃ
߂łBQ̃VA|[głQ̃hOgĂȂA
ȉ̂悤ɂĂ݂ĉB

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

ǋL: ȉ̓̃hO؂ςĎgƂƂȂ̂ŁA
ꍇX^bNǂɐU镑̂Ƃ͕܂ :-) cc
Â݂Ƃ ACTiSYS Ђ̐VhO 220L+ ĂȂ̂ŁAeX
głȂ̂łBVhÓAʐMxƂ 38400bps ǉŃT|
[gĂ܂̂ŁA irattach găJ[lɎgĂhÖ
 (Ǝgpł QoS) w肵ĂKv܂B

irattach /dev/ttyS0 -d actisys     # for the 220L dongle               
irattach /dev/ttyS0 -d actisys+    # for the 220L+ dongle              

݂̃hOT|[g̎ł́AɌX̃hOɑΉԂ
Ă͂Ȃ̂ŁAACTiSYS ̂̃hO (220L  220L+) 
 (Q̃VA|[gɐڑ) gƂ͂ł܂B
KvȂ玄 (Dag Brattli) ܂ŘAB̌čl
Ă݂܂̂Łv

L: ԊOf (Swissmod 56KiBTelelink AG ) bvgbv
(Window$ 95 ł삵Ȃ悤ȁAWłȂ IrDA n[hEFAt
) ɐڑĎgۂɂ́A삳邽߂ BIOS ԊOT|[g
폜Kv܂B

Dag Brattli ɂƁu irtty ɑウ irport g܂B̂
߁Airtty R}hhO֌W̏S irda_device ֈڂ܂
̂ŁAirport ɃhOڑł悤ɂȂĂ܂BAAȃ[
Uԃ[eBeB dongle_attach gē̃hCõn[hEFA
ƂĎw肷Kv܂B܂Airattach ͈ȑOƓ悤ɓ삵
̂ŁA irtty ɃhOڑۂɐV̈ႢɋCƂ͂Ȃ
傤 (hOւ ioctl  irda_device ɓ]悤ɂ܂)B
Irport ̓\tgEFA荞݃xiȗł邱ƁAƋI
dɂȂ邽߃GR[LZ[V@\̂ȂhO (HP-4000
 girbil hOȂ) ŃGR[ɔς킳邱ƂȂƁÂQ̗
_邽ߖɗ܂B Irport g߂ɂ modprobe  
modprobe irport io=0x3f8 irq=4 (l͂Ȃ̊ɍ킹Ă) 
Ƃăp[^^ĂKv܂B̃p[^ /etc/
conf.modules  options irport io=0x3f8 irq=4 ̂悤ɏƂŖI
ɗ^邱Ƃł܂Ȁꍇ depmod -a YꂸɎsāAP 
modprobe ł͂Ȃ modprobe irport sĂv 

Alvin Loh ɂƁuESI 9680C ̃[U parallax  ESI ̃VOi
@̂ǂgƂł܂B܂ ESI 9680C 𓮂̂
Parallax ̃hCogƂł܂v



3.1.3. hOڑ - ԊO}U[{[hA_v^

ACTiSYS IR2000 hÕT|[g pc87108 T|[gɑgݍ܂Ă
܂̂ŁAJ[lɑgݍނ modprobe pc87108 ƂăW[g
ނA/etc/irda/drivers  modprobe pc87108 ǉđgݍނł
(Ǝv܂)B

James 񂩂n[hEFAݒɊւ󂯎܂Buނ
n[hEFA܂B5pin ̈̃wb_ĝƁA18pin w
b_̒[g 6pin ̃wb_ IrDA ɐڑ̂łB{I
͂ǂ IrDA ݊ȃgV[o삵܂ (~ɂȂÂ
IRM3001 RĂ܂) A5V  0V ԂɃRfT (1uF ʂ̃^^
gĂ) ڑāȂ̐M (RX->RXATX->TXA5V->5V 
 0V-0V) ڑĂBn_tȂƂƂȂA
P[X̌ɂ 5pin ̃RlN^ IR W[𔄂Ă郁[J
͂񂠂܂vy: 2002 N݂ł͂ނ 1uF x̐ϑwZ~
bN̂قA傫AAŜǂƂĂfR߂łBz



3.1.4. ԊOʐM (FIR)

IrDA Wł́AOނ̓]x`Ă܂B

 E SIR = W IrDA, 115kbps ܂ł̑x IrDA ł
   
 E MIR =  IrDA,
   
 E FIR =  IrDA (4Mbps),
   
 E VFIR =  IrDA(16Mbps) ̕WɂȂƎv܂
   
 

115,200bps (SIR) ܂ł́A (ׂĂ) ԊORg[́AV
A|[gƂ (J[l) 삵ARZI (Return to zero ɂȂ
悤]) ϒpĂ܂BׂĂ̐ԊORg[ 4Mbps
(FIR) T|[gĂ킯ł͂܂񂪁A4Mbps ܂ł 4PPM (4 p
X) ϒpĂ܂Bݓނ FIR `bvT|[g
Ă܂BiViZ~R_N^[Ђ NS PC87108 `bv (IBM
Thinkpad 560X Ŏgp) ƁAWinbond Ђ W83977AF (IR) FIR `bv (Corel
 Netwinder PC Ŏgp) łBΉ郂W[ǂݍނƂ FIR T
[rXX^[g邱Ƃł܂B Linux/IrDA ̓W[ǂݍ݂
_Ńn[hEFA𒲂ׂ܂BɂhCo̊JsĂ܂B

Ƃ킯ŁAǂ̑xŎĝ͂肳Kv܂B SIR
gꍇA 10 kByte/s x̑x܂BFIR (4Mbps) Ȃ
A^ǂ 300 Kbyte/s ȏ܂ŏo܂B



3.2. v^ڑ - IrLPT, IrTTP, IrCOMM?

IrLPT  IrCOMM ɒuꂽ悤łB҂ɂĂ͂܂eXg
܂̂ŁAȉ͈ȑO IrLPT T|[gɂĂ̂̂łBڂ
ɂĂ̓[OXgA[JCu𒲂ׂĂB

 

 E ȉLڂ̂悤 /etc/conf.modules ҏWĂB
   
 E ݂̃vgWu lprm "*" ō폜܂B
   
 E depmod -a s܂B
   
 E (kerneld gĂȂȂ modprobe irtty sĂB
    A̋Lq͂Âł傤)B
   
 E su  root ɂȂĂA mknod /dev/irlpt0 c 161 10 ƂĂ
    B: ./MAKEDEV irlpt0 Ƃɂ͂܂ł܂B
   
 E /dev/irlpt0  cat FILE >/dev/irlpt0 ďȃt@C
    Ă݂܂B͍ŏ̃`FbNȂ̂ŁAv^ɑf[^̃tH[
    }bgĂ邩ǂȂĂƂCɂKv͂܂B
    ̌o͈͂ł͂͂ł܂Ƃ͌܂񂪁A͂܂
    ˂~߂Ă܂B
   
 E Ɨǂ@́A/etc/printcap ύX /dev/lp1 ɉ (
     /dev/lp1 ̑) /dev/irlpt0 g悤ɂ邱ƂłB
     Printing-HOWTO B
   
 E ȒPɃv^ݒ肷ɂ́AveBO\tgEFA (Ⴆ
    APSFILTER  MagicFilter  EZ-Magic (RedHat ł̖ړI GUI 
    \tgEFA͂ł) Ȃ) ̂łBgO
    ܂ /etc/printcap ̃Rs[Ă܂傤B
   
 E APSFILTER  HP LaserJet 6P ( PostScript v^BHP 6MP 
    PostScript v^ł) gꍇ̗łBʖƂȂ鎿͈
    ̓łB "Do you have a (s)serial or a (p)arallel printer
    interface?" uv^C^[tF[X̓p (p) VA (s)
    ̂ǂ?v̎̓ p łB "What's the device name for
    your parallel printer interface?" uv^C^[tF[X͂
    łvB /dev/irlpt0 łB
   
 E vgf[ kill -HUP <PID of lpd> ƂčăX^[g܂B
    ȊÕvgf[gĂꍇɂ͏̃R}hs
    ĂBy: Debian GNU/Linux ƁA/etc/init.d/lpd
    restart ȂǁBz
   
 E v^̐ڑԂ̕\ (HP 6P/6MP ƍ̃y[pgC߂ IR
    |[g̗΂̃vł) ŁAʐMȂĂ邱ƂmF܂B
   
 E ͍̂Ƃ 10 y[W傫ȃvgo͂ɐĂ܂
    BAA̓v^n[hEFA̓ڃ (16MB) ̂߂
    ܂B\tgEFAɂ͂悤łBThomas Davis 
    Ɓu irlpt ɐāA傫ȃvgo͂𑗂ۂɃ
    HȂ悤ɂĂ܂vƂƂłB
   
 

pɂƁAuIrCOMM ŁAIrDA |[g IrCOMM vgRg
ݍ킹 (IrLPT ł͂Ȃ) v^ (Canon BJC-80v) gꍇ̃fob
OsĂ܂BZdq[eLXg̈͂ł܂Ags 
PostScript 悤ƂƊȒPɃfbhbNĂ܂܂vƂ
ƂłB

Thomas Davis http://www.jps.net/tadavis/irda  Web y[Wɂ
A IrLPT gɂ́Aȉ̎菇𓥂ޕKvƂƂłB

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

̎_ŁAIrLPT T[o̓vgWu󂯕t\ɂȂ܂B
炷ׂƂ́Aȉ̒PȃVFXNvg̓ełB

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

Dag Brattli ɂƁu IrDA AvP[VăeXg
ۂɁA[UԓŕقƂlɂ́Aȉɗ
Ă΂Ǝv܂Bꕔ̃v^ IrLPT ̐ IrTTP ۂɎg
ĂȀꍇv^Ɖb邽߂́Aȃ[Uԃv^N
CAgƂł܂v

int discover_devices(int fd)                                           
{                                                                      
    struct irda_device_list *list;                                     
    unsigned char buf[sizeof(struct irda_device_list) +                
          sizeof(struct irda_device_info) * MAX_DEVICES];              
    int len;                                                           
    int daddr;                                                         
    int i;                                                             
                                                                       
    len = sizeof(struct irda_device_list) +                            
      sizeof(struct irda_device_info) * MAX_DEVICES;                   
    list = (struct irda_device_list *) buf;                            
                                                                       
    if (getsockopt(sfd, SOL_IRLMP, IRLMP_ENUMDEVICES, buf, &len)) {    
    perror("getsockopt");                                              
    exit(-1);                                                          
    }                                                                  
    if (len > 0) {                                                     
    /*                                                                 

 

܂ŏ̗gĂ݂ĂB{̓[Uɂׂł͂
B

     */                                                                    
    daddr = list->dev[0].daddr;                                            
                                                                           
    printf("Discovered: (list len=%d)\n", list->len);                      
                                                                           
    for (i=0;ilen;i++) {                                                   
        printf("  name:  %s\n", list->dev[i].info);                        
        printf("  daddr: %08x\n", list->dev[i].daddr);                     
        printf("  saddr: %08x\n", list->dev[i].saddr);                     
        printf("\n");                                                      
    }                                                                      
    }                                                                      
    return daddr;                                                          
}                                                                          
                                                                           
void client()                                                              
{                                                                          
    struct sockaddr_irda peer;                                             
    int addrlen = sizeof(struct sockaddr_irda);                            
    int daddr, actual;                                                     
    char buf[1024];                                                        
                                                                           
    fd = socket(AF_IRDA, SOCK_STREAM, 0);                                  
                                                                           
    daddr = discover_devices(fd);                                          
                                                                           
    peer.sir_family = AF_IRDA;                                             
    strcpy(peer.sir_name, "P1284");                                        
    peer.sir_addr = daddr;                                                 
                                                                           
    connect(fd, (struct sockaddr *) &daddr, sizeof(struct sockaddr_irda)); 
                                                                           
    /* Try to send something */                                            
    actual = send(fd, "Testing", 8, 0);                                    
                                                                           
    /* Try to read reply */                                                
    actual = recv(fd, buf, 1024, 0);                                       
}                                                                          

 



3.3. LAN ڑ - IrLAN

 

 E IrLAN gāÃlbg[N@ɐڑ邱Ƃł܂B@
    ̗̋ƂẮA IrLAN g Linux }VAHP NetBeamer
    AԊOT|[ĝ Window$ 95 }VȂǂłB
   
 E Dag Brattli ɂƁuIrLAN gꍇɂ́Aifup eth0 sO
     modprobe irlan_client KvłBJ[lɂȂvZXRe
    NXgv̂ŁA request_module() OȂ΂Ȃ܂
    vꍇɂƁAANZX[h̑IsKv邩
    B_CNg[hɂɂ́Amodprobe access=1 Ƃ OK 
    B IrLAN ł́AM̓_CNg[hsA[ĥǂ炩ł
    ΂ȂȂ|錾܂̂ŁA_ł IrLAN JnƂ
    IĂKv܂B
   
 E IP AhXƂɕtp[^ݒ肷ɂ́A ifconfig eth0
    up <ip_address> netmask <ip_netmask> ƎsĂBvgR
    ̎sȂAʐMn߂邱Ƃł܂B RedHat  netcfg g
    ĂsƂłA̕ƊȒPłB̌́A/sbin
    /ifup eth0 Ƃ邾ŗǂ悤ɂȂ܂B ifconfig  IrLAP Ah
    XǂmȂ߁A\AhX͎ۂɂ͍ŏ̂S
    oCg (gGfBAtH[}bg) łB
   
 E ping gălbg[NfoCXeXgĂBڂݒ
    Ă NET3-HOWTO QƉB
   
 E [g^̂YȂ悤ɁB route add default gw
    <ip_gateway>  route add -host <target host> dev eth0 Ƃ܂B
   
 E ŐڑeXg邽ߑ̃}V ping Ă݂܂傤B
   
 E eXĝ߂ɂ́Aɒubvgbvƈ̐ԊO
    ethernet foCXgƂE߂܂B肪ȂAIR
    ethernet foCXŎgpłʃ[hȂāAĂ
    ĂB
   
 



3.4. HP NetBeamer Ƃ̐ڑ

 

 E /etc/irda/drivers ҏW irattach /dev/ttyS0 ܂߂悤ɂ
    B /dev/ttyS0 ͎̕gĂVAC^[tF
    [Xɂ킹ďCĂB܂A/etc/modules.conf ҏW 
    alias tty-ldisc-11 irtty ܂߂ĂB
   
 E irattach š echo 3 > /proc/sys/net/irda/debug Ƃėlq
    ĂB
   
 E  modprobe irlan ƂĂB
   
 E ɁȀꍇ NetbeamIR F邽߂ɂ echo 9 > /proc/sys/
    net/irda/slot_timeout ƂĂKv܂BsȂ
    ΁A"media busy" ̃bZ[WǂoāANetbeamIR 
    ͂܂܂B̐ 9 ͎̊œ삷ŏ̒l
    AVJ[l̏ꍇ 90 ƂĂB
   
 E /etc/irda/network.orig  /etc/irda/network Ƀl[Ag IP
    \ɂ킹 /etc/irda/network.opts ҏW܂B܂A /etc/
    pcmcia/shared  /etc/irda ɃRs[Ă܂ (̃t@C̓fB
    Xgr[VɊ܂܂ĂȂ߂ł)B
   
 E Ɏ̏ꍇA/etc/irda/shared  131 s grep_stab $1 < /var/
    run/stab RgŖɂKv܂B̗Rł
     "usage" bZ[Wf܂B
   
 E bvgbv͈̓͂͂ɎĂ΁ANetbeamIR ͌oA
    irlan0 쐬ݒ肳܂B
   
 E oŁA7 kb/s ̑xAping/ftp/telnet ł܂B꒚
    I
   
 



3.5. Palm III RlNV - IrCOMM

 

PPP
   
    Rui Oliveira ɂƁúAŐV̔p IrCOMM pb
    ` (050998) 𓖂ĂAHotSync g Palm III  Linux }V
     PPP RlNV𒣂邱ƂłAƂ񍐂łB IRLink
    (IsComplete ) gĂāAŃVA|[g IR ɕϊ
    Ă܂Bpilot-xfer (m http://www.slac.com/pilone/kpilot_home
    /mainpage.html ) Ƃ̒ʐMȂłBPPP ڑ͂܂
    ͂܂A܂[擾 Web uEWOɂ͐Ă܂B
    ͑RlNV^CAEĝɂł܂āA`FbN
    łB PPP Ɋւ[ PPP-HOWTO <http://
    www.linuxdoc.org> B() ݂͂ƊmȐڑ
    Linux }V Palm III Ƃ̊ԂŒ悤ɂȂ܂Bpppd ̋N
    ́Ȁł͈ȉ̂悤ɂĂ܂B
   
       /usr/sbin/pppd /dev/ircomm0 57600 192.168.2.10:192.168.2.11 
       proxyarp passive silent persist noauth local nodetach       
   
    PPP RlNV pingAssh  http gĂ܂BAAmp
    ~ɂȂ͂ discovery LɂȂ΂ȂȂ͕̂ςłB
    LɂȂ IrCOMM RlNV͐Ă̂ɂւ
    AIrLAP w̃NؒfĂ܂̂łB pilot-link c[
    (Linux/Palm ̃t@Cɗp)  IrCOMM  /dev/ircomm0 
    gĖȂĂ܂v܂Akpilot ɂĂ̕񍐂󂯂Ă
    B pilot-xfer قǂAƂ͂Ȃ悤łB
   
IrCOMM
   
    Jon Howell ɂƁAu IrCOMM Ă݂悤Ǝv܂B
    Ƃ̂ Palm III ̓VA IR |[g֓]\ɂł邩
    łBɂ http://www.palmcentral.com ł IS/
    Complete  IrLink g܂B IrCOMM g IrDA Ń^[
    ~ivO (VA[h PalmTelnet Ȃ) 𓮂Ƃ
    ł͂łBœ Palm Pilot Ԃł̍\Ă݂܂
    AR IR łǂȃvgRgĂ邩͕܂v
    (1) Palm  HotSync Jn܂Bɂ Palm  IrCOMM T|[g
    邱ƂKvłB̃T|[ggݍނɂ́AIrDA upgrade
    <http://www.palm.com/custsupp/downloads/irenhanc.html> KvɂȂ
    ܂B (2) Palm hȎOɒu܂B (3) pilot-xfer -p /dev/
    ircomm0 -s <sync-dir> Ƃ IrCOMM Jn܂B^ǂꂾ
    ܂ĂȂAt@C̓͂܂ł傤B HotSync 
    Pilot ŊJnO pilot-xfer sĂȂAsKɂȂ
    Ǝv܂ :-) PalmTerm ̂悤ȃ^[~ivOɗ
    ł傤B
   
Wessel de Roode ɂƁuPalmpilot ͕Wł 57k ̑xɌ߂
Ă܂BA Pilot p̃\tgEFA 115k ̑x̐ݒ
sƂł܂Bȉ irlib.h Ă܂v

---------- irlib.h from the SDK 3.0 from palmpilot -----                        
// Options values for IrOpen                                                    
#define irOpenOptBackground     0x80000000   // Unsupported background task use 
#define irOpenOptSpeed115200    0x0000003F   // sets max negotiated baud rate   
#define irOpenOptSpeed57600     0x0000001F   // default is 57600                
#define irOpenOptSpeed9600      0x00000003                                      

Peter Pregler ɂƁuPalm  irda foCXƒʐM\Ȉʒuɓ
ƂA"Transmission: waiting for sender" Ƃ|bvAbvEBhE
o܂v

ɑ΂ Ron Choy ̕ԐḾuς킵|bvAbv̖ɑΏ
Ƃ ShutupIR ƂvO܂B http://hp.vector.co.jp/
authors/VA005810/irda/shutup10.zip Ă܂񂪁Ǎ͂
ł񂶂Ȃłv



3.6. Palm (Handspring Visor) p IR oR Linux ^[~i

IrDA [OXg Chris Morris ɂƁuIR g
Handspring Visor Ƃ̊Ԃ hotsync sȊOɁAIR oR Linux eLX
g^[~iƂĂƂɍ鐬܂B̃Rs[^
Dell Inspiron 3800 ł (Ȃ݂ɁÃ}V 2.4.0 J[l IR 
̂ɉTԂYł܂B͌ Linux  ttyS3 ɑ΂Ċ
 IRQ Ă߂łBIR HOWTO ɂ̌Ɋւ錾y
܂)BgĂ̂ Hacker Dude-san  Beam Sync for Visor
V1.0b2 Hacker Dude-san's Page <http://www.tt.rim.or.jp/~tatsushi> 
Shigeyuki Seko  (seko@pamupamu.com)  Mini Term <http://
pamupamu.tripod.co.jp/soft/mterm/mterm_E.htm> łBbvgbvł
IR  SIR [hŁACOM3  BIOS Ŋ蓖ĂĂ܂B /dev/ttyS3 
IRQ3 ɁA"setserial /dev/ttyS3 irq 3" Ŋ蓖ĂĂKv܂B
u[gAȉ̂悤ɂĂ܂By: MTerm ̃z[y[WǋLB
̃AhXCz

/sbin/modprobe irda                                                    
/sbin/modprobe irtty                                                   
/sbin/modprobe ircomm                                                  
/sbin/ircomm-tty                                                       
/usr/sbin/irattach /dev/ttyS3 -s                                       

cat /proc/net/irda/discovery  Visor  IrCOMM Ō悤ɂȂĂ
܂B /etc/mgetty+fax/mgetty.conf ͈ȍ~̂R̃IvVKvłB
"port ttyS3 direct y speed 9600": ƍłǂ̂܂
Ȁł͂܂ł܂łB toggle-dtr n sA
 /etc/inittab  "palm:235:respawn:/sbin/mgetty ircomm0" BS
s Mini Term JnłA'/sbin/init q' ͂ Visor 
 <CR> 𑗂΃eLXg^[~iOCvvgo܂B̃
[ĂŒɁAȑO͋CȂǂƂĂɗ
TCgɋC܂BłB "http://abgruen.de/palm/
palm-ppp-mini.txt"v



3.7. Psion 5 Ƃ̐ڑ

Andrew Chadwick ɂƁu(Psion V[Y 5 ĂȂ) SIR
̓][gݒ肳Ă邱ƂmF邤܂́AS5 
Linux }V̐ԊO|[g̑ɌāAt@CőĂ݂邱Ƃ
BM̃_CAOʂɏoĂԁAS5  IrDA ڑsƂ
 (̐ԊO}VȂƂbZ[WoĂ
Ƃł)B̊ԁAcat > /dev/ttyS3 ƂĒʐMe邱ƂłAV
Ap[^̃}VŐȂS~ɍ "Symbian EPOC"
(}V̎ʎq) ̒Pꂪ͂łv

Fons Botman ɂƁuN Psion 5 ĂlŁAYt̃vO
Ă݂Ă炦ЂƂ͂܂񂩁B́Alinux  Psion 5 IR 
t@C𑗎󂷂vgRG~[ĝłBgΒP
ȃR}hŃt@Čł悤ɂȂ܂B][g 115kB
SIR g 9.7kB/sec ŁAȂȂȂƂƂłB̓
łł̂ŁA܂ Psion obNAbvĂĂBx\tgEF
AZbgH܂ (f[^͎܂ł) ;-)v\[X͕t
^ɍڂĂ܂B



3.8. Linux  WinCE ڑ

Linuxcare Ђ Arthur TydeABryan Abshier ̓ełB

 WinCE @ IrDA |[ggă}XJ[hꂽ PPP ڑ
Linux x[X̃m[g PC Ƃ̊Ԃōs@ɂď̂łBU IP
ڑłĂ܂΁AƂ͂ǂƂłȂł傤B͂ Sony
̃m[gubN Casio  E-100/105 PDA g[Û߂̃KChƂ
Ă܂Ƃ߂܂A̎菇̓m[gubNƂ̊ԂŐԊOʐM\ WinCE
2.11 foCXȂǂłLȂ͂łBLinux ̃eXgׂ͂ root
ōsĂB܂W̌xA܂薳ۏ؂Kp܂B

WinCE @̐ݒ
   
    WinCE foCXŃlbg[Nڑ̐ݒsĂB
    "Connection" ̃j[ɍs "Direct Connection" A
    ̂閼Ot܂BfoCXɂ "Infrared Port" Iт܂B
    ̃j[ɍsă{[[g 115200 ɐݒ肵܂B WinCE
    ł̍őlłBTCP/IP ݒɍsāA"T[o^ꂽ IP Ah
    Xg"A"\tgEFAkg"  "IP wb_kg"
    Ƀ`FbNĂB "SLIP g" Ƀ`FbNĂȂ
    ƂmFĂB Name T[o̐ݒł́A"T[o^
     IP AhXg" Ƀ`FbNĂB StartASettingA
    CommunicationsAIdentification ŃfoCXƂĖO͂܂
    ( "cetoy" Ɠ܂)B Activesynch g Win9x fXNgb
    vƂ̊ԂŃt@CsĂȂA͊ɐݒ肳Ă
    v܂B
   
Linux/IrDA ݒ肷
   
    m[gubN PC  IrDA T|[gݒ肵 (̑̍̕
    ) m[gubN IrDA ݊ȃfoCXƂ
    ŎĂ܂B ifconfig sۂ irda0 foCX\
    AƂ̂悢ڈłB IP AhX͂܂񂪁A OK 
    B
   
ڑ̐ݒ
   
    IR |[g̒ʐM\͈͓ IrDA foCXăfBXJo@\
    eXg܂Bܕb҂A
   
    cat /proc/net/irda/discovery Ƃ܂B 
   
    Ⴆ΁AEricsson I888 World Phone  IR |[gLƂĂꍇ
    AɈȉ̂悤ȃbZ[W͂łB
   
    "name:I 888 WORLD   ,hint:0x9104,saddr:0x838470e5,daddr:0x152dceaa"
   
    Ȃ WinCE }V́AWinCE }V̑ϋɓIɐڑm
    ƂȂA܂BƂ킯ŁAWinCE ̏ԂȂ
    ̃foCXŃeXgꍇA菇 2 ō쐬lbg[NACR
    _u^bvĂBȉ̂悤Ȃ̂\͂łB
   
     
   
    "name:mytoy,hint:0x8204,saddr:0x838470e5,daddr:0x00000b72"  
   
    \閼O StartASettingACommunicationsAIdentification 
    foCXƂē͂̂łB̎_Ŋ{I IrDA @\͓
    삵ĂA WinCE @Ƃ̊Ԃ PPP ڑ𓮂ɐi݂܂B
    ~̃XNvg̓VAP[uڑłg܂BȉLڂ̃t@C
    쐬ď̃fBNgɃRs[ĂB
   
/usr/sbin/cebox.sh -  (ȉ̃XNvg) s\ɂĂ܂B
   
    #!/bin/sh                                                   
    pppd call cebox                                             
   
    }CN\tg͋KiĵDȂ̂ŁÃXNvgKv
    Ȃ܂B WinCE  PPP ڑO WinCE @vK
     ASCII L[[h^邽߂̂̂łB
   
/etc/ppp/cebox.chat
   
    TIMEOUT 3600                                                
    "CLIENT"    "CLIENT\c"                                      
    ""      "SERVER\c"                                          
   
    ̃t@C IP AhX̎wAIR foCX (܂̓P[ugp
    ꍇVA|[g) ̎wADNS X̐ݒ̂߂̂̂łBȉ
    gĂ 192.IP AhXύX邱Ƃ͂߂܂B WinCE 
    ۂ̂Ƃ 192.168.55.100 DŁA͂ǂ MS А̃t@C
    c[ WinCE @͂̃AhXłƌߑłĂ邽߂łB
    DNS ɂẮAiȂgĂݒǂƂĂ܂܂
    B
   
/etc/ppp/peers/cebox
   
    /dev/ircomm0 115200 crtscts                                 
    connect '/usr/sbin/chat -v -f /etc/ppp/cebox.chat'          
    noauth                                                      
    local                                                       
    192.168.55.101:192.168.55.100                               
    ms-dns 10.2.0.1                                             
   
     
   
ڑeXg
   
    āA̎_őSĂ邩ڑeXgł悤ɂȂ
    B}Vu[gāA"irattach /dev/ttyS2 -s 1" ( /dev
    /ttyS2 ͂Ȃ̃}V BIOS ԊO|[gƔFĂVA
    |[głBA̎_ irattach ĂȂ΁A
    Jn܂) s܂BԊO|[gΌɂȂ悤ʒu𒲐
    ALinux ŃR}hvvg /usr/sbin/cebox.sh ƑłA
     CE }VX^[g WinCE ̃RlNVACR_u^b
    v܂B WinCE }VōK̃bZ[WAzXgƐڑꂽ
    foCXڑꂽ[U̔F؂sĂ遨[UF؂
    ڑꂽȀɌ͂łB܂Aڑ܂Ă
    ȂALinux ł͈ȉ̂悤ȃbZ[W͂łB
   
    irda0     Link encap:IrLAP  HWaddr 06:89:d0:58                           
          UP RUNNING NOARP  MTU:2048  Metric:1                               
          RX packets:246 errors:0 dropped:0 overruns:0 frame:0               
          TX packets:251 errors:0 dropped:0 overruns:0 carrier:0             
          collisions:0 txqueuelen:8                                          
                                                                             
    ppp0      Link encap:Point-to-Point Protocol                             
          inet addr:192.168.55.101 P-t-P:192.168.55.100 Mask:255.255.255.255 
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1         
          RX packets:10 errors:0 dropped:0 overruns:0 frame:0                
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0              
          collisions:0 txqueuelen:10                                         
   
    ̃XNvg IrDA ݒ肵AWinCE @Ƃ̊Ԃ PPP ڑmA
    IP }XJ[fBOݒ肵܂B́AL̐ݒ܂Ƃ߂Ĉ
    ƂĎ^̂łBAA͑ꏭȂS蓮Â
    łBYIȂƂāAu[g irattach 𗧂
    āA inittab ŃCď펞 IR |[g WinCE ̐ڑ
    悤ɂł܂A̓m[gubÑobe悯ɏA
    ق IR @Ƃ̐ڑ̖WɂȂ܂B̃g[hIt𔻒f
    A͒PɈȉ̃XNvggĂ܂BfoCẌʒuɒu
    āAWinCE 𑖂点AXNvg̎wɏ] PDA ʐMJn
    ܂B
   
/usr/local/bin/wince -  (ȉ̃XNvg) s\ɂĂ܂
    B
   
    #!/usr/bin/perl                                                                 
    use strict;                                                                     
    #                                                                               
    # Enable IrDA, start ppp0 and set up WinCE masquerading                         
    # A. Tyde - Linuxcare Inc.                                                      
    #                                                                               
    print "\n-> Setting up IR infrastructure...\n";                                 
    system("killall irattach 2>/dev/null");                                         
    sleep 1;                                                                        
    system("/usr/sbin/cebox.sh");                                                   
    print "   Start WinCE Serial or IR networking now!\n";                          
    open(ECHO,">/proc/sys/net/ipv4/ip_forward") or die "Can not open /proc/sys/net/ 
    ipv4/ip_forward";                                                               
    print ECHO "1";                                                                 
    close (ECHO);                                                                   
    print "   Serving 192.168.55.100 to WinCE device...\n\n";                       
    system("ipchains -F");                                                          
    sleep 5;                                                                        
    system("ipchains -P forward DENY");                                             
    system("ipchains -A forward -s 192.168.55.100/32 -j MASQ");                     
    exit 0;                                                                         
   
     
   


3.9. gѓdbڑ

̒mAꕔ̌gѓdb IrCOMM W̗pĂ܂BEricsson
SH888  NOKIA 6110 ł (NOKIA 8110 ɂĂ͕܂)B
炭Ǎgѓdb IrOBEX W (ɑ΂Đڑm
Palm III ̏͂QƂĂ)  IrMC ̗pĂƎv܂B

gnokii <http://www.gnokii.org>  Linux/Unix c[QŁA
Nokia (GSM) gѓdbp modem/Fax hCoƂĎg悤ɂȂ܂B
T|[gĂ[ 3110A3810A8110A5110A6110 ƁǍp@
łB



3.9.1. Motorola Timeport GSM

Michael McConnell 񂩂 Motorola Timeport GSM  Linux-IrDA Ƃb
悤ɂ邽߂̃KChނ̃EFuTCg < http://www.eridani.co.uk/
docs/linux-timeport/> ɌfƂ̓e܂B



3.9.2. Ericsson

1. ݒ
   
    /dev/ircomm0 pĒʐMZbVJnɂ́AƂΈȉ̂
    ɂ܂B
   
    dip -t                                                      
    > port ircomm0                                              
    > term                                                      
   
     dip ̑ cu  xc gƂł܂B̂Ƃ cu -l
    /dev/ircomm0 ܂ xc -l /dev/ircomm0 Ƃ܂B Ericsson GF768 
    IR Modem DI 27 ̑gݍ킹sƂ̕񍐂܂B
   
    Benny Amorsen ɂƁuSH888 ̓VAP[uڑ̍ۂ IrDA
    |[gG~[g܂B݌v҂ȂȖȂƂl̂
    ͂Ƒz܂񂪁Â肩 Windows Ƃ̑gݍ킹
    œ܂B Windows œƂƂ͂܂񂯂ǁv
   
    Ales Dryak 񂩂ȉ̃T[xBႢ܂ (Debian/GNU Linux f
    BXgr[V̂悤Ȃ̂ŁAݒKXւĂ)B
    Mobile Ericsson SH888  ati1 = 980408 1035 PRGCXC125101 ŁA
   
     
   
    mknod /dev/ircomm0 c 161 0                                  
    mknod /dev/ircomm1 c 161 1                                  
   
    Ƃ܂B
   
2. /etc/conf.modules
   
    /etc/conf.modules ͎̂Ƃ
   
    alias tty-ldisc-11 irtty                                    
    alias char-major-161 ircomm-tty                             
   
3. /etc/irda/drivers ͎̂Ƃ
   
    irattach /dev/ttyS0 -s 1 # (IrDA |[g SIR [h)       
   
4. /etc/chatscripts/sh888 ͎̂Ƃ
   
    "" \d\d\d\d\d\dATZE0                                        
    OK ATD                                                      
   
5. /etc/ppp/peers/sh888 ͎̂Ƃ
   
    noauth                                                                  
    connect "/usr/sbin/chat -v -f /etc/chatscripts/sh888"                   
    /dev/ircomm                                                             
    115200                                                                  
    defaultroute                                                            
    noipdefault                                                             
    user  # don't forget to add your password to chap secrets or chat script
   
     
   
SH888 ɑ΂ pppd ĂяosA҂ ( 30 b) ́A
̃CglbgƃC^[lbgɑ΂ĎRɃANZX (telnetA
ftpAwwwAicmp ̓eXg܂) ł悤ɂȂĂ܂Bɂ /
dev/ircomm  minicom g AT R}hł߂悤ɂȂ܂B
΂łB܂̂悤Ɍ܂B



3.9.3. SH888 dbc[

Gerhard Gonter ̕񍐂łu[OXg̐̃o
Ericsson Ђ̌gѓdb SH888  Linux-IrDA \tgEFAŎgƂɐ
Ă܂B̃\tgEFA AT R}hgēdb̊eɃANZX
łAƂĂɗ܂B̓db͋[Ώۂł傤B 

C^[lbgŏX (FreshMeatADejaAYahoo Ȃ) ͈͂ł́A
Linux ܂͂̑ Unix ́Adb̃c[邱Ƃ͂ł
łBƂ킯ŁA Perl XNvgƊ֘AW[
Ă݂܂B݌lIɂ͎g鏈܂ŗ܂̂ŁAĊJ̏
iKƂẴ[Xs܂Btarball ͎̂Ƃɂ܂B http:/
/falbala.wu-wien.ac.at:8684/pub/english.cgi/0/172903 as http://
falbala.wu-wien.ac.at:8684/pub/english.cgi/d172914/sh888-0.01.tar.gz v

[OXgł gsmlib ̓gpĂ܂A
O|[gŎgƂA SH888 Ɛڑ邱ƂłĂ܂B
Florian Lohoff ̕񍐂ł́uS25 ̎̌gѓdbł͓悤łB
AS25  CR LF ɔȂ悤Ȃ̂ ifdef ύXKv͂܂
B̕ύXA/dev/mobilephone -> /dev/ircomm ŒN S25 oR
ł SMS M͖ȂsĂ܂Bdb̃obNAbv͂܂
Ă܂B͓db̏ꍇ S25 킯̂킩ȂԂ
߂łv

SMS bZ[WƓdb̏ڍ׎dĺA (FSF ̈Ӗł̃t[Ał͂
 ;-)  ETSI _E[hł܂BGSM 07.07 (ƁA GSM
07.05 KvɂȂł傤) TĂ݂ĂB_E[hO
o^KvłB̕W Acrobat PDF `łBS25 T|[gR}
h͖ Siemens ̃EFuTCg PDF `ł܂B

SH888  AT R}h܂Ƃ߂ĉȉɂ܂B http://
mobileinternet.ericsson.se/emi_download/sh888/888_R1D.pdf



3.9.4. NOKIA

Carlos Vidal  carlos@tarkus.se ɂƁůႢȂ狳Ăق
łAǂ Nokia ̌gѓdbɂ͏ȃn[hEFAf͓ڂ
Ă炸APC  WinModem Ɠނ̂̂ڂĂ悤łBNokia 
fڑ̂ƂɂďĂɂ͖ "Windows \tgEFA
f" ƂAɗނꂪgĂ܂BɉĖT؂ƂāA
̌gѓdbɂ Nokia p̃EBhEY\tgEFA (Nokia Cellular
Data Suite Ƃ̂ł) Kvłv

Joonas Lehtinen ɂƁu61xx V[Y̋@ł́AmɂłB
8810A9000(i)  9110 ̊e@͖Ȃ삵܂ (܂A{̃f
Ă܂)B Nokia 9000  linux Ƃ̑gݍ킹ł IrCOMM
Ɠ܂v

Carlos Vidal 񂩂̎sƏCẮu Nokia 6110  Linux g
Ăǂ܂łł邩Ă݂Ă܂B傤 gnokii-0.2.4 (: gnokii
 Nokia Ђ̌gѓdbVAP[uŐڑ邽߂ Linux  *
BSD ̃c[ŁAhttp://multivac.fatburen.org/gnokii/ œł
) RpCƂłA͓܂łB茳 Nokia
Data Suite \tgEFÂŁA܂łɈȉ̐ڑĂ܂B

Nokia 6110 <-- Nokia Cable --> PC/Linux <-- Null-modem cable --> PC/W95

PC/Linux ł program snooper (Itoh Jun-ichiro (Ƃ) ) 
VA|[g𐳂ݒł悤ύXĎgĂ܂B
O̓l̓s sniffer \tgEFA (Ƃ sniffit) 
URL ͌܂ł(: VAXjt@ɂĂ͕t^Q)
B

ʏ snooper {[[gɐݒ肳ĂȂAdb PC/W95 
snooper ԂɂȂꍇƓ悤ɒʐMł͂łB̓~m^
fBW^J̃vgRǂۂɂ͂܂̂łANokia
̌gѓdb̏ꍇAdb̂قȂA΂炭܂ɂȂĂ
܂܂B

ǂAʐM̍ŏ̒iKł̓^C~O߂ďdvȂ悤łB
܂łœꂽÔ͎̂łB

0>1: UUUUUUUUUUUUUUUUUUUUUUUU                                                   
line 0: LE *DTR *RTS ST SR CTS CD RI *DSR                                       
line 1: LE *DTR *RTS ST SR CTS CD RI *DSR                                       
0>1: UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU 
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU 
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU 
UUUUUUUUUUUUUUU\x1e\x00\x0c\x02\x00\x09\x00\x01\x00\x0d\x00\x00\x02\x01@\x00P\x 
06                                                                              
1>0: \x18\x00\x00\x00\xfc\x18\x00\x00\x00\x00\x00\x00\xc0\xf0                   
0>1: \x1e\x00\x0c\x02\x00\x09\x00\x01\x00\x0d\x00\x00\x02\x01@\x00P\x06         
1>0: \x18\x00\x00\x00\x18\x00\x00\xc0\xf0\x18\x00\x00\x00\x00\x00\x00\xc0\xf0   
0>1: \x1e\x00\x0cd\x00\x06\x00\x01\x00\x10\x01`\x13\x13                         
1>0: \x18\x00\x00\xf0\x00\x00\xfc                                               
0>1: \x1e\x00\x0cd\x00\x06\x00\x01\x00\x10\x01`\x13\x13                         

0  PC/95 ŁA1 ͓dbłBʐM͈A 'U' (0x55) ŁADSR/DTR  on
̏ԂŎn܂܂Bdb '0x18 0x00 ...' Ɠ܂B̈Ảb
΂炭̊ԁAƂ܂ɂȂ܂őAŌɂ͓dbNbV
ăZbgB̕@͓dr𔲂AƂԂɂȂ܂B

̐ł́Adb{[[g悤ƂAꂪ snooper 
ꂽƂɔx̂ߎsĂAƂۂł͂ȂƎv܂
B炭ԊOڑŗpĂ IrDA vgRŉȂƂȂ
ł͂ȂƎvĂ܂v

Wessel de Roode ɂƁu (Palm Pilot ł) Discovery IR hint
rbgg悤ɂĂ܂B

Discover:                                                              
0:xxxxxxxx:81.01                                                       
    01  IR_HINT_PNP     01  IR_HINT_TELEPHONY (IrMC ?)                 
    80  IR_HINT_EXT                                                    
                                                                       
Device info query:                                                     
\006Device\012DeviceName                                               
    4e 6f 6b 69 61 20 36 31 30 30       Nokia 6100                     

Nokia  PNP foCXNGł悤ɂ܂BNokia ͈ PNP
foCXĂ܂B̃foCX͋̓Iɂ 9600 {[̃fɑ
 PNPC100 łB̃NG̐ݒĂ܂̂ŁA񕜂邽
̃qgĂl͋ĂBm IrDA:<dunno>:PNP:Comp#01
̂悤Ȃ̂͂łB IrDA ̃NG IrDA:<dunno>:PNP:
CompCnt  Nokia Ŏg PNP foCXԂ܂Bł͂͂Ђ
łB

ЂƂƁANOKIA ƒʐMɂ irlpt_server W[[h
Kv̂܂v

قɂ SMS bZ[W𑗎󂵂AAhXXV̂ gsmlib 
gƂɊւ񍐂󂯂Ă܂B̋@\́AׂW̖
ē삵Ă܂B



3.9.5. Siemens S25

ݒ
   
     Florian Lohoff ɂ̂łBu߂܂傤
    B܂ irttach /dev/ttySx  irda 悤ɂĂĂ
    B /proc/net/irda/discovery sĂ݂Ď̂悤ɂȂĂ
    ĂB
   
     
   
    (flo@paradigm)~# cat /proc/net/irda/discovery                            
    IrLMP: Discovery log:                                                    
    nickname: SIEMENS S25, hint: 0x9024, saddr: 0x4286ce23, daddr: 0x04295741
   
     ircomm  ircomm-tty [h܂Bʂ /dev/ircomm* ̐
    ̂g minicom ȂǂŃ_CAdb̃[hobNA
    bveՂɍs͂łv
   
Timo Felbinger 񂪓ł̃bvgbv Siemens S25 ̐ڑɂĐ
ĂĂ܂B

 

 E ukernel 2.2.12  patch-2.2.12-irda3AJ[lgݍ݂ IrDA T|
    [g ircomm  ircomm-tty W[ŗpӂ܂B
   
 E mknod /dev/ircomm0 c 161 0 Ƃ܂B
   
 E modprobe ircomm  modprobe ircomm-tty Ȃ܂B
   
 E /etc/irda/drivers ̍ŏ̕ modprobe toshoboe LڂĂA
    irattach Jn܂BŒӂĂ̂́Airattach ̑O
    toshoboe W[[hȂƁBȂƃfoCXrW[⃊
    \[XrW[ɂȂ܂B
   
 E dip -t ̌AR}h|[g ircomm0  S25 ԂŐڑĂ
    łBŁAIR |[g S25 ̂ǂNĂKv
    񂠂܂B̎̋͂܂ɂ͂ȂȂ悤łB
   
 E ^[~i𗧂グ΁AS25 ͕ʂ Hayes ݊f̂悤ɐU
    Aʏ AT R}hŎgpł܂B
   
 E pppd ɂ_CAAEgڑ͓ɐݒ肵ȂƂg܂v
   
 



3.9.6. hCc e-plus

ȉ̓hCc e-plus [ŰLqłB

e-plus _ɂ Free&Easy  WWW ւ PPP ڑ܂܂ĂA
̓o^͕Kv܂B̃T[rX͓dbԍ 123100 ŃhCĉ
ł܂B܂A͐ݒȂɎg܂B

pppd ݒ

/dev/ircomm0                                                           
defaultroute                                                           
netmask 255.255.255.0                                                  
debug                                                                  
mtu 552                                                                
crtscts                                                                
noauth                                                                 
connect '/usr/sbin/chat -v -f /etc/ppp/eplus.chat'                     
chat script /etc/ppp/eplus.chat:                                       

 

ABORT "BUSY"                                                           
ABORT "ERROR"                                                          
ABORT "NO CARRIER"                                                     
ABORT "NO DIALTONE"                                                    
ABORT "NO ANSWER"                                                      
SAY "initializing modem..."                                            
"" "AT"                                                                
"OK" "ATZ"                                                             
SAY "dialing..."                                                       
"OK" "ATDT123100"                                                      
SAY "waiting for CONNECT..."                                           
"CONNECT" ""                                                           
SAY "connected!"                                                       
SAY ""                                                                 

l[T[oƂĂ 192.76.144.66 g܂BUsername  password 
sKvłB



3.10. fW^Jڑ

Markus Schill ɂƁuSONY  DSC-F1 ԊOA_v^ linux Ŏg
Ƃɋ̂Ȃɂ̂ɌCt܂B݂̂ƂA
܂ linux-irda \tgEFAƃJt PuMa Technologies Ђ IR A
_v^ŗVł邾łB݂܂ł̏󋵂́ÂƂłB݂̂
 linux 2.0.33 ƍŐV linux-irda gĂ܂B̏󋵂Ŏ̃R
}h͂ƁA

modprobe irda                                                          
modprobe irtty                                                         
irattach /dev/ircomm0                                                  

A_v^̓JƂ̂͂߂܂B/var/log/messages ɂ
SONY-DSC-F1 ƂOo܂AT[rX͉Jn
 (:  linux 2.2.x J[l Linux/IrDA ̑gݍ킹ł́A
Ⴄ󋵂ɂȂƎv܂)B

linux ̃P[uڑŁAJƂ̒ʐMɎg\tgEFA͂Q
܂B (1) chotplay  (2) stillgrab łB̗Ƃ tty R}
hsIvVƂĎw肵܂̂ŁAirtty vgRX^bNwł
̂ł͂ȂƎv܂BÂƂ linux-irda ̃\[Xɂ͂
Ă܂B̂߃X^bN𗝉łĂƂ͂܂񂪁Airtty
gƕʂ tty ̂悤ȊɂȂ̂ł? ̍ۂɂǂȃT[rX
JnׂȂł傤Hv

Dag Bratti ɂƁuJ̎gĂAvP[Vx̃v
gRɂĂ͂悭킩܂񂪁AIrDA(TM)  Infrared Transfer
Picture Specification (IrTran-P) Ă\͂܂B http:
//www.irda.org/standards/pubs/IrTran-P_10.pdf ݂΁A IrTTY 
͂Ȃ IrCOMM ɎꂽvgRł邱Ƃ킩Ǝv܂B
IrTTY  Linux VAhCoƘb߂ɎgĂ邾Ǝv܂B

David Burley  Kodak-Digital-Camera-HOWTO ɂ́AIrDA 𓮂
̋LڂƁALinux  IrDA g Digital OS JƂ̒ʐM
@ɂĂ̋Lڂ܂܂悤ɂȂ܂B



3.11. Window$9x/NT  Linux/IrDA

3.11.1. ͂߂

̐߂̖ړIł? ́A܂ Linux [Uɂ͎cOȂ炷ׂĂ̕K
vȃn[hEFA񂪗^Ă킯ł͂܂Bɂ͂̏
 Window$95 𒲂ׂ邱ƂɂĉM邱Ƃ܂Bɂ͂̓
ʐMł悤ɂƍXɗLvȏ񂪓邱Ƃ܂B܂
Linux gāAFBۂ Windows 95 bvgbv̂߂̈
IȃANZX|Cg񋟂邱Ƃł܂B

ǂ肷邩ɂĂłAhttp://www.microsoft.com ̃fBNg
 /Windows95/downloads/contents/WURecommended/S_WUCommunications/
W95IrDA/ ȉ Infrared Transfer (ԊOʐMT|[g) 2.0 ̃T|[gp
bN܂B͎ȓWJ^̃A[JCuŁÂ W95IR.EXEA331KB
܂BȂ݂ɁA}CN\tg͂̃t@C (̑̃t@Cɂ
Ăł) ̒uꏊC܂ɕς܂BȑO URL 
Microsoft Windows95 IrDA - Old łB

Microsoft(tm)  Windows95 p IrDA T|[gł͓sR̃o[W
[XĂ܂Bo[Wԍ̓Rg[pl̃\tgEFA
ACRA infrared.inf t@Cɂ܂B

o[W 1.0 ͂܂ꕔ̃n[hEFA̓Yt\tgEFǍ`Ŕzz
Ă܂B

o[W 2.0 ͌ Microsoft ̃EFuTCgŔzzĂo[W
łB͎ȐL^̃t@C W95IR.EXE Ɏ^Ă܂BŌ
Ƃɂ́A 434KB  http://support.microsoft.com/download
/support/mslfiles/W95IR.EXE ɂ܂BMicrosoft ̃EFuTCg͕p
ɂɕύXĂ܂̂ŁÃt@CʂȏꏊɂAȂȂ
肵ĂȂłB

o[W 3.0 ̓_E[h\ȐԊOJLbg IRDDK30 Ɋ܂܂
܂ (܂)Bꂪɗ̂͊J҂ɂقڌ܂B
͓Iɂ 2.0 Ƃ͈ĂALinux o[Wl "miniport" lbg
[NhCox[XłB͏O炠ANT IɃT|[g
Ă܂A炩 NT4.0 ̎fBXgr[Vɂ͊܂܂܂
B 95 ɂ 2.0 ̂ق炭KĂ܂BAAȂ̓肵
̃n[hEFÃhCo̐ɏ]đIsKv邩
܂B

MS ̃EFuTCgɂ͖ɗ[eBeB IrXfer AIRXFER.EXE A
[JCuɎ^`łĂ܂B͐ԊO][eBe
BŁA̒m IrOBEX ̈ (IrOBEX vgRdlɂ) g
Ă܂B̃[eBeB͎RɃ_E[h\Ȃ̂łA
ɌƂɂ͌邱Ƃł܂łB͗ǎ̃OtBJ
C^[tF[X[eBeBŁAIrDA găRs[^Ԃ
t@C̓]s܂B 

ꕔ̃bvgbv@AƂ HP Omnibook 800 ł́ÃpbP[WɃx
_Ŏꂽ̂gKv܂ (HP Omnibook 800 ł̓Jo
CD Ɏ^Ă܂)B

ɁA..\windows\inf\*.inf t@CƃfoCX}l[ẂAݒ̏ڍׂ
m邽߂ɎQlɂȂ܂B

̒mAWindow$ NT  IrDA(TM) T|[gĂ܂BWindow$98
ɂẮA͈͂ł IrDA ͂܂T|[gĂ܂B
Countersys  (http://www.countersys.com) ͎Ђ JetBeam i
NT4.0  IrDA ̔ĂƂƂłA܂ Microsoft 
JetBeam ɂ͂gĂƂĂ܂B

ȉ͎̒mAł

 E Windows95 : 2.0 gp
   
 E Windows98 : 3.0  IrXfer t (Linux/IrDA œBIrOBEX ő
    ) 
   
 E WindowsNT4.0: IrDA T|[gȂ
   
 E Windows2000 : 3.0(+?) http://www.microsoft.com/hwdev/infrared/
   
ȊO M$ ЈȊO̐i܂Bӓ_ƂāA
̂͐p̓ȃvgRgĂ܂B

 E Extended Systems: QuickBeam 1.15 (Linux/IrDA, IrOBEX œ) y
    : _ł Extended System ЁBVFAEFÂ悤B
    CounterPoint Ƃ\tg[J͂邪AIrOBEX ֘ÃhCo
    ł͂̂A͒ڂ̃[J̐ił͂Ȃ悤Bz
   
 E Laplink: LapLink 7.5 y: Laplink ЁB{ł (Intercom
    )z
   
 E Altiris: CarbonCopy 32 4.0 y: ݂ Altiris ЁB{ł
    悤ȋCz
   
 E Symantec: pc ANYWHERE 7.5 y: SymantecB{łBŐV
    10.5z
   
 E Puma Technology: TRANXIT pro 4.0 y: {łz
   


3.11.2. Linux/IrDA  Window$95 IrDA(TM) Ԃ̐ڑ

IrNET <http://www.hpl.hp.com/personal/Jean_Tourrilhes/IrDA/index.html>
g܂B

̒mALinux/IrDA  Window$95 ڑɂ͂S̕@
B

 1.  PC Ԃł̃lbg[NڑBԊO]T|[g 2.0 ݒ
    ς݂Ȃ΁A<Network Device Section> ɐԊOlbg[NfoCX
    ͂łBÂ݂Ƃlbg[Nڑ𓮍삳邱
    Ƃ͂łĂ܂B
   
 2. IrCOMM oR login ɂ́Aȉ̎菇 root ōsĂ
    - ܂ IrDA  IrCOMM g悤ɂ܂B /etc/inittab 
    WĎ̂悤ȍsǉĂB
   
       T1:23:respawn:/sbin/getty -L -w ircomm0 38400 vt100      
   
     root  init q ƂĂB init ͓Ă
    IrCOMM ڑ҂悤ɂȂ܂BłȂ̂D Linux }V
     login vvg Win95 ̃^[~iG~[^Ō邱Ƃ
    ł悤ɂȂ܂B
   
 3. pppd ƂꍇA-crtscts IvVtăt[E
    ԂŎĂ݂ĂBt[T|[g̎
    Ă͂܂A܂eXgĂ܂B
   
    ݎ̃pb`́Aڑ̐ԊOʐMfoCXɂ͂ǂ̋@\Kv
    񍐂悤ɂȂĂ܂B syslog ɏo͂郁bZ[W͈ȉ
    悤Ȃ̂łB
   
    Sep 4 10:01:02 monolith kernel: parse_control:instruction(0x12) 
    Sep 4 10:01:02 monolith kernel: data:03                         
   
     
   
    ɁASH888 ł̃bZ[W ( Win95 PC ȊO̐ԊOfoCX
    ̃bZ[W) m肽̂ŁAIrCOMM ڑ̊Ԃ syslog ɏo͂
    bZ[W[肢܂BAIrDA(TM) s IrCOMM d
    lȂAp.34  38 Ă΁AbZ[W
    Ă̂Ǝv܂B
   
 4. Fons Botman ɂƁuIrLPT ܂삵܂BLinux  IrLPT
    T[oɂAWindows 95  MS-IrDA CXg[ɒ`
    鉼z LPT |[gg悤v^ݒ肵܂B Windows 95 ͒
    IɒZV[PXv^ɑ܂Aꂪł̂
    Ƃ܂͒ł (: ̋Lq͑Âł傤)v
   


3.11.3. Win98 @ Linux Ԃ̒ʐM

Ha Duong Minh ɂƁuAopenobex (http://sourceforge.net/
projects/openobex/) vWFNg ircp ɂĕ񍐂ł邱Ƃ
v܂B ircp ͌݁Alinux }V win98 @Ƃ̊ԂŖ@̂悤Ƀt@
C̓]łĂ܂BȏȒPɂ͂łȂAƂ@ŁB ircp
file1, file2, ... ܂ ircp -r [DEST] Send files Ƃ IrDA Ńt@
C]ł܂BMɂ -r gĂB



3.12. Linux  Linux ̐ڑ

3.12.1. ڑpW[

Linux/IrDA łQ linux }Vڑɂ͂SƂ̕@܂
B

 

 1. Dag Brattli  IrOBEX T|[gɂďĂ܂uڂς
    JĂ郆[UȂALinux ԂŃt@C IrDA őMłȂ
    RƎXĂ邩܂B̂ƂAȗR͉
    ܂ (g͂܂Ă܂)B܂Alinux bvg
    bvԂŃt@C𑗎󂷂ȒPȕ@AɎ莝ɂƂ
    łB͂ЂƂƁA҂]܂Ă "L[AvP[V
    " Ȃ̂܂B"load_misc irobex" Ɨ̃}VŎs
    Ȃ "iroabex_app get" ƂA irobex put <file> Ƃ
    Ăv
   
 2. Linux/IrDA ̃lbg[NڑpāB irlan_client ̃}
    VŁA irlan_server 𑼕̃}VŃ[hKvƎv
    B
   
 3. IrCOMM T|[gpꍇAƃVAC̏ꍇA
    minicom  pppd ȂǂgƂɂȂ܂BP IrCOMM 
    Linux }VԂŎgꍇA ** ̃}V /etc/conf.modules Ɉ
    ̍stĂB
   
    # set ircomm protocol engine to client-only mode            
    options ircomm ircomm_cs=1                                  
   
    ̍s𗼕̃}VɉĂ͂܂BȂƁAƂ
    ̒ʐM󂯕t邱ƂłȂȂ܂B܂J[l 2.2.7 
    ~ł /etc/conf.modules  ircomm_cs=1 Kv͂ȂȂĂ
    ܂B̎wgĂꍇA폜ĂB
   
 4. IrNET: ̃NQƁB IrNET <http://www.hpl.hp.com/personal/
    Jean_Tourrilhes/IrDA/index.html>
   
 



3.12.2. kɂ

̋@\͂܂Ŝ̂ł邱ƂɒӂĂBDag Brattli
ɂƁuƂ肠kT|[g IrLAP ɉƂm点
BmĂ邩Ǝv܂A IrDA(TM) Ẅꕔł́܂
񁖁BA Linux Ԃł͒ʐMHԂœk@\邩ǂ̋cs
Ƃł܂B̂߁AWin95  Palm III ̑Ƃ̊Ԃł́ASk
@\͎g܂B͎̒m Linux ̂݁A̋@\łB IrDA(TM)
Wł́AfoCX͋cp̃wb_̖`𖳎ׂƂȂĂ܂
̂ŁA̋@\ IrDA(TM)w݊xł (gp̃wb_̒lgĂ邽
)B

kR[hĂ݂ (Linux <-> Linux ) ꍇAۂɐڑsO
̂ǂ̎_ irda_deflate W[[hĂB
irattach ̑OɍsĂ܂B

ŉĂ鈳ḱARFC (Request for Comments) 1950-1952 ɋK肳
kW̎ł zlib CugĂ܂BȂ݂ɁARFC 
ftp://ds.internic.net/rfc/rfc1950.txt (zlib tH[}bg)Arfc1951.txt
(LtH[}bg)Arfc1952.txt (gzip tH[}bg) ̊eXQƉ
B

kC^[tF[X PPP ƎĂADȂقȂk@\C
Xg[邱Ƃł܂B_ł GZIP ݂̂T|[gĂ܂
ABSD kŉł傤BƂ肠 GZIP k 4Mbps Ŏ
ƂłB͑厸sŁAt[̈kɂ܂ɂԂ
߁A\͈kgȂƂۂ̂Ƃ򉻂܂B_ƂĂ
Ak SIR xłgׂAƂƂł傤v



3.13. foCX̓gp

Dag Brattli ɂƁuIrLAP C͕̃foCX悤Ɋg
Ă܂ (]āA IR |[g IrLAN gȂA
IrDA hO Pilot ƒʐM邱Ƃł܂)B () ł͂ǂ
 Linux/IrDA ڑQݒ肷̂ƌƂłA͒PɎ
e IrDA |[gɑ΂ irattach ŋNĂ邾łB

irattach /dev/ttyS0         # (my ESI dongle)                          
irattach /dev/ttyS2         # (my builtin IrDA port)                   

FIR foCXł̂悤ɂĂΓ܂B

irattach irda0 -s 1                                                    
irattach irda1 -s 1                                                    

̂Q̃foCX͓}Vœ삵ĂĂ݂ɑ̂Ƃ݂邱
Ƃ͂܂B̂Q̃foCX͂傤ǓɃfBXJoJn
邩łBȂÂQ̃foCX͕ʁX̃bvgbvɑ΂
ĎgKv܂B̏ŁAhOA IrDA |[g IrDA
PCMCIA J[hɉ̖ȂgĂ܂B

Q̃foCX󋵂ł́Aڑm邱ƂɂȂ邱Ƃ
܂B́AfBArW[ (M) ̏ꍇɂ̓foCX͑M
łȂ߂łB͏ꍇɂẮAQ̃foCX̊Ԃɖ{Ă邱
ƂŉĂ܂v



3.14. hbLOXe[VƂ̐ڑ

Dag Brattli ɂƁuTekram IRDocking IR-660 http://www.tekram.com
/Hot_Products.asp?Product=IR-660 Ƃ̐ڑɂĂłB̃foCX̓h
bLOXe[VŁALAN ڑAv^A}EXAL[{[h̊eC
^[tF[XĂ܂B̃}EXL[{[hƓɗp邱
Ƃł܂BP gpm -t ps2 /dev/irkbd Ƃ΁Abvgbv
IR-660 Ƃ̊ԂŃL[{[hƃ}EX̐ڑ쐬܂B͒P gpm  /
dev/psaux  /dev/irkbd ̗ǂނ悤ɒAX11  /dev/gpmdata 
ǂނ悤ɂāAݒ꒚łv

u ...肪āAgpm ͕̃}EX܂ALinux ͕
ʁX̃L[{[h܂B̂߁Â悤ɃmEF[zũL
[{[hƃ[g US L[{[hgĂꍇ́A쎞ɍ
B̌ɂĂ Alan Cox 񂩂ÃL[{[hۂɃT|[
g悤ƂĂvWFNg̃qĝŁAׂĂ݂
v

u ...OKB悤ɂȂ܂B/dev/console  TIOCSTI g
āAXLR[h𒼐 tty queue ɓ邱Ƃł܂B́A
xϊEHς݂̃L[R[h҂鉼zR\[ɂƂĂ͖
Ȃ̂łAX ͂܂ܐ̃XLR[h]ނ̂ŁA X gĂ
Ƃ͂ƂĂǍDɓ삵܂B̑̉zR\[ł͓삵܂
B܂AɂƂĂ͂ŏ\Ȃ̂ŁAPɃeLXg̉zR\[
œ삳邽߂ɁAXLR[hL[R[hɕϊăL[}bvɏ]
ĐU蕪邱ƂɑȎԂދC͂܂BƂA
irkbd hCo̓[UԂɂ܂߂Ă悤łv

u ...Tekram IR-660 foCX́AL[{[hƃ}EXȊO IrTTP
gv^ڑł܂ (IrLPT gĂ͂ł܂A
ꍇ IrLMP ̔rpKvɂȂ̂Ŗʔ܂B邾
̂߂Ƀlbg[NA}EXAL[{[h~߂͂܂񂩂)B
fifo obt@g IrTTP vgł邩ǂĂ݂
v

u ...Tekram ̓f[^`lȊOɂp̃`lĂ܂̂
Ais̒ʐM̃Xe[^X𑽏邱Ƃł܂B Tekram ̐p
vgR̖O P1248 łB "P1248" NX "IrDA:TinyTP:
LsapSel" LM-IAS GgƂČJĂ̂ŁATĂ݂Ăv

u ...Canon  P1248 vgRgĂACanon ̃v^j^v
O PrintBuddy2 ({) ͂̃vgRݎgĂ܂B
Canon f[^`lgĂȂR͕܂B TinyTP 
̕@ɉ`ŃT|[g߂ł͂ȂƎv܂B
"IrLPT" NX LM-IAS  "IrDA:TinyTP:LsapSel" ƂĎ茩
ł܂̂ŁATĂ݂Ăv



3.15. L[{[hڑ

Linux/IrDA L[{[hhCóA̓[UԂœ삵܂BL̃hb
LOXe[VƂ̐ڑ̏͂B

Lichen Wang ɂƁuIrDA-D ƌĂ΂ĂẂAf[^]
悤݌vꂽ̂łB IR L[{[hɂ͓KĂ܂B
IrDA-D ADag  Linux OS ɁA MS  Windows OS ɈڐAĂ
܂v

IrDA-C (Control: ) L[{[hAWCXeBbNȂǂ̂߂ɐ݌v
ꂽ̂łBAgisɏoĂ̂
͂܂B

IrDA-D  IrDA-C Ɖb邱Ƃ͂ł܂񂵁A̋t IrDA-C 
IrDA-D ւ̉bł܂Bwł̃GR[fBO/fR[fBO
ƃ\tgEFAvgR̗傫قȂĂ܂B

IrDA-D  IrDA-C ̃foCXŗ邱Ƃ͂ł܂B Sharp
ɂƁAIrDA-D  IrDA-C Aɓ IR ԓŗgȂ苤
łƌƂłB̌͑΂΂͂܂B
̒`ɏ]΁ẢߒŉFivɔj󂳂Ȃ΁Aǂ̂
Ȃ̂łƋ邱Ƃ͂ł܂B

^ʖڂȘbASharp ̌̂ IrDA-D 𑽏ċcŌ肳ꂽ
ő؊ԂƎۂ̑M̊Ԃɑ̖gpԂ悤ɂƁA
Ă̖gpԂ IrDA-C ̃t[񂾁AƂƂł傤
B IrDA-D vC} IrDA-C }X^͓̃foCXɎĂK
v܂B̎ł̓L[{[h͓ł傤A}EXWCX
eBbN͎ƂĉȂ邱Ƃ肻łB



3.16. VAP[ugڑ

ƂĖ{̐ԊOڑł͂ȂAVAP[ugĐڑ
֗ȏꍇ܂B Bjorn Hanson ɂƁuP[ug΁Al
 Ericsson SH888 Ƃ̊Ԃ PPP ڑ𒣂邱ƂłĂ܂Bȉ̂悤
ɂčs܂ (ꕔ̎菇͊ԈĂ邩܂񂪁Al̂Ƃ
ł͓Ă܂ :-)B

 

 E /etc/conf.modules  alias tty-ldisc-11 irtty ܂B 
   
 E /etc/irda/drivers  irattach /dev/ttyS0 ƂȂ悤ҏW܂B
   
 E modprobe g irda  irtty W[[h܂B
   
 E irattach Jn܂B
   
 E /dev/ircomm0 (/dev/modem ̃V{bNNoR) g kppp
    𑖂点܂B
   
 E stty < /dev/ircomm0 s܂B
   
 E zXg ping ܂B
   
 E ifconfig irda0 down s܂B
   
 

ping  ssh (ls -l 𐔉sĎ܂) ł͉Ȃł
A Netscape mail  PPP ŎgƂہARs[^nO
Bu[gANetscape  lynx ̗Ă݂܂Aǂ
܂ł͂ł̂́Ãf[^Mł܂łv

Claudiu Costin ɂʖ@ł

 

 E Linux 2.2.5  IrDA W[ƂăRpC܂
   
 E irattach ł̓J[l IrDA X^bN[h邱Ƃł
    ߁A modprobe actisys Ƒł܂B
   
 E  irattach /dev/ttyS1 -d actisys Ƃ܂B COM2 ̓k
    NƂĎgĂ܂B
   
 E ping <address> ͗ǍDɓ삵܂B
   
 

𗼕̃}VōsKv܂B

ӂĂق̂́A͂Q̃}VȂ邨߂̂ł͂Ȃ
ƂƂłB PPP gĂBƂĂ͂̂
ȂƂɖɗ̂Ă܂Bɂ܂߂̂́A[
OXgŎX邩łB



3.17. kfP[uڑ

IrDA gn[hEFAȂĂAVAkfP[uŐڑ
sƂł܂BIrDA |[gVA|[gɃA^b`ĂB
܂A"irattach /dev/ttyS0 -s 1" Ɨ̃}VŎsĂB



3.18. sAc[sAڑ / ڃ[h

IrCOMM  IrLAN ǂ̃[hł삵܂Ã[ḧႢ
Aǂ̂悤ɂĐݒ肷邩ɂĂ̏ڂA͌ݎĂ
B



3.19. ł̃m[gubNł Linux/IrDA

Guenther Wieser  HOWTO about Toshiba and IrDA <http://
www.creative-it.com/linux/irda/toshiba_irda_howto.html> Ă܂
B̃m[gubNł toshoboe Linux/IrDA hCoKvłB



3.20. fXNgbvRs[^ł IrDA J[h

ŋ߂̈ꕔ̃}U[{[hɂ IrDA `bvĂ܂Bfɂ
ẮAIrDA LED ̒ǉKvłBۂ̗̋Lڂ Andreas Gohr 
 <http://bogmog.sourceforge.net/document_show.php3?doc_id=13> ɂ
܂B 



Chapter 4. Linux/IrDA ŃT|[gĂn[hEFA

4.1. bvgbv@ IR |[g̏𓾂ɂ

bvgbv@ IrDA |[g Linux/IrDA œɂ́A
StandardInfraRed (SIR) [h FastInfraRed (FIR) [hgƂɂ
܂B



4.1.1. SIR

SIR [h̍ő呬x 115,200bps ŁAԊO|[g 16550A UART p
VA|[gG~[g܂B̃|[g̓J[l̃VAh
CoɂāAN܂̓VAhCoW[[h_
ŔF܂BAԊO|[gT|[g BIOS ŗLɂȂĂ
Awǂ̃bvgbv@ňȉ̂悤ȃJ[lbZ[W邱Ƃł
ł傤B

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



4.1.2. FIR

4Mbps ܂ł̑xg΁AȂ̃}Vɂׂ͂ FIR `bv
ڂĂKv܂B܂Ã`bvT|[g Linux/
IrDA hCoKvłB̂߁AgĂ FIR `bv̐mȏ
肷Kv܂B̏𓾂ɂ͈ȉ̕@܂B

 

 1. }V̐ǂłBAAKvȂ́AMł
    񂪂瓾邱Ƃ͂܂łB
   
 2. FIR `bv PCI foCXǂׂĂB cat /proc/pci 
    sĂ݂ĂBJ[l 2.2.x ̏ꍇ /proc/bus/pci 
    B PCI ͕̏s\ȂƂłBPCI foCX̍ŐV
    ƃx_ԍ /usr/src/linux/Documentation ȉ̃J[l
    ACraig Hurt ̃y[W http://members.hyperlink.net.au/~chart
    œ܂BJ[l 2.1.82 ȍ~ł́Apci-utils pbP[W 
    lspci R}hgƂł܂B
   
 3. DOS c[ CTPCI330.EXE gƂł܂B̃c[̓hCc
    ̃Rs[^ CT  ftp://www.heise.de/pub/ct/ctsi/ctpci330.zip
    ł܂B̃vOœ񂪁ALinux p̃c[
    œ̂ǎł邱Ƃ悭܂B
   
 4. Plug-and-Play (PnP) foCX𓾂B isapnp c[ɗ
    傤BAA͂̃c[̖ړIŎgƂ͂܂B
   
 5. ł Linux/IrDA(R) \tgEFACXg[ς݂ȂAFIR 
    W[[h dmesg ̏o͂ FIR o邩ǂ
    Ƃ܂B
   
 6. o@͑ɂ܂Bȉ Thomas Davis ɂł:
    (:ҏWĂ܂) ux_ FTP TCgĂ݂āA
    Windows9x FIR drivers T܂Bɂ SMC `bvȂAȉ̂
    ̂܂܂Ă܂B
   
    -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   
   
    悭킩ȂƂ́A܂ Windows 95  .inf/.vxd hCo
    ĂB Windows95 ̏oהłɂ FIR hCóS܂܂
    ܂̂ŁA FIR hCo͕KT[hp[eBŁA
    Counterpoint ̂̂ ESI ЂڐÂłv
   
 7. Thomas Davis  SMC А̏ DOS [eBeB܂
    BȉQƉB http://www.smsc.com/ftppub/chips/appnote/
    ir_utils.zip ̃pbP[Wɂ FINDCHIP.EXE R}h 
    FIRSETUP.EXE [eBeB܂܂ĂA҂̓`bvAhXȊO
    ̑SݒlύX̂Ɏg܂BɁÃpbP[Wɂ 
    BIOSDUMP.EXE ܂܂ĂApΈȉ̏o͂܂B
   
    1 (COMPAQ Armada 1592DT ̏ꍇ)
   
    In current devNode:                                               
               Size      = 78                                         
               Handle    = 14                                         
               ID        = 0x1105D041 = 'PNP0511' &- Generic IrDA SIR 
    Types:  Base = 0x07, Sub = 0x00,  Interface = 0x02                
    Comm. Device, RS-232, 16550-compatible                            
    Attribute = 0x80                                                  
                    CAN be disabled                                   
                    CAN be configured                                 
    BOTH Static & Dynamic configuration                               
    Allocated Resource Descriptor Block TAG's:                        
    TAG=0x47, Length=7 I/O Tag, 16-bit Decode                         
    Min=0x03E8, Max=0x03E8                                            
    Align=0x00, Range=0x08                                            
    TAG=0x22, Length=2 IRQ Tag, Mask=0x0010                           
    TAG=0x79, Length=1 END Tag, Data=0x2F                             
   
     
   
     1
   
    Irq Tag, Mask (bit mapped - ) = 0x0010 = 0000 0000 0000 0001 0000
    ]āA IRQ 4 gĂ܂ (0 ͂܂ďɏオĂ
    ܂)B܂ SIR ݂̂̃foCXŁAIRQ 4 ŁAIO=x03e8 Ɋ
    ĂĂ܂B
   
     2 (𓾂}V̏ڍׂ͕sł)
   
    In current devNode:                                         
              Size      = 529                                   
              Handle    = 14                                    
              ID        = 0x10F0A34D = 'SMCF010' -- SMC IrCC    
    Types:  Base = 0x07, Sub = 0x00,  Interface = 0x02          
    Comm. Device, RS-232, 16550-compatible                      
    Attribute = 0x80                                            
                   CAN be disabled                              
                   CAN be configured                            
    BOTH Static & Dynamic configuration                         
                                                                
    Allocated Resource Descriptor Block TAG's:                  
    TAG=0x47, Length=7 I/O Tag, 16-bit Decode                   
    Min=0x02F8, Max=0x02F8                                      
    Align=0x00, Range=0x08                                      
    TAG=0x22, Length=2 IRQ Tag, Mask=0x0008                     
    TAG=0x47, Length=7 I/O Tag, 16-bit Decode                   
    Min=0x02E8, Max=0x02E8                                      
    Align=0x00, Range=0x08                                      
    TAG=0x2A, Length=2 DMA Tag, Mask=0x02, Info=0x08            
    TAG=0x79, Length=1 END Tag, Data=0x00                       
   
     2
   
    a)  SMC  IrCC `bvŁA
   
    b) ꕔ 0x02f8 ̃AhXɂA8 byte ̃AhXLAirq
     3 
   
    c) ̕ 0x02e8 ̃AhXɂA8 byte ̃AhX
    LAdma 1  (0x02 =0000 0010) ɐڑĂ܂B
   
    Thomas Davis ͓ꂽ}V̈ꕔ http://www.jps.net/
    tadavis/irda/devids.txt ɒuĂ܂B
   
    
                            Warning                         
    
    ̃pbP[W̓Gh[Uł͂ȂAꕔ̃[eB
    eB͊댯Ȃ̂ɂȂ肦܂BB̐        
    Microsoft Word `ŃpbP[WɓĂ邽߁A   
    Linux [U͕Kvɉ catdoc ȂǂœǂłB
    catdoc  http://www.fe.msk.ru/~vitus/catdoc/ œł
    ܂B                                                  
    
 8. Microsoft Windows 9x/NT Iy[eBOVXe Device Manager
    gB
   
 9. ȉ̏͂ŋLڂn[hEFAT[xBg܂B
   
10. Ō̎iƂāAbvgbv@ă`bvZbg̈
    Ƃł܂Bȉ́A(sS) [JXgłB Crystal
    Semiconductor, Agilent (HP ܂ Agilent (ʏ\L͂ǂS)
    B`bv HSDL Ŏn܂y: IrDA ̌W[EgV[o
    z)A HitachiAIBMANational Semiconductor Corporation (NSCB\L
    S)A NECAPhilipsASharpAStandard Micro Systems Corporation
    (SMC/SMCC y: S SMCCz)ATexas Instruments (TI)AVLSI
    AWinbondBƂāAHSDL-7001 ̉H܂ (HP ̏qɂ
    A҂ɂC) y: [JȂ̂ŖⓚpŒ܂B
    z
   
        LEDs    Encode/Decode    SIR/FIR                        
                                                                
       HSDL-1001    HSDL-7001      UART 16550/                  
                      MicroController                           
       ______      ______________      ____________             
      |      |    |              |    |            |            
    (||   TXD|<---|IR_TXD     TXD|<---|SOUT        |            
      |      |    |              |    |            |            
      |      |    |           RCV|--->|SIN        |             
      |      |    |              |    |            |            
    (||   RCV|--->|IR_RCV  16XCLK|<---|BAUDOUT     |            
      |      |    |          NRST|-+  |            |            
       ------      --------------  |   ------------             
                                   V                            
   
 



4.2. n[hEFAT[xB

Linux ƐԊOʐM\ȃfoCXɊւT[xB WWW ɂ
B

 

 E The Linux/IrDA Project - Hardware Survey http://
    irda.sourceforge.net
   
 E p̃y[W http://www.pluto.dti.ne.jp/~thiguchi/ir/
    product.htmlB̃y[W͓{łB
   
 E  IrDA hardware survey at MobiliX <http://mobilix.org/
    ir_misc.html> pӂĂ܂B̃Xgɂ́A̕ŐGĂ
    ȂԊOʐM\ȃfoCX (}EXAv^A[gRg[
    AgV[oȂ) ɂĂ̏ڂĂ܂B̃n[hEF
    AT[xB[̂ɂĂ߂ɁAlXȃn[hEFA
    ւԊOfoCX̏XɏW߂ĂKv܂B
    n[hEFA̐mȖ̂ƁAgĂԊORg[̃^Cv
    Z E [ŕ񍐂΂ƂĂɂȂ܂B܂ALinux/
    IrDA ǂ̒xǂĂ邩Aǂ tty łA삵ۂ̃|[g
    Ɗ荞݂̐ݒAgĂԊOfoCX (: v^Agѓdb)
    ȂǂɂċĂB܂AԊOfoCX̂߂ Linux h
    CoĴɕKvƂȂÃfoCXɊւڍׂȋZp
    񋟂ĂƏ܂B
   
 



4.3. rbOGfBA

\[X̂̓rbOGfBÃ}VŃrhē悤ɂȂ
͂łA͎ۂɂĎgĂƂ񍐂󂯂Ƃ
܂BۂɓǂɂĊ֐S܂B IrDA hO
̂悤Ȃ̂AeXg邽߂ɕKvɂȂł傤B

i386  alpha ̓gGfBAłBarm ͑Ił܂ (AA
NetWinder ̓gGfBAɌŒ肳Ă܂)Bm68kAsparc 
PowerPC ̓rbOGfBAłBMIPS ͑Ił܂B͂肵Ȃ
 /usr/src/linux/asm/byteorder.h āA linux/byteorder/
big_endian.h ܂܂Ă邩A linux/byteorder/little_endian.h ܂
Ă邩ĂBy: MIPS ̓u[gɑIłALinux ł
܂BSGI n HardHat  Linux ̓rbOADECstation  Cobalt
Cube ̓głB̑ MIPS-HOWTO ĂBz



4.4. SMP

Jean Tourrilhes ɂƁuIrSockAIrNET  OpenObex  SMP }V
̃hOgēĂ܂BǍDɓ삵Ă܂AR[h
̂͊S SMP ňSȂ̂ɂ͂ȂĂ܂BłAǂł邩
͕܂cv



4.5. IrDA n[hEFA

 

 E SIR
   
 E FIR
   
 E VAhO
   
 E USB hO
   
 E PCMCIA J[h
   
 E PCI J[h
   
 

Linux/IrDA ŎgfoCX̃T[xB MobiliX <http://mobilix.org/
ir_misc.html> ɂ܂B



4.6. IrDA  USB

USB IrDA ubWdl Rev 0.9B łoĂ܂B USB NXd
lƂč̗p܂B̎dl 0.9 NXdlwb_Ō邱
ł܂B

mAActisys 2000U  Extended System ESI-9685 ͓̃n[hEF
ApĂ悤łBǂ USB hO Linux hCoŗǍD
삵܂B܂A USB hÕ}Vɐڑ (݂͂S
܂łł) Ƃ\łB

hCo͂܂WJ[lɊ܂܂Ă܂񂵁AƂĂAƂ
ł͂܂BlIɂ́Ał͂ǂ̃n[hEFA
Aǂ܂ЂƂ̏Ԃł͂ȂƎvĂ܂BhCo͍ŐV IrDA
pb`Ɏ^Ă܂B܂ÃR}hn߂܂B

modprobe usb-uhci                                                      
modprobe irda-usb                                                      
irattach irda0 -s 1                                                    

x͍ς݂܂BV[gxg߂ :-)



4.7. PDA ł Linux/IrDA

 Linux PDA (iPAQ  Cassiopeia) ɂ IrDA |[g܂B
ݎ͂ݒ肷邽߂̏Ă܂ (茳 iPAQ ł
dmesg  IrDA |[g܂)Bڂ http://www.uclinux.org
A http://www.pocketlinux.com  http://www.handhelds.org 𓖂Ă
B



Chapter 5. 荂xȘb

5.1. guV[eBO

5.1.1. ʓI

ɏo킵A܂ȉĂ݂ĂB

 

 E ȉ FAQ ̏͂ǂށB
   
 E /var/log/messages  /var/log/kern ̏o͂B
   
 E dmesg sB
   
 E /proc/irda ̊et@CB
   
 



5.1.2. guV[eBOZp

͋͂ȃnbJ[Ƃ킯ł͂܂񂪁Aɂ Linux/IrDA \t
gEFÃG[oOǐՂ邽߂̋ZW߂Ă܂B

 

 E /proc/sys/net/irda/debug ̃fobOx 1, 2, 3, 4 ƕύXĂ
    B
   
 E /proc/sys/net/irda ɂt@CpĈႤp[^Ă݂
    BႦ΁A"echo 0 > /proc/sys/net/irda/discovery" Ȃǂ̂悤ɂ
    ݂B/proc/*/irda t@CƂ
   
    root@duckman:~# ls /proc/sys/net/irda/* /proc/net/irda/*    
    /proc/net/irda/discovery                                    
    /proc/net/irda/irlmp                                        
    /proc/net/irda/irda_device                                  
    /proc/net/irda/irttp                                        
    /proc/net/irda/irias                                        
    /proc/net/irda/irlap                                        
    /proc/sys/net/irda/devname                                  
    /proc/sys/net/irda/discovery                                
    /proc/sys/net/irda/compression                              
    /proc/sys/net/irda/debug                                    
   
     
   
 E R[hfobO邱Ƃ\ł͂܂A͂m܂
    B SKB fobOR[hpꍇAirda.h ҏWA/include/
    linux/skbuff.h ύXĂ (snapshot 10-2-98 ̕ҏWQ
    ̂)B
   
 E irda W[ɊւɂẮAmodules pbP[W^
    kdstat [eBeBɗł傤BAA͂܂g
    ܂B
   
 E ugpfBXJopPbg̐ (1A6A8 ܂ 16) ƁA
    鎞ԊԊu (2-8 * 10mS)  /proc/sys/net/irda ŕύXł悤ɂ
    ܂BfoCX̌oŖ肪ĂƌƂȂA
    ĂB Palm III ł 16 fBXJoXbgƁA8 (*
    10mS) ̃Xbg^CAEgD܂悤łvccuIR-610 ň
    osŏ̃Xbg 9 ̂悤łv̑ɂuPalm
    III ł 8 fBXJot[Ađ̂͂܂A6 Ȃ OK
    łB8 ɂ 6-10 Ɉ񂵂ԓ܂񂪁A6 Ɩԓ
    A܂Bꂪ Linux/IrDA ̖Ȃ̂APalm III ͕̂
    Ă܂B̖@̈ƂāAقȂfBXJ
    o@ȉ̂悤ɏɌJԂČ邱Ƃl܂B
    Discovery 1: send 8 xid frames with 80 ms separation ŕԓ
    ΁A̐ݒg܂BԓȂΎ̐ݒ܂
    B Discovery 2: send 6 xid frames with 80 ms separation Discovery
    3: send 8 xid frames with 90 ms separation Discovery 4: send 6 xid
    frames with 90 ms separation Discovery 5. 1 ɖ߂邱ȊÕp^[
    AƑ̑gݍ킹Kv܂B͏
    āA/proc/sys/net/irda/discovery_slots  0 ɐݒ肷邱Ƃ
    LƂȂ悤ɂȂł傤B
   
 E J[l Oops ƂȂꍇɂ́A ../linux/scripts/ksymoops/
    ksymoops vOɐH킹΁AǂłȂ킩܂
    BP Oops Ns syslog ؂蔲āAt@Cɕۑ
    A ksymoops <file> sĂB
   
 E Dag Brattli ɂƁucs4232 TEhJ[hbS ! ̊
    荞݂𔭐Ă邱Ƃ˂~߂܂BŃJ[lTE
    h֌W苎ƂA}V 4 { ! Ȃ܂
    BLinux/IrDA  esound T[o (esd) 𓯂}VŎsĂ
    AN܂B̓̃}VA166MHz  Pentium
     200MHz  Pentium Pro ̗Ƃ esd 𓮂Ă Linux/IrDA
    sł܂B́Aesd ɂTEhJ[hb 300 ̊
    荞݂𔭐邽߁AVAhCoMI[ot[N
    łB Linux-2.2 VAhCoŒx荞݂pĂ
     (2.2 łׂ͂Ēx荞݂ŏ邽) ߁A荞݃h
    CoۂɊ荞ݏXPW[邽߂ły: 
    荞ݏčsƁzBx荞݂̗ǂ_́Ã^C
    }݂̍҂KvȂ߃pPbgƑz邱Ƃł
    BL̗O pc87108 hCoŁA esd Ƃ̑gݍ킹ł
    Ȃ삵܂B́ÃhCo DMA păpPbg
    ̊荞݂NȂ߂łv
   
 E Linux/IrDA ̐ڑ`FbNɂ́A[Uԃc[ irdaping 
    irdadump g܂B
   
 E ̒mAIrCOMM ͐ԊOfoCXoRłVAP[uoR
    g܂B̓fobOɖɗ܂B
   
 E 
     1. /etc/conf.modules ҏWA̓stĂB
       
        option irda irda_debug=3                                
        option irlpt_client_debug=3 irlpt_common_debug=3        
       
     2. irda ֌WW[ׂč폜Ă邱ƂmFĂ
        B
       
     3. /etc/syslog.conf ҏWA̍stĂB
       
        */*         -/var/log/all                               
       
     4. "killall -1 syslogd" sĂB
       
     5. A܂͂̑ irlpt ŖNĂ铮sĂ
        B
       
     6. /var/log/ ȉ̑St@C`FbNĂB
       
     
   
 

ꕔ ThinkPad fł́AvCXg[Ă M$ OS ōċN
āA ThinkPad c[g IrDA |[gLɂȂ΂Ȃ܂B
s Linux ̃c[݂͌܂B͓ɓVA
|[g (ttyS0) 𖳌܂BDOS p̃c[ PS2.EXE ŁA̒m
 tpctl ͂̋@\܂B DOS vO (ps2.exe) ŐԊO
|[gLɂ邱Ƃ߂ďdvłBwindows c[pĂ
sƂ͂ł܂BsȂ΁AhCo͐[h
 OK ̂悤Ɍ܂ALED \ɖ邭܂B



5.1.3. PCI foCXio

Daniel R. Risacher magnus@alum.mit.edu ɂƁuPalm III Ǝ
Tecra 8100 (2.2.17 gp) œƂ邽߁A /usr/src/linux/include/net/
irda/toshoboe.h  "#define PCI_DEVICE_ID_FIR701 0x0701"  "#define
PCI_DEVICE_ID_FIR701 0x0D01" ƏKv܂B



5.1.4. scanport

`bv̐foCX ID 𓾂ɂ́Ascanport R}hg܂B
 hwtools pbP[Ẅꕔł (Debian ł́B̃fBXgr[V
łł傤)BPɃR}h͂΁AR}h 0x100 
 0x400 ܂ł I/O |[g (WI ISA ̃AhX͈) XL܂
B0x400 ȏ 0x400 ȉ̃foCX̃VhEAXɏ PCI fo
CXgĂ܂̂ŁAWł 0x400 ȏ̓XL܂Bu
inb gĎ̃`bv I/O AhXŒTƂɂȂ܂B^ǂ
Ȃɐ܂ŌKv͂܂ł (ŋ߂̃TEhJ[h 0x530
t߂ɋĂA0x220 ][h݊̂߂ɉĂ܂)B
́AfoCXAhXԓłǂɂ邩Ă΁AhCoł
wĂ݂āAꂪhCo҂ĂfoCXǂhCo
o邱ƂɂȂ܂B͊SɈSƂ͌܂񂪁AShCo
ɑS I/O |[g̃hCô߂đ肳͂
ƈSłB scanport ̓|[g̓ǂݍ݂sŁA͒ʏS
łvy: PC-AT ̎dl 16bit tfR[hƂƂɂȂ
邪AĂfoCX͏Ȃ߁AʂƂď̂悤ȂƂɂȂ
Bz



5.2. [OXg

[OXgA[JCu𒲂ׂāAʂĂ肪m̂̂ł
Ȃǂ𒲂ׂĂB 1999 Nȍ~́ÃA[JCu
Linux-IrDA [OXgA[JCu http://www.pasta.cs.UiT.No/
mailman/listinfo/linux-irda ɒuĂ܂BÕ[͂
 http://www.ita.chalmers.se/~svinto/hypermail/irda/ ɃA[JCu
Ă܂B

Ō̎iƂāALinux-IrDA [OXgɖ₢킹ĂB
Linux-IrDA [OXg̍wǂ http://www.pasta.cs.UiT.No/mailman/
listinfo/linux-irda łł܂B̃[OXgł́AA񓚁A
oO񍐁Apb`AĂƃRg̓e}Ă܂B܂A
܂߂悤ɂƏƗeՂɂȂ܂Bȉ܂߂悤
肢܂B

uname -a                                                               
cat /proc/net/irda/irlan                                               
cat /proc/net/irda/irlap                                               
irdadump                                                               

 



5.3. ԊO悤ɂ

                                    What you don't see gets you. 
                                    Ƃ̂̂ŁA͂܂Ă 
                                     (What you see is what you gets
                                    ̂)                          
                                                                       
                                                                   s

IrDA Ή̃v^ĂȂAdbɌ IR |[ĝ
΂ LED _ł肷̂Ǝv܂B܂AԊO|
[gt Palm I[KiCUĂȂAdbɌĂ݂Ă
Bdb IR |[gfBXJo[hɂȂĂȂ Palm 
"Waiting for Sender" |bvAbvEBhEo͂łB

Palm p IR 𑪒肷 "IRMonitor" ƂvO܂B
 EuroCool  PilotZone Ŏɓ܂B̃vOsāA
Or[oĂƎv|[g̕ Palm ܂B
|[g甭ĂȂAIrMonitor ̃XN[Ot̔gƂĂ
邱Ƃł͂łBԊOŗV񂾂ApŎg肵悤Ƃl
ɂ́ÃvO߂܂B

ԊOoɂ̓rfIJg܂BAA͂ɂĂ͊m
FłĂ܂B

̐߂̋Lq̖wǂ "The Armadillo with the Mask" ɂ Linux/
IrDA [OXgւ̓eƂ܂B



5.4. ߓdɂ

 HP Omnibook 800 ̎dlɂ́AgĂȂƂɂ͐ԊO|[gI
tɂĂƋLڂĂ܂Bobeeʂ̍ő 10% 邽
߂łB

KvȏꍇAJ[l IrDA ZNVō RR @\𖳌ɂ邱Ƃ
ĂB̃IvV͓]x啝Ɍy܂Ad͏
͑܂B



5.5. IrDA dl𒴂

5.5.1. ʐML΂

IrDA dlɂ΁AʐM\ 1m ܂łłBHewlett-Packard Ђ
"IrDA Data Link Design Guide (http://www.hp.com/go/ir)"  p.20 ɂ́u
ꍇɂĂ IrDA ŕۏ؂ꂽ 1m ȏɃNԋL΂
܂Bɂ͂Q̕@܂B͑M̋xグ邱
ƁA͎M̊xグ邱ƂłBNԋ𑝉
́AMxƋx̗A IR NŋȂ΂܂
BẂAŏ̌xȂ IrDA foCXƒʐMȂA
MxグȂ΂܂B܂W IrDA foCX͍ŏ̌M
xĂȂȂ܂̂ŁAMxɏグȂ
΂Ȃ܂v

Andreas Butz ɂƁu΂₩܂񂪁AN IrDA X^
bN{ɂׂđoʐMɈˑĂ̂AƂꕔ͒P
Mɖł̂ɂĒm܂? ɁAʐMf[^ɃG[
ꍇɂǂȂ̂Bݎ̂ƂŁAIR hOāA
[g (قڈꕔ) ɔzuꂽ Palm Pilot ɑ΂ău[hLXg
ʐM悤ƂĂ܂B Pilot ͕̕ύXȂAM̊x
グق͂łɂȂ̂ŁAł̂͒PʐMɌłv
̋c_̑̓[OXgA[JCu𓖂ĂB

Marc Bury 񂩂̃[ɂ́uPhilips Ђ̃[gRg[
VZp̘b𕷂ƂłB Philips Ђł IRDA - Control Ɠǂł
܂B͑oʐMŁA75kbps f[^[gAfoCX (ő
8) \ŁAȂƂ 6 m ̋! T|[gĂƂƂłv
̌̏́Ahttp://www.irda.org/ QƉB

hCc̎G ELEKTOR ł́A IrDA hO (20mARS232AIrDA 1.0)
邽߂̎LڂĂ܂BELEKTOR 97/5 łB http://
www.elektor.de QƉB

"傫Ȗ́AM@̊xグKvƂƂłB̊{
́A̋x͋̓ɔႷƋĂ܂̂ŁA1m ̂̂ 5m
ɂ̂΂ƎvȂ 25 {̋x (тɔgуfoCXł̓dr
̏)A܂ 25 {̊x (у_Ci~bNW - ȑOl 3 inch
̏ꍇɂ삵Ȃ΂Ȃ܂񂩂) KvɂȂ܂B܂AΌ
ƂĂ݂΁AP 25 {̊x΂Ƃł͂܂
BMł́AuXN[Z[oAړl̉eȂǂȂ銱
̎R{̐ĵ悤 IrDA Ȃ΂ȂȂłB"

 Palm III AbvO[h{[hŎl܂B http://
home.t-online.de/home/PSPilot/ppppiii.htm

܂A[U_CI[h (pXM) gƂ K-H.Eischer 񂪑E
߂Ă܂BA͍łA1mW 𒴂鍂o͂̂͊
ł܂B悢@̓Ygăr[i荞ޕ@łB
܂ACɂ͌̋zŏɂȂg܂̂ (mȎg͖
mFł) IR _CI[h̎gŎgׂłB

James 񂪏ĂĂ܂u IrDA ~̂߁A͎
̂̂܂BxXĝ͈ȉłv

 

 E wavelan - J[hāAAei͔킸Ɏ삵܂傤B[
    J $9000 ŏoĂ@Ɠ炢ǂx܂B
   
 E }CNg - X oh̃hbv[[_W[𔃂ĂāA
    ă[J̑MƊO̎MɎg܂BW[Ŝ
    Ethernet ̂悤ɓ삵AAUI |[gɂȂ܂A݂͈@
    ܂B
   
 E ir - ԊOgărfIM]LbgoĂƂ낪
    񂠂܂BKvɂȂ傫ȃtlYĂāA100m 
    Ŗ 4MHz ̑ш悪܂B
   
 E [U_CI[h - ŏɎƂ́Aɂ㕨ł
    B `elantec ܂܂̃hCołĂ܂Aɕϒ
    ̂͂ƂĂςłB Steve Carcia  He-Ne [Uɕϒ
    ƂɂĂ̘AڋLĂ܂A͍KvŁAd
    ꍇɊւ܂B
   
 

ǂI񂾂ɂĂAvgRƂ IrDA ĝ͑悢Ił
B́AꂪPʐM܂鏭ȂvgR̈
łB



5.5.2. ̕W (Bluetooth  IrDA)

u܂܂̐lAIrDA  Bluetooth ͍Kɋ邾낤ƍl
悤ɂȂĂABluetooth  IrDA u悤Ƃl͗͂
Ă܂B IrDA ͈ˑRƂĉi\ł͂邩ɏĂAWɐV
ɒǉꂽ AIR  VFIR @\ƁAIrDA ɐił
Ă̂Ċv܂v



5.6. IrDA lbg[N̗אl

Laptop-v^-PDA Sourceforge http://irda.sourceforge.net 
Drag-n-Drop ֘ÂƂĂBPDA  (IrOBEX g)A
уv^ (IrLPT g) hbOAhhbvŃt@C𑗂
悤ɂȂ܂B

ubWO/[eBO James ɂƁu[eBO˂u
bWOsƂ@܂B͊SɃ[UԂœ삵
AJ[lpb`͕KvƂ܂B

͂Q̕ȂĂ܂ (ŗǂ܂񂪁AI
_͂ɂĕςł傤)Bŏ̕ irdaipcfg ƂŁA
̂Ƃ܂B

1) ŏ́̕A"irdaipcfg ifeth ifirlan" Ƃăf[Ŏs܂B
 ifirlan  ARP pPbgĎAf[s̃}Vɂ
ďoꂽ̂ł͂Ȃ arp pPbg`FbN܂B arp pPbg
͎s̃}V irlan ̔Β[ IP AhX ( irlan R[h
Agratuitous arp v̌ʂ쐬܂) ܂݂܂B̃vO
͂gāAifirlan p ip AhXւ̃zXg[g쐬
Aifeth ɂ̃AhXɑ΂ proxy arp s悤tAifeth 
 gratuitous arp 𑗂܂B̓NCAg IP AhX /
var/run/host.ifirlan ɏ݂܂̂ŁALׂĂXNvgȒP
ɖɂ邱Ƃł܂By: gratuitous arp/proxy arp (rfc2002)
͒󂪂Ȃ悤ł̂ŁÂ܂܂ɂ܂B typo ͏CBz

2) Ԗڂ̕ "gratarp ifirlan" ƂĎs܂BX gratuitous
arp pCvōssɂȂ悤ł̂ŁAgratarp ̓f[
āANĂ邱ƂׂĂfo܂B

͈ȉ̂悤ɂĎgĂ܂ (g͂DȂ悤)B

̃zXg}V ([JlbgɌqĂ}V) ł́Airlanx ̓A
hX 10.192.0.1 Ńlbg}XN 255.255.255.255A܂u[hLXg
AhX 10.192.0.1 ƂāAirattach ɂ /etc/irda/network 
ifup XNvgŗグĂ܂B /etc/irda/network ł͎
irdaipcfg eth0 irlanx Ǝsă[eBOs܂B

/etc/irda/network 

"start")                                                               
    echo 1 >/proc/sys/net/ipv4/conf/all/forwarding                     
    ./ifup ifcfg-${device}                                             
    /sbin/irdaipcfg ${localnet} ${device}                              
    ;;                                                                 
"stop")                                                                
    host=`cat /var/run/host.${device}`                                 
    if [ .$host != . ]; then                                           
      /sbin/arp -d ${host} dev ${localnet}                             
      /sbin/route delete ${host} dev ${device}                         
    fi                                                                 
    ./ifdown ifcfg-${device}                                           
    /sbin/ifconfig ${device} down                                      
    ;;                                                                 

NCAgł́Airlan ʏ̃TulbgAhX 10.32.32.51 ƂA
Aʏ̃lbg}XNƂ͈قȂ 255.255.255.255 Őݒ肵Ă܂B
10.192.0.1 dev irlan zXgɂAftH[gQ[gEFC
10.192.0.1 dev irlan ɂÓI[eBOgĂ܂B /etc/irda/
network  gratarp sĂAƂ̒Ă telnet  ssh
̃ZbV͐؂܂B ftp://bullard.esc.cam.ac.uk/pub/irda
ɒuĂ܂v

IPv6 ̒mAIPv6 ɂ͋ߖTTJjYK肳Ă܂A
Linux/IrDA  IPv6 ŎgƂɊւ͎Ă܂B̘bɊ
c_ Subject "patch-2.2.7-ac1-irda4" ̃Xbhł܂̂ŁA
[OXgA[JCu𓖂Ă݂ĂB

dhcpcd  IrLAN ŎgƂ̕񍐂󂯂Ă܂BŐV DHCP \tgEF
Ag悤ɂĂB



5.7. Linux/IrDA  APM

Fons Botman ɂƁu Omnibook 2000CT  irtty Lɂ
܃nCol[VԂɂĂ (Fn-12 łāAC[WfB
XNɏA}V̓dSɐ؂)Adēx IrDA 
܂BOmnibook  irdadump 𓮂Ă݂ƁA}V̓EBhE{
bNX󂯂fBXJot[ɉ悤ƂĂ悤łA
windows PC ͕ԓ󂯎܂BŒP irattach ؂āAirtty
ƃVA폜Ǎ irattach ĎsƁA܂n߂܂B
͑ linux bvgbvłNĂł傤? VAfoC
XhCo̖Ȃ̂?vPedro Figueiredo ɂƁA̖
Fujitsu LifeBook 735DX łNĂ邻łB

Dag Brattli ɂԓłuۂ PPP gĂƂ (
AIrDA gĂȂƂ) ɂN邩mFĖႦ܂񂩁B̐
 APM @\̓VA|[gVbg_EĂ邽߁AhCoōċN
ɍēxĂȂ΂ȂȂ̂ł͂Ȃł傤B͎
̒mĂ͈͂ł PCMCIA hCöꕔł͐Ă܂
AVAhCol APM VXẽCxg󂯂ĂƂ͑S
Rv܂B

Ƃ킯ŁAȐpJ[lvWFNgAƂƂɂȂ܂B
irport (Ƒ FIR hCo)  APM T|[g邱Ƃn߂̂
Ԃ₳ł傤BɁAKvȂVAhCoɃpb`܂
Bł܂A߂̂{ɂ PCMCIA TuVXe
ǂ񌹂ɂȂƎv܂v



5.8. \eXg

netperf ͗lXȎނ̃lbg[N\𑪒肷̂Ɏgx`}[N
ŁAUnix hC\PbgABSD \Pbgp TCP  UDP ɑΉĂ
܂B̃vO͒P̃X[vbgƁAn_I_܂ł̒x
eXgł܂B http://www.netperf.org/netperf/NetperfPage.html 

Pierre Beyssac  bing  ICMP ECHO_REQUEST pPbggÃ
N[ł̉ԂlXȃpPbgTCYpČv邱ƂŁAΈꃊ
Ñoh𑪒肵܂B



5.9. IrDA vgR

5.9.1. IrDA X^bN

 

Figure 5-1. IrDA X^bN

IrDA X^bN

IrDA X^bN

 



5.9.2. \ IrDA vgR̎

̍̓e Lichen Wang 񂩂璸܂B

vgRQ
   
    IrLAPAIrLMP  TinyTP ݂͌ȂɂȂĂĂ܂BAX
    ̎ɂẮA܂̖͎cĂ܂B
   
    IrCOMM ͍LgĂ܂AMicrosoft ͂T|[gȂƖ
    ĂAIrSocket ݂̂pĂ܂B
   
    IrObexAIrMC  IrTran-P Ȃǂ͗lXȃfoCXŎgĂ܂APC
    ̃T|[g͓ꂽ̂ł͂ȂAʂ̃P[XΉ̂̂łB
    ܂A肾炯AƂƂ΂΂łB
   
V IrDA vgR̊J
   
    AIR ͎ IBM ̐ĂKiłBEʐMpxƒʐM
    (10m?) ł܂AʐMx͒xȂ܂B܂Åɒx
    ȂĂ܂Ă`lAɎĎg@\Ă
    B́A̋Kĩ[Uɑ΂鉶b͂ƂĂȂƌĂ܂B
    AIR ɔn[hEFA̕ύX\tgEFA̕ύX傫Ȃ̂łB
     AIR gisɂłĂƂĂÂ悤Ȑi݂
    ܂łɂ͂ՂƑ҂邱ƂɂȂƎv܂B
   
    IrBUS ̓V[vĂ̂łB̓[gRg[
    AԊOL[{[hȂǂΏۂƂ̂ŁAf[^ʐMł͂
    BV[v̈Ӑ}ʂɂȂ΁A炭 IrBUS ̓Zbggbv{bN
    X web-tv ȂǂŎg邱ƂɂȂł傤B̂悤ȃfoCX
    yՊE_𒴂_ŁAꕔ PC ł̎̃foCXR
    g[邽߂ IrBUS Ă̂ł͂ȂƎvĂ܂
    B
   
    Ō VFIR łB̗_͍f[^]x (16 Mbps) łB
    AIR  IrBUS Ƃ͈ႢAVFIR ɔ\tgEFA̕ύX͂Ȃ
    ̂łBύX_͎Ƀn[hEFAłB
   
܂Ƃ
   
    v񂷂ƁAV IrDA vgR҂āA܂ő҂Kv
    ͎v܂B݂ IrDA ́ACXg[eՂŎ茘A
    ̐̒̐[łB
   


5.10. mĂoO

oOAIrDA [OXgɃoO񍐂𑗂ĂB
ɂ́Admesg ̏óALinux ̃o[WƃfBXgr[VAg
n[hEFȀ܂߂ĂB낵˂܂!

΂ IrCOMM ͐ڑɎs܂BɁÃfoCXfBXJo
ɓƋNՂ悤łBfBXJóA echo 0 >/proc/sys/net/irda/
discovery ŋ֎~邱Ƃł܂B

CR (A)  IrCOMM gē Linux }VԂ̈ŁA cat
file >/dev/ircomm0A cat /dev/ircomm0 ƂĂ]邱Ƃł
܂B͊ȓNALinux }Vt[Y܂B
pc87108 foCXhCoW[ł͂ȂJ[lgݍ݂ɂƃJ
[lu[gɃNbV܂Bʂ̉ƂẮAhCo
W[ƂăRpCĂB

IrOBEX ł́AMɃf[^̈ꕔ邱Ƃ܂B̃oO͂
炭 IrOBEX ̃[UԑŋNĂƎv܂B



5.11. FAQ

 

 E irport  irtty: irport ͎gƂ܂BƂ̂́Airtty
    ōĂȂ߂łBAȂI͎gĂ჌xhCo
    ̎ނɂ͈ˑȂ͂łB͍̂Ƃ irttyAnec-ircc 
    irda-usb ܂gĂ܂ (̃n[hEFAł́Ał)B
   
 E Q1 - : |[gƂ荞݂Ƃb͑SR܂Bǂ
    n߂炢ł傤B
   
 E : ̈n[hEFAݒ
   
     1. ܂An[hEFA̎dl𒲂ׂ܂BȂx_
        T|[gy[W𓖂AT|[gzbgCɓdbĕ
        ܂B̑̕O̕ɂn[hEFAT[xCŏ
        邱Ƃł邩܂B
       
     2. ŐV BIOS gBʏx_̃T|[gy[WɒuĂ܂
        B
       
     3. "setserial /dev/ttyS? -g -a | egrep 16550A" sĂ݂B\
        ꂽfoCX̂ǂꂩAĂ IrDA |[głB
        Ԗڂł邱ƂłA͕ۏ؂̌ł͂܂B
       
     4. : UART (񓯊VARg[B\IȂ̂͏L
        16550A) ̂悤ɂ݂̂AIɂ IrDA Rg[ł
        B HP Omnibook 800 ł́Aۂ IC  VLSI Ђ VL82C147
        PCI-IrDA Rg[łB̃Rg[͑x 115,200bps 
        ł UART ̂悤ɐU镑܂BAAƂĐݒ
        ̂ɓƂ܂B
       
    ̓: J[lɃn[hEFA^
   
     5. cat /proc/ioports ƂĂǂ̃|[gݎgĂ邩܂
        B
       
     6. cat /proc/interrupts ƂāAǂ̊荞݂ݎgĂ̂
        ܂B
       
     7. |[gƊ荞݂ IR foCXŎg悤ɂ܂BႦ΁A
        PCMCIA T[rX~A/etc/sysconfig/pcmcia  PCIC_OPTS
        ="irq_list=3,4,5,7,9,10,12,14,15" Ƃs܂߂܂B
       
     8. ܂ŕȂA荞݂ƃ|[gǂꂩ𒲂ׂ܂
        Bɂ setserial /dev/ttySx irq M port 0xNNNN ƂăJ[l
        ɋĂ݂܂B M  NNNN ɕ̉\ȂAS
        Ă݂܂ (: Serial-HOWTO ɋLڂ̂ƂA荞 0, 1, 6,
        8, 13, 14 ͔̂͂Ă)By: PC-AT A[LeN
        `ł́A0,1,6,8,13 ͑S܂foCXɌŒIɊ蓖Ă
        Ă܂B14  IDE gĂȂȂg\LB
        ɉāAIDE RAID J[hRg[gĂȂA
        ꂪgĂ̂ĂBz
       
     9. ܂ȂÂƂ̃p[^҂܂őĂ
        BĂ̂͐ԊOn[hEFAT[xBɊ܂߂
        Ǝv܂B
       
    10. K^F܂
       
    IR VA|[g setserial R}hgĒKv
    傤 (Ⴆ΁A setserial /dev/ttyS0 spd_vhi (x 115200 bps )
    Ȃ)B
   
 E Q3 - : tcsetattr read/write error ƂbZ[W /var/log/
    messages ɏoł 
   
 E :  /dev/ttyS* ̑IԈĂ邩A荞݂|[g̐
    肪Ă܂B
   
 E Q4 - : ׂĂ̐ݒ͐ŁA𗠕tÓȃbZ[W
    ԂĂ܂BȂ̂ɓ܂B
   
 E : foCX 0.5m (1.5 tB[g) ȓɒuĂBɐԊO
    |[ggĂAvP[V肵ȂׂĂ
    B̃foCXvgRAႦ IrOBEX  IrCOMM g
    Ă邩mFĂB
   
 E Q7 - Ho Chin Keong ̎uQ̃bvgbvԂŒʐMŝ
    ÂQԂ LAN [g̐ݒsȊO̕@͂܂?v
   
 E Dag Brattli ɂ񓚁uƂȂƂ܂ˁBIrDA W
     IrCOMM gΓ̃bvgbvԂ̃VAP[uڑG
    ~[gł܂Bg΁AVA|[gɏꂽAv
    P[V (^[~iAPPPA slip Ȃ) ͎g܂BAA̋@
    \͂܂ Linux/IrDA ɂ͎Ă܂BLinux/IrDA ŃT|[g
     IrLPT (v^) ́Aۂɂ IrCOMM ̃TuZbgłA@
    \̈ꕔ͓Ǝv܂v
   
 E Q8 - Ho Chin Keong ̎uԊOpX 10 bȏӂ
    ƁAʐMĊJł܂B̏ꍇAԊOʐMĊJɂ
    irattach EđŜċNĂKv܂BAAӂ
    鎞Ԃ 10 bȓȂڑ͈ێꂽ܂܂łB͎dlA
    ƂoOȂł傤? ̎Ԃ 10 bȏA܂͖Ԃ܂ŐL
    ΂@͂ł傤?
   
 E Thomas Davis ɂ񓚁u IrLAP/IrLMP R[h̃vC}
    ̃oÔ悤łBX^bNtɒH reset/disconnect ʒm
    ĂȂ悤łˁB̂Ƃ́Av^ƒʐM悤ƂĂ
    AnhVF[NĂۂɃfBXRlNg⊄荞݂s
    ANG[h IrLPT ł܂邱ƂŋCƎv܂ (݂́A
    IrLAN ɋN܂)B
   
 E Q11 - IrDA  BSD Ŏĝł傤?
   
 E : ̂Ƃ Linux/IrDA B̓\ GPL \[XłBy
    : BSD CZXȃ\[X͂ȂAƂƂ܂ނƎvBz
   
 E Q12 - Rui Oliveira ̎uPalm III  Actisys 220L A_v^
    Linux }VԂŁAʐM܂܂B}U[{[hA_v
    ^ ([J[܂񂪁AActisys 210L Ɏ̂Ǝv܂)
    ł́Apilot c[ (pilot-xfer) ԊOA_v^̂ȂĂ
     /dev/ttyS1 ɌASIR [h IrLink gĂ Palm
    III  Linux }VԂ̒ʐMłĂ܂BVA - IrDA A
    _v^ Actisys 220L oRŃVA|[gsƂƁA
    ܂B́AIrDA A_v^t̃VA|[gɒPɃf[^
    𑗂荞ނƁAۂɂ͉NĂ̂AƂƂłv
   
 E Lichen Wang ɂ铚un[hEFAIɂ́AIrDA SIR ł̓VA
    pϊAGR[_EfR[_AɃgV[oKvł
    B COM |[ghCuĂ UART ͂ǂ PC łVAp
    ϊn[hEFAɑ܂Bꕔ PC ł̓GR[_EfR[_
    ĂABIOS ŗLƖ̑Ił܂BƎw肵Ă
    ɂ́ACOM |[g͐̂Ȃ COM |[gƂĎg܂BGR[_
    EfR[_LƂĂƂɂ́Aʏ COM |[g͎gȂȂ
    A IrDA |[gg悤ɂȂ܂B Actisys IR-210
     SIR gV[oɑ̂ŁAɏ悤 IrDA GR[_
    EfR[_t UART  PC ŁAGR[_EfR[_Lɂ
    ԂŎgƂł܂B̃n[hEFA\ł́AWindows 
    ̃ZbgAbvvOɁA PC  "ԊOfoCX"  "bv
    gbvƃfXNgbvԊO|[g" ĂAƎw肵
    Kv܂Bɑ΂āAActisys IR-220 ̓GR[_EfR
    [_ƃgV[o̗܂܂Ă܂B͕ʂ UART Ƒg
    킹Ďg悤݌vꂽ̂łBAPC  UART ɂGR[_
    EfR[_gݍ܂ĂꍇABIOS 炻𖳌ɂȂ΂
    ܂B̃n[hEFA\ł́A Windows ̃ZbgAbv
    vOɂ́A"ACTiSTS" Ђ "ACT-IR220L Infrared Wireless
    Interface" ĂƎw肵ĂKv܂BƂ킯ŁA
    ̓łBVA|[gɃf[^𓊂̂ɉāAUART ƃG
    R[_EfR[_ɁAgpf[^[g^Kv܂B
    ܂GR[_EfR[_ĂꍇAUART Ƀf[^[g
    ^ۂɁAGR[_EfR[_̐ݒsKv܂B
    UART ƃGR[_EfR[_ƗɂȂĂꍇAɃf[^[
    g𐳂ݒ肷Kv܂Bv
   
 E Q13 - ڑsۂɁAႦ Telnet gꍇAlogin vvg
    oĂ܂ŐMقǎԂłA͉?
   
 E Renaud BalduraADag Brattli  Hee Thong ɂ񓚁u DNS
    ݒ̖łB]oAĂRlNV IP AhX
    t悤Ƃă^CAEgĂ邽߂łBP /etc/
    resolv.conf ̖OύXđ̂̂ɖʓ|悤ɂ邩A
    P /etc/hosts ɂȂ (Ir) plbg[ÑANZX}V
    ÓIoCfBOƂė^邱ƂŁADNS 邱Ƃ
    ł܂B̃}VvCx[g̃eXgɂȂA/etc/
    host.conf  "order hosts, bind" ƂsĂBɂ
    āADNS ̑O /etc/hosts t@C悤ɂȂ܂B
    ̃}VŁAQ̃}V IP ƃzXg𔽉f悤 /etc/hosts
    XV悤ɂĂBy: host.conf ł͂Ȃ /etc/
    nsswitch.conf ̕CfBXgr[VBYt@
    C man y[WA HOWTO QƁBz
   
 E Q14 - David LaPorte ̎uToshiba Tecra 740cdt  IrDA |[g
    𓮂悤ɂl͂܂񂩁Bǂތł́A IRQ 11 ŁA
    ttyS2 Ɍ͂łBƁAcOȂ PCMCIA fĂ
    Aꂪ ttyS2 Ă܂ĂAPCMCIA Rg[ IRQ 11
    Ă܂Ă܂BǂȂ܂?v
   
 E Dag Brattli ɂ񓚁u܂}V Win95 cĂȂAf
    oCX}l[WN IrDA |[g PnP ZbgAbvύX
    (ɎgĂƂł͂ȂƂɈڂ) BႦ ttyS1
    (Win95 ) ړ PCMCIA J[hgƂĂ鑤ɈڂA
    ttyS2 p ttyS1 ̐ݒgΗǂł傤B
   
    dagbnb ~/linux/test/ > cat /etc/sysconfig/pcmcia            
    PCMCIA=yes                                                  
    PCIC=i82365                                                 
    PCIC_OPTS="irq_list=7,9,10"                                 
    CORE_OPTS=                                                  
   
    PCMCIA Rg[ IRQ 11 ړƂmFĂB
    AWin95  IrDA |[gLɂȂĂ邱ƂmFĂ
    BWݒł IrDA |[g͖ɂȂĂ܂̂ŁB
   
 

II. ԊO[gRg[

Table of Contents
6. ͂߂
7. Linux Infrared Remote Control (Linux ԊO[gRg[) -
    LIRC
8. Lego }ChXg[
9. VAԊORg[
10. COREL Netwinder PC p̐ԊOc[
11. ir
12. irmctl
13. IRManager
14. irXxD
15. gmd
16. ԊO[gRg[ IrDA



Chapter 6. ͂߂

ԊOg[gRg[ Linux/IrDA vWFNg̑Ώۂł
܂񂪁A HOWTO ɂ "Linux ƐԊO" ̘bLJo[邽
߂Ɋ܂߂Ă܂B̖ɎgłvWFNgm
Ă܂BŐV̏́A MobiliX <http://mobilix.org> ɒuĂ܂
B 



Chapter 7. Linux Infrared Remote Control (Linux ԊO[gRg
[) - LIRC

LIRC ͍łyĂԊO[gRg[ɐԊO𑗎󂷂邽
̃pbP[WłB LIRC ɂ̓VA|[gɐڑꂽn[hEFÂ
߂̃foCXhCoƁÃfoCXhCopĐԊOMME
ǂёM邽߂̃f[AԊOM}EX̓ɕϊ}
EXf[Aу[gRg[ŃRs[^𑀍삷邽߂
̃[UvO܂܂Ă܂BԊOn[hEFA͎삷
ƂAlXȎs̕ip邱Ƃł܂Bp LIRC ɂ
ĂĂ܂u\tgŁAwǂꂾŊȂ̂Ɏv܂B
AÃ\tgT|[gĂn[hEFA͎sɖwǏoĂ
 (邢͓̉Hn_tōKv܂B͕ʂ
lɂ͕~ł傤)B FastIR hCoɉƓdi̐ԊOT|[g
邩AȂ炩̋ API (Ⴆ raw IrSocket Ƃ ioctl
Ƃ) ł΁ALIRC ͂ƕyƎv܂v http://www.lirc.org



Chapter 8. Lego }ChXg[

Luis Villa ɂ Lego Mindstorm with Linux Mini-HOWTO <http://
www.linuxdoc.org> ̈płumȂ̂߂ɏ܂ALego
 Mindstorm LbǵA{bgHw̃LbgŁALego O[v 200
US hŔĂ܂BLbg̒ǵA Lego ubNƁA
RCX Ƃ傫ȃubN (ɂ CPU tfBXvCƁA
RlN^tĂ܂) ƁA̃[^ƁAOEƂ̌Mp̌ZT
A̃^b`ZTłv  

uRCX Ƃ̒ʐḾA}ṼVA|[gɂȂ IR tower oR
܂B܂AVA|[gȂ}Vł̓A_v^𔃂Ȃ
RCX g܂B܂ꍇɂẮAIRQ VA|[g̋̂
AVA|[gƓȂƂ܂B́AɃf
/dev/ttyS0 gĂꍇNłv



Chapter 9. VAԊORg[

͒PňȃfoCXŁAǂȃVA|[gɂqAԊO
[gRg[@\T̃foCX𐧌ł܂Bŏ̓n
_tȂ̃ubh{[hŐ݌vꂽ̂ŁAŏIIɂ PC p̃{[
hɂȂĂ܂B̃pbP[W http://www.armory.com/~spcecdt/
remote/remote.html ĂB



Chapter 10. COREL Netwinder PC p̐ԊOc[

Ryan Shillington 񂩂 COREL Netwinder ԊOoRŐ䂷邽߂
c[ɂĊ񂹂ĖĂ܂BႦ

uCorel Palm Administrator ̃T[õf[łA𓮂ɂ
ir-simple CXg[AオēĂKv܂B
g IP AhXAQ[gEFCAhXAeth1 ̐ݒȂǂ̃`FbN
ύXs܂B܂AȒPȃR}h̎sAx⃁╉ׂ̏
Ԃ̃`FbN\łv

uCorel Palm Administrator ̃NCAg̕ł́AȒPȃR}h̎
sƁAx⃁╉ׂ̏Ԃ̃`FbNȂǂ\łv

uƂĂ{IȐԊOfoCXhCołB IrDA T|[g
炸AM̂Ȃ]T|[gĂ܂B́A[gR
g[p̐M (ƃL[{[hȂ) ɓ̂Ǝv܂B͑S
RāAf[^ubN蓦肵܂Bv

c[ http://www.netwinder.org/~ryansh/ ɂ܂B



Chapter 11. ir

ir ́AChris Dodge  RedRat 2 ԊORg[pC^[tF[X
vOŁAƓdiƂ̊ԂŐԊOʐMs߂̂̂łBΏۂƂ
̂́ATVArfIfbLAP[uerZbggbv{bNXXeI
ȂǂłB̃vO͊{I Perl ̋@\gďĂ
AOpbP[WKvƂ܂B̂߁ÃvO Perl ƃV
AʐMT|[gǂȃvbgz[ł삷͂łB
̃vO̓R}hsAcron Ae-mail nh
(alias oR) gAɂ cgi XNvgƂāADȃR[hŃtH
[邱Ƃł܂B}N@\̂ŁA̃R}
hňA̐ԊOM𑗂邱Ƃł܂B X-10  IR543 gāAX-10
foCX𐧌䂷邱Ƃ\łBWeb y[W http://
kramer.ne.mediaone.net/ir/ łB



Chapter 12. irmctl

irmctl ͂D IrDA ݊̐ԊOV[o𐧌䂷邽߂̃[eB
eBf[łB_ł́Airman (libirman oR) ̂݃T|[g
Ă܂BTCg http://irmctl.sourceforge.net/ łB



Chapter 13. IRManager

IRManager <http://jaqr.student.utwente.nl/releases/irmanager/>  IRMan
ԊOV[o̍xȗp̂߂ Linux f[łB̃f[͐
OM () p IRMan AvP[VɒpÃXN
vgAvP[VƑgݍ킹ĎgƂł܂B܂AxȐ
IvVɂ}bsOVXeĂAȂ̃Rs[^
[gŎgۂ́Aō̏_Ǝg₷˔
Ă܂B



Chapter 14. irXxD

irXxD ̓[gRg[R[h𑗎󂷂邽߂̃CułBLinux
J[l 2.0  2.2  IR M𑗎󂷂邽߂̃W[܂܂Ă
AȊO̗lX OS ɂΉĂ܂BURL ͈ȉłB http://
home.iae.nl/users/leonvs/projects/index.html#irxxd



Chapter 15. gmd

ũ\tgEFA RedRat2  A/V @탉bNeՂɑł悤
̂łB͎ DVD/CD/rfI/TV  ReplayTV 𑀍삷̂Ɏg
Ă܂B܂AReplayTV ̑ȒPɂ邽߂̒ǉ̃c[
܂BႦ΃`lZN^Agł̃T[`[eBeBȂǂ
BEFuTCg http://www.slip.net/~gmd/RedRat/index.html łBv 



Chapter 16. ԊO[gRg[ IrDA

܂łɏqׂĂ̂Q̃vWFNgł́A萻̃hOԊO
RpɍĂ܂BhCc ELEKTOR  97/5  p. 28 ɂA
VA IrDA hO삷邽߂̐܂BNÂQ
ނ̃hOɂ܂Ƃ߂Ȃ̂ł傤ˁB

ԊO[gRg[ IrDA Ƃ̊֘AɂāALinux/IrDA [
OXgł̋c_班Ă܂Bȉ̈ṕAҏWĒZ
Ă܂B

Ryan Shillington ɂƁu[gRg[̐ԊO@\
ASK-IR ́AFIRAMIR  SIR Ƃ͂ԂقȂĂ܂v

u[gRg[̐ԊO@\ ASK-IR ́AԊOƂĂ
ᑬŁAႢgŎgĂ܂BAB\͂ƒȂ
܂B쑬x 2400 baud xłB

SIR ͂ƍŁA[gRg[Ƃ͈Đȏ̃f[^
󂯓nKvŁAł̒ʐMsƂӐ}Ă܂B

MIR ͂ (͂ZȂ܂)AXs[h 1.15Mbps ɂ
A FIR  (foCXwǂ悤ɂĒuKv܂)
4Mbps łBʐM\́Af[^𑗂Xs[hɔႵ܂B

̓[gRg[̐ԊOp̃hCoĂ܂A
ŒӂĂ̂́AȂ̐ԊOő삵ΏۂT|[g
KvAƂƂłB NECARC-5  RC-0 vgR (ł
̂̂ł) ȂǂT|[gĂ邩ĂB

SIR ̓[gRg[M̎Mɂg܂B{[[gK؂Ȓ
lɂ΁Af[^Ă܂BAAoÃf[^͐
܂B͐ŉ͂Ă炸ǍʂƂă`FbN
ŤvZ␔ɂ`FbNsƂł܂B

[gRg[̃f[^ (SIR ) 悤g
܂B܂ASIR ͉xɂă[gRg[̃f[^Ⴄ
lƂĎ荞ނƂ񍐂󂯂Ă܂BAAɂ͂̂悤Ȍo
܂v

Lichen Wang 񂪂ɓĂ܂uwǂ̃bvgbvɓڂĂ
A ASKIR ́A[gRg[̂߂̂̂ł͂܂B
ASKIR  Sharp Wizard  Zaurus PDAAy Sharp ̈ꕔ̃m[g PC 
̂̂łBSharp ͂̎dl IrDA Ki肳肸ƑOɍ쐬
ĂA݂ł]@Ƃ̌݊̂߂ɓڂĂ܂B܂ Apple 
Newton x͂̋@\Ă܂B

ȒPɂāAASKIR  9.6 kbps (19.2  38.4 Kbps \ł) ̔񓯊
f[^tH[}bgA8 rbgf[^A1 XgbvrbgApeBp
Ă܂BX^[grbgƁAf[^/peB '0' rbg 500KHz
̐ԊO`g (DASK g) ƂđM܂BXgbvrbgƃf[
^/peB '1' rbǵAԊOMsȂƂœ`B܂
B

܂ł̐ŕƂA͑S݂̐ԊO[gRg[
Ƃ͔݊łB... () ...

Ă܂BSIR n[hEFAgĎMłȂMs܂B
A炩̐͂܂B

wǂ IR [gRg[ 38KHz ggĂ܂B38 ̎O
{ 114 ŁA 115.2 ɂȂ߂lłBƂ킯ŁAUART 
115.2 Kbps œ삷悤ݒ肵A܂ 7 f[^rbgApeBȂA1
Xgbvrbgɐݒ肵܂B38 KHz ̕g̎OTCŃAf[^
0x5B 𑗎󂷂邱ƂɂȂ܂B

g 38KHz łȂ΂ȂȂƂɉāAɂ̕I
񂪂܂B SIR V[óAړIɐ݌vĂ킯
͂Ȃ߁A38KHz ł͂܂芴xǂ܂BSIR gX~b^
ƒႢf[eBTCNz肵ĂAgƂċM
M邱Ƃ͂ł܂B

IR ŔÃp^[ŕgIIt邱ƂŐM
Ă܂Bgł悤ɂȂ킯łAc
̓^C~OłB

MƂẮA0x5B ̘AM񕛔g̃g[o[XgƂđ
̂Aăo[Xg̊Ԃ̖MԂǂꂾƂKv̂
mKv܂B

MƂẮA0x5B ̃f[^AĎ󂯎AAo
CgԂ̊ԊuǂꂾmKv܂B... () ...

IrDA NԋƁASIR/MIR/FIR Ƃ̊֌W̎̌óARyan ̌
ĂeƂ͑قȂ܂B... () ...

SIRAMIR y FIR Ƃ 0  100cm ̋ŎpIɓ͂łBA

(a) ꕔ̃foCX͒ʐMɖ肪o܂B

łAQ̒ʐMΏۂ̃foCX 50cm ȏ㗣ȂłB
d͂̃foCXAႦ΃|PbgxgѓdbȂǂ͂ƒZ
ĂB́Â悤ȃfoCX MIR  FIR ł͂Ȃ SIR g
ĂƂɊւ炸AłB

(b) ꕔ̃foCX͒ZʐMɖ肪o܂B

Q̃foCX́AȂƂZ`͗ĂB̃foCX
܂ɋ߂ÂƁA肪o邱Ƃ܂B

NsȂƂɂQ̃foCX߂Â΂ƌ̂́AoI
ɔ[̂łBA߂Â̂͂͂_AƂ̂͒
ɔ܂B߂ÂƂɖ肪N闝ŔA100cm ̎ɔ 1cm ł
A̋ 10,000 {ɂȂ邽߂łB0.5cm ł 40,000 {XłB
NԊOV[o[J́A̍L_Ci~bNWւ̑Ή
NĂ̂łB 10W ̓d̉ŕǂ̂͒NłJ
Aꂪ 100,000W ƂǂȋCɂȂ邩zĂ݂ĂB

IrDA ̕C IR [gRg[ŎgĂ DASK ϒƂ
S݊܂B]āAFIR ƃ[gRg[œ
HgƂ͂ł܂BAAwǂ FIR Rg[`bv̓[g
Rg[T|[g邽߂̑̒ǉHĂ܂B National
SemiconductorASMC y Winbond (ł͈ꕔ̂ݖグ܂) ͂
Ă̂悤ȍ I/O `bvoĂ܂B

FIR p IR gX~b^ƃ[gRg[͂ƂĂ悭Ă܂
B͕W FIR gX~b^gĂ݂܂A[gRg[
ƂĂ 10m ܂Ŏg܂B]āA[gRg[pɐ݌vꂽ
gX~b^Ɠ悤ɗǍDɓ삵܂B

FIR p IR V[oɂĂ͑قȂ܂BFIR V[o̓[gR
g[̐MMł܂A̋ 1m ܂łłB[g
Rg[pɐ݌vꂽV[o͒ʏ 10m ͓͂܂B

 National Semiconductor А I/O `bv𓋍ڂĂāAFIR ƃ
[gRg[̗T|[gĂ ISA oXJ[hĂ܂B
܂AFIR ƃ[gRg[̗̃V[o (ė[hp̃g
X~b^)  IR hOĂ܂Bǧo DOS 
̂ (܂ Linux 𑖂点Ă͂܂) łAN̂͂
?v

Benny Amorsen ɂƁu ASKIR T|[gĂ炵bvg
bv@Ă܂BԊO|[g̃[h BIOS  ASKIR ɐ؂ς
܂BBIOS Ń[h؂ς邽߂Ƀu[gĂ̂ł͖wǖɗ
܂̂ŁAN쎞ɐ؂ς@Kvł傤
v

Dag Brattli ɂƁu IrDA ݊̃[gRg[
IrControl (ȑO IrBus ƌĂ΂Ă) gƂł͂łB
͍̂Ƃ IrControl W̃[gRg[͒mȂł
Aǂɂ͂ (̌ɂĒNm܂?)B܂A Linux/
IrDA site <http://www.irda.org> 畨wW̎dl (ɂ
IrControl ܂܂ĂƎv܂) ĂKvł傤B

ʏ IrDA (IrLAP g) ́A[gRg[ɂ͂܂K
܂B́Aʏ IrDA ̓RlNVw̓ARlNV
XړIł 9600bps ܂łT|[gĂȂ߂łB̂悤ɑ
x񂳂Ă̂́Aڂ̈Sւ̍l̂߂ƂĂ܂ (łACIR
o͂łǂ삷闝Rł͂킩܂)BɁA
bvgbv@Ԃ 4-5m ĒʐMłĂ̂Ƃ܂
(̏ԂōȒʐMłƂ͎v܂)B

قƂǂ IrDA `bvZbg CIR 삪\łAhCo CIR 
b悤ɂ̂ɊȒPłBp IrSocket 𒲂׎n߂
Ả CIR pPbg𑗎ł Ir(DA)  "raw" \PbgJ
悤ɂȂƑf炵łBS CIR AvP[V[UԂŎ
sł悤ɂȂ܂̂ŁB

̒mACorel  Netwinder 𐧌䂷邽߂ CIR gƂɋ
Ă悤łB http://www.slashdot.org/articles/98/12/05/
0916216.shtml  http://www.netwinder.org/~ryansh B

Hewlett-Packard Ђ "IrDA Data Link Design Guide" http://www.hp.com/go
/ir  p.21 BuHewlett-Packard Ђ IrDA gV[og IrDA
ȊO̐M𑗎󂷂邱Ƃ͉\łB̂悤Ȏ̏ڍׂɂẮAA
vP[Vm[g "Transceiver Performance with ASK and TV Remote
Signals" QlɂĂv

IR-MAN y[W http://www.usuarios.com/ib308564/irda.html 

uKȂƂɁA IrDA foCX TV pRŎgĂ
38KHz  ASK ϒƌ݊܂B́AIrDA foCX͂̂悤
ԊOMœłƌƂłBAAǂ|[^uRs
[^ TV R̐ԊOMłȂ̂A܂悤
B

fXNgbvRs[^̏ꍇA}U[{[h̎ނɂĂQ̑I}
܂Bʂ Pentium }U[{[h͐ԊOʐMT|[g I/O
`bvZbg𓋍ڂĂ܂B̏ꍇAԊOfoCXڑ邽
߂̐pRlN^܂B̑I}́ARs[^̃VA
|[g (RS-232) ɌqVA^CṽgV[ow邱Ƃł
BPC [gRg[́Âǂ IrDA foCXpꍇł
ƂeXgς݂łB

1) IRmate IR-210 VA|[gԊOA_v^ ... ̃foCXŔF
\ȃVA|[g̃f[^x 2400 bps łB̎̃A_v^ł
ʐMx͋ʂȂ̂ÃfŗL̓Ȃ͕̂܂B

Mf[^l̃Tvǂ̒xĂ邩Ă݂܂傤Bꕔ
ԊOR}h͖傫ωAFłB̏ꍇArɋ
elƂĂ傫Ƃ邱ƂőΏ܂AႤR}hƌF댯
傫Ȃ܂Bwǂǂ̏ꍇAœKȋel 20 łB

2) Actisys IR2000L  Asus P2B }U[{[hɂȂŎgĂ܂B(
) ̃|[gXs[hŗǍDɓ삵܂A4800 bps œKȂ悤
Bl̃^Cv̑̃A_v^̃Xs[hŗǂ̂悤łBƂȂ
f[^V[PX̃foCXŌĂ݂ƂA̃R̃{^
őSV[PXĂ悤ɌAʂ͑Sł܂
B

Asus IR IR-eye ͏Ɠ}U[{[hɐڑł܂BActisys foCX
lɗǍDɓ삵܂B

TV ̃R̓R}hŁAő 30 tB[g̋ᑬo[Xg
MƂđ܂B̂悤ȃRł͎gシ邽߁Aق
قǂ̎wԊO_CI[h (LED) gpĂ܂BIrDA
ɂR[hXڑł́AΈꂩoŃt@C]s܂A
̍ IrDA ł͒Zp̍o[XgMgAw̋ԊO
LED gpĂ܂B IrDA ʐMł͔rIӐ[̌킹K
v܂AQɎキ܂B̂߁A[gRg[
𑊎ɂĂƂɒł̓͊҂ȂłB

Alessio Massaro ɂƁuIrDA ̓er̃RƂ͘b܂񂪁A
VAC^[tF[XG~[g IrCOMM C͎Ă܂
B̑zł́ALIRC  IrDA œ悤ɂɂ́AP IrCOMM zV
AhCoǂݍނ悤ɂĂ (/dev/cua Ȃǂɑ΂悤)
}ṼhO+IrDA wb_ɃRĂΗǂ̂ł͂Ȃ
v

Dag Brattli ̕ԓ͂łuʂ̃VA|[ĝƂb
ĂƎvłA͏ȂƂ IrDA ̂Ƃē悤
ɍƂI͂܂łB͑SfoCXhColbg[N
foCXhCoɌĎĂA̍قƂAt[
wɂȂ悤Ă܂BfoCXhCo IrDA t[𑗎󂷂
̂ŁAɉ󂯓n܂B

ɁÂ݂Ƃ IrDA foCXŁA萶̏Ԃ̓ǂݏT|[g
邽߂ tty C^[tF[XȂ΂ȂȂƂvĂ܂
BłȂA IrCOMM ̂Ƃ͖YĂB̌ɂ͊֌W
B

̓foCXhCôɂ́A̓ǂݏ̃T|[g͊ɉĂ
B͈ꕔ̃hOŕKvɂȂ邽߂łv

III. t^

Table of Contents
A. Credits (ӎ)
B. ł̗
C. VAԊO|[gXjt@
   
    C.1. Gerd Knorr ɂXjt@
    C.2. sersniff
   
D. ԊOƖڂ̈Sɂ
E. 쌠AƐӁAW
   
    E.1. ƐӂƏW
    E.2. 쌠
    E.3. GNU Free Documentation License - GFDL
    E.4. {ɂ
   


Appendix A. Credits (ӎ)

y: Credits (ӎ)̍ Invariant Ɏw肳Ă̂ŁA󂵂܂
Bz

Thanks to:

     * The members of the Linux-IrDA mailing list.
     * The writers of the other HOWTOs which gave me many inspirations.
     * The developers of the SGML-Tools which provided some means to
   write a HOWTO.
     * Benny Amorsen
     * The Armadillo with the Mask 
     * Mathieu Arnold 
     * Fons Botman
     * Philip Blundell
     * Dag Brattli - Linux/IrDA core team
     * David Burley 
     * Andreas Butz
     * Edgardo Calabrese >
     * Andrew Chadwick
     * Ho Chin Keong
     * Claudiu Costin
     * Stefan Dahlke
     * Thomas Davis - Linux/IrDA core team
     * Richard Donkin
     * Ha Duong Minh
     * Ales Dryak
     * K-H. Eischer
     * Ove Ewerlid
     * Timo Felbinger
     * Tollef Fog Heen 
     * Christian Gennerat 
     * Gerhard Gonter 
     * Mike Groeneweg
     * Bjoern Hansson
     * Takahide Higuchi - Linux/IrDA core team
     * Jon Howell
     * Gerd Knorr
     * Arthur Tyde  and Bryan Abshier from
   Linuxcare Inc.
     * Joonas Lehtinen
     * Mark Lewis
     * Florian Lohoff 
     * Pawel Machek
     * James McKenzie
     * Alessio Massaro
     * Harald Milz
     * Bjoern Mork
     * Tang Ning
     * Rui Oliveira
     * Igor Pesando
     * Raj Rijhwani
     * Christian Rishoej
     * Wessel de Roode
     * Markus Schill
     * Ryan Shillington
     * Richard Titmuss
     * Jean Tourrilhes
     * Carlos Vidal
     * Lichen Wang
     * Guenther Wieser
     * Toni van de Wiel
     * Ralf Zabka
     * Christian Zoz

Sorry I didn't start to follow the credits when starting the HOWTO, so
probably I forgot somebody.

cOȂAHOWTO JnƂ炱̎ӎ̍쐬JnȂ
AYĂ邩Ǝv܂B



Appendix B. ł̗

 

 E v0.1 to v0.4a, 19 March 1998 to 4 August 1998, htgBLDP ɖ
    ^
   
 E v1.0, 14 August 1998, LDP փ[X
   
 E v1.1, 18 August 1998, Takahide Higuchi ɂ IrCOMM pb`
    ǋLBׂȏCB
   
 E v1.2, 24 August 1998, linux-irda-1998-08-20 XibvVbgփAb
    vf[gBFIR Ɖŗ̍ǉBׂCB
   
 E v1.3, 27 September 1998, CX^X̐̍AgѓdbAfB
    W^J LinuxԒʐMAŐV - CVSAߓd̊eǉBʓI
    ̍ύXBn[hEFAT[xCCBׂ̑CB
   
 E v1.4, 11 October 1998, IrCOMM T|[g̋LڂǁBhOڑ
    ύXB Palm III ̍CBׂ̑CB
   
 E v1.5, 12 October 1998, ׂCB
   
 E v1.6, 26 October 1998, IrManager ̍ǉBlinux-irda-1998-10-21
    XibvVbgɍXVBhOڑ̍CBׂ̑CB
   
 E v1.7, 1 November 1998, [gRg[̍ǉBhOڑ
    CBׂ̑CB
   
 E v2.0, 9 January 1999, Linux/IR J[l 2.1.131 ɓꂽ
    ɔقڑSʓIȏƍĕҏWBhOڑ̍ BIOS T|[
    g̏ǉBݒc[̍ CVS ̍폜B
   
 E v2.1, 13 January 1999, ׂCB
   
 E v2.2, 26 January 1999, vWFNg Linux/IR  Linux/IrDA 
    ύXBguV[g̏͂ɉMBm̃oO̍̏guV
    [g̏͂̌ɍĔzuB̃S~폜B
   
 E v2.3, 4 February 1999, Andreas Butz ɂڂ̈S̏͂ǉB
    Xy`FbNBJ[lp[^̏͂BAndreas Butz 
    ǉB̑CB
   
 E v2.4, 9 February 1999, pb`t@C̓Kp֘ȀύXB
   
 E v2.5, 12 March 1999; Linux/IrDA V URL ɁBBig Endian T|[g
    ͂ǉB irdaping, irdadump ̏͂ǉBuIrDA 𒴂 - ڑ
    L΂ɂ́v̏͒ǉBbvgbv̐ԊO|[gɂĂ̋L
    ̂͂̎蒼BFons Botman ɂ Windows ̏͂ւ̏񑽐
    BSMP ̏͒ǉBEricsson SH888 ̏ǉBÂȂ FAQ 
    Bׂ̑CB
   
 E v2.6, 6 April 1999, hbLOXe[V̏͒ǉBL[{[hRl
    NVƃVAP[ugڑ̍ǉBׂ̑CB
   
 E v2.7, 11 June 1999 ꂩ̕W (Bluetooth  IrDA) ̏͂JnB
    GUI ̏͂ CORBA ̒LǉBNokia Ђ̌gѓdbɊւ𑽏
    MBVAԊO|[gXjt@̕t^ǉBIrDA lbg[N
    T̐߂JnB Psion 5 ̏͂JnBt^ C JnBLIRC ɑMB
    ׂ̑CB
   
 E v2.8, 20 September 1999, LiRC [OXgǋLB<htmlurl ...
    > ^O <url ...> ɕύXBconf.modules ̃GgtH[}bg
    XBn[hEFAo (PCMCIA) ̍ǉBIrDA [OXg
    LB Linux-IrDA [OXg̃AhXύXB}`vCX
    ^X̐߂ɏMBւ URL ǉBt^ B  sersniff ̏
    ǉBRpCς݃pbP[W̐߂ǉBPalm III  Thinkpad
    600 ̐ڑ̏͂ǉBׂ̑CB
   
 E v2.9, 21 September 1999, v^ڑ̏͂̕ύXBXy`FbNB
    Siemens S25 Ƃ̐ڑɂĉMBׂ̑CB
   
 E v2.10, 2 November 1999, ׂCB
   
 E v2.11, 9 March 2000, 'irctl'  'IRManager' ԊORg[v
    Oւ̃NǉB̃x[X URL ύXBLinuxcare Inc. 
    Arthur Tyde  Bryan Abshier ɂ Linux  Windows CE 
    ̐ڑ̏͂ǉBIrDA-Java C^[tF[X̃NǉB Guenther
    Wieser ɂ铌ł̋@ IrDA ɂĂ HOWTO ւ̃Nǉ
    B Siemens S25 Ƃ̐ڑɊւǉ Timo Felbinger 璸
    Bgѓdbւ AT R}h̃NǉBR[h̏͒ǉBSH888
    dbc[ւ̃NǉB Lichen Wang ɂ IrDA vgR
    ̒ZT[xBǉBׂ̑CB
   
 E v3.0, 5 November 2000, tH[}bg DocBook ɕύXBCZX
    GNU Free Documentation License - GFDL ɕύXB薼 IR-HOWTO 
    Infrared-HOWTO ɕύXB URL XVB Linux/IrDA ւ̃N
    XVB
   
 E v3.1, 8 November 2000, NXVBDocBook 3.1 ɏB
   
 E v3.2, 21 March 2001, gȂȂ irmanager  /dev/irnine ւ
    yƌfoCXgɊւLڂ폜BJ[l 2.4.x ɔC
    BڍׂȍǂƃeXgBW[IvVƃkfڑɊւ
    ͒ǉB߂̏ƐBNXVB
   
 E v3.3, 22 April 2001, 2.4.3 hLg荞݁BgȂ
    ̂ւ̌y폜B̑CB
   
 



Appendix C. VAԊO|[gXjt@

C.1. Gerd Knorr ɂXjt@

̃vO Gerd Knorr 񂩂񋟂󂯂̂łBp
vgR̍ו邽 IrDA ʂčsʐM\邱Ƃ
܂ (\[X ttyS1 ͕KvɉĕύXĂ)B 

 

#include                                                               
#include                                                               
#include                                                               
#include                                                               
#include                                                               
#include                                                               
#include                                                               
#include                                                               
#include                                                               
#include                                                               
                                                                       
#define BUFSIZE 1024                                                   
                                                                       
int                                                                    
read_and_print(int fd, int sec, int usec)                              
{                                                                      
    int         rc,l,i;                                                
    char        buf[BUFSIZE+1];                                        
    fd_set      set;                                                   
    struct timeval  tv;                                                
                                                                       
    if (sec || usec) {                                                 
    FD_ZERO(&set);                                                     
    FD_SET(fd,&set);                                                   
    tv.tv_sec  = sec;                                                  
                                                                       
    tv.tv_usec = usec;                                                 
    if (0 == select(fd+1,&set,NULL,NULL,&tv))                          
        return -1;                                                     
    }                                                                  
                                                                       
    switch (rc = read(fd,buf,BUFSIZE)) {                               
    case 0:                                                            
    printf("EOF");                                                     
    exit(0);                                                           
    break;                                                             
    case -1:                                                           
    perror("read");                                                    
    exit(1);                                                           
    default:                                                           
    for (l = 0; l < rc; l+= 16) {                                      
        printf("%04x  ",l);                                            
        for (i = l; i < l+16; i++) {                                   
        if (i < rc)                                                    
            printf("%02x ",buf[i]);                                    
        else                                                           
            printf("-- ");                                             
        if ((i%4) == 3)                                                
            printf(" ");                                               
        }                                                              
        for (i = l; i < l+16; i++) {                                   
                                                                       
        if (i < rc)                                                    
            printf("%c",isalnum(buf[i]) ? buf[i] : '.');               
        }                                                              
        printf("\n");                                                  
    }                                                                  
    break;                                                             
    }                                                                  
    return rc;                                                         
}                                                                      
                                                                       
void                                                                   
setlines(int fd, int rts, int dtr)                                     
{                                                                      
    int lines = 0;                                                     
                                                                       
    if (rts) lines |= TIOCM_RTS;                                       
    if (dtr) lines |= TIOCM_DTR;                                       
                                                                       
    ioctl(fd,TIOCMSET,&lines);                                         
}                                                                      
                                                                       
int main(int argc, char *argv[])                                       
{                                                                      
    int         ser,i;                                                 
    struct termios      saved_attributes,tattr;                        
    struct winsize      win;                                           
    char        buf[16];                                               
                                                                       
    if (-1 == (ser = open("/dev/ttyS1",O_RDWR))) {                     
    perror("open /dev/ttyS1");                                         
    exit(1);                                                           
    }                                                                  
                                                                       
    /* Set the terminal mode */                                        
    tcgetattr (ser, &tattr);                                           
    cfmakeraw (&tattr);                                                
    cfsetospeed (&tattr,B9600);                                        
    cfsetispeed (&tattr,B9600);                                        
    tcsetattr (ser, 0, &tattr);                                        
                                                                       
    setlines(ser,0,0);                                                 
#if 0                                                                  
    tcsendbreak(ser,0);                                                
#endif                                                                 
                                                                       
    /* main loop */                                                    
    fprintf(stderr,"setup done\n");                                    
    while (-1 != read_and_print(ser,30,0)) {                           
    usleep(100000);                                                    
    }                                                                  
                                                                       
    return 0;                                                          
}                                                                      

 



C.2. sersniff

Jonathan McDowell ̏ sersniff <http://www.earth.li/
projectpurple/progs/sersniff.html>  2 ̃VA|[gԂgl
/ sniff ȒPȃvOłB̃vO Nokia 9000i gѓdb
@ Windows œ삷 Nokia  NServer \tgEFÅԂŎg
vgR͂c[Ƃč쐬ꂽ̂łB



Appendix D. ԊOƖڂ̈Sɂ

̐߂́ALinux/IrDA [OXgłƂ肳ꂽӌ܂Ƃ߂
łBwIɂ肵̂ł͂܂񂵁AƗǂ
⍪̂͂̕ HOWTO ɍv肢܂B

IrDA ̎dlł́AIrDA foCX̒ʐM͈͖͂ڂ̈Ŝ߂ 1m ɗ}
ĂƋLڂĂ܂BȊOɂA̐񂪉ۂĂ闝R
́Ad͂ IR ̍MȂǂ肻łB{IɐԊOڂɊ댯
̂́AԊOڂɌȂ߁Aῂ IR ʂ邽߂ɓE
Ȃ߂łB͎OŐӂɂȂ̂Ɠ󋵂łAO
ɔׂĐԊO͔g߁AԊǑ̃GlM[̊댯͎O
肸ƏȂ̂łB

EFuŌ邱ƂłB̖@IKƈwIȃAhoCX́AM
d̐ԊO˂Ɋւ̂ƁAIEC 825-1 (CENELEC EN60825-1) ̗n
菇Ɋւ̂łB̋LڂɂƁA炭 IrDA foCX̕
˂ԊO͋炭QȂƂ̂Ǝv܂B́AIR
LED ̏os[No ( 300mW) ͈wp̐ԊOMd̏oo͂
Ⴂ߂łB̂悤ȔMdł͖ڂ̕یዾt邱Ƃz
肳Ă܂̂ŁAႦ 1000 ̐ԊO LED ɔsƂ
߂ꍇɂ́AlɕیዾtKvł傤BԊỎe
͎ɔMłAȌꍇ̂悤ȐwIȉejł͂܂
BAAHewlett-Packard Ђ HP Omnibook 800 ̐ɂ IR LED 
ڌȂ悤ɂƂ̒A܂B

ŏqׂ悤ɂ̋c_ IR LED ƐԊOv̎dlɊւf[^
牼肵Ə펯ɊÂ̂ɉ߂܂B悢wIm
ɕt邱ƂłȂ΁AƂ肢܂
B



Appendix E. 쌠AƐӁAW

y: ̏͂͒쌠֌W̋Kł邽߁Ac܂Bz



E.1. ƐӂƏW

This is free documentation. It is distributed in the hope that it will
be useful, but without any warranty. The information in this document
is correct to the best of my knowledge, but there's a always a chance
I've made some mistakes, so don't follow everything too blindly,
especially if it seems wrong. Nothing here should have a detrimental
effect on your computer, but just in case I take no responsibility for
any damages incurred from the use of the information contained herein.

̓t[hLgłB͗̕Lpł邱Ƃ]Ĕzz
Ă͂܂Aۏ؂łB͎̗̏͂̋̕yԔ͈͂Őm
̂łAԈႢƂĂ\ɂ܂̂ŁAᔻɐM
܂ȂłBɊԈĂɎvӏɂ́BɏĂ
ełȂ̃Rs[^ɔQoƂ͎vĂ܂񂪁Aꉞ
ɏĂɂđQƂA͂̐ӔC𕉂Ȃ
Ƃ𖾋LĂ܂B

Though I hope trademarks will be superfluous sometimes (you may see
what I mean at Open Source Definition <http://www.opensource.org/
osd.html> ), I declare: If certain words are trademarks, the context
should make it clear to whom they belong. For example "MS Windows NT"
implies that "Windows NT" belongs to Microsoft (MS). "Mac" is a
trademark by Apple Computer. Many of the designations used by
manufacturers and sellers to distinguish their products are claimed as
trademarks. Where those designations appear in this book, and I was
aware of a trademark claim, the designations have been printed in caps
or initial caps. All trademarks belong to their respective owners.

W̋LڂsKvɂȂ邱Ƃ󋁂Ă͂܂A (ǂƂ 
Open Source Definition <http://www.opensource.org/osd.html> ɋLڂ
܂) ŁǍꂪWȂ΁Ae炻̌҂炩ƂȂ
悤ɂƂ錾Ă܂BႦ΁A"MS Windows NT"  "Windows
NT"  Microsoft(MS) ɑ鏤Wł邱Ƃ܂A"Mac"  Apple
Computer Inc. ̏WłB҂є̔҂iʂ邽߂ɕt
̂́ȀꍇWłB̂悤ȏi̕ɌꂽۂɁA
ꂪWłƋCĂꍇɂ́A啶Ȃ͐擪啶
gĂ܂BׂĂ̏ẂȀL҂ɑ܂B



E.2. 쌠

 For all chapters permission is granted to copy, distribute and/or
modify this document under the terms of the GNU Free Documentation
License, Version 1.1 or any later version published by the Free
Software Foundation; with the Invariant Sections being "Preface" and
"Credits", with the Front-Cover Texts being "Linux Infrared HOWTO", and
with the Back-Cover Texts being the section "About the Document and the
Author". A copy of the license is included in the section entitled "GNU
Free Documentation License".

{̂ǂ̏͂AzzѕύX GNU Free Documentation License
o[W 1.1 ȍ~̋Kɏ]A܂BGNU GNU Free
Documentation License  Free Software Foundation ɂ蔭sĂ
B{̕sϕ́uPrefacevƁuCreditsvłA\eLXg ??
Linux Infrared HOWTO?? ŁA\eLXg ??About the Document and
the Author?? łBCZX̎ʂ ??GNU Free Documentation License
?? Ɏ^Ă܂B



E.3. GNU Free Documentation License - GFDL

y: GFDL ͉pꂪ{ƂȂ邽߁A󂵂܂B GNU Project ̃y
[WBz

Version 1.1, March 2000

Copyright (C) 2000 Free Software Foundation, Inc. 59 Temple Place,
Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and
distribute verbatim copies of this license document, but changing it is
not allowed.



E.3.1. 0. PREAMBLE

The purpose of this License is to make a manual, textbook, or other
written document "free" in the sense of freedom: to assure everyone the
effective freedom to copy and redistribute it, with or without
modifying it, either commercially or noncommercially. Secondarily, this
License preserves for the author and publisher a way to get credit for
their work, while not being considered responsible for modifications
made by others.

This License is a kind of "copyleft", which means that derivative works
of the document must themselves be free in the same sense. It
complements the GNU General Public License, which is a copyleft license
designed for free software.

We have designed this License in order to use it for manuals for free
software, because free software needs free documentation: a free
program should come with manuals providing the same freedoms that the
software does. But this License is not limited to software manuals; it
can be used for any textual work, regardless of subject matter or
whether it is published as a printed book. We recommend this License
principally for works whose purpose is instruction or reference.



E.3.2. 1. APPLICABILITY AND DEFINITIONS

This License applies to any manual or other work that contains a notice
placed by the copyright holder saying it can be distributed under the
terms of this License. The "Document", below, refers to any such manual
or work. Any member of the public is a licensee, and is addressed as
"you".

A "Modified Version" of the Document means any work containing the
Document or a portion of it, either copied verbatim, or with
modifications and/or translated into another language.

A "Secondary Section" is a named appendix or a front-matter section of
the Document that deals exclusively with the relationship of the
publishers or authors of the Document to the Document's overall subject
(or to related matters) and contains nothing that could fall directly
within that overall subject. (For example, if the Document is in part a
textbook of mathematics, a Secondary Section may not explain any
mathematics.) The relationship could be a matter of historical
connection with the subject or with related matters, or of legal,
commercial, philosophical, ethical or political position regarding
them.

The "Invariant Sections" are certain Secondary Sections whose titles
are designated, as being those of Invariant Sections, in the notice
that says that the Document is released under this License.

The "Cover Texts" are certain short passages of text that are listed,
as Front-Cover Texts or Back-Cover Texts, in the notice that says that
the Document is released under this License.

A "Transparent" copy of the Document means a machine-readable copy,
represented in a format whose specification is available to the general
public, whose contents can be viewed and edited directly and
straightforwardly with generic text editors or (for images composed of
pixels) generic paint programs or (for drawings) some widely available
drawing editor, and that is suitable for input to text formatters or
for automatic translation to a variety of formats suitable for input to
text formatters. A copy made in an otherwise Transparent file format
whose markup has been designed to thwart or discourage subsequent
modification by readers is not Transparent. A copy that is not
"Transparent" is called "Opaque".

Examples of suitable formats for Transparent copies include plain ASCII
without markup, Texinfo input format, LaTeX input format, SGML or XML
using a publicly available DTD, and standard-conforming simple HTML
designed for human modification. Opaque formats include PostScript,
PDF, proprietary formats that can be read and edited only by
proprietary word processors, SGML or XML for which the DTD and/or
processing tools are not generally available, and the machine-generated
HTML produced by some word processors for output purposes only.

The "Title Page" means, for a printed book, the title page itself, plus
such following pages as are needed to hold, legibly, the material this
License requires to appear in the title page. For works in formats
which do not have any title page as such, "Title Page" means the text
near the most prominent appearance of the work's title, preceding the
beginning of the body of the text.



E.3.3. 2. VERBATIM COPYING

You may copy and distribute the Document in any medium, either
commercially or noncommercially, provided that this License, the
copyright notices, and the license notice saying this License applies
to the Document are reproduced in all copies, and that you add no other
conditions whatsoever to those of this License. You may not use
technical measures to obstruct or control the reading or further
copying of the copies you make or distribute. However, you may accept
compensation in exchange for copies. If you distribute a large enough
number of copies you must also follow the conditions in section 3.

You may also lend copies, under the same conditions stated above, and
you may publicly display copies.



E.3.4. 3. COPYING IN QUANTITY

If you publish printed copies of the Document numbering more than 100,
and the Document's license notice requires Cover Texts, you must
enclose the copies in covers that carry, clearly and legibly, all these
Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts
on the back cover. Both covers must also clearly and legibly identify
you as the publisher of these copies. The front cover must present the
full title with all words of the title equally prominent and visible.
You may add other material on the covers in addition. Copying with
changes limited to the covers, as long as they preserve the title of
the Document and satisfy these conditions, can be treated as verbatim
copying in other respects.

If the required texts for either cover are too voluminous to fit
legibly, you should put the first ones listed (as many as fit
reasonably) on the actual cover, and continue the rest onto adjacent
pages.

If you publish or distribute Opaque copies of the Document numbering
more than 100, you must either include a machine-readable Transparent
copy along with each Opaque copy, or state in or with each Opaque copy
a publicly-accessible computer-network location containing a complete
Transparent copy of the Document, free of added material, which the
general network-using public has access to download anonymously at no
charge using public-standard network protocols. If you use the latter
option, you must take reasonably prudent steps, when you begin
distribution of Opaque copies in quantity, to ensure that this
Transparent copy will remain thus accessible at the stated location
until at least one year after the last time you distribute an Opaque
copy (directly or through your agents or retailers) of that edition to
the public.

It is requested, but not required, that you contact the authors of the
Document well before redistributing any large number of copies, to give
them a chance to provide you with an updated version of the Document.



E.3.5. 4. MODIFICATIONS

You may copy and distribute a Modified Version of the Document under
the conditions of sections 2 and 3 above, provided that you release the
Modified Version under precisely this License, with the Modified
Version filling the role of the Document, thus licensing distribution
and modification of the Modified Version to whoever possesses a copy of
it. In addition, you must do these things in the Modified Version:

A. Use in the Title Page (and on the covers, if any) a title distinct
from that of the Document, and from those of previous versions (which
should, if there were any, be listed in the History section of the
Document). You may use the same title as a previous version if the
original publisher of that version gives permission.

B. List on the Title Page, as authors, one or more persons or entities
responsible for authorship of the modifications in the Modified
Version, together with at least five of the principal authors of the
Document (all of its principal authors, if it has less than five).

C. State on the Title page the name of the publisher of the Modified
Version, as the publisher.

D. Preserve all the copyright notices of the Document.

E. Add an appropriate copyright notice for your modifications adjacent
to the other copyright notices.

F. Include, immediately after the copyright notices, a license notice
giving the public permission to use the Modified Version under the
terms of this License, in the form shown in the Addendum below.

G. Preserve in that license notice the full lists of Invariant Sections
and required Cover Texts given in the Document's license notice.

H. Include an unaltered copy of this License.

I. Preserve the section entitled "History", and its title, and add to
it an item stating at least the title, year, new authors, and publisher
of the Modified Version as given on the Title Page. If there is no
section entitled "History" in the Document, create one stating the
title, year, authors, and publisher of the Document as given on its
Title Page, then add an item describing the Modified Version as stated
in the previous sentence.

J. Preserve the network location, if any, given in the Document for
public access to a Transparent copy of the Document, and likewise the
network locations given in the Document for previous versions it was
based on. These may be placed in the "History" section. You may omit a
network location for a work that was published at least four years
before the Document itself, or if the original publisher of the version
it refers to gives permission.

K. In any section entitled "Acknowledgements" or "Dedications",
preserve the section's title, and preserve in the section all the
substance and tone of each of the contributor acknowledgements and/or
dedications given therein.

L. Preserve all the Invariant Sections of the Document, unaltered in
their text and in their titles. Section numbers or the equivalent are
not considered part of the section titles.

M. Delete any section entitled "Endorsements". Such a section may not
be included in the Modified Version.

N. Do not retitle any existing section as "Endorsements" or to conflict
in title with any Invariant Section.

If the Modified Version includes new front-matter sections or
appendices that qualify as Secondary Sections and contain no material
copied from the Document, you may at your option designate some or all
of these sections as invariant. To do this, add their titles to the
list of Invariant Sections in the Modified Version's license notice.
These titles must be distinct from any other section titles.

You may add a section entitled "Endorsements", provided it contains
nothing but endorsements of your Modified Version by various
parties--for example, statements of peer review or that the text has
been approved by an organization as the authoritative definition of a
standard.

You may add a passage of up to five words as a Front-Cover Text, and a
passage of up to 25 words as a Back-Cover Text, to the end of the list
of Cover Texts in the Modified Version. Only one passage of Front-Cover
Text and one of Back-Cover Text may be added by (or through
arrangements made by) any one entity. If the Document already includes
a cover text for the same cover, previously added by you or by
arrangement made by the same entity you are acting on behalf of, you
may not add another; but you may replace the old one, on explicit
permission from the previous publisher that added the old one.

The author(s) and publisher(s) of the Document do not by this License
give permission to use their names for publicity for or to assert or
imply endorsement of any Modified Version.



E.3.6. 5. COMBINING DOCUMENTS

You may combine the Document with other documents released under this
License, under the terms defined in section 4 above for modified
versions, provided that you include in the combination all of the
Invariant Sections of all of the original documents, unmodified, and
list them all as Invariant Sections of your combined work in its
license notice.

The combined work need only contain one copy of this License, and
multiple identical Invariant Sections may be replaced with a single
copy. If there are multiple Invariant Sections with the same name but
different contents, make the title of each such section unique by
adding at the end of it, in parentheses, the name of the original
author or publisher of that section if known, or else a unique number.
Make the same adjustment to the section titles in the list of Invariant
Sections in the license notice of the combined work.

In the combination, you must combine any sections entitled "History" in
the various original documents, forming one section entitled "History";
likewise combine any sections entitled "Acknowledgements", and any
sections entitled "Dedications". You must delete all sections entitled
"Endorsements."



E.3.7. 6. COLLECTIONS OF DOCUMENTS

You may make a collection consisting of the Document and other
documents released under this License, and replace the individual
copies of this License in the various documents with a single copy that
is included in the collection, provided that you follow the rules of
this License for verbatim copying of each of the documents in all other
respects.

You may extract a single document from such a collection, and
distribute it individually under this License, provided you insert a
copy of this License into the extracted document, and follow this
License in all other respects regarding verbatim copying of that
document.



E.3.8. 7. AGGREGATION WITH INDEPENDENT WORKS

A compilation of the Document or its derivatives with other separate
and independent documents or works, in or on a volume of a storage or
distribution medium, does not as a whole count as a Modified Version of
the Document, provided no compilation copyright is claimed for the
compilation. Such a compilation is called an "aggregate", and this
License does not apply to the other self-contained works thus compiled
with the Document, on account of their being thus compiled, if they are
not themselves derivative works of the Document.

If the Cover Text requirement of section 3 is applicable to these
copies of the Document, then if the Document is less than one quarter
of the entire aggregate, the Document's Cover Texts may be placed on
covers that surround only the Document within the aggregate. Otherwise
they must appear on covers around the whole aggregate.



E.3.9. 8. TRANSLATION

Translation is considered a kind of modification, so you may distribute
translations of the Document under the terms of section 4. Replacing
Invariant Sections with translations requires special permission from
their copyright holders, but you may include translations of some or
all Invariant Sections in addition to the original versions of these
Invariant Sections. You may include a translation of this License
provided that you also include the original English version of this
License. In case of a disagreement between the translation and the
original English version of this License, the original English version
will prevail.



E.3.10. 9. TERMINATION

You may not copy, modify, sublicense, or distribute the Document except
as expressly provided for under this License. Any other attempt to
copy, modify, sublicense or distribute the Document is void, and will
automatically terminate your rights under this License. However,
parties who have received copies, or rights, from you under this
License will not have their licenses terminated so long as such parties
remain in full compliance.



E.3.11. 10. FUTURE REVISIONS OF THIS LICENSE

The Free Software Foundation may publish new, revised versions of the
GNU Free Documentation License from time to time. Such new versions
will be similar in spirit to the present version, but may differ in
detail to address new problems or concerns. See http://www.gnu.org/
copyleft/.

Each version of the License is given a distinguishing version number.
If the Document specifies that a particular numbered version of this
License "or any later version" applies to it, you have the option of
following the terms and conditions either of that specified version or
of any later version that has been published (not as a draft) by the
Free Software Foundation. If the Document does not specify a version
number of this License, you may choose any version ever published (not
as a draft) by the Free Software Foundation.



E.4. {ɂ

뎚EEE󓙂 <JF@linux.or.jp> ܂łm点B

|                          
 ˂                   
F                          
Z                          
 삳                 
F                          
                            

