懸案としていた無線LAN再び
ビデオドライバの設定も一段落したので、もう一度無線。
5月7日のところで一応は無線LANが利用できるようになったという報告をしたが、懸案事項として11Mbps(802.11b)の通信しか出来ていないようで、54Mbps(802.11a/g)にトライをしてみる。
DELL Inspiron 1501では購入時に無線LANの構成を決めることが出来るが、私の場合は802.11a/b/gが利用できる「Dellワイヤレス1490デュアルバンドWLAN Mini-Card」をオプションとして付けている。これはBroadcomのBCM4310 UART(rev 01)を搭載していた。
前回は「bcm43xx-fwcutter」(ファームウェア・カッター)といツールを使ってWindows用のBroadcomの無線チップのドライバからファームウェアを切り出して使う、という方法だった。今回も基本的には同じだが、前回使用したWindows用のドライバパッケージが海外のサイトからダウンロードしたものだったが、今回は日本のサイトからダウンロードしたものを利用する。
以下の手順である。
1. bcm43xx-fwcutterをインストールする
パッケージマネージャを使って「bcm43xx」で検索すると「bcm43xx-fwcutter - 005-1.fc6.x86_64」がリストされるのでチェックしてインストールする。
2. bcmlw5.sys を入手する
bcm43xx-fwcutterをインストールすると /usr/share/doc/bcm43xx-fwcutter-005/README ができるのでこれを参照、もしくはググって「bcmwl5.sys」を含んだWindows用のドライバをダウンロードしてくる。Inspiron 1501にWindowsがバンドルされている場合は、bcmwl5.sysがあるが、bcm43xx-fwcutterで扱えるファームウェアのバージョンは限定されていて、WindowsにバンドルされているVer 4.100.15.5は残念ながら扱えなかった。
仕方ないのでネットからVer 3.104.64.52のものを拾ってきた。
3. bcm43xx-fwcutterを使ってBCM4310のファームをインストールする
# bcm43xx-fwcutter -w /lib/firmware/ bcmwl5.sys filename : bcmwl5.sys version : 3.104.64.52 MD5 : 3ccb53e4f0f5e9f4ae270cb2924cb941 microcodes : 2 4 5 pcms : 4 5 microcode : 2 revision : 0x0123 patchlevel : 0x0021 date : 2005-01-22 time : 19:48:06 microcode : 4 revision : 0x0123 patchlevel : 0x0021 date : 2005-01-22 time : 19:48:06 microcode : 5 revision : 0x0123 patchlevel : 0x0021 date : 2005-01-22 time : 19:48:06 extracting bcm43xx_microcode2.fw ... extracting bcm43xx_microcode4.fw ... extracting bcm43xx_microcode5.fw ... extracting bcm43xx_pcm4.fw ... extracting bcm43xx_pcm5.fw ... extracting bcm43xx_initval01.fw ... extracting bcm43xx_initval02.fw ... extracting bcm43xx_initval03.fw ... extracting bcm43xx_initval04.fw ... extracting bcm43xx_initval05.fw ... extracting bcm43xx_initval06.fw ... extracting bcm43xx_initval07.fw ... extracting bcm43xx_initval08.fw ... extracting bcm43xx_initval09.fw ... extracting bcm43xx_initval10.fw ...
ちなみにbcm43xx-fwcutterで扱えないバージョンのファームの場合は次のようなメッセージが出る。
# bcm43xx-fwcutter -w /lib/firmware/ bcmwl5.sys Sorry, the input file is either wrong or not supported by bcm43xx-fwcutter. This file has an unknown MD5sum b89bcf0a25aeb3b47030ac83287f894a.
コマンド実行後にいくつかのファームが切り出されている。(実行前は/lib/firmwareは空である。)
# ls /lib/firmware/ bcm43xx_initval01.fw bcm43xx_initval06.fw bcm43xx_microcode2.fw bcm43xx_initval02.fw bcm43xx_initval07.fw bcm43xx_microcode4.fw bcm43xx_initval03.fw bcm43xx_initval08.fw bcm43xx_microcode5.fw bcm43xx_initval04.fw bcm43xx_initval09.fw bcm43xx_pcm4.fw bcm43xx_initval05.fw bcm43xx_initval10.fw bcm43xx_pcm5.fw
4. ネットワーク設定で無線LAN(Eth1)を起動する
「ネットワーク設定」の「設定」からSSID(ESSID)やWEPキーを設定した上で起動する。これで無線LANが使える様になる。起動時の/var/log/messageの内容は以下の通り。
May 12 10:10:03 hoge kernel: bcm43xx: set security called, .active_key = 0, .level = 1, .enabled = 1, .encrypt = 1 May 12 10:10:03 hoge kernel: SoftMAC: Associate: Scanning for networks first. May 12 10:10:03 hoge kernel: SoftMAC: Associate: failed to initiate scan. Is device up? May 12 10:10:03 hoge kernel: bcm43xx: PHY connected May 12 10:10:04 hoge kernel: bcm43xx: Microcode rev 0x123, pl 0x21 (2005-01-22 19:48:06) May 12 10:10:04 hoge kernel: bcm43xx: Radio turned on May 12 10:10:04 hoge kernel: bcm43xx: Chip initialized May 12 10:10:04 hoge kernel: bcm43xx: 32-bit DMA initialized May 12 10:10:04 hoge kernel: bcm43xx: Keys cleared May 12 10:10:04 hoge kernel: bcm43xx: Selected 802.11 core (phytype 2)
また、無線インターフェースの状態は次のとおり。
# iwconfig lo no wireless extensions. eth0 no wireless extensions. eth1 IEEE 802.11b/g ESSID:"1234" Nickname:"hoge.local.jp" Mode:Managed Frequency=2.484 GHz Access Point: Invalid RTS thr:off Fragment thr:off Encryption key:ABCD-EF01-23 Security mode:open Link Quality=0/100 Signal level=-256 dBm Noise level=-256 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0
無線LANインターフェースが起動中(アクセスポイントの近辺ではない時は、ifconfig eth1 upで強制的にインタフェースをアップして)であれば、スキャニングすることも可能。
# iwlist eth1 scanning eth1 Scan completed : Cell 01 - Address: 01:23:45:67:89:20 ESSID:"GEGEGE" Protocol:IEEE 802.11b Mode:Master Channel:1 Encryption key:on Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s Quality=75/100 Signal level=-82 dBm Noise level=-256 dBm Extra: Last beacon: 3876ms ago
このファームウェアのバージョンでは、iwconfigの出力の通り、802.11b/gをサポートしているが、802.11aはサポートしていない様である。ちなみにiwconfigコマンドでESSIDを変えたり、NICKnameを帰ることも確認できた。
実際にプロバイダに接続したところ802.11b(11Mbps)の接続になった。