うかつなことにポータブル無線LANルータNexx WT3020Fを使えなくしてしまったが、なんとか復活させた。
自力でシリアル接続がどうしてもできなかった。ダイソーで糸ハンダ(写真)を購入し、”ハンダ付け職人のはんだ付け講座 無料“なんかを参照しながら、父が残していったハンダゴテでハンダづけを試みるものも無残に失敗。ついに自力での解決を諦めて、人に助力を求め、単に導線を端子に押し付けるようしてもらっただけで、あっけないほど簡単にシリアル通信成立。 “Howto flash OpenWrt on Nexx WT3020” を参照してファームウェアの書き換えに成功。
さて、ブートローダーをU-BootからBreedなるものに置き換えておけば今後再度しくじったときのリカバリーが簡単だというので、それもインストールしようとした。”Nexx WT3020 [OpenWrt Wiki]“に説明があるが、mtd_writeコマンドが見当たらない。mtd OpenWrt packageで代用できるだろうと思ったが、
root@OpenWrt:/tmp# mtd unlock mtd0 Could not open mtd device: mtd0 Could not open mtd device: mtd0
…となってうまくいかない。そういえば、上記Wikiでも”Uboot can be flashed like this (only if mtd0 is writable, on stock it’s possible, on openwrt mtd0 is usually read-only in dts)”と但し書きがあるので、それが理由なのだろう。
“Howto flash OpenWrt on Nexx WT3020” でU-Bootからブートローダーの書き換えができることはわかっていたので、再度シリアル接続をして、U-Bootに提示されるメニューで9を選び以下をインストール。
http://breed.hackpascal.net/breed-mt7620-reset1.bin
Breedブートローダーについては英語や日本語でのまとまった説明文書がないのが残念だが、以下の文章が参考になる。
- “【10.1】AR/QCA/MTK Breed,功能强大的多线程 Bootloader – OPENWRT专版 – 恩山无线论坛 – Powered by Discuz!“の英語訳
- ”adventures in console window: Uboot alternative – Breed.“
利用者としては、リセットボタンを押しながらWT3020を起動すると、
- telnet 192.168.1.1、ないし
- ブラウザでhttp://192.168.1.1をアクセス
でBreedにアクセスでき、そこで必要ならファームウェアの書き換えなどができる、というところが非常にありがたい。つまり、今後OpenWrtの設定でしくじっても、殻割りしてシリアル接続する必要はもうない、ということ。ちなみに、この際LEDが消灯状態になるので動作しているのか不安になるが、ちゃんと動作している。
オープンソースソフトウェアではないので、中で悪さをしていないかは心配だが…。
追記: “Nexx WT3020 U-boot mod? (Page 1) — Hardware Hacking — OpenWrt“を見るとBreedブートローダーなどについてよくわかる。どうも他の人のOSSコードをクレジットもなくぱちって作られたようだ、ということや、そのくせ自分のコードはオープンにしていない、ということは気になる。それでもBreedブートローダーを利用するのであれば、Nexx WT3020購入後、ストックファームウェアの状態でBreedブートローダーをインストールし(この時点ではmtd0に書込み可能なので)、次にそれを利用してOpenWrtをインストールする、というのがもっとも楽ちんな手順なようだ。
「ポータブル無線LANルータNexx WT3020Fを復活させた」への3件のフィードバック