2010-04-15 (木)
今日も有給とってあるので休み.
朝起きて,2時間くらい無線LANルータで遊んで,昼寝して,起きたら外が暗い.
*MZK-WNHとかU-Bootとか
MZK-WNHを買ったのは良いけど,ファームウェアが腐ってて使い物にならないので,どうにかしたい.
スペック
以前にも書きましたが,OSやクロックとかも判明したので.
- CPU Ralink RT3050F 320MHz
- Flash 29LV320 4MByte
- SDRAM A3V28S40ETP 16MByte
- OS Linux 2.6.21
- ほか U-Boot,squashfs,BusyBox
シリアルコンソール
とりあえず,半田付けしてシリアルコンソールを使えるように.MZK-WNH側のRxがプルアップされてないので,RS-232Cのレベル変換回路がオープンコレクタになっている場合はプルアップを忘れずに.実は少しはまりました.
57600kbps,ストップビット1,8ビット,パリティなし,で接続.
U-Boot
U-Bootが使われているのでメニューに従って起動時に急いで「4」を入力するとコマンドラインモードに入れます.
圧縮されたカーネルイメージはbfc50000に入っているようなので,適当にメモリダンプしてみると,ファームウェアのイメージがそのまま入っていました.起動時のMTDのメッセージを見れば,だいたいフラッシュメモリ上の配置が分かります.
とりあえず,tftp経由でLinuxのカーネル起動できた.これでファームウェア壊しても安心.カーネルにUSBドライバが入ってるみたいだけど,基板上にそれらしいパターンがないなぁ.残念.
FreeBSD上で作業してるのだけど,Linuxのカーネルいじったりsquashfs使ったりするのでLinux環境もほしいなぁ.
ドライバを探してみた感じだと,DD-WRTには,raethがあるな.