2015年5月9日土曜日

FON2201 のシリアルコンソールの改造

二台目となる FON2201 を入手しました。今回入手したものは日焼けが酷いものでした(涙)。今回入手した FON2201 は、分解をして、シリアルコンソールの端子を外部から直接接続できるように改造しました。

左側が今回入手した FON2201 です。日焼けで黄色くなっています。

分解作業

本体底面の四個のゴム足の内、手前側の二つのゴム足の裏側のネジを外して、筐体の蓋(白色)を取り外すことができました。ネジはヘクスグローブの T8 サイズでした。

ゴム足を細いドライバで剥がしたところです。
ネジは T8 サイズのヘクスグローブでした。

プリント印刷基盤の観察

姿を現したプリント印刷基盤の表面を観察してみました。シリアルコンソールの端子には4ピンのピンヘッダが既に取り付けられている状態でした。しかし JTAG 端子の方は、スルーホールにハンダが詰まっている状態でした。

筐体の蓋を開いたところです。意外と内部はすっきりとしています。
中央奥にシリアルコンソールの 4 ピン端子が見えます。
そしてその右側に JTAG 端子のスルーホールが見えます。

水洗

プリント印刷基盤の観察を一通り終えたところで、プラスチック筐体の水洗を行いました。最近は可能な限り洗うようにしています。はやりすっきり感が違います!

筐体の下の雑巾は、傷防止とシャワーで押し流されないためのものです。

シリアルコンソールの端子の移設

シリアルコンソールの端子の移設場所は、FON2202 で USB 端子が設置される場所にしました。穴の大きさを4ピンのピンヘッダの縦置きのサイズとしました。今回は狭い場所での作業であったのでピンバイスを使って、指先で筐体にドリルで四カ所の穴を開けて、その穴を連結するようにニッパーで切断して穴を開けました。最後はヤスリで仕上げました。

4 ピンのピンヘッダを置いて、現物合わせで印をつけました。
2 ミリのドリルをピンバイスで挟んで穴を開けました。
四カ所に開けた穴を連結するようにニッパー切り込みました。
最後はヤスリで仕上げました。

ピンヘッダは、いつものように蛇の目基盤を小さく切り出したものにハンダ付けした後、ケーブルをハンダ付けしました。

小さく切り出した蛇の目基盤へピンヘッダとケーブルをハンダ付けしたところです。

このピンヘッダが付いた小基盤の裏側へ縦位置の状態を維持するためのボール紙で作った衝立を接着しました。写真を見ての通り、ピンヘッダのソケットを押し込んだときに、小基盤が押し倒されないように支えるようにしています。このボール紙の衝立はホットボンドで固定しました。

小基盤の後ろに衝立となるボール紙(黒色)を取り付けて、固定しています。

この後、小基盤から伸びるケーブルを本体のシリアルコンソールの端子の裏側へハンダ付けしました。


シリアルコンソールの端子の裏側へケーブルをハンダ付けしました。
シリアルコンソールの端子を外部から見た様子です。

JTAG 端子の設置

JATG 用の 14 ピンのスルーホールのハンダをハンダ吸い取り器で抜き取りました。その後、ピンヘッダをハンダ付けしました。


JTAG 端子のスルーホールにハンダが詰まっている様子です。
何と!小さなハンダボールがいくつも存在しているのが見えます。まるで素人の工作のようです(笑)
ハンダの吸取り器でハンダを吸い出したところです。
ピンヘッダをハンダ付けしたところです。
表面から見た JTAG のピンヘッダです。

シリアルコンソールの動作確認

動作確認のため、シリアルケーブルを新設したシリアルコンソールの端子へ接続して、パソコン(Debian Wheezy)からアクセスしてみました。この FON2201 では、シリアル転送速度は 9600bps でした。
# chown uucp /dev/ttyUSB0
# cu -l /dev/ttyUSB0 -s 9600


+Ethernet eth0: MAC address 00:18:84:**:**:**
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]
OpenWrt certified release, version 1.1 - built 22:32:28, May  7 2007

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

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


新設したシリアルコンソールの端子へシリアルケーブルを接続して、動作確認を行なっているところです。

JTAG の動作確認

JTAG でも TJTAG3 を使ってアクセスしてみました。なおこの JTAG の端子は、1 番ピン(TRST)を 100 オームの抵抗器を介して 14 番ピン(Vcc)でプルアップする必要がありました。プローブ動作は可能でしたが、フラッシュメモリを認識することができませんでした。

# ./tjtag3 -probeonly /cable:DLC5

================================================
 EJTAG Debrick Utility v3.0.2.1 Tornado-MOD
================================================

Detected IR chain length = 5
Number of device(s) = 1

IDCODE for device 1 is 0x00000001

Probing bus ... Done

Instruction Length set to 5

CPU Chip ID: 00000000000000000000000000000001 (00000001)
*** Found a Atheros AR531X/231X CPU chip ***

    - EJTAG IMPCODE ....... : 11111111111111111100000000000000 (FFFFC000)
    - EJTAG Version ....... : Unknown (7 is a reserved value)
    - EJTAG DMA Support ... : No
    - EJTAG Implementation flags: R3k DINTsup ASID_8 ASID_6 MIPS16 NoDMA MIPS32

Intial value of Control register is 0000000C
Intial value of status register is  0000007F
01111111 (0000007F)

Status bit 7 Busy Inverted pin 11 = 1
Status bit 6 *Ack          pin 10 = 1
Status bit 5 Paper-out     pin 12 = 1
Status bit 4 Select        pin 13 = 1
Status bit 3 *Error        pin 15 = 1
* means low = true, e.g., *Error

VCC connected
values of Control register after init 0x0000000C
value of status register after init   0x0000007F
system reset complete

Issuing Processor / Peripheral Reset ... Done
Enabling Memory Writes ... Skipped
Halting Processor ... ... Done
^C


今後、シリアルコンソール経由で DD-WRT などのファームウェアのインストールを試みてみたいと思っています。


0 件のコメント:

コメントを投稿

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