Android Dev Phone 升級 Eclair (2.1)

其實 Android 升級也不是像想像中麻煩, 但是升級之前需要做很多準備工作, 如果不是熟門熟路的話, 會不知道在做什麼, 但是如果熟悉了以後, 換 ROM 大概就像喝水一樣容易 .

以下就是我花一堆時間升級得到的心得. 希望對大家有用

本文章僅適用於 ADP1 (Android Dev Phone 1), 其他不適合.
其他相同的機型有 HTC Magic 和 T-Mobile G1

* 免責聲明: 任何改機行為皆有極大風險, 請自負風險, 本人不負任何責任 *

名詞解釋

先知道名詞是很重要的, 要不然連 Keyword 都 Search 不到 :p

IPL: Initial Program Loader

為一個小的 Loader, 主要負責 initial DRAM, CPU 等, 找到的資料有說到 SPL 刷死掉了以後, 可以靠 IPL 救.
不過這看起來要拆機了.

SPL : Second Program Loader

在 IPL 之後載入的 Loader. Loader 的角色有點像是 PC 的 Bios
SPL 可以燒 nbh(應該是每台機器的 key, 開發機不需要去弄這個), 提供 Fastboot 更新介面(等一下會提)
更新 SPL 風險是非常高的, 請確定你的手機型號之後再更新
進入 SPL 的方法, 關機時, 按住 camera + Power 鍵(掛電話鍵) 就可以進入 SPL

Fastboot:

進入 SPL 後, 可以切至 Fastboot mode, 可以透過 USB + Fastboot 的程式更新特定區域的 image .
這是當 Recovery 不能用的時候, 拿來緊急救援用的.

Recovery:

recovery
系統提供一個 Recovery mode, 這個 Recovery 是一個簡化的 Linux 系統, 內含一個 busybox 及其他的 tool
主要是用來更新 ROM 及其他開發者提供的功能. 像是 SPL 也是可以從 Recovery 內救.
以我目前使用的 RA-Dream 來說, 支援以下的功能

  • Reboot
  • Goto Console
  • USB-MS (摸擬成一個 USB Mass Storage, 就是讓 Android 變成 USB Flash 模式.
  • Backup/Restore : nandroid, 可以備份/回復 Nand, 常常換系統者必備.
  • Flash Zip from SD (這功能就是可以更新大部份的 ROM 了)
  • Wipe : 清除資料
  • Partition SDCard : 現在有的 ROM 支援 APP2SD, 尤其是 Eclair (2.1) 的系統一定要 APP2SD 才可以使用.
  • Shutdown

幾乎所有燒機的功能都包含在內了, 之前可能會有人找到 cm-recovery-1.4, 不過那個功能比 RA-Dream 差太多了.

進入 Recovery 的方法, Home + Power On Key.

RADIO:

這一般指的是 GSM 部份的 Radio Code. 因為 GSM 都是自己跑一部份專有的 Code.

ROM:

通常講到 ROM 都是講到 Android 主系統, HTC 有協助 Google 開發系統, 也有很多第三方放出來的 ROM 可以用, 如果很愛刷 ROM 換系統, 或是自己 compile 都是可行的

第三方比較有名的有

2.1

1.6

APP2SD:

ADP1 的 Flash 只有 192MByte, 所以放 Application 不太夠, 所以大家就將腦筋動到 SD Card 上.
這個功能就叫 APP2SD. 在 Linux 下不過就只是一個 shell script.

早期 APP2SD 要自己弄,
現在新的 ROM 都支援 APP2SD, 更新的 2.1 都一定要啟動 APP2SD 才能使用

有了這些基礎知識以後, 接下來就是準備開始動手了.

* 免責聲明: 任何改機行為皆有極大風險, 請自負風險, 本人不負任何責任 *

準備

Android SDK 提供了 adb shell command 的功能 (要啟動到 recovery)
fastboot 提供了在 SPL 狀況下可以更新 image 的機會.

更新 Recovery.img

我個人喜歡用 RA-Dream 先下載 recovery-RA-dream-v1.6.2.img 然後存到 SDCard 內.

重開機按 Home + Power On 進入 recovery mode.

在 PC 端進入 adb mode

[shell]
# adb shell
切至 ADP
$ su
# mount -a
# flash_image recovery /sdcard/recovery-RA-dream-v1.6.2.img

[/shell]

如果要用 Fastboot 升級也是可以, 但是要先更新 SPL. 那更麻煩…..

[shell]
# fastboot devices (確認 devices)
# fastboot flash recovery recovery-RA-dream-v1.6.2.img
[/shell]

更新 Radio Image

如果不是 2.22.19_26I, 請更新你的 Radio Image, 可以啟動進 SPL 看一下現在的版本

可以從 HTC 下載 2.22.19_26I, sapphire-port-dream 也有一份 

ota-radio-2_22_19_26I.zip 下載之後放到 SDCard 內, 然後重開機進入 Recovery mode.
如果這邊更新 Ra-dream recovery.img 己經成功了, 那就可以直接進 Recovery Mode, 切進 USB-MS mode, 就會變成 Mass Storage, 可以直接從電腦傳檔案進去.
用 flash zip from SD 的功能, 就會列出來, 直接選擇就可以.
解壓完重開機即可.

這就是我愛用 Ra-dream recovery.img 的原因 XD

更新 SPL

第一件事情就是要確認機器的版本, 這是一張 SPL 的圖案, 這是改過的
SPL

[text]
DREAM PVT 32B ENG S-OFF
HBOOT-1.33.2005 (DREA10000)
CPLD-4
RADIO-2.22.19.26I
[/text]
第一行是 PVT 32B 是代表這隻是 Google ADP1 (Dream/Tmobile G1)
第二行是目前 SPL 的版本, DREA***** 英國, DREA10000 美國, DREA11000 歐洲
第四行是 Radio 的版本
更新完 SPL 就可以裝第三方的 Android ROM, 但是 HTC 版的就不能用了. 如果要用, 就要降級

以下是更多的說明

SPL Info
– The G or H at the end identify if it’s a Google or HTC SPL
– ENG : Engineering version
– SHIP : Shipment version
– DEV : Development version (ION)
– S-off and S-on : Security on and off (writing directly to nand or not) , most probably not SPL linked.
– PVT 32A : 288MB RAM / Qualcomm MSM7200a
– PVT 32B : 192MB RAM / Qualcomm MSM7201a
– CPLD XX : What does this mean?

我目前是使用 Danger SPL

下載後丟到 SD Card, 進入 Recovery Mode, 然後用 Flash zip from SD card 就可以.

備份系統

當然我就會講, 進入 Recovery Mode, 選 Backup/Restore 的功能, 選 NAND Backup 即可.
(其實我是沒有在 backup 的 (爆))

規劃 SDcard

我選用的這一版 Recovery 有 Partition SD Card 的功能

但是我當時是用 Linux 去預先規劃, 以我 2G SD Card 為例

Partition 1 : FAT32 :  1.4GByte
Partition 2: ext3 : 500MByte
Partition 3: Linux Swap : 96MBytes

Partition 2 也可以選用比較新的 ext4, 不過這就要比較新版的 ROM 才支援這個功能, 一般來說, 使用 ext3 是支援度最廣的.

升級 ROM

接下來就是下載 ROM 了.
以 2.1 為例

2.1

點進去後找到 ROM 下載, 丟到 SDCard 內

然後選 flash zip from SD.

以 CyanogenMod-5 為例, 會下載
update-cm-5.0.7-DS-test1-signed.zip
gapps-ds-ERE36B-signed.zip
丟進去一起 Flash zip from SD 就好了, 如果是從 1.5/1.6 升級上來, 那記得先 wipe data. 這樣比較不會出問題.

如果是 2.1 的話, 第一次啟動可能需要 5~15 分鐘, 需要耐心等候.

有了 RA-Dream 省了很多事情, 所有的動作都可以 Flash zip from SD.
而新的 ROM 都支援 APP2SD. 所以很多網路上的文件都不太適用了.

然後這麼方便的結果就是 ROM 一直換一直換…..

目前用到 CaNNoN202 這個不錯, CyanogenMod-5 也可以.

KiNgxsKxKlair功能很強, 但是問題很多, 連 Google Applications 都啟動不了.
不過可以看一下 HTC Legend(?) 大概的樣子是長得什麼樣. 我覺得很炫就是了 🙂

目前的缺點就是..
我的 Camera 不知道為什麼都沒有辦法再使用了, 不知道是 Hardware 的問題還是 Software 的問題.
不過之前 ADP1 早就被我玩爛了(大概是自己編kernel的關係), 所以這也不是缺點了 (默)…

Ref.

On this day..

Related Posts
  1. Using Mozilla Firefox Mozilla Firefox 3.6.3 on Windows Windows XP

    您好,
    看完您整理過後的升級步驟,
    相當佩服您的耐心啊~~

    嗯~是這樣的,我手邊也有一台ADP1,
    背殼是有機器人圖樣,也就是google當時出的實驗機,
    我也是照相功能不行運作,
    如果沒記錯,我是在刷過歐洲版G1後才不能照相的。

    不知您之後是否有解決照相的問題呢?

  2. Using Mozilla Firefox Mozilla Firefox 3.6.3 on Mac OS X Mac OS X 10

    您好!想請問我安裝完後等了一個小時多仍無法進入系統,且回到Recovery讀不到SD卡…
    目前手機顯示 FASTBOOT狀態顯示:
    DREAM PVT S-on
    HBooT1.33.2005
    CPLD-4
    RADIO-2.22.19.26I
    想向您請教方法是否有方法改回S-off ?
    謝謝。

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>