Top > DreamSapphire > DreamAdp1Donut
Table of Contents

参照ページ

初期状態

fastbootモードの画面に示されるファームウェア等の初期バージョンは次のとおり。

 DREA*** PVT  32B
 HBOOT-0.95.2000
 CPLD-4
 RADIO-1.22.14.11
 
 Sep  2 2008
 
           Serial0

この「Dream」は、eBayで手に入れた(発送元は香港のようだった)ものだが、 ボディはAndroid Dev Phone 1のボディデザインとは異なり 前面上部にT-Mobileのロゴがあるにもかかわらず、 すでにroot取得済みで、 Superuser.appではなくSuperUser Whitelistというアプリが入っており、 Settings > About phone > Model numberの項目には Android Dev Phone 1と表示される、というものである。

搭載されていたAndroidのバージョンは1.5だったが、 上記引用に示されるradio imageのバージョンは 参照ページによるとadp1のAndroid 1.1に対応したものである。

また、HBOOTのバージョンも (参照ページによると)adp1のデフォルトのHBOOTバージョンである0.95.3000とは異なる。

このように、本稿で作業の対象とした「Dream」は、 製品版のHTC DreamないしT-Mobile G1とはファームウェアに違いがあることには 注意されたい。

リカバリの書換え

「一般の」DreamではDangerSPLとかEngineeringSPLとかが入っていないと

 fastboot flash recovery ...

ができないらしいが、このDreamではUSB接続したPCから

 fastboot flash recovery recovery-RA-dream-v1.7.0.img

を実行すると一発で問題なく書き込めて、問題なく起動した。

どのSPLとradioを入れれば文鎮化を避けられるかの検討

SPL

Dream用のSPLは DangerSPL とか HardSPLとかEngineering SPLとか いろいろあるみたいだ。どれにするかはいま調査中。

機能的にはDangerSPLまたはHardSPLがよさそうで、

  • fastbootが可能な点は両者に共通している。
  • HardSPLは.nbhファイルのフラッシュ時にCarrier IDをチェックしない (ので異なるキャリアの.nbhイメージを入れられる)という点でアドバンテージがある。
  • DangerSPLは/cacheパーティションのメモリを減らして/dataパーティションを拡張する (for CyanogenMod5/6 ready)。 という具合になっている。

なお、DangerSPLはMagicのEngineeringSPLのひとつ(1.33.2005)をDreamに移植したもの という触れ込みだが、ダウンロードしてイメージを比べてみたところ、 両者はまったく同じものであった。

radio imageとSPL、radio imageとOSの相性

  1. まず、 DangerSPLのページ からは、DangerSPLは特定のradioを必要とするようにも読めるが、 まだ同じページにはradio 1.x, 4.x, 6.xはダメ・ゼッタイとも書かれていて、 対応するradio imageには一定の幅があるようにも読める。
  2. 一方、 HTC Developer Center: Flashing your Android Dev Phone with a Factory System Imageのダウンロード欄 には、Androidのバージョンに応じてradio imageが指定されており、 OSのバージョンもSPLを選ぶということが分かる。
  3. また、 Radio_Update - android-roms - How To: Install a Radio Update. - Android ROMs will host updates to the OS both Custom and Offical. - Google Project Hosting:にも カスタムROMとradio imageの対応表があり、ここでもやはり カスタムROMのベースとなったAndroidのバージョンに対応して radio imageのバージョンが決まっているように見える。
  4. しかし1.1対応のradio imageでADP用Android 1.5が動いている本機の現状からすれば、 OSとSPLとの対応関係はある程度の幅をもつものなのかもしれない。
  5. かりにOSが起動できなくなっても、 OS本体(mtdエリア)はリカバリが起動しさえすれば書換えられるが、 SPLとradioの相性はリカバリの起動にも影響し、文鎮化を招く可能性があるので恐ろしい。

結論

本節ここまでに上げたページの対応を見ていると、

 radio 2.22.19.26i

にしておくとDangerSPLに対応し、かつAndroid 1.5と1.6にも対応していることになる。

HardSPLには対応するradioは指定されていないが、 上記3.の表とDangerSPLは同じサイトで紹介されているので、 3.の表にあるradioのバージョンすべてに対応しているのではないかと思われる。

また、HTC Dream: DangerSPL - CyanogenMod Wiki: > 3. Installation > 3.2 Prerequisite にはT-Mobile/USについては2.22.19.26iの代わりに 2.22.23.02を用いるようにとの記述もある。

  1. そこで、
    • DangerSPLとradio 2.22.19.26i
    • HardSPLとradio 2.22.19.26i のいずれかを用いる。
  2. なお、本機にT-Mobileのロゴが刻印されていることを考慮に入れると、
    • DangerSPLとradio 2.22.23.02
    • HardSPLとradio 2.22.23.02 の組み合わせも試す価値がある。

(2011-07-22)

HardSPLを入れてみる

radioは初期状態のまま、HardSPLを入れてみる。 HardSPLはupdate.zip形式になっているので簡単だ。

  1. HardSPLのzipファイル を/sdcardにコピーする。
  2. リカバリを起動する。
  3. Flash zip from sdcard でHardSPLのzipファイルを選んでインストールを開始
  4. リブートしてインストールを継続。 リカバリも、OSも、問題なく起動した。

HardSPL適用後のfastbootモード画面は次のとおり。

 DREA*** PVT  32B
 HSPL10.95.3000
 CPLD-4
 RADIO-1.22.14.11
 
 Oct 20 2008
 
           FASTBOOT

ADP1 Android 1.6のインストール

二つの方法の違い

参照ページの一番目 によると、次の2つの方法がある。

方法ダウンロードするファイル
1update.zipによる方法Recovery Image Package
2fastbootによる方法System Image Package

両方のファイルをダウンロードして調べてみると、 両者間には次のような違いがあることがわかる。

パーティションRecovery Image Package(方法1)System Image Package(方法2)
bootoo
recoveryx(*1)o
radioox(*2)
systemoo
userdatax(*3)o

上記のうち、System Image Packageにおけるradioイメージの欠如(*2)については 参照ページの一番目 に記述があるが、 Recovery Image Packageにおけるrecoveryとuserdataの欠如(*1,*3)については 同ページでは触れられていない。

今回は、リカバリは書換えないつもりなので*1は 問題にならないが、*3の理由がわからないのは気持が悪い。 またradioイメージは別に書きこむので、*2も問題にならない。

そこで今回は方法2の手順を若干改変して実施することにする。

(2011-07-24)

手順

radioイメージのフラッシュ

radio 2.22.19.26i はすでにupdate.zip形式なので、リカバリからこれを適用する。

  1. radio 2.22.19.26i をSDカードのルートへコピー。
  2. 端末をリカバリモードで再起動。
  3. Flash zip from sdcardを選ぶ
  4. 先ほどコピーしたradio...zipを選ぶ。
  5. homeキーを押して確認に応えると適用が始まる。
  6. home + back キーを押すとradioイメージの書き込みが始まる。
  7. 自動的にリブートがかかる。

bootイメージとsystemイメージのフラッシュ

system image package 14721 は、各パーティションの .img ファイルをアーカイブしただけのものである。 これは

 fastboot update ...

で適用可能らしいが、今回はこの方法はとらない。 アーカイブを展開し、そこに含まれる個別の .img ファイル(必要なもののみ)を

 fastboot flash <PartitionName> <ImageFileName>

でフラッシュする。

  1. system image package 14721を、母艦PCの適当な場所に展開し、その場所へ移動する。
  2. 端末をfastbootモードで再起動。
  3. 必要ならuserdataとcacheパーティションを消去
     fastboot erase userdata
     fastboot erase cache
    今回は1.5から1.6へのアップグレードだったので、これは行わない (参照ページ1のここにも、 アップグレード時のみこれらを省略して良いと書いてある)。
  4. bootイメージをフラッシュする。
     fastboot flash boot boot.img
    bootイメージのフラッシュはすぐ済む。
  5. systemイメージをフラッシュする。
     fastboot flash system system.img
    systemイメージのフラッシュは数十秒の時間がかかる。 その間なにも表示されないがあわてないこと。
  6. recoveryは先だって入れたものをそのまま使いたいのでフラッシュしない。 またuserdataも上に書いた理由で今回はフラッシュしない。
  7. 端末をリブート
     fastboot reboot

作業終了後のSettings > About phone のバージョン等の部分は次のとおり。

adp1-DRC83.png

不具合

adb shell以外でsuが失敗する

症状

adb shellのもとではsuコマンドでスーパーユーザになれるが、それ以外の場合 (ターミナルエミュレータからsu実行 or アプリから直接)には スーパーユーザになれない。

失敗した方法

次の方法及びその組み合わせはうまく行かなかった。

  • Superuser Whitelistをマーケットからインストール(インストール失敗)
  • 前バージョン(ADP1 1.5)のsuコマンドへ置き換え
  • www.magicandroidapps.com から取得したsuコマンドへ置き換え (これは部分的に成功。ただしwhitelistの操作ができず)
  • 前バージョン(ADP1 1.5)のバックアップから /system/app/Superuser.apk を導入

成功した方法

ただし、リカバリがRA-dream-1.7.0だと、updater-scriptのsignatureエラーになって 導入できないので、リカバリを recovery-clockwork-2.5.0.7-dream.img に置き換えてから改めて導入する。

(2011-07-25)

Tag: HTC Dream T-mobile G1 Donut





添付ファイル: fileadp1-DRC83.png 1742件 [詳細]