本章では、AWL13が無線LANのインフラストラクチャモード(STA)の機能を使えるようになるまでの準備について説明します。
前章で紹介したように、AWL13 は、3つの異なる方法で接続することができます。どの接続方法であっても、AWL13上でファームウェアを実行するまで、AWL13 は無線LAN通信を行なうことができません。この章では、AWL13に電源を入れ、ファームウェアがロードされた状態まで準備を進めます。
AWL13をアクセスポイントに接続するためには、アクセスポイントの設定を確認しておく必要があります。アクセスポイントの設定を調べ、表5.1「アクセスポイントの設定」に記入してください。
表5.1 アクセスポイントの設定
設定項目 | 設定値 |
---|
SSID | |
チャンネル | |
暗号化方式[] | |
暗号化キー[] | |
また、無線LANアクセスポイントに接続したAWL13が、正しく接続されているかを確認するために、動作確認用PCの設定を確認しておく必要があります。動作確認用PCのIPアドレスを調べ表5.2「動作確認用PCの設定」に記入してください。
この章では、接続方法毎に異なるホストシステムとAWL13の組み合わせを利用してます。他の組み合わせを利用する場合は、適宜読み替えてください。
表5.3 接続方法とホストの組み合わせ
接続方法 | 想定されるホスト側 | 本書の例で使用する機器 |
---|
USB | PC, Armadillo | PC と Armadillo-WLAN評価ボード |
SDIO | PC, Armadillo, マイコン | PC と Armadillo-WLANモジュール |
UART(シリアル) | PC, Armadillo, マイコン | ATDE と Armadillo-WLAN評価ボード |
各章は、接続方法によって若干手順に違いがありますが、以下のような構成になっています。
接続図
必要なものの確認
ホスト側の準備
起動モードの選択
接続
電源を入れる
ファームウェアの書き込み
まず、ホストシステムとAWL13の物理的な接続を理解頂くために、接続図を確認してください。また、物理的な接続に必要な部材と、ファームウェアやデバイスドライバーなどソフトウェアも必要になります。
次に、ホストシステムの準備を行ないます。ホストシステム上でのコマンド入力や、ソフトウェアの設定などが必要になります。
さらに、接続方法によっては起動モードを選択し、ホストシステムとAWL13を接続し、電源の投入を行ないます。
最後にファームウェアをロードし、AWL13で無線LAN通信を行えるまでの準備が完了します。
それでは、選択した接続方法の章に移動してください。
UART(シリアル)通信ポートを持った機器
シリアルクロスケーブル
AWL13 本体
UARTモード用ファームウェア
AWL13 用電源 (AC アダプタなど)
UART(シリアル)通信ポートがあれば、どんなものでも接続できます。ホスト側のシリアル通信ソフトウェアは、以下のように設定してください。
表5.4 シリアル通信設定
項目 | 設定 |
---|
ボーレート | 115,200 bps |
データ幅 | 8bit |
パリティ | なし |
ストップビット | 1bit |
フロー制御 | なし |
改行コード | 受信=CR(0x0d)、送信=CR(0x0d) |
UARTモードで使用する場合、AWL13 を動作させる前に、「起動モード」を選択する必要があります。起動モードは、AWL13が無線LANとして動作するためのファームウェアのロード場所、および実行方法を決定します。モードの選択は、特定のピンの状態によって選択できます。利用形態に合わせて、以下のどちらかの起動モードを選択してください。
- UART起動モード
起動直後に、ホストからファームウェアを受け取るモードです。受け取ったファームウェアを実行し無線LANの機能を実現します。また、受け取ったファームウェアを、モジュール上のフラッシュメモリに書き込むことができます。AWL13のブートローダーは、ファームウェアを受け取るために、コマンド待ち状態となります。
起動する度にファームウェアをダウンロードする必要がありますが、AWL13にフラッシュメモリを接続する必要がありません。ホストに十分なストレージ容量がある場合は、システム全体をシンプルにすることができます。
- フラッシュ起動モード
AWL13は、フラッシュメモリからファームウェアをロードし、自動的にロードしたファームウェアを実行します。
UART起動モードを使って、一度フラッシュメモリにファームウェアを書き込んでしまえば、このモードを選択することで、AWL13が起動時に自動的にフラッシュメモリからファームウェアをロードし、実行します。そのため、ホスト側の初期化処理を簡略化できます。フラッシュメモリへの書き込み方法は、後述します。
さらにフラッシュ起動モードでは、フラッシュメモリを二分割し、それぞれ別々のファームウェアを格納することができます。フラッシュメモリの前半を「領域1」、後半を「領域2」と呼びます。DIPスイッチの4番ピン(SW1-4)で、フラッシュ起動モード時に、どちらの領域からファームウェアをロードするか選択することができます。UART起動モードでは、このピンは意味を持ちません。
UART起動モードの設定を表5.5「UART起動モード選択時のDIPスイッチ(SW1)とジャンパー(JP1, JP2)」に、フラッシュ起動モードの設定を表5.6「フラッシュ起動モード選択時のDIPスイッチ(SW1)とジャンパー(JP1, JP2)」に示します。
表5.5 UART起動モード選択時のDIPスイッチ(SW1)とジャンパー(JP1, JP2)
起動モード | SW1-1 | SW1-2 | SW1-3 | SW1-4 | JP1 | JP2 |
---|
UART起動モード | ON | ON | OFF | DO NOT CARE | ショート | ショート |
表5.6 フラッシュ起動モード選択時のDIPスイッチ(SW1)とジャンパー(JP1, JP2)
起動モード | SW1-1 | SW1-2 | SW1-3 | SW1-4 | JP1 | JP2 |
---|
フラッシュ起動モード (領域1) | ON | OFF | OFF | OFF | ショート | ショート |
フラッシュ起動モード (領域2) | ON | OFF | OFF | ON | ショート | ショート |
AWL13とArmadillo-WLAN評価ボードを接続し、Armadillo-WLAN評価ボードとホストシステムとをシリアルクロスケーブルで接続してください。
Armadillo-WLAN評価ボードの CON6 が電源用コネクタになっています。ここに評価セットに添付されている AC アダプターを接続してください。
ホストからファームウェアをダウンロードして、ファームウェアを実行するには、以下の手順を行って下さい。
UART起動モードで起動
AWL13をホストとシリアルケーブルで接続した後、表5.5「UART起動モード選択時のDIPスイッチ(SW1)とジャンパー(JP1, JP2)」を参照しDIPスイッチをUART起動モード用に設定し、電源を入れ起動してください。
正常にUART起動モードで起動できた場合、ホストのシリアル通信ソフトウェアには、以下に示すような保守モード起動画面が表示されます。
fldコマンド実行
ファームウェアのダウンロードを開始するために、以下のようにfldコマンドを実行してください。
ファームウェアの転送
ファームウェアは、生のバイナリ形式で転送します。転送するファームウェアは、fwimage[version]
_STA_UART_TCP[jp|en]
.bin
という名称になります[]。
ご使用のシリアル通信ソフトウェアにバイナリファイル転送機能がある場合、その機能を使用して転送してください。(TeraTermやGtkTermなどはバイナリファイル転送機能を有しています。)
minicomなど、生のバイナリファイルを転送する機能が無いシリアル通信ソフトウェアの場合、シリアル通信ソフトウェアを起動したまま、別の仮想端末(ターミナル)を起動し、以下のようにcatコマンドでファイルをttyデバイスファイルへ直接書き込むことで、ファイル転送することもできます。ttyのファイル名は、適宜読み替えてください[]。
ファームウェアの転送が正常に完了した場合、シリアル通信ソフトウェアは、以下に示すような表示となります。
fgoコマンド
以下のように、fgoコマンドを実行すると、ファームウェアが実行され、イニシャルモードに移行します。
| 新しいバージョンのファームウェア |
---|
新しいバージョンのファームウェアを使用する場合は、必ず設定を初期化してください。
|
5.1.7. フラッシュメモリへのファームウェアの書き込み
ホストからファームウェアをダウンロードして、フラッシュメモリに書き込む
には、以下の手順を行って下さい。
UART起動モードで起動
AWL13をホストとシリアルケーブルで接続した後、表5.5「UART起動モード選択時のDIPスイッチ(SW1)とジャンパー(JP1, JP2)」を参照しDIPスイッチをUART起動モード用に設定し、電源を入れ起動してください。
正常にUART起動モードで起動できた場合、ホストのシリアル通信ソフトウェアには、以下に示すような保守モード起動画面が表示されます。
fldコマンド実行
ファームウェアのダウンロードを開始するために、以下のようにfldコマンドを実行してください。
ファームウェアの転送
転送するファームウェアは、fwimage[version]
_STA_UART_TCP[jp|en]
.fbin
という名称になります[]。
「ファームウェアのダウンロードと実行」の手順と同様に、生のバイナリ形式でファームウェアを転送してください。
ファームウェアの転送が正常に完了した場合、シリアル通信ソフトウェアは、以下に示すような表示となります。
fldコマンド実行
ファームウェアに続いて、フラッシュライターを転送するため、再度、fldコマンドを実行してください。
フラッシュライターの転送
転送するフラッシュライターは、BU1805_FLASH_WRITER_[version]
_AREA_[region]
.bin
という名称になります。フラッシュメモリの領域1に書き込む場合、[region]
は1
に、領域2に書き込む場合は2
になります。
[]
「ファームウェアのダウンロードと実行」の手順と同様に、生のバイナリ形式でフラッシュライターを転送してください。
フラッシュライターの転送が正常に完了した場合、シリアル通信ソフトウェアは、以下に示すような表示となります。
フラッシュメモリへの書き込み
以下のように、fgoコマンドを実行すると、ファームウェアがフラッシュメモリに書き込まれます。
DIPスイッチをフラッシュ起動モード用に設定し、再起動すると、書き込んだファームウェアが自動でロードされ、実行されます。
| 新しいバージョンのファームウェア |
---|
新しいバージョンのファームウェアを使用する場合は、必ず設定を初期化してください。
|
USBホストコントローラーを持った機器であれば、AWL13を使って簡単に無線LAN化することができます。ここでは、Debian が動いている PC を使い、AWL13 を動作させる方法を説明します。
PC で、Debian 6.0 が動作していることを確認してください。
標準のカーネルであれば、USBのホストコントローラー用のデバイスドライバーは、すでに動作しているはずです。AWL13をUSBで動かすには、USBデバイスドライバと協調して動作するAWL13のデバイスドライバーが必要です。DVD のmodule/PC/2.6.32-5-686/awl13_usb-[version]
.ko を使ってください。
またAWL13 上で動くファームウェアも必要です。これもDVD のfirmware/fwimage[version]
_STA_USB.bin を使ってください。
5.2.2.1. cdc_etherドライバーをロードしないよう変更する
AWL13はUSBデバイスクラス仕様として、CDC ECM(Communication Device Class Ethernet Control Model)に基づき実装されています。ホストシステムにcdc_etherがインストールされている場合は、cdc_etherがロードされWLANモジュールを使用することができません。AWL13を確実に認識させるためには、AWL13接続時にcdc_etherドライバーがロードされないように修正する必要があります。
/etc/modprobe.d/blacklist.conf
をエディタで開き、図5.14「blacklist.confに設定を追加」に示す設定を追加すると、AWL13接続時にcdc_etherドライバが自動的にロードされなくなります。
ドライバーをロードするには、insmodコマンドを使用します。
[version]
は、ドライバーのバージョンに置き換えてください。
ドライバーが正常にロードされているかを確認するには、lsmodコマンドを使用します。
USB接続では、AWL13 を動作させる前に、「USB起動モード」を選択する必要があります。起動モードは、DIPスイッチ(SW1)とジャンパー(JP1、JP2)によって設定します。DIPスイッチ(SW1)とジャンパ(JP1、JP2)の設定値を表5.7「USB起動モードの選択」に示します。
表5.7 USB起動モードの選択
起動モード | SW1-1 | SW1-2 | SW1-3 | SW1-4 | JP1 | JP2 |
---|
USB起動モード | OFF | OFF | OFF | OFF | オープン | オープン |
PC がUSBホスト側になるので、USBケーブルのAコネクタをPCに接続します。AWL13 はデバイス側になるので、CON4にBコネクタを接続します。
AWL13 は、USBのバスパワーを電源としますので、ケーブルを差すと動き始めます。PCのホストコントローラーが AWL13 が接続されたことを検知し、Linux が下記のようなログを出力します。
AWL13 は、ほとんどカラッポの状態で起動します。つまりAWL13には、ファームウェアを受けとるだけの機能が入ったソフトウェアが動いているだけの状態です。無線の機能は使用できません。
この状態のAWL13 を、ちゃんと無線通信できる状態にするのがファームウェアです。書き込むファームウェアによって、AWL13 の機能が決まります。ここでは、AWL13にUSB通信と無線通信させるためのファームウェアを書き込みます。ファームウェアは、DVDのfirmware/fwimage[version]
_STA_USB.binを使用してください。
上記のようになれば、無事準備完了です。「使う」に進んでください。
AWL13は、SDIOインターフェースを介してホストシステムと接続することができます。しかしながら、一般的なSDカードスロットに差し込める形状にはなっていないため、SDIOインターフェースで使用したい場合、なんらかの変換ボードか変換ケーブルを作成する必要があります。
もし、ホストシステムにSDカードスロットがある場合、SDカードスロットに差し込める形状の拡張ボードを作成することで、AWL13と接続できます。ホストシステムにSDカードスロットが無い場合、ケーブルで接続することも可能です。Armadillo-WLAN 評価ボードからは、SDIOインターフェースの信号線が引き出せるようになっています。
SDIOインターフェースでホストシステムと接続する際の参考回路は、「Armadillo-WLAN(AWL13) ハードウェアマニュアル」を参照してください。
Armadillo-400シリーズと組み合わせて使用したい方向けに、Armadillo-400シリーズのコネクタに直接接続可能なインターフェースボードとAWL13をセットにした、Armadillo-WLANオプションモジュール(AWL13対応)を販売しています。Armadillo-WLANオプションモジュール(AWL13対応)を使用すれば、自前で変換ボードや変換ケーブルを作成しなくとも、SDIOインターフェースでAWL13を使用することができます。
Armadillo-400シリーズと組み合わせて使用する場合の使用方法については、「Armadillo-400シリーズソフトウェアマニュアル」を参照してください。
本章では、Debian GNU/Linux 6.0 (コードネーム squeeze)が動作しており、SDIOホストコントローラーを持つPCと接続した場合を例に、一般的な使用方法について説明します。
標準のカーネルであれば、SDIOのホストコントローラー用のデバイスドライバーは、すでに動作しているはずです。AWL13動作させるためには、SDIOホストコントローラー用デバイスドライバーの他に、AWL13用のデバイスドライバーが必要です。
Debian GNU/Linux 6.0 で使用可能なビルド済みのデバイスドライバーが、付属DVDのmodule/PC/2.6.32-5-686/awl13_sdio-[version]
.ko
[]に収録されています[]。Debian GNU/Linux 6.0以外の環境で使用される場合は、付録A Linux デバイスドライバーのビルドを参照し、ソースコードからビルドする必要があります[]。
さらに、AWL13の無線LAN機能を使うためには、AWL13上で動作するファームウェアが必要になります。ファームウェアも付属DVDのfirmware/fwimage[version]
_STA_SDIO.bin
に収録されています。
ビルド済みのデバイスドライバーと、ファームウェアをホストPCにコピーしておいてください。
SDIOインターフェースを使用するには、AWl13を「SDIO起動モード」で動作させる必要があります。起動モードは、電源投入時の起動モード選択ピンの状態によって決定されます。SDIO起動モードにするには、下記のように設定してください。
表5.8 起動モード選択ピンの状態(SDIO起動モード)
BOOT_SEL1 | BOOT_SEL0 | HOST_SEL |
---|
Low | High | High |
AWL13をArmadillo-WLAN評価ボードと組み合わせて使用する場合、起動モードは、DIPスイッチ(SW1)とジャンパー(JP1、JP2)によって設定できます。DIPスイッチ(SW1)とジャンパ(JP1、JP2)の設定値を表5.9「SDIO起動モードの選択」に示します。
表5.9 SDIO起動モードの選択
起動モード | SW1-1 | SW1-2 | SW1-3 | SW1-4 | JP1 | JP2 |
---|
SDIO起動モード | OFF | ON | ON | OFF | オープン | オープン |
5.3.4. ドライバとファームウェアのセットアップ
AWL13を無線LANデバイスとして使用するには、USB接続の場合と同じように、ドライバをロードした後、ファームウェアをAWL13に送り込む必要があります。基本的な方法は、USB接続の場合と同じです。
ドライバーをロードするには、insmodコマンドを使用します。
ドライバーが正常にロードされているかを確認するには、lsmodコマンドを使用します。正常にドライバーがロードされている場合、下記のように表示されます。
続いて、ファームウェアをAWL13に送り込みます。sysfsファイルにファームウェアを書き込んだあと、iwprivコマンドを実行することで、ファームウェアを送り込むことができます。これらの操作には、特権ユーザー権限が必要ですので、suコマンドで、rootユーザーになってからコマンドを実行してください。
下記のコマンドを実行して、正しいファームウェアバージョンが読み出せれば、ファームウェアは正しく送れています。
AWL13が適切にホストシステムと接続されており、上記の操作が正常に完了すると、Linuxの無線LANインターフェースawlan0を通して、AWL13の無線LAN機能を使えるようになります。以降の操作は、基本的には通常の無線LANデバイスの場合と同じです。無線LANインターフェースの使用方法は、7章Linux無線LANインターフェースから使うを参照してください。