2008年11月30日(Sun) どんより [長年日記]
● [n810] USB Micro A-Mini Bケーブルづくり 失敗編
ちょっと時間ができたので、決行することにした。
まず、BoxwaveのMinisyncケーブルから、Mini Bプラグをとりだす。このケーブルは、USBスタンダードA-まきとり-Mini B-電源プラグとつながっているもの。実はここで失敗が始まっていたのだけれど、Mini Bからまきとりに行くケーブルをMini Bの根本で切断した。スタンダードAとまきとりを通ってくるケーブルの結線は下記の通り。
Signal Name | スタンダード A | Mini syncケーブル(まきとりに行く側) |
---|---|---|
VBUS | 1 | 緑 (メタル線自体に色がついている) |
D- | 2 | 灰 |
D+ | 3 | 白 |
GND | 4 | 青 (メタル線自体に色がついている) |
標準の色とは違っていてイヤな感じ。
Minisyncケーブルの電源プラグ側の結線は下記の通り。
Signal Name | Mini syncケーブル(電源プラグに行く側) | 電源プラグ |
---|---|---|
VBUS | 青 (メタル線自体に色がついている) | ? |
GND | 緑 (メタル線自体に色がついている) | 外側 |
あれ。Mini BからスタンダードA側と電源プラグ側で色が違う。
次に、MotorolaのMicro-Mini変換ケーブルをぶった切った。こちらは赤、白、緑、茶、黒と期待通りの色のケーブルが見えた。
ここで結線の確認。Mini syncケーブルのMini BプラグとMotorolaの変換ケーブルのMini Bレセプタクルをつなぎ、むき出しの配線どうしで結線の確認。
Signal Name | Mini syncのケーブル(電源プラグに行く側) | Motorolaのケーブル |
---|---|---|
VBUS | 青 | 赤 |
D- | NC | 標準と同じなら白 |
D+ | NC | 標準と同じなら緑 |
GND | 緑 | 黒 |
信号線がつながってません…。そうか、電源プラグに行く分には信号線の配線は不要でした。ここでMini syncケーブルについていたMini Bプラグは使えなくなることが決定。モールドばらしてみたけど救出できませんでした。ごめん。そして確かに、中で青と緑がつながってることを確認。
せめて充電機能だけは救いたいと思い、Mini syncケーブルの標準Aと電源プラグをつないだ。疑いつつも青と緑、緑と青をつないで、実機で充電の試験。極性違ってたら壊れるよ、と思いつつ充電をはじめてもらうと…N810の「Charging」の表示が見えました。しかしほっとしたのも束の間「! Not charging」の表示に。がーん。
試しに配線を逆にして充電の試験をしてみたら (結局したのかよ)、充電状態にはなりせんでした。極性は合ってたけど半田づけしたところの電圧降下がでかすぎるんだね。
その後純正の無改造の充電器で充電は成功しました。よかった本体は壊れていない。
今日壊したもの: Mini syncの充電ケーブル。足りないもの: Mini Bプラグ。欲しいもの: 自動車で充電するための、標準A-電源プラグのケーブル。部品が手に入れられたらまた挑戦する。
● [DocoMomo] grub-setupを使ってみる 先はまだまだ長いかも編
セクタあたり512バイト、32ヘッド、トラックあたり63セクタで 1シリンダあたり1032192バイトのイメージをつくってみました。 最初のシリンダはMBRとかパーティションテーブルとかあまりとか。
パーティションの中身はvfatにします。
最初のシリンダと2番目以降のシリンダをくっつける。
とりあえずマウントしておきます。
さて。おたのしみはこれから。 okujiさんのやり方を真似しながら grub-setupしてみます。 あ、まずは今のMBRの状態を確認しておこう。
期待通り、パーティションテーブルしか無さそうです。
grubのブートローダのインストール。
grubのインストール先(いろいろモジュールの格納先)がもらえるコマンドかコマンドラインオプションが欲しくなりますね。普段はいらないかな。 それはそうと、312581808って何の大きさだろう。 バイトだとすると298.1MBほど。うーん…。 MBRの状態を確認してみよう。
まだ変化してない。じゃあumountしてから。
うーむ…。
● [DocoMomo] qemuのイメージを作ってみる qemu-imgでもダメですか編
ディストリビューション大集合までに Momonga 5対応のDocoMomoつくる とか立てといたフラグはもろに踏んじゃったわけだけど、あきらめずにがんばる。
dd if=/dev/zeroと一緒ですかそうですか。
● [DocoMomo] grub-setupに渡すdevice.mapにイメージファイルへのパスを書いたらちょっとだけ進んだ
風呂でdevice.mapがあやしいことに気づいた。デバイスのところにハードディスクイメージへの絶対パスを書いてみよう。
やった。ちょっと進んだよ。 qemu-hd0-0.imgの大きさは1074511872バイトで、これは2098656の512倍。 今度は期待通りのイメージを見てくれているようだ。 grub-setupに-vを2つつけるとより詳細な動作状態を表示してくれる。
パーティションテーブルは読んでもらえたかな。
えーと。partition 1から3は設定してない。これは良い。 (hd0,1)ってpartition 0のことだっけ1のことだっけ。 最後は下記のように失敗している。
というわけで(hd0,0)で試してみる。
(hd0,1)の方が正しそうだ。
あとはジオメトリの問題かな。sfdiskは期待通りのジオメトリを推測してくれる。
が微妙に文句を言われてるしなあ。
下記のようにすると、
fatとして読む時はいっつもsector: 0x0 offset:0 size:0を読もうとしていることがわかる。
あ、partedでパーティションテーブルつくればいいのかな。
というわけで時間切れです。また次の機会に。
そうそう、ホストのMBRに書いちゃっただろうから、grub legacyからgrub-installもしておきました。
(追記) help-grubに同じあたりで止まっている人を発見。パーティションテーブルをなんとかするか、grubにジオメトリを教えてあげるか、かしらん。
最近のツッコまれどころ