サウンドカードを AX.25 パケット無線用として使うためのドライバ

Thomas M. Sailer, HB9JNX/AE4WA, <sailer@ife.ee.ethz.ch>

このドライバは SoundBlaster(sbc) か Windows Sound System(wss) コンパチ
ブルのサウンドカードを 1200 ボー AFSK か 9600 ボー FSK の AX.25 パケッ
ト無線のモデムとして使うものです。(訳注：この他、2666 ボー といったよ
うな、あまり日本ではなじみの少ないモードでも使えるようです。詳細は 
Configure.help を参照してください)半二重通信のみをサポートしています
− 全二重通信はハードウェアがサポートしていないため使えません( CODEC 
のチップは二つの DMA チャンネルをサポートしているのに、カード自体は一
つだけしかチャンネルを使えないようです)。(訳注：最新のドライバでは DMA
チャンネルを二つ使える WSS については全二重通信をサポートしているよう
です)このドライバを動かすには処理速度の速い CPU が必要になります。最低
でも 486DX2-66MHz は必要です。そうでなければコンピュータの動きはぎこち
なくなってしまうでしょう。このドライバは電話回線のモデムはサポート *し
ていません* − 無線専用です。


ドライバ・インターフェース

このドライバは sm[0-3] という名前のカーネルネットワークドライバ（訳注
：デバイス?）を提供します。ax25 ユーティリティ集の sethdlc を使えばド
ライバの状態などを設定できます。user 空間の AX.25 スタックを使っている
人は net2kiss というユーティリティ（これも ax25 ユーティリティ集に含ま
れています）を使ってネットワークインターフェイス上のパケットを仮想端末
の KISS ストリームに流し込むことも出来ます。また WAMPES 用には私のパッ
チをあてることでカーネルのネットワークインターフェイスを直接割り当てる
ことも出来ます。（訳注：このパッチは既に WAMPES のソースに取りこまれて
いるそうです）


ドライバの設定

ある特定のカードは、使用する前に SoundBlaster モードあるいは WSS コン
パチブルモードとして初期化をしてやらないといけません。このドライバは初
期化を *しません* が、Linux の標準サウンドドライバがサウンドカードの初
期化に使えます − サウンドドライバをモジュールとしてコンパイルして、
　insmod sound
　rmmod sound
としてください。するとサウンドカードは正しく初期化されます。もしこれで
だめなら、あなたが自分自身で初期化ユーティリティを書かなくてはならない
でしょう。(訳注：isapnptools パッケージを使えば PnP サウンドカードの設
定ができます。また Crystal CS423x を使ったサウンドカードであれば ax25
ユーティリティ集に含まれる setcrystal を使うこともできます。)

ドライバがカーネルに組み込まれる時点で、どのモデムがどのポートを使うべ
きかの情報をドライバが知らなければなりません。これは setbaycom ユーテ
ィリティを使うことでできます。もしモデムをひとつだけ使うのなら、insmod
のコマンド行(あるいは /etc/modules.conf )にオプションを記述してドライ
バを設定することができます。

例：
  insmod soundmodem mode="sbc:afsk1200" iobase=0x220 irq=5 dma=1
  sethdlc -i sm0 -p mode "sbc:afsk1200" io 0x220 irq 5 dma 1

上の 2行はどちらもサウンドブラスター型のカードを 1200 ボー AFSK モード
で sm0 に設定するものです。

チャンネルアクセスパラメータは sethdlc -a か kissparms を使って設定で
きます。それぞれのユーティリティで値の意味が若干違うことに気をつけてく
ださい。


入出力レベル

入出力レベルを適度に調節することは重要です。ax25 ユーティリティ集の中
には smmixer と smdiag という2つのユーティリティが入っています。smdiag
は入力信号をオシロスコープの様に、または eye パターンとして表示します。
smmixer は入出力のレベルを調節できます。それぞれのマニュアルページを見
てください。(訳注：この他、ax25 ユーティリティ集には XFORMS ライブラリ
を用いた xfsmmixer、xfsdiag という GUI のユーティリティが含まれていま
す。)


送信機キーイング

サウンドカードは DC カップルの出力を持っていないので PTT キーイングに
ついては以下の方法があります。
・VOX を使う。
・シリアルポートを使う。
・パラレルポートを使う。
・MPU401 MIDI 出力を再トリガ型単安定マルチバイブレータ(a retriggerable
　monoflop　訳注：74LS123 とか)経由で使う。
回路図は次の場所にあります。
http://www.ife.ee.ethz.ch/~sailer/pcf/ptt_circ/ptt.html


Linuxカーネルの他の部分との適合性

サウンドドライバとサウンドカード・モデム・ドライバは同一のハードウェア
リソースについて競合しています。もちろん一つのインターフェイスについて
同時に使えるドライバは一つだけです。ところが、サウンドドライバは起動時
にサウンドカードを占領するので、サウンドカード・モデム・ドライバは引き
続いてサウンドカードにアクセスすることが出来ません。そのためサウンドカ
ード・モデム・ドライバを使う前にはサウンドドライバをアンロードする必要
があるかも知れません。

vy 73s de
Tom Sailer, sailer@ife.ee.ethz.ch
hb9jnx @ hb9w.ampr.org

（翻訳：JL3OXR <coda@post.kek.jp> Aug. 10, 1999)
（翻訳校正：武井さん＠高知大）
