Android Dev Phone 1を購入してから3ヶ月弱経過してしまいましたが、ようやく、Android Dev Phone 1のファームウェアを1.5にアップデートしてみることにしました。
<Android Dev Phone用の公式ファームウェアイメージの配布先>
HTC – Support – Flashing your Android Dev Phone with a Factory System Image:
Android Dev Phone用のファームウェアアップデートツール、ファームウェアイメージ、操作手順などは、すべて上記のサイトで手に入ります。
上記のサイトで配布されているファームウェアイメージは、あくまで、Android Dev Phone用であり、T-Mobile G1やその他のAndroid端末では使用できないので注意が必要です。
ユーザ自身がファームウェアを書き換えたり、カスタマイズできるのは、Googleが販売しているAndroid Dev Phoneだけというわけです。
Android Dev Phoneのファームウェア書き換えでは以下のことが行えます。
・Dev Phoneを最新のAndroidシステムイメージの状態にする
・複数のAndroidプラットフォームのバージョン上で自分が開発したアプリケーションをテストして互換性を確認する
・おかしくなってしまったDev Phoneを工場出荷時の状態にリストアする
目的はともかく、Android Dev Phoneのファームウェアを工場出荷時のシステムイメージに書き換えることができます。
<サポートしている端末>
・HTC Dream・独自のfactory bootloader (hboot 0.95.3000) を持っているか、fastbootに対応している開発用のbootloaderを持っている端末
要するにDev Phoneしか対応していない?ということを意味しているのだと思います。
<ファームウェアのアップデート方法は2つ>
方法1では1つのリカバリーイメージファイルを使用し、方法2では2つのイメージファイル(Radio ImageとSystem Image)をそれぞれ使用します。
・方法1:リカバリイメージを使用する方法 アップデートされたリカバリーイメージを使用してDev Phoneのファームウェアを書き換える
SDカードからアップデート用のC-CPU用及びA-CPU用のリカバリーイメージをDev Phone上のリカバリーパーティションにコピーする方法です。
SDカードにアップデート用のC-CPU用及びA-CPU用のリカバリーイメージをコピーさえできれば、Windows、Linux、Macなど使用するPCに依存しないので、HTC的にはオススメの方法のようです。
この方法では、端末が独自のfactory bootloader(hboot 0.95.3000)を持っている必要があります。
また、A-CPU、あるいは、C-CPUの片方のファームウェアだけ書き換えることはできないので、片方のファームウェアだけ書き換えたい場合は、方法2のfastbootコマンドを使用します。
・方法2:fastbootコマンドを使用する方法 PCとDev PhoneをUSB接続して、PC上のfastbootコマンドを実行することによりファームウェアを書き換える
PC上でWindows、Linux、Mac用のfastbootコマンドを実行する必要があるため、環境を用意するのが面倒ですが、 方法1と違って、A-CPU、あるいは、C-CPUの片方のファームウェアだけ書き換えることができます。
この方法では、端末がfastbootとコンパチビリティのあるbootloaderを持っている必要がありますが、方法1のように端末が独自のfactory bootloader(hboot 0.95.3000)を持っている必要はありません。
ちなみに、Android Dev Phoneが使用しているプロセッサは、Qualcomm社のMSM7201Aで、アプリケーションプロセッサ(A-CPU)のARM11と通信制御用プロセッサ(C-CPU)のARM9などを1つに統合したワンチップです。
このため、fastbootの場合、イメージファイルが2つに分かれているのは、A-CPU用とC-CPUで使用するファームウェアが異なるからだと思われます。
※fastbootコマンドのソースコードは公開されているので、fastbootコマンド自体は誰でも作れそうですが、端末側のfastbootとコンパチビリティのあるbootloaderのソースコードは提供されているのでしょうか。
<実際のファームウェアアップデート操作手順>
※参考情報
・方法1:[Android] 続Android Dev Phone システムイメージ書き換え(Android1.5編)
・方法2:[Android] Android Dev Phone システムイメージ書き換え(Android1.5編)
<方法1>
・ファームウェアアップデート操作手順で重要なのは、方法1でも方法2でも、まず、Radio(C-CPU)側のファームウェアを書き換える必要があります。
For both the recovery-image and fastboot methods, you need to update the radio firmware on the device before you go on to update the system. This step is necessary both to ensure that a compatible radio image exists on the device and to satisfy version prerequisites enforced by the bootloader when loading the updated recovery image.
理由としては、最新のリカバリーイメージをロードする際、リカバリーイメージと互換性のあるRadio(C-CPU)側のファームウェアが端末上にあることを確実にし、ブートローダーによって強制されるバージョンの事前要件を満たすために必要だから、ということだそうです。
上で書きましたが、方法2は、方法1のように端末が独自のfactory bootloader(hboot 0.95.3000)を持っている必要はないとありますので、fastbootコマンドで書き換えられるのは、A-CPU側のファームウェア(System Image)のみということのようです。
無線部はFCCなどの認可が必要だと思うので、一般ユーザが無線部のファームウェア(Radio Image, C-CPU側)を自由にカスタマイズして書き換えが出来てしまうと困るから、ということなのかもしれません。
(1)C-CPU側のファームを書き換える。
上記の情報を適宜引用させて頂きながら説明します。
まず、Radio側のファームを書き換える前に、Baseband versionを確認しておきます。
Baseband version = 62.33.20.08H_1.22.12.29
Firmware version = 1.0
です。
次に、Android 1.5のRadioイメージファイルのota-radio-2_22_19_26I.zipをダウンロードします。
Radio側のファームの書き換えに限らず、ダウンロードしてきたイメージファイルはupdate.zipというファイル名にリネームして、SDカードのルート直下にコピーします。
SDカードにコピーする方法はなんでも良いので、ここでは、PCとDev PhoneをUSBケーブルで接続して、ddmsコマンドのFile Explorerメニューからsdcardフォルダにupdate.zipをドラッグアンドドロップしてコピーします。
1.(家のマークの)HOMEキーを押したままリブートし、いつものDroid君のあとに、(びっくりマーク)!アイコンが表示されるまで(押したまま)待つ。
↓こんな画面です。
2.キーボードを出して、ALT + l キーを押し、Android system recovery utilityを起動させる
※ここでの l キーは、エルキーです、アイキーでも、数字の1キーでもないです
↓こんな画面です。
3.ALT + s キーを押し、update.zipの書き込みを実行させる
↓こんな画面です。
書き込みのプログレスバーが消えたら、
↓こんな画面です。
(家のマークの)HOMEキー + (戻るマークの)BACKキーを押し、radio imageの書き込みを実行させると、矢印のイメージのあとに、自動的に再起動され、さらに、別のイメージ(ROMに矢印)が表示された後、通常どおり起動されます
これでRadio側のファームの書き換えは終了です。
62.33.20.08H_1.22.12.29 → 62.505.20.17H_22.19.26I
に書き換わっています。
(2)リカバリーイメージでC-CPU、A-CPU側のファームを書き換える。
以下のリカバリーイメージのsigned-dream_devphone_userdebug-ota-148830.zipをダウンロードしてきて、update.zipにリネームして、sdカードのルート直下にコピーします。
後の操作は(1)と全く同じです。
Baseband version = 62.33.20.08H_1.22.12.29
→ 62.505.20.17H_22.19.26I
→ 62.505.20.17H_22.19.26I
Firmware version = 1.0 → 1.5
ということで、めでたくAndroid Dev Phoneのファームウェアアップデートすることができました。
ちなみに、Android 1.5にファームウェアアップデートしてもロケールに日本語はまだ含まれていないようです。残念。