仙石浩明の日記

2007年12月10日

La Fonera+ を買ってシリアル・ケーブルをつないでみた hatena_b

FON から無料キャンペーンのお知らせが来たので、 土曜日に秋葉原の九十九電機へ行ってラ・フォネラ+を ?台買ってきた。

La Fonera+

一台 1000円。 以前から La Fonera+ に興味はあったのだが、 3800円はチト高いなぁと思って手を出さずにいたので、 この機会に是非入手すべく、朝早く (といっても 10:00 ごろだが) から店頭へ。

ツクモ パソコン本店には開店前から行列ができている。 本店の整然とした並びとは対照的に、 DOS/V パソコン館では La Fonera+ の棚の前に無秩序に人が群がっている。 私は大阪人なので、並ぶのはニガテである。 なので DOS/V パソコン館の前で開店を待つことにする。 ちなみに、 ツクモケース王国や 12号店は開店時間が 11:00 なので誰も並んでいない。

10:30 開店の合図と同時に La Fonera+ 目指して飛びかかる客数人 (^^;)。 みるみる間に棚の上の La Fonera+ が減っていく。 無事入手して足早に秋葉原を後にする。

帰宅してすぐ、La Fonera+ 裏面のゴム足をはがす。 う、トルクス (TORX は登録商標なので、ヘックスローブ Hexlobe とも呼ばれる) ねじだ。 La Fonera は普通の「+」ネジだったのに... 慌てて近所のホームセンターに走る。 ねじのサイズは T-9H のようだ。 1サイズ小さい T-8H でも使えた。

La Fonera+ 内部

La Fonera にはヒートシンクがあったのに、La Fonera+ には無い。 ↑ 基板下辺に、JP1 と書かれたジャンパ・ピンが 4本立っている。 基板裏を見ると、一番右は明らかに GND である。 真ん中二本は信号線のようなので、 UP-12C (USB携帯電話メモリー転送ケーブル) の線を、 JP1 左から NC(つながない)、白(Rx)、緑(Tx)、黒(GND) の順につないでみると、 無事 RedBoot の出力を PC 側で見ることができた。

google で検索してみると、 UP-12C の緑が Rx で、白が Tx と書いてある説明が多いが、 これは緑を (デバイスの) Rx につなぐという意味で書いた (オリジナルの) 記述が、 「緑=Rx」と誤解されて広まったためではないだろうか? デバイス (La Fonera+) の Rx (受信入力) につなぐのは、 UP-12C の Tx 信号 (送信) 線だから、 「緑=Tx」「白=Rx」と書くべきだと思う。 逆に、ジャンパ・ピンの説明をするなら、 緑をつなぐピンが Rx ということになる。

つまり、JP1 左から (La Fonera+ 側から見て) Vcc, Tx, Rx, GND だと思われる。 ちなみに UP-12C の赤は電源なので接続してはいけない。 赤をショートさせると、 USB の電源供給能力一杯の電流が流れ、 UP-12C 本体が過熱する (でも壊れなかった。経験者談 ^^;)。

La Fonera+ にシリアル・ケーブルをつなぐ

RedBoot は boot script を自動的に実行しようとするので、 2秒以内に ^C を入力すると、 RedBoot のコマンドプロンプトが表示される:

senri %        cu -l ttyUSB1
Connected.
+Ethernet eth0: MAC address 00:18:84:xx:xx:xx
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> 

コマンド一覧を表示させてみる:

RedBoot> help
Manage aliases kept in FLASH memory
   alias name [value]
Set/Query the system console baud rate
   baudrate [-b <rate>]
Move Atheros Board Data information
   bdmove 
Restore Atheros Board Data information
   bdrestore 
Manage machine caches
   cache [ON | OFF]
Display/switch console channel
   channel [-1|<channel number>]
Compute a 32bit checksum [POSIX algorithm] for a range of memory
   cksum -b <location> -l <length>
Display (hex dump) a range of memory
   dump -b <location> [-l <length>] [-s] [-1|2|4]
Execute an image
   exec [-b <argv addr>] [-c "kernel command line"] [-w <timeout>]
        [<entry point>]
Manage FLASH images
   fis {cmds}
Manage configuration kept in FLASH memory
   fconfig [-i] [-l] [-n] [-f] [-d] | [-d] nickname [value]
Get Key number
   get_key 
Get Mac addresses
   get_mac 
Get Serial number
   get_serial 
Execute code at a location
   go [-w <timeout>] [-c] [-n] [entry]
Help about help?
   help [<topic>]
Display command history
   history 
Set/change IP addresses
   ip_address [-l <local_ip_address>[/<mask_len>]] [-h <server_address>]
Load a file
   load [-r] [-v] [-d] [-h <host>] [-p <TCP port>][-m <varies>] [-c <channel_number>] 
        [-b <base_address>] <file_name>
Compare two blocks of memory
   mcmp -s <location> -d <location> -l <length> [-1|-2|-4]
Copy memory from one address to another
   mcopy -s <location> -d <location> -l <length> [-1|-2|-4]
Fill a block of memory with a pattern
   mfill -b <location> -l <length> -p <pattern> [-1|-2|-4]
Network connectivity test
   ping [-v] [-n <count>] [-l <length>] [-t <timeout>] [-r <rate>]
        [-i <IP_addr>] -h <IP_addr>
Reset the system
   reset 
Set values
   set 
Display RedBoot version information
   version 
Display (hex dump) a range of memory
   x -b <location> [-l <length>] [-s] [-1|2|4]

La Fonera の RedBoot と比べると、 bdshow コマンド (Display Atheros Board Data information) が削除され、 get_key, get_mac, get_serial, set コマンドが追加されているが、 機能的には大差ないようだ。

フラッシュ・メモリの内容は、こんな感じ:

RedBoot> fis list
Name              FLASH addr  Mem addr    Length      Entry point
RedBoot           0xA8000000  0x80040400  0x00030000  0xA8000000
loader            0xA8030000  0x80100000  0x00010000  0x80100000
image             0xA8040000  0x80040400  0x00230004  0x80040400
image2            0xA8660000  0xA8660000  0x00140000  0x80040400
FIS directory     0xA87E0000  0xA87E0000  0x0000F000  0x00000000
RedBoot config    0xA87EF000  0xA87EF000  0x00001000  0x00000000

「vmlinux.bin.l7」や「rootfs」の区画があった La Fonera とは様変わりしている。 サイズからいって、「loader」は単なるイニシャル・ローダであろう。 「image」「image2」はカーネル・イメージ? 0xA8270004 ~ 0xA8660000 の 4M Byte 弱 (0x3EFFFC = 4128764) が空いているが、 おそらくここにルート・イメージがあるのではないかと思われる。 ルート・イメージにしては少し小さすぎる気がするが、 おいおい解析していく予定。

設定 (fconfig) は次のようになっていた:

Run script at boot: true
Boot script:
.. fis load -b 0x80100000 loader
..  go 0x80100000
Boot script timeout (1000ms resolution): 2
Use BOOTP for network configuration: false
Gateway IP address:
Local IP address: 192.168.1.1
Local IP address mask: 255.255.255.0
Default server IP address: 192.168.1.254
Console baud rate: 9600
GDB connection port: 9000
Force console for special debug messages: false
Network debug at boot time: false

なぜ RedBoot から直接 Linux を起動せず、 「loader」を起動しているのか謎であるが、 変則的な fis list と関係があるのかも知れない。 また、La Fonera と異なり、 La Fonera+ ではシリアル・コンソールが有効になっていない。 すなわちカーネルの起動メッセージが出力されず、 ブート後にログインすることもできない。

- o -

さて、一段落ついたところで、 「La Fonera+ の登録」をしておこうかと思い、 同梱されていたマニュアルにしたがって http://registerlafonera.fon.com にアクセスしたところ、

EN
You are not connected through your “MyPlace” signal. Please choose the “MyPlace” signal in your “Wireless Network Connection” window and click connect. See image.

日本語
あなたはMy Placeでの接続をなさっておりません。 'ワイアレスネットワークコ ネクションより 'My Place'を選択して接続し直してください。画像をご覧になってください。

と表示されてしまった。 今まで何台かの La Fonera を登録してきたが、 スムーズに登録できたためしがない。 FON の主旨は面白いのに、 こういう細かいところのツメが甘いのは、とてもモッタイナイ。 ついでに言うと、 あいかわらず日本語が微妙なのはなんとかならないものか。

「あなたはMy Placeでの接続をなさっておりません」などと 決めつけられてしまったが、 もちろん決してそんなことはない。 WPA パスフレーズとして S/N を入力して接続に成功したのだから、 確かに目の前の La Fonera+ の My Place 経由で インターネットに接続しているはずである。

さて、どうしたものか、と思いつつ、試しに FON_AP のほうを試してみたら、 あっさり登録できてしまった。 なんだかなぁ... これでは以前の La Fonera と同じ登録方法ではないか。 FON_AP 経由でルータ登録を行なうこの方法では、 第三者が勝手に他人の La Fonera+ を登録できてしまう。

Filed under: La Fonera — hiroaki_sengoku @ 07:28

1 Comment

  1. 2008年9月18日にヨドバシカメラで購入したLa Fonera+は、取り付けネジが「+(プラス)ネジ」に変更されていました。また、9000番ポートでのtelnet接続ができなくなているようです。

    Comment by mrt — 2008年9月18日 @ 14:42

RSS feed for comments on this post.

Sorry, the comment form is closed at this time.