Rstream A1でICS風の見た目のLiGux v3.2beta2を動かしてみた

中国語圏のAndroidフォーラム LiGux: z71 VariantsでみつけたLiGux(Coopoui)というICS風の見た目をしたAndroid 2.3。(LiGux開発者のblog)

現在リリースされているLiGux v3はCM7 Android 2.3.7ベースだが、開発中のLiGux v4はCM9 Android 4.0.3ベースとなる予定とのこと。

LiGux v3.2beta2のダウンロードリンクがよく分からなかったので、Ubiquitenseの紹介記事「ICS look and feel ROM from LiGux, for Motorola XT502 (Commtiva Z71)から入手して、入れてみた。

標準で入っているkernelは 2.6.35.13-cyanogenmod でした。
が・・・これだとタッチパネルが動かない。

Rstream A1用カメラ修正が入っている2.6.35.13-rstreama1でも動かない。
CM7 EAv7.2の2.6.32.9-EA にしたところ、動作した。

kernel 2.6.35.xはいろいろ問題あるんですかねぇ・・・
まぁ、それはさておき、システム情報は↓な感じです。

モデル番号: Z71
Androidバージョン: 2.3.7
ベースバンドバージョン: MP1_850
カーネルバージョン: 2.6.32.9-EA edgar@ubuntu #37
Modバージョン: LiGux-v3.2-Beta2-Z71-111204
ビルド番号: GWK74

ロックスクリーン

メイン画面

設定画面

言語選択

おおむね日本語リソースが入っているけれど、一部に日本語リソースが入っていない、というような感じですね。

/system/appとかを見る限りでは、それほど変なアプリがない感じですから、ちょっと使ってみようかと思います。

なお、カメラは使えません。

Rstream A1類似機種海外のフォーラム便り 2012年1月5日号

海外のAndroid系のフォーラムはいろいろありますが、HTCやSamsung,ソニエリの場合は、xda-developersのフォーラムが業界標準的な感じです。

Rstream A1の類似機種の情報を探す場合、xdaではほとんど情報がありません。
いろいろ探すと、一番活発なのは、ポルトガル語のサイトAndroidPTのフォーラム「Boston (Gigabyte GSmart G1305 Codfish / Commtiva Z71) 」の中にある「[ROM] Boston CyanogenMOD」のようです。

[MOD] EAv7.2 Final (Android 2.3.7) CM based
いままでの記事でも登場していたCM7.1 EAv7.2というのは、ここが原産地です。
このROMで使用しているkernel 2.6.32.9-EA#37は別のスレ[Kernel] 2.6.32.9-EA (21/11/2011)で開発されている。
kernel sourceはgithubから入手可能

[MOD] Cyanogenmod 7.1 aPT v1.1
Simple2extというSDカードをパーテーション分けして、メモリswap領域にしたり、ext2領域を作成してデータを逃がしたりすることができるようになっている。

使用kernelはaPT v1.1 Kernelというらしい。
カーネルバージョン: 2.6.35.13-aPT-AHB-OC-v1.1 fagulhas@ubuntu #21
altanative kernelとある方は
カーネルバージョン: 2.6.32.9-aPT-alternative fagulhas@ubuntu #49

[Mod] MYGingerB Custom ROM project for Commtiva z71 (2.3.7)
これについては英語のlowyat.netのフォーラム「[Custom ROM] MYGingerB (Android Gingerbread 2.3.7), Our own Commtiva z71 (mi300) Custom ROM 」が本拠地で、blogもある
「MYGingerBread “Gaia” 1.1.0」が最新版。
SuperAOSP kernelを使用しているとのこと。

で、SuperAOSP kernelについて調べていると出てくるのが、スペイン語圏のMovil Zona
関連フォーラムは「Orange Boston

SuperAosp 8.6-AW para Orange Boston
リリース時期が3月と古い。

SuperOSR v2.2.0 por Superteam Gingerbread 2.3.7

この他、スペイン語圏のフォーラムには、HTCmaniaのROMs y desarrollo Orange Bostonというのもある。

Rstream A1でAdobe Flashを使う

Rstream A1のCPUはARM v6だから、ARM v7用に作られているAdobe Flash Playerが非対応・・・ということになっています。

しかし、世の中には、どういう風にやったんだか、ARM v6用に改変されたAdobe Flash Playerというのが存在していたりします。

xdaのAndroid Apps and Gamesにある「[UPDATED APP] FLASH PLAYER 10.2 FOR ARMv6 AND ARMv7 ANDROID PHONES」が、おそらく震源っぽいです。

最新がどういう風になっているのか、はっきりとわかりませんでしたが、おそらくは、以下のページにあるものを組み合わせるのが一番良さそうな雰囲気でした。

xdaのGalaxy 3 Themes and Appsにある「Working Flash Player 11.0.1.153 for ARMv6
xdaのOptimus One, P500, V Themes and Appsにある「how flash player 10.3 work in stock rom[Guide]
xdaのOptimus One, P500, V Themes and Appsにある「Adobe Flash Player 10.3 on ARMv6

具体的には「Working Flash Player 11.0.1.153 for ARMv6」から、adobe flash player 11 v11.0.1.153 armv6.apk を入手。このapkは単体では使えません。
/system/lib/に置くファイル群を「how flash player 10.3 work in stock rom[Guide]」から、lib.zipを入手します。

lib.zipの中身を/system/lib/ に展開し、アクセス権を644に設定。
apkを普通にインストールすれば、Flashが動作するようになります。

Flashがきちんと動いているか確認するにはAdobeの「Check the status of Flash Player version」にアクセスしたところ、バージョンは「10.3.185.360」と出ました。

これは、おそらく/system/lib のファイルがFlash 10.3のファイルであるからっぽいです。

注:Flashを有効にするとシステム負荷があがるようで誤動作によるキー連打が発生する可能性が上がります。

CWM Recoveryから適用できるflashplayer-11.0.1.153-for-armv6.zipを用意しました。
上記のzipをダウンロードしてSDカードに置き、ROM Managerもしくは、直接CMW Recoveryから適用してください。

— (2012/01/24追記) —
MUCHTEL A1純正Android 2.2では、/systemの容量が足らないため、導入できません。
/system/appにある不要なアプリを消さないと入りません。
うちではFaceBook.*, FacebookWidget_Home2.apk, Gmail.apk, Maps.apk, Street.apk, VoiceSearch.apk, YouTube.apk を削除しました。
特にGmail.apk, Maps.apk, Street.apk, VoiceSearch.apk, YouTube.apk は、AndroidMarket経由で最新版が/data/appにインストールされるので、不要ですし。
標準でインストールされているTouchPal関連のファイルはTouchPal本体がTouchPal_M1.apkで、そこから呼び出される各言語毎の設定ファイルがChsHandWritePack.apk(Chinese Handwriting), ChsPack.apk(Chinese PinYinとChinese Bihua
), ChtPack.apk(Chinese ZhuYin), EnglishPack.apk(English)であるようだ。
全部消すとまずいので、ChsHandWritePack.apk, ChsPack.apk, ChtPack.apkを消した。

Rstream A1をCM7.1にしてカメラとか使う手法 2012/01/03版

Rstream A1をCM7.1にしてカメラとか使う手法 2012/01/09版にて新しいkernel適用手順を案内しています。

—- 以下は古い手順です —-
いままでRstream A1にCyanogenMod7.1をインストールした場合、カメラが全く動かないという現象が発生していました。
このたび、at_not_foundさんにより、この現象を回避する方法が開発されました。
要点としては
・どうやら他の類似機種とカメラとボタン周りのハードウェアが違う(MUCHTEL A1全般が?)
・カーネルとカメラドライバ周りをMUCHTEL A1に併せて再構成
といった感じです。

いまのところ、「終話ボタン(6)で、画面が消えるスリープモードに入ってしまう」と「検索キー(2)がバックキー扱いになる」、という問題がありますが、それ以外はおおむね良好そうな感じで動作中です。

なお、終話ボタンの動作については、「Spare parts」の「End button behavior」を変更することで、スリープにしないという動作をさせることができます。(情報元:500yen さんより「Rstream A1 + CM7.1 で終話ボタンでスリープする動作は Spare Parts の End button behavior で変更が出来ました」)

以下に手順をMUCHTEL A1純正Android 2.2.2にアップデートするところから手順を書いていきます。
すでにCyanogenMod7が適用されている場合は、手順8から行ってください。

(2011/01/04手順修正:ROM Managerからアップデート差分を適用する手順に変更しました)

手順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」を選択して、ダウンロード。
「ROM Pre-Installation(ROMインストール前処理)」では「Wipe Dalvik Cache」のみ選択。

なお、ここでダウンロードできるCyanogenMod 7.1.0ではなく、[Rom 2.3.7] CyanogenMod 7 EA v7.2 (zip) でも良い。(個人的にはこっちのカスタマイズ具合の方が好みですが、手順9以降のROM Manager操作が動作しません。その場合、手順Aを行ってください。)
こちらを行う場合はROM Managerで「SDカードからROMをインストール」を選択し、SDCARDにコピーした上記のzipファイルを指定する。

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

起動が完了すると以下の表記でブートしているはず。
モデル番号: 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
ClockworkMod Recovery v4.0.0.8

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





手順8
CM7.1をMUCHTEL A1用に修正するファイルをSDカードにコピーする。
これに含まれる修正は以下です。
・MUCHTEL A1向け修正kernel
・MUCHTEL A1向け修正libcamera
・MUCHTEL A1向け修正qwerty.klファイル
・日本語フォント(モトヤ)

修正ファイル:update.zip形式のkernel修正+カメラ修正+qwerty.kl修正ファイル+日本語フォントをダウンロードする。

手順9
手順8でダウンロードしたmuchtela1-cm7-custom-afnf33.zipを、/sdcard/にコピーする。

手順10
ROM Managerを起動する。
なお、RecoveryのバージョンがClockworkMod Recovery 2.5.1.3以外である場合、この後の手順が正常動作しません。
手順5と同様に「ClockworkMod Recoveryを導入」から機種は「Commtiva Z71」を選択し、ClockworkMod Recoveryを2.5.1.3にしてから以下の手順を行ってください。
もしくは、手順10~12の代わりに手順Aを行ってください。

手順11
「SDカードからROMをインストール」を選択し、先ほどコピーしたmuchtela1-cm7-custom-afnf33.zipを指定する。
「ROM Pre-Installation(ROMインストール前処理)」では「Wipe Dalvik Cache」のみ選択。

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

作業完了後は「カーネルバージョン: 2.6.35.13.rstream-a1 afnf@ubuntu #33」になる。
(それ以外の情報は、手順7終了時と同じとなる)


手順A
ClockworkMod Recoveryを直接操作して、アップデートzipを適用します。
1. 電源をオフします。
2. 「ボリュームUP」と「シャッターボタン」を押しながら電源を入れ、Recoveryモードに入ります。
3. 「ボリュームUP」をうまく押して「install zip from sdcard」に合わせます。(ボタンを1回押すと2つ進むが、押しっぱなしにすると1つしか進まない)
4. 「シャッターボタン」を押します
5. 「choose zip from sdcard」が選択されていることを確認し、「シャッターボタン」を押します
6. 「ボリュームUP」か「ボリュームDOWN」をうまく操作し、先ほど転送したmuchtela1-cm7-custom-afnf33.zipに合わせます。。(ボタンを1回押すと2つ進むが、押しっぱなしにすると1つしか進まない)
7. 「シャッターボタン」を押します
8. 適用が開始されるので、終わるのを待ちます。終わると、再度「choose zip from sdcard」のところになります。
9. 何回かボリュームUPを押していると「Back menu button enabled.」という表示が出ます。
10. でたら、何か当たりさわりがないところを選び「シャッターボタン」を押します。
11. そうすると、「+++++Go Back+++++」という項目が増えるので、そこにカーソルを合わせ、
  最初のメインメニューに戻り、「reboot system now」を選びます
12. 終了

— 以下、資料用 —
【謎端末】Rstream A1【SIMフリー】の17~19より

17 : ◆afnf4199GA :2012/01/03(火) 03:01:54.89 ID:6+yJDTeh
CM7.1でカメラが動かない件の対処。

1. カーネルをrmcc(https://github.com/rmcc/commtiva-kernel-z71.git)から取得
2. arch/arm/mach-msm/board-fxx.cのI2C_BOARD_INFO(“ov5642af”, 0xFD)を0x3Cに書き換え
3. drivers/media/video/msm/msm_camera.c、sdata->flash_dataがnullなのでinfo.flash_enabled = 1;に変更
4. .configはmuchtel222から抜いたものをベースにoldconfigで修正したものを使用
5. カーネルビルド
6. CM7.1のinitramfsでブートイメージ生成
7. CM7.1を適用したデバイスに7をfastboot flash boot
8. CM7.1版の/system/lib/liboemcamera.soについて、文字列”00fd”を”003c”に書き換え
9. QualcommCameraHardware.cpp(https://github.com/CyanogenMod/android_device_commtiva_z71.git)を
  ov5642af向けに修正(picture_sizes-1、sensorTypes+1、ov5642→ov5642af)
10. mmでlibcamera.soを生成して/system/libに書き戻す

18 : ◆afnf4199GA :2012/01/03(火) 03:04:27.58 ID:6+yJDTeh
っていうのが面倒な人は、
http://www.mediafire.com/?fb2xjfa2jj4dbfc
sha1sum:e51899d08a660cd84898a1dc7879bb90ddf4dd93
これ落として、fastbootモードから以下を実行。

fastboot flash boot rstream-a1-mod33.img
fastboot reboot
→通常起動
adb shell mount -o remount,rw / /system
adb push libcamera.so /system/lib
adb push liboemcamera.so /system/lib
adb push qwerty.kl /system/usr/keylayout
adb shell chmod 644 /system/usr/keylayout/qwerty.kl
→もう一回再起動

3G通話、3Gデータ通信は未テスト。
終話キーでスリープになってしまう不具合有り。
他は大丈夫だと思う。

なんでこんな修正が必要なのかっていう所だけど、
少なくともカメラ周りとボタン周りはハードが違うみたい。
あとi2c fake addressってのもポイントだったが、これは良く分からん。

19 : ◆afnf4199GA :2012/01/03(火) 03:07:07.53 ID:6+yJDTeh
以上です。

誰か追試してくださいな。

Rstream A1をMUCHTEL A1純正Android 2.2.2を使いつつ、そこそこ日本語化

MUCHTEL A1 純正Android 2.2.2+日本語化手順のfastbootを使わない手順という新しい手順を公開。

——————-
Rstream A1をMUCHTEL A純正のAndroid 2.2.2で使えば、カメラを含めて特に問題なく使えます。
しかし、英語 or 中国語の選択しかないので、日本語も選択できるようにしたものを作りました。
ログを見ると日本語リソース関連でいくつかエラーがでてますが、表には出てこないし、実使用上は問題ないです。
(2012/01/08 手順を修正しました)

手順概要
1. MUCHTEL A1純正firmwareを適用
2. fasttboot.exeを使って、clockworkmod recoveryを書き込む
3. clockworkmod recoveryから下記のzipを書き込む
muchtel-a1-2.2.2-japanese.zip

内容の説明
・/system/framework/framework-res.apk に日本語リソース追加
・/system/app/Settings.apk に日本語リソース追加
・/system/fonts/DroidSansJapanese.ttf を追加(実体はモトヤ マルベリ)
・/system/bin/busybox を追加

手順1
MUCHTEL A1純正のAndroid 2.2.2にします。
手順はRstream A1にMUCHTEL A1純正 Android 2.2を書き込むを参照のこと。

手順2
ClockworkMod Recoveryを書き込む。
手順は Rstream A1にClockworkMod Recoveryを書き込む を参照のこと。

手順3
日本語リソースを組み込んだframework-resなどを含むmuchtel-a1-2.2.2-japanese.zipをダウンロード。

手順4
muchtel-a1-2.2.2-japanese.zipをSDカードにコピー。
muchtel-a1-2.2.2-japanese.zip

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