2014年12月10日水曜日

WT3020を16MB化してみた。

OpenWRT化したWT3020のSPI Flashを張り替えて16MBを搭載してみました。
もともとついていたのはEN25Q64でしたが、WinbondのW25Q128に張り替えてみました。

まずは純正ファームウェアをバックアップした方法と同じようにcatでUSBメモリにOpenWRTが入ったSPI Flashの内容全部をバックアップした。

そして早速SPI Flashを剥がしにかかる。
近くに抵抗があるのがちょっと怖いけどそんなに狭くないので普通にハンダ盛って剥がせそう。
最近ESCのFET剥がしをやっていたので無事うまく剥がすことができた。
剥がすのが一番大変だな…

USBメモリにバックアップした内容を16MBのSPI Flashに書き込む。
今回はBIOSを復旧させた時と同じようにRaspberry Piを使用してみた。書き込みとVerifyには12分ほどかかった。

無事ファームウェアを書き込んだらSPI Flashをハンダ付け。亀の子できるようにCSを浮かせておいた。
CSは裏面のココらへんから取ることができる。

とりあえず無事起動できたけど、OpenWRTが8MB用なのでそのままだと今までと同じ容量しか認識されない。

というわけでOpenWRTのtrunkを持ってきて16MB用に書き換えてビルドしてみた。
DTSファイルのfirmwareのところで領域を0x50000 0xfb0000にすればOKかも?
openwrt-ramips-mt7620-wt3020-16M-squashfs-sysupgrade.bin
約11.7MB使用可能に!
とりあえずこのバイナリはデフォルト設定にluci入れたぐらいなのでもうちょいいじれば増えるかなぁ
といってもこのぐらいあれば十分だけど。

しかし今回はChaos Calmer r43675を使用したのでカーネルモジュールまで自分でコンパイルしないといけなさそう…

未確認ですが4MBなWT3020A(DN-11042)とかでも同じような改造ができるんじゃないでしょうか。

0 件のコメント:

コメントを投稿