2015年7月24日金曜日

FON2100E へ SD-CARD を追加

以前システムメモリを 32MB 化した FON2100E へ SD カードを追加してみました。なお作業に当たっては次のウェブサイトを参考にしました。
LaFonera Hardware SD-Card - DD-WRT Wiki
http://www.dd-wrt.com/wiki/index.php/Fonera_SD-Card_hack


システムメモリを 32MB 化した FON2100E へ SD カードを取り付けました。

以前より無線LANルータへ SD カードを追加してみたかったのですが、SD カードのソケットなどの入手待ちの状態で停止した状態でした。今回百円ショップで SD カードリーダを購入する機会が得られたため、FON2100E を手始めとして改造を行なってみたいと思いました。

SD カードソケットの取り出し

さて入手したのはダイソーの SD カードリーダです。いくつか種類がありましたが、今回は、この SD カードのみに対応した製品を分解してソケットを取り出してみました。

今回使用したダイソーの SD カードリーダです。

はめ込み式のプラスチック筐体の隙間にマイナスドライバを差し込んで開封しました。中からは USB プラグと SD カードのソケットが取り付けられた基盤が姿を現しました。ここから SD カードのソケットを取り出しました。

SD カードリーダの裏面です。
SD カードリーダの表面です。
SD カードのソケットを取り外したところです。

この取り出した SD カードソケットを蛇の目基盤の上にハンダ付けしました。一部のピンが標準的な 2.54 ミリのピッチに合わずリードを折り曲げて蛇の目基盤の穴へ挿入してハンダ付けしました。

FON2100E プリント印刷基盤の加工

次に FON2100E 側の事前加工を行います。SD カードのアクセスで使用する GPIO 端子(四個)には、小さなコンデンサ(C142〜C145)が接続されています。これを取り外しました。取り外し作業は、コテライザーによるホットブローで行いました。大きなアースパターンに接続されていましたが、部品が小さいため綺麗に取り外しができました。

中央に見えるのが、取り外す四つのコンデンサ(C142〜C145)です。
FON2100E は小さな基板なため、万力で固定してルーペを使用しながらの作業となりました。
四つのコンデンサを取り外したところです。

SD カードソケットと FON2100E 基盤の接続

SD カードソケットを取り付けた蛇の目基盤と FON2100E の基盤の SW1 にある GPIO 端子を短いリード線で接続しました。そしてシリアルコンソールの端子のところから、電源とアースを接続しました。現在のリード線の長さは仮のもので、動作確認が出来た後、筐体へ SD カードソケットを取り付けるときに、正式に長さを決定します。

SD カードソケットを GPIO 端子へ取り付けたところです。
SD カードソケットへシリアルコンソールの端子から電源を取り出しているところです。

OpenWrt Kamikaze 8.09 のインストール

これでハードウェア部分の加工は終了です。ソフトウェアの作業を行うとき、とりあえずファームウェアに OpenWrt Kamikaze 8.09 をインストールし直しました。これは、SD カードの情報の多くが 2009 年ごろのものが多く、そのころの主流と思われる OpenWrt Kamikaze 8.09 のものばかりでした。そのためハードウェアの加工に間違えがないか確認するためにも、確実に動作する手法で設定を行うこととしました。

OpenWrt Kamikaze 8.09 のインストールは Gargoyle で作られた FonFlash で行いました。

SD 関連ソフトウェアのインストール

SD 関連のソフトウェアのインストールと設定については、上記の参考ウェブサイトの後半分に記述のまま行いました。ただし一部注意点を記述しておきます。


OpenWrt Kamimaze 8.09 の SD カードの設定方法のスクリーンショットです。

1)インストールコマンドに間違えがあります。
# opk install luci-app-mmc_over_gpio(誤)
# opkg install luci-app-mmc_over_gpio(正)

2)vi エディタで /etc/init.d/mmc_over_gpio を編集する場所は、59 行目あたりにあります。

3)/etc/init.d/mmc_over_gpio を編集をした後、一度 FON2100E を再起動させてください。続けて次のコマンドを実行すると下記の通りのエラーが発生して、先に進めません。
root@OpenWrt:/# /etc/init.d/mmc_over_gpio start
mkdir: cannot create directory '/config/gpiommc/default': No such file or directory
rmdir: '/config/gpiommc/default': No such file or directory
mkdir: cannot create directory '/config/gpiommc/default': No such file or directory
4)SD カードは事前にパソコンで Ext2 フォーマットしておいてください。
そして Ext2 フォーマットを読み取れるように次のカーネルモジュールをインストールしてください。これらの処置の後、SD カードのデバイス(/dev/mmcblk0p1)のマウントを行なってください。
# opkg install kmod-fs-ext2

SD カードの動作確認

SD カードの動作確認としては、telnet ログインした状態で、マウントした SD カードのディレクトリへ移動した後、テキストファイルを適当に作って、それを編集して、再保存してみました。これで動作確認ができました。
# cd /mnt/mms -- SD カードのディレクトリへ移動
# touch test.txt -- test.txt という空のファイルを作る
# vi test.txt -- test.txt ファイルを vi エディタで編集する
     abcd1234
# cat test.txt -- test.txt ファイルの中身を確認してみる
     abcd1234

これからの予定

SD カードについてのハードウェアの確認がこれで出来ました。これから使用予定のファームウェアの OpenWrt Barrier Breaker 14.07 をインストールし直して、SD カードの設定を行なってみたいと思っています。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。