2010-03 << 2010-04 >> 2010-05

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のレベル変換回路がオープンコレクタになっている場合はプルアップを忘れずに.実は少しはまりました.

mzk-wnh01.jpg

57600kbps,ストップビット1,8ビット,パリティなし,で接続.

U-Boot

U-Bootが使われているのでメニューに従って起動時に急いで「4」を入力するとコマンドラインモードに入れます.

圧縮されたカーネルイメージはbfc50000に入っているようなので,適当にメモリダンプしてみると,ファームウェアのイメージがそのまま入っていました.起動時のMTDのメッセージを見れば,だいたいフラッシュメモリ上の配置が分かります.

とりあえず,tftp経由でLinuxのカーネル起動できた.これでファームウェア壊しても安心.カーネルにUSBドライバが入ってるみたいだけど,基板上にそれらしいパターンがないなぁ.残念.

FreeBSD上で作業してるのだけど,Linuxのカーネルいじったりsquashfs使ったりするのでLinux環境もほしいなぁ.

ドライバを探してみた感じだと,DD-WRTには,raethがあるな.