Rstream A1にいろいろ焼いてみる: Orange Anrdoid 2.1


CyanogenMod6 Rom 2.2 Build77 の内容を元に作業を試みている。

How to upgrade from Rom 2.1 to Rom 2.2:
1) Install the Oficial ROM 226D using the TOOLS (RUT or SUT)
2) Get the “RomManager” app from market or download here
3) In “RomManager” select “Flash ClockworkMod Recovery”
4) Select “Commtiva Z71” phone (compatible with Boston and clones)
5) Copy the rom cm_z71_full-xx.zip and the Google Apps zip file to sdcard
6) In “RomManager” select “Install ROM from sdcard” and choose the Rom file
7) Select “Install ROM from sdcard” and choose the Google Apps zip file
8) Reboot in Recovery Mode (camera+vol up+power)
9) Wipe All phone data
10) You could enjoy Froyo 🙂

まず1)の「Oficial ROM 226D using the TOOLS」、これはどんなバージョンのAndroidなのかを確認してみた。


Model number: Orange_Boston
Firmware version: 2.1-update1
Baseband version: MP1_850
Kernel version: Apps_2.6.29
Build number: 4015_2_26D
どうやらBaseband versionは変わらないようである。

このROMの特徴は、どうやらOrangeという携帯電話会社用だったようで、全体的にオレンジ色のデザインで作られている。
また、いろいろアプリが入っている。

キー操作とカメラは正常に動作している。
adb接続すると一般ユーザ。
日本語リソースなし。

次に、ROM Managerとしてリンクが書かれているものの確認。
最新のROM ManagerはAndroid 2.2以降の対応であるため、Android 2.1に対応しているv2.0.3.1でした。
正常にインストールできたものの、root取得でつまずいてしましました。

z4root v1.3.0も、UniversalAndroot-1.6.2-beta5もうまくいきませんでした。

なので、あとの手順をやるのは諦め、手動でfastbootによりclockwork mod recoveryを書き込み、update-cm-6.1.2-Z71-signed.zipを適用してみた。
その結果、
モデル番号: Z71
Androidバージョン: 2.2.1
ベースバンドバージョン: MP1_850
カーネルバージョン: 2.6.35.9-cyanogenmod rmcc@arachnid #3
Modバージョン: CyanogenMod-6.1.2-Z71
ビルド番号: FRG83

キーはおかしい、カメラ不可、の状態だった。
日本語リソースはあり。

MOMAXのポータブルバッテリー iPower ProとiPower Lite


MOMAXのポータブルバッテリーのうち、大容量の8000mAhを誇るiPower Proと、その小型版 5400mAhのiPower Liteの両方を、つい魔が差して買ってしまった。

メーカ直販で買ったところ、1週間しないうちに到着。

iPowerLiteの方は、なぜかパッケージが2つありました。

謎の白箱の中身はカレンダーでした。

で、iPower Pro 8000mAhの中身は・・・

そして、iPower Lite 5400mAhの中身は・・・

両方を見比べてみると・・・(左:iPower Pro、右:iPower Lite)

違いはACアダプタがあるか、ないか、だけでした。
黒いバッテリー収納袋も含めて、どちらも、まったく同じものでした。

さて、実際、どれくらいの大きさなのかを比べてみた。
まず、うちにあるSONY CP-ALと比較。

なんかちょっとわかりにくい感じ・・・

3DSとDS Liteと、iPower Pro/Liteを積み重ねて見た。

実際、持った感じは、DS Liteを持った時と非常によく似ている。

iPower Proがいいか、iPower Liteがいいか、という問題についてだが、
非常に難しい。

鞄にしまっておくのであれば、どちらでも大差はない。

ポケットに忍ばせるには、ProにしろLiteにしろ、ちょっと大きい。
ただ、Liteは、まだぎりぎり入るかな?というラインである。

バッテリーの性能としては、
・iPower Lite: 1A出力が2系統。
・iPower Pro: 2.1A出力が1系統、1A出力が1系統。

さすが、2.1A出力は、うちのスマートフォンXperia X10 mini proの、急速充電可能でした。

これからしばらく使ってみて、そのうち続報を書きたいとおもいます。

Rstream A1をCM7.1にあげる方法 とりあえず報告版


これより新しい手順を「Rstream A1をCM7.1にしてカメラとか使う手法 2012/01/09版」にて公開中。

— 以下は古い記述 —
Rstream A1をCM7.1にあげる際、安定して作業が行うことができる方法をいろいろ試したところ、以下の手法であれば間違いなくCM7.1にあげることができるということが判明した。

ただし、現状、いくつか問題はあるが、ポイントとしては・・・
・3GとWifiがおそらくちゃんと動作してそう
・フロントパネルのボタン割り当てがおかしい
・カメラが使えない
といったところ。

ボタンが変になるというのは・・・

いままで1:メニュー、3:戻る、だったものが
4:メニュー、6:戻るで、おそらく1も戻る、となるという点です。
また、ClockworkMod Recoveryでの決定ボタンは側面の「シャッターボタン」となる。
(2011/12/22 追記: キーの件は、コメント欄の、きもたかさんの調査により/system/usr/keylayout/qwerty.klをこちらに置き換えることで対応が可能ということが判明しました。現状は2:検索 キーだけが動作しない状態です)

なお、「MUCHTEL A1純正firmware→fastbootでCWM Recoveryを書き込む→CWM RecoveryからCM7.1を導入」という手順は、導入後、正常に画面が上がってこず、成功しなかった。
いろいろ試していると、成功したこともあったのだが、成功条件が特定できなかった。

手順1
とりあえず、MUCHTEL A1純正Android 2.2にあげる。
いまのところ、どんな状態になっても、電源を切って、「ボリュームUP」+「ボリュームDOWN」を押しながら電源を入れて入るFTMモードになり、その状態でMUCHTEL版SUT1.7.4を実行すれば、かならずAndroid 2.2.2になることは確認している。

詳しい手法はRstream A1にMUCHTEL A1純正 Android 2.2を書き込むを参照のこと。

手順2
上記のAndroid 2.2が起動している状態でCM7の.nb0形式のfirmwareを書き込む。
今回使ったのはBoston Maniaの[Rom 2.3.4] CyanogenMod 7 EA v1 (nb0) である。
([Rom 2.3.4] CyanogenMod 7 EA v3 (nb0) でも確認したが、電源オンロゴがBostonになる)
なお、書き込み後は、以下の状態となる。

CyanogenMod 7 EA v1の場合
モデル番号: Z71
Androidバージョン: 2.3.4
ベースバンドバージョン: MP1_850
カーネルバージョン: 2.6.32.9-SuperAosp root@CML#1
Modバージョン: CyanogenMod-7_EAv1
ビルド番号: GRJ22
ClockworkMod Recovery v2.5.1.3
電源投入直後のロゴが「Android」

CyanogenMod 7 EA v3の場合
モデル番号: Boston
Androidバージョン: 2.3.4
ベースバンドバージョン: MP1_850
カーネルバージョン: 2.6.32.9-SuperAosp root@CML#1
Modバージョン: CyanogenMod-7_EAv3
ビルド番号: GRJ22
ClockworkMod Recovery v4.0.0.5
電源投入直後のロゴが「Bonston」

また、どちらも「フロントパネルのボタン動作がいままでと違う割り当てになる」「カメラが動かない」という問題は発生する。

書き込みには、SUT 1.7.0をパソコンにインストールし、CM7の.nb0タイプのfirmwareを書き込む、という手法を使う。
標準のRecoveryにある「Download nb0 from sdcard」では、上記にあげたnb0ファイルは正当なものとして認識してくれなかった。
また、MUCHTEL版のSUT 1.7.4は、FTMモードで書き換えを行うが、SUT1.7.0では、Android OSが起動している状態でないと、ツールが認識してくれなかった。
このため、正常に起動しない状況に陥っている場合は、必ずMUCHTEL A1版に戻す必要がある。

手順3
ROM Managerの動作要件を満たすため、ネットワークにつながる設定(ClockworkMod recoveryとかをダウンロードする)、と、Android Marketの設定(ROM Managerを最新版にして、CM7.1のzipファイルダウンロードを可能とするため)を行う。
後者のAndroid Marketの設定はCM7.1のzipファイルを別途ダウンロードしてくるのであれば、不要。

手順4
ROM Managerを起動する。

手順5
ROM Managerから、「ClockworkMod Recoveryを導入」を実行。
機種はCommtiva Z71を選択する。

手順6
「ROMをダウンロード」を選択し、
Freeのくくりにある「CyanogenMod」を選択し、「CyanogenMod 7.1.0」を選択して、ダウンロード。
なお、ここでダウンロードできるCyanogenMod 7.1.0でなくとも、[Rom 2.3.7] CyanogenMod 7 EA v7.2 (zip) でも良い。(個人的にはこっちのカスタマイズ具合の方が好み)

「ROM Pre-Installation(ROMインストール前処理)」では「Wipe Dalvik Cache」のみ選択。

手順7
再起動し、Recoveryモードで自動実行される。
完了すると、再起動する。

完了
作業としては完了。
ただし、起動直後はタッチパネルがまったく動かないので注意。
おそらくGoogle Accountとのデータ同期量によるもののようだが、場合によっては30~40分放置しないと、操作ができないので注意が必要。
なお、以下の状態で起動してくる。

モデル番号: Z71
Androidバージョン: 2.3.7
ベースバンドバージョン: MP1_850
カーネルバージョン: 2.6.35.13-Cyanogenmod rmcc@glskard #1
Modバージョン: CyanogenMod-7.1.0-Z71
ビルド番号: GWK74
ClockworkMod Recovery v2.5.1.3
電源投入直後のロゴは、先ほどの状態がそのまま維持される。

CyanogenMod 7 EA v7.2の場合は以下となる。
モデル番号: Boston
Androidバージョン: 2.3.7
ベースバンドバージョン: MP1_850
カーネルバージョン: 2.6.32.9-EA edgar@ubuntu #37
Modバージョン: CM7.1_EAv7.2
ビルド番号: GWK74

「フロントパネルのボタン動作がいままでと違う割り当てになる」「カメラが動かない」という問題は直っていない状態。




— 2011/12/22 追記 —
追加手順
おおむね期待通りに操作できるようになるqwerty.klファイルを、きもたかさんに教えていただいたので、それを元に、ClockworkModRecoveryから適用できるupdate.zip形式のファイルを作成しました。

1. update.zip形式のqwerty.kl修正ファイル+日本語フォントをダウンロードします。
2. 上記ファイルを/sdcard/にコピーします。
3. 電源をオフします。
4. 「ボリュームUP」と「シャッターボタン」を押しながら電源を入れ、Recoveryモードに入ります。
5. 「ボリュームUP」をうまく押して「install zip from sdcard」に合わせます。(ボタンを1回押すと2つ進むが、押しっぱなしにすると1つしか進まない)
6. 「シャッターボタン」を押します
7. 「choose zip from sdcard」が選択されていることを確認し、「シャッターボタン」を押します
8. 「ボリュームUP」か「ボリュームDOWN」をうまく操作し、先ほど転送したfix-qwertykl-for-muchtel-a1.zipに合わせます。。(ボタンを1回押すと2つ進むが、押しっぱなしにすると1つしか進まない)
9. 「シャッターボタン」を押します
10. 適用が開始されるので、終わるのを待ちます。終わると、再度「choose zip from sdcard」のところになります。
11. 何回かボリュームUPを押していると「Back menu button enabled.」という表示が出ます。
12. でたら、何か当たりさわりがないところを選び「シャッターボタン」を押します。
13. そうすると、「+++++Go Back+++++」という項目が増えるので、そこにカーソルを合わせ、
  最初のメインメニューに戻り、「reboot system now」を選びます
14. 終了

Rstream A1で簡単に動く公式系firmware


ClockworkMod Recoveryを使って書き込むfirmwareがいろいろ変な動きをしてるなぁ・・・
ということで、とりあえず、nb0形式で書き込むfirmwareを捜索中。

何ら問題なく動いているのは、いまのところ以下の3つ・・・
どれもAndroid 2.2系だけど・・・というか、MUCHTEL A1のやつが一番新しいっぽい。
これより新しい公式系firmwareはないかなぁ・・・
— 2012/01/11 追記 —
なお、Android 2.3系を使用したい人はカスタムROMを使うしかないです。
アップデート方法については「Rstream A1をCM7.1にしてカメラとか使う手法 2012/01/09版」を参照のこと。
— 追記おわり —

MUCHTEL A1オフィシャル Android 2.2.2
F0X-327J-0-0002-A01.nb0
Model number: FIH-F0X
Android version: 2.2.2
Baseband version: MP1_850
Kernel version: Apps_2.6.32.9
Build number: 0002_3_27J

[Rom 2.2] Official Apanda A60 Rom 2.2
F0X-3230-0-0002-A02.nb0
Model number: FIH-F0X
Android version: 2.2.1
Baseband version: MP1_850
Kernel version: Apps_2.6.32.9
Build number: 0002_3_230

[Rom 2.2] Official Foxconn Rom 2.2
F0X-3260-0-0002-A01.nb0
Model number: FIH-F0X
Android version: 2.2.1
Baseband version: MP1_850
Kernel version: Apps_2.6.32.9
Build number: 0002_3_260

Androidのgps.conf設定


2019/06/04追記

注意:gps.confの変更に意味があったのはAndroid 4.0より前の話で、2019年のAndroid 7やら8やら9では変更する意味が無くなっています。


Xperia X10 mini proのカスタムROMで設定されている/system/etc/gps.confは以下の設定値であることが多い。

NTP_SERVER=europe.pool.ntp.org
XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin
XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
SUPL_HOST=supl.google.com
SUPL_PORT=7276

実際にどんな値が設定されているのか、他機種を含めて調べてみた。

NTP_SERVERの候補
・asia.pool.ntp.org
・europe.pool.ntp.org
・jp.pool.ntp.org
・north-america.pool.ntp.org
・us.pool.ntp.org
・xtra1.gpsonextra.net

SUPL_HOSTの候補
・dcm-supl.com : 7275 (SPモードonly, mopera U不可)
・supl.google.com : 7276
・supl.sonyericsson.com : 7275
・supl.skyhook.com : 7278
・h-slp.mnc410.mcc310.pub.3gppnetwork.org : 7275

CK2という設定…しかしc2k.pde.comは名前解決不可なの死んでいる?

C2K_HOST=c2k.pde.com
C2K_PORT=1234

いろいろ調べた結果、うちのXperia X10 mini proでは、gps.confを以下の様な感じに設定した。

NTP_SERVER=0.jp.pool.ntp.org
NTP_SERVER=1.jp.pool.ntp.org
NTP_SERVER=2.jp.pool.ntp.org
NTP_SERVER=3.jp.pool.ntp.org
XTRA_SERVER_1=http://xtra2.gpsonextra.net/xtra.bin
XTRA_SERVER_2=http://xtra1.gpsonextra.net/xtra.bin
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
# DEBUG LEVELS: 0 - none, 1 - Error, 2 - Warning, 3 - Info
# 4 - Debug, 5 - Verbose
DEBUG_LEVEL =0
# Intermediate position report, 1=enable, 0=disable
INTERMEDIATE_POS=0
# Accuracy threshold for intermediate positions
# less accurate positions are ignored, 0 for passing all positions
ACCURACY_THRES=0
# Report supl ref location as position, 1=enable, 0=disable
REPORT_POSITION_USE_SUPL_REFLOC=1
# Wiper (wifi positioning), 1=enable, 0=disable
ENABLE_WIPER=1
################################
##### AGPS server settings #####
################################
# FOR SUPL SUPPORT, set the following
SUPL_HOST=supl.google.com
SUPL_PORT=7276
SUPL_NO_SECURE_PORT=7276
SUPL_SECURE_PORT=7276
# FOR C2K PDE SUPPORT, set the following
# C2K_HOST=c2k.pde.com or IP
# C2K_PORT=1234
#################################
##### AGPS Carrier settings #####
#################################
CURRENT_CARRIER=common
DEFAULT_AGPS_ENABLE=TRUE
DEFAULT_SSL_ENABLE=FALSE
# TRUE for "User Plane", FALSE for "Control Plane"
DEFAULT_USER_PLANE=TRUE

なお、手に入れたばかりのMUCHTEL A1 Android 2.2のgps.confはこんな感じでした。

NTP_SERVER=xtra1.gpsonextra.net
XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin
XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
# DEBUG LEVELS: 0 - none, 1 - Error, 2 - Warning, 3 - Info
#               4 - Debug, 5 - Verbose
DEBUG_LEVEL = 4
# Intermediate position report, 1=enable, 0=disable
INTERMEDIATE_POS=0
# Accuracy threshold for intermediate positions
# less accurate positions are ignored, 0 for passing all positions
ACCURACY_THRES=500
################################
##### AGPS server settings #####
################################
# FOR SUPL SUPPORT, set the following
# SUPL_HOST=supl.host.com or IP
# SUPL_PORT=1234
# FOR C2K PDE SUPPORT, set the following
# C2K_HOST=c2k.pde.com or IP
# C2K_PORT=1234
################################
# EXTRA SETTINGS
################################
#

ちなみに、この記事、ほんとはメモ書きで、公開する予定はなかったのですが、間違えて公開してしまったので・・・


— 2012/01/04 追記 —

[DEC.05.2011] Instantaneous GPS Fixation v1.2! *FOR ALL ANDROIDS PHONES!*
これで配布しているasia-v1.2.zip内のgps.conf

NTP_SERVER=0.asia.pool.ntp.org
NTP_SERVER=1.asia.pool.ntp.org
NTP_SERVER=2.asia.pool.ntp.org
NTP_SERVER=3.asia.pool.ntp.org
NTP_SERVER=ph.pool.ntp.org
NTP_SERVER=my.pool.ntp.org
NTP_SERVER=tr.pool.ntp.org
NTP_SERVER=sg.pool.ntp.org
NTP_SERVER=in.pool.ntp.org
NTP_SERVER=hk.pool.ntp.org
NTP_SERVER=ae.pool.ntp.org
NTP_SERVER=jp.pool.ntp.org
NTP_SERVER=bd.pool.ntp.org
NTP_SERVER=il.pool.ntp.org
NTP_SERVER=kr.pool.ntp.org
NTP_SERVER=th.pool.ntp.org
NTP_SERVER=ir.pool.ntp.org
NTP_SERVER=tw.pool.ntp.org
NTP_SERVER=cn.pool.ntp.org
NTP_SERVER=id.pool.ntp.org
NTP_SERVER=vn.pool.ntp.org
NTP_SERVER=pk.pool.ntp.org
NTP_SERVER=om.pool.ntp.org
NTP_SERVER=uz.pool.ntp.org
NTP_SERVER=lk.pool.ntp.org
NTP_SERVER=kg.pool.ntp.org
NTP_SERVER=kh.pool.ntp.org
NTP_SERVER=qa.pool.ntp.org
XTRA_SERVER_1=http://xtra1.gpsonextra.net/xtra.bin
XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin
XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
INTERMEDIATE_POS=1
C2K_HOST=c2k.pde.com
C2K_PORT=1234
SUPL_HOST=FQDN
SUPL_HOST=supl.google.com
SUPL_PORT=7276
SUPL_SECURE_PORT=7275
SUPL_NO_SECURE_PORT=3425
SUPL_TLS_HOST=FQDN
SUPL_TLS_CERT=/etc/SuplRootCert
ACCURACY_THRES=5000
CURRENT_CARRIER=common
DEFAULT_USER_PLANE=TRUE
REPORT_POSITION_USE_SUPL_REFLOC=1