NOVO7 BasicにAndroid 3.2

2011/11/13追記: すzさんのところでNovo7 basic 用 Android 2.2カスタムファームウェアが公開されています。
————————–
[ROM发布] 【Novo7 普及版固件】君正MIPS热风来袭,2.2 3.2两版固件周末突击发布新版本公测!! で配布されているイメージは、update.zipの方はAndroid 2.2.1だけど、もう1つの方はAndroid 3.2っぽい。

転載:Android 3.2 for NOVO7 Basic
転載:Android 2.2 for NOVO7 Basic / update.zip version

それぞれのbuild.propを比べると以下のような違いがある。

@@ -1,60 +1,53 @@
 # begin build properties
 # autogenerated by buildinfo.sh
-ro.build.id=FRG83
-ro.build.display.id=npm701-eng 2.2.1 FRG83 eng.szhao.20111029.043636 test-keys
-ro.build.version.incremental=eng.szhao.20111029.043636
-ro.build.version.sdk=8
+ro.build.id=MASTER
+ro.build.display.id=npm701-eng 3.2 MASTER eng.jbbi.20111029.114136 test-keys
+ro.build.version.incremental=eng.jbbi.20111029.114136
+ro.build.version.sdk=13
 ro.build.version.codename=REL
-ro.build.version.release=2.2.1
-ro.build.date=Sat Oct 29 05:09:13 CST 2011
-ro.build.date.utc=1319836153
+ro.build.version.release=3.2
+ro.build.date=Sat Oct 29 11:48:44 CST 2011
+ro.build.date.utc=1319860124
 ro.build.type=eng
-ro.build.user=szhao
-ro.build.host=szhao-desktop
+ro.build.user=jbbi
+ro.build.host=dsqiu-10
 ro.build.tags=test-keys
-ro.product.model=npm701
+ro.product.model=Novo7Basic
 ro.product.brand=npm701
 ro.product.name=npm701
 ro.product.device=npm701
 ro.product.board=
 ro.product.cpu.abi=mips
-ro.product.manufacturer=ingenic
+ro.product.manufacturer=unknown
 ro.product.locale.language=zh
 ro.product.locale.region=CN
-ro.wifi.channels=
+ro.wifi.channels=13
 ro.board.platform=
 # ro.build.product is obsolete; use ro.product.device
 ro.build.product=npm701
 # Do not try to parse ro.build.description or .fingerprint
-ro.build.description=npm701-eng 2.2.1 FRG83 eng.szhao.20111029.043636 test-keys
-ro.build.fingerprint=npm701/npm701/npm701/:2.2.1/FRG83/eng.szhao.20111029.043636:eng/test-keys
+ro.build.description=npm701-eng 3.2 MASTER eng.jbbi.20111029.114136 test-keys
+ro.build.fingerprint=npm701/npm701/npm701:3.2/MASTER/eng.jbbi.20111029.114136:eng/test-keys
+ro.build.characteristics=tablet
 # end build properties
 #
-# system.prop for npm701
+# system.prop for generic sdk
 #

 rild.libpath=/system/lib/libreference-ril.so
-rild.libargs=-d /dev/ttyS3
+rild.libargs=-d /dev/ttyS0

-ro.sf.lcd_density=160
+#
+# H/W composition disabled
+#
+debug.sf.hw=0

-persist.sys.language=zh
-persist.sys.country=CN
-persist.sys.localevar=
-persist.sys.timezone=Asia/Shanghai

 #
 # ADDITIONAL_BUILD_PROPERTIES
 #
-ro.config.notification_sound=OnTheHunt.ogg
-ro.config.alarm_alert=Alarm_Classic.ogg
-media.stagefright.enable-player=true
-media.stagefright.enable-meta=true
-media.stagefright.enable-scan=true
-media.stagefright.enable-http=true
-ro.kernel.android.checkjni=0
+ro.kernel.android.checkjni=1
 ro.setupwizard.mode=OPTIONAL
-dalvik.vm.dexopt-flags=m=y,v=n,o=a
 net.bt.name=Android
 dalvik.vm.stack-trace-file=/data/anr/traces.txt
-dalvik.vm.heapsize=24m
+dalvik.vm.heapsize=40m

その他、system.imgやboot.imgの構成を見る限り、Android 3.2系であるのは間違いなさそうです。

ただ、heapsizeが40mになっているので、ronzi a3などのRAM 256MBマシンで動かすにはかなりきつそうです。

CARD PHONE CM1-F

台湾のePriceというサイトで、カード型GSM携帯電話 CARD PHONE CM1-Fのレビューが掲載されていた。
ePrice:潮流新企劃! 可愛卡片手機 CM1-F 五色送給你

スペックは
‧GSM 850/900/1800/1900
‧最薄部 6.3mm
・重さ 35g
‧液晶部 OLED
‧電源端子 microUSB
・計算機とかカレンダーの機能有り
・携帯保護ケース付き
といったもの。

GSMのみなので、日本では使えないのですが、今度ウィルコムからでるストラップフォンみたいな感じですね。


下部にはmicroUSB端子があり、そこから充電ができ


右側面にはSIMカードスロットがある

液晶表示の例として、犬柄モデルだと

というような感じで犬が、三毛猫柄だと猫がでてくるそうです。

この携帯用のケースがついてきて

こんな感じで、裏面にカードを入れることも可能だとか。

これのWCDMA対応モデルがでてくれればおもしろいんだけど、さすがに無理だよなぁ・・・・
でてBluetoothモデルなんだろうな・・・

NOVO7 Basicのfirmware?

2011/11/13追記: すzさんのところでNovo7 basic 用 Android 2.2カスタムファームウェアが公開されています。
————————–
検索していたら、NOVO7 basicっぽいfirmwareを配布しているところを発見した。
まぁ、恒例のimp3.netなんですが・・・

[ROM发布] 【Novo7 普及版固件】君正MIPS热风来袭,2.2 3.2两版固件周末突击发布新版本公测!!
転載:Android 3.2 for NOVO7 Basic
転載:Android 2.2 for NOVO7 Basic / update.zip version

どうやらsdcardにupdate.zipを置いて、ボリュームupボタンを押しながらリセットボタンを押し、「ainol艾诺」ロゴがでたところで、ボリュームupボタンを離すと、アップデートが開始されるようだ。
この手法はAndroidスマートフォンでよくあるアップデート手法。
もしかすると、boot loader関連が改良されているのかもしれない。
(それとも、ronzi A3でも実はできるのか?)

従来通りのUSBBoottoolによるアップデートもできるようです。
こちらの場合は、ボリュームDOWNボタンを押すようです。

ただ、単体で実行できる方は「Novo7Basic_android2.2_20111029.7z」という穏当な名前ですが、USBBoottool版が「Android3.2_Novo7_Basic_1029.rar」などという謎のファイル名に・・・

ダウンロード速度が非常に遅いので中身の確認は、明日ですかねぇ・・・

— 2011/11/01 追記 —
update.zipは、android一般的な形式のupdate.zipではありますが、イメージファイルを直接書き込む感じの形式でした。
書き込むのはmbr-xboot.bin, boot.img,system.imgだけで、それ以外はない、というのがちょっと驚きです。

ui_print("Setup your device...");

ui_print("update xboot....");
package_extract_file("mbr-xboot.bin", "/tmp/mbr-xboot.bin");
inand_write_raw("/tmp/mbr-xboot.bin","xboot");

ui_print("update boot.img....");
set_progress("2");
show_progress("0.1", 1);
package_extract_file("boot.img", "/tmp/boot.img");
inand_write_raw("/tmp/boot.img","boot");
show_progress("0.1", 1);

#package_extract_file("userdata.img", "/tmp/userdata.img");
#inand_write_raw("/tmp/userdata.img","data");

ui_print("update system.img....");
set_progress("9");
set_progress("9");
show_progress("0.02", 1);
show_progress("0.02", 1);
show_progress("0.02", 1);
show_progress("0.02", 1);
show_progress("0.02", 1);
show_progress("0.02", 1);
package_extract_file("system.img", "/sdcard/system.img");
inand_write_raw("/sdcard/system.img","system");
show_progress("0.1", 1);

#ui_print("update userdata.img....");
show_progress("0.1", 1);
show_progress("0.1", 1);
show_progress("0.1", 1);
show_progress("0.1", 1);
#package_extract_file("userdata.img", "/tmp/userdata.img");
#inand_write_raw("/tmp/userdata.img","data");

show_progress("0.1", 1);
ui_print("Done.");
set_progress("10");
show_progress("0.1", 1);

system.imgの中には、boot.img,recovery.cpio.imgとuserdata.imgが含まれていますが、おそらく、使われてはいないでしょう。
Android一般的の話であればupdate.zip適用時は/data領域(つまりuserdata.img)は初期化されないことになっているので、そういう作りになっているのかな?と思います。

で、今回の注目点は、パッケージを作り間違えたのか、x-bootというディレクトリの中に、x-bootのソースファイルっぽいものが含まれているというところです。

マザーボードの種類を示しているx-boot/boot/board/というディレクトリを見ると

# ls -l x-boot/boot/board/
合計 64
-rw-r--r-- 1 root root 1462  7月 30 12:21 Makefile
drwxr-xr-x 3 root root 4096 11月  1 09:48 altair
drwxr-xr-x 3 root root 4096 11月  1 09:48 crater
drwxr-xr-x 3 root root 4096 11月  1 09:48 lepus
-rw-r--r-- 1 root root 2810  7月 30 12:21 lib_board.a
drwxr-xr-x 3 root root 4096 11月  1 09:48 lynx
drwxr-xr-x 3 root root 4096 11月  1 09:48 maple
drwxr-xr-x 3 root root 4096 11月  1 09:48 npm701
drwxr-xr-x 3 root root 4096 11月  1 09:48 pisces
drwxr-xr-x 3 root root 4096 11月  1 09:48 pt701_8
drwxr-xr-x 3 root root 4096 11月  1 09:48 px7_2r
drwxr-xr-x 3 root root 4096 11月  1 09:48 pyxis
drwxr-xr-x 3 root root 4096 11月  1 09:48 tablet_8II
drwxr-xr-x 3 root root 4096 11月  1 09:48 tablet_p2
drwxr-xr-x 3 root root 4096 11月  1 09:48 z800
drwxr-xr-x 3 root root 4096 11月  1 09:48 zorroo
#

また、それらのボードに関する設定はinclude/configsディレクトリで行われているようです。

#ls -l x-boot/include/configs
合計 276
-rw-r--r-- 1 root root 12074  7月 30 12:21 altair.h
-rw-r--r-- 1 root root  5909  7月 30 12:21 apus.h
-rw-r--r-- 1 root root  5778  7月 30 12:21 aquila.h
-rw-r--r-- 1 root root 13296  7月 30 12:21 crater.h
-rw-r--r-- 1 root root  2168  7月 30 12:21 jz4760_common.h
-rw-r--r-- 1 root root  3384  7月 30 12:21 jz4770_common.h
-rw-r--r-- 1 root root 17047  7月 30 12:21 lepus.h
-rw-r--r-- 1 root root 16895  7月 30 12:21 lynx.h
-rw-r--r-- 1 root root 19281  7月 30 12:21 maple.h
-rw-r--r-- 1 root root 19100  7月 30 12:21 npm701.h
-rw-r--r-- 1 root root 16051  7月 30 12:21 pisces.h
-rw-r--r-- 1 root root 11442  7月 30 12:21 pt701.h
-rw-r--r-- 1 root root 15187  7月 30 12:21 pt701_8.h
-rw-r--r-- 1 root root 16185  7月 30 12:21 px7_2r.h
-rw-r--r-- 1 root root 15829  7月 30 12:21 pyxis.h
-rw-r--r-- 1 root root 15187  7月 30 12:21 tablet_8II.h
-rw-r--r-- 1 root root 15658  7月 30 12:21 tablet_p2.h
-rw-r--r-- 1 root root 13367  7月 30 12:21 z800.h
-rw-r--r-- 1 root root 18260  7月 30 12:21 zorroo.h
#

と、まだ見ぬ機種がいろいろいるようです。
現状判明しているのは、以下の3種類です。
lynx=ronzi A3系
z800=怪しい中華Android携帯
tablet_p2=Cruz Tablet T301
xam5001=IQQ M1なんだけど、リストにない・・・
npm701=NOVO7 Basic
Ramos V65Proは、「ro.product.device=V65PRO」と設定されているが「ro.build.fingerprint」ではlynxとなっているので、lynxの類型である可能性が大きい。
build.propの違いについては、Jz4760系Androidのbuild.propの違いに追加しました。

起動時に使用されるロゴ画像は以下のディレクトリにあります。

# ls -l x-boot/boot/logo/
合計 292
-rw-r--r-- 1 root root 51812  7月 30 12:21 AMT_800x480.rle
-rw-r--r-- 1 root root 36468  7月 30 12:21 jz_1024_768.rle
-rw-r--r-- 1 root root 36468  7月 30 12:21 jz_800_480.rle
-rw-r--r-- 1 root root 93200  7月 30 12:21 novo7_1.rle
-rw-r--r-- 1 root root 14260  7月 30 12:21 pt701_8.rle
-rw-r--r-- 1 root root 14260  7月 30 12:21 tablet_8II.rle
-rw-r--r-- 1 root root 36580  7月 30 12:21 tablet_p2.rle
#

なんと、Jz47x0だけではなく、CPUがAMTのものについてのロゴも含まれています。
ただ、他のディレクトリにはAMTに直接関係しそうなファイル名のは見当たりません。

電源off時に表示される充電ロゴ、というのは、おそらく、x-boot/include/charge_logo.hで定義されているものなんでしょう。

Jz4760はdual core?

検索ワードを見ていたら「Jz4760 デュアルコア」なんてのがちらほらと・・・

実質としてはJz4760はシングルCPUですよ!

正確には「Xburst」というコアが2つ積まれています。
そのうちの1つをCPU用に、もう1つをVPU(video processing unit)用に使用している、というところです。
なので、「Xburst dual core」という表記も、間違いではありませんが、「CPUがdual core」ではありません。
また、Xburstコア自体は600MHzで動作していますが、Xburstコアが2つあるので600MHz+600MHzで「1.2GHz」だ!とか無茶を言ってるスペック表もあったりするので、注意してください。

ちなみに、後継のJz4770では、VPU用のXburstは完全にVPUに特化してしまったようで、XburstコアはCPUの1つないような感じに変わっているようです。

Xperia X10 mini proのカスタムROM事情 2011/10/27版

この記事は「Xperia X10 mini proのカスタムROM事情 2012/04/23版」で置き換えられています。
———————————–
最近のXperia X10 mini proのカスタムROM事情

Android 2.3ベースのカスタムROMが主流となっています。
また、kernel部分については、標準kernelもしくはZombie Panic Kernelという2択です。
Zombie Panic Kernelの導入方法についてはXperia X10 mini proのkernelを書き換えるを参照してください。

Android 2.3ベースのカスタムROMは、おもに4種類、とその亜種2つ、という感じです。
・Ginger DX Pro
・Flame.E
・GinTonic SE
・MiniCM7 pro
この4種類のどれかを使っておけば、無難といったところでしょう。

なお、ドコモユーザは現状リリースされているカスタムROMを使う際は十分に注意が必要です。
ドコモSIMが入っていると、APNとしてmopera.netを問答無用で選択した状態で、なおかつ、データ通信が有効になっているため、初回起動時に「FOMAパケット通信料[一般]」扱いのパケット通信が発生してしまいます。最短で手順を進めたとしても30円程度の料金がかかりますので注意してください。
回避するには、初回起動時はSIMを抜き、「データ通信を有効にする」のチェックをはずした状態で電源を切り、SIMを指し、設定を行ってください。

GingerDX pro
Eyama氏がdoixanh氏のGinder DXをX10 mini proに移植したもの。
Zombie Panic kernelを使用すること前提のパッケージ内容。
標準kernel(stock kernel)を使用するには同時配布のモジュール集も追加でインストールする必要がある。

Flame.E
Eyama氏がいままで他のカスタムROMに携わった経験を活かして組み上げたもの。
Zombie Panic kernelを使用すること前提のパッケージ内容。
標準kernel(stock kernel)を使用するには同時配布のモジュール集も追加でインストールする必要がある。

GinTonic.SE
slade87氏がdoixanh氏のGinderDXをベースにX10 mini proに移植したもの。
Eyama氏のGingerDXより後発ではあるが、カスタムkernel作者が作っているということもあり、期待が大きいもの。
ただ、癖は強いかもしれない。
Zombie Panic kernelを使用すること前提のパッケージ内容。
標準kernel(stock kernel)を使用するには同時配布のモジュール集も追加でインストールする必要がある。
また、X10 mini proのfirmwareで、2.1.1.A.0.6と2.1.1.C.0.0とで無線部分の動作の違いが発見されたため、2.1.1.C.0.0ユーザ向けに追加モジュールもでている。
なお、この変更の話は、他のカスタムROMに派生する可能性があるので、今後の動向に注意。

MiniCM7 Pro
paul-xxx氏がnobodyAtall氏のMiniCM7をX10 mini proに移植したもの。
元のMiniCM7はFreeXperiaProjectの一部になり、CyanogenMod7をカスタマイズしたもの、という位置づけになっている。
MiniCM7 proは、標準kernel(stock kernel)向け、しかも2.1.1.A.0.6向けとして作成されている。
2.1.1.C.0.0には対応していないので注意。
最近、開発停止宣言を出しているので、今後の動向が注目されるところ。

以下の2つは亜種、という感じのものです。

MiniCM7 SonyStyle
paul-xxx氏のMiniCM7 proをソニエリ純正のような感じで使えるようにカスタマイズしたもの。
4コーナーランチャーなど搭載。
純正の雰囲気が好きな人にお勧め。
MiniCM7 proと同様に、標準kernel(stock kernel)向け、しかも2.1.1.A.0.6向けとして作成されている。

ArcMini
Pranav110089氏がGingerDX ProをベースにXperia Arcっぽい雰囲気に改造しているもの。
機能的にはGingerDX Proと同じなので、カスタムkernel向け。

番外
CM7.1.0 – FreeXperia Project
FreeXperiaProject作の、ほぼオフィシャルのCM7.1。
なんだけど、2011/10/27時点で最新のFXP043aでも実用に耐えない。
しかも、開発中止的は話をしている。

モバイルバージョンを終了