2016年3月28日月曜日

FON2200E を 32MB 化

以前 入手したまま放置していた FON2200E(念の為 FON2100E ではありません)のシステムメモリを 16MB から 32MB のメモリチップへ交換しました。

メモリチップを交換して 32MB 化した FON2200E です。

概要

メモリチップの交換は、今までに FON2100E や FON2201 で行った方法と一緒です。また 32MB のメモリ空間を認識させる RedBoot は、FON2202 用のものを使用しました。FON2100E で使用した RedBoot もインストールしてみましたが、電源投入時に POWER ランプが点灯しない問題があり、FON2202 用のものを使用して問題の解消をしました。

上段は FON2100E 用の RedBoot を使用したときのもので、
下段は FON2202 用のものを使用したときのものです。

メモリチップの交換

メモリチップは 256Mbit/16bit word の 32MB ものです。以前 FON2100E 用にパソコン用のメモリカードから剥がしておいたものを使用しました。

蓋を開いた FON2200E と交換するメモリチップです。

メモリチップを引き剥がす上でハンダゴテの邪魔になると思われる電源部のコイル(L803)を事前に取り外しておきました。ちょっとした手間ですが、このような事前の準備が後の作業を楽にしてくれると考えています。
 
メモリチップを剥がす上で障害となるコイル(L803)を事前に取り外しました。

メモリチップは、私が持っているコテライザーでは熱量が不足して上手く剥がれないことを経験上知っているため、ハンダをメモリチップのリードへ盛りつけて、ハンダの蓄熱効果でメモリチップを剥がしました。今回はパターン剥がれが無く、綺麗にメモリチップを剥がすことに成功しました。

盛りハンダで取り外したメモリチップです。
まだパターンの上にはハンダが残っています。
ハンダの吸取り線で綺麗にパターンを掃除しました。
フラックスはアルコールで拭き取りました。

そして 32MB のメモリチップをハンダ付けしました。そしてコイル(L803)も元の場所へハンダ付けしておきました。

32MB のメモリチップをハンダ付けしたところです。

この状態で FON2200E へ電源を投入して動作確認を行いました。電源をしばらくすると MyPlace の無線 LAN の電波が発射されることを確認しました。

RedBoot の入れ替え

現在 16MB の認識となっている RedBoot を 32MB を認識する RedBoot へ入れ替えました。作業は以前 FON2201 で行ったときと全く一緒です。
FON2202 の RedBoot を FON2201 へ移植
http://near-unix.blogspot.jp/2016/02/fon2202-redboot-fon2201.html

FON2202 用 RedBoot をダウンロードします。自宅サーバには TFTP が稼動していますので、TFTP で公開しているディレクトリへ Redboot をコピーしておきます。
fon2202-redboot.rom
https://drive.google.com/open?id=0B5QdaY5lu2e3Tk1BOHU1VVp1VjA

FON2200E のシリアルコンソール端子へシリアルケーブルを接続します。通信速度は 9600bps です。

FON2200E のシリアルコンソールへシリアルケーブルを接続したところです。

IP アドレスの設定を行います。"-l" は FON2200E 自身の IP アドレスで、"-h" は TFTP サーバの IP アドレスです。今回の場合、FON2200E 自身を 192.168.24.51 へ設定して、TFTP サーバを 192.168.24.101 へ設定しました。
RedBoot> ip_address -l 192.168.24.51/24 -h 192.168.24.101
IP: 192.168.24.51/255.255.255.0, Gateway: 0.0.0.0
Default server: 192.168.10.101

TFTP サーバから RedBoot を転送しました。
RedBoot> load -r -b %{FREEMEMLO} fon2202-redboot.rom
Using default protocol (TFTP)
Raw file loaded 0x8003f000-0x8006efff, assumed entry at 0x8003f000

転送してきた FON2202 用の RedBoot をフラッシュメモリへ書き込みしました。
RedBoot> fis create RedBoot
An image named 'RedBoot' exists - continue (y/n)? y
... Erase from 0xa8000000-0xa8030000: ...
... Program from 0x8003f000-0x8006f000 at 0xa8000000: ...
... Erase from 0xa87e0000-0xa87f0000: .
... Program from 0x80ff0000-0x81000000 at 0xa87e0000: .
以上で RedBoot の入れ替えが終わりました。

動作確認

動作確認ですが、FON2200E の電源プラグを抜いた後、シリアルコンソール用のシリアルケーブルを一度抜きます。そして再度挿し直します。なぜか RedBoot を書き換えた後は、シリアルケーブルを繋いだままだと FON2200E が起動しませんでした。これは他の FON2100E などでも見られる現象です。

再起動させたとき、RedBoot の以下の青色表示の部分のようになっていれば 32MB を認識したこととなります。
+Ethernet eth0: MAC address 00:18:84:82:50:c4
IP: 192.168.1.1/255.255.255.0, Gateway: 0.0.0.0
Default server: 192.168.1.254

RedBoot(tm) bootstrap and debug environment [ROMRAM]
Non-certified release, version v1.3.0 - built 01:53:26, Mar 21 2009

Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.

Board: ap51
RAM: 0x80000000-0x82000000, [0x8003ed20-0x80fe1000] available
FLASH: 0xa8000000 - 0xa87f0000, 128 blocks of 0x00010000 bytes each.
== Executing boot script in 2.000 seconds - enter ^C to abort
^C
RedBoot>

そして再度電源を入れ直して、最後まで起動させた後、問題なく動作しているか確認しました。私の場合、まだこの時点で Fonera のファームウェアがインストールされた状態であったため、無線 LAN の MyPlace の電波が発射されていることを確認しました。


0 件のコメント:

コメントを投稿