ronzi A3 カスタムfirmware 20111018版


ronzi A3のカスタムfirmwareを新しく作りました。

firmware base: ronzi公式配布のRK43_60WFRT_RZA3_20110511_1

Warning: wifi MAC address will be changed. All data lost! Also, /mnt/sdcard data lost, too!

change
* remove chinase apk.
* add LatinIME.apk and nicoWnnG.apk
* update market apk and google apk from 2011_01_13-signed.zip
* replace /system/framework from Ramos V65PRO firmware
* change some /system/build.prop value, it’s from Ramos V65PRO.
* add Dalvik Turbo VM.
* support /system/etc/init.d/ files.
* add IngenicScreenCalibration.apk from Ramos V65Pro firmware
* add Japanese font file(/system/fonts/DroidSansJapanese.ttf).It’s MTLc3m.ttf.

警告:
・無線LANのMACアドレスが変わります(USBtoolで適用するとかならず変わります)
・全部のデータが消えます。/mnt/sdcard のデータも消えます。(/mnt/sdcard1 は消えません)

変更点
・中華なapkを消しました
・英語圏用IMEと日本語圏用IME(nicoWnnG)を追加しました
・マーケット関連のapkを更新しました
・frameworkライブラリをRamos V65PROのものと置き換えてみました
・/system/build.propをRamos V65PROで採用されているパラメータに変更しました
・高速化を狙ってDalvik Turbo VMを入れてみました。
・/system/etc/init.d/ においたファイルを起動時に実行するようにしました
 (/system/etc/init.d/99end を消すと起動が途中で止まるので注意してください)
・IngenicScreenCalibration.apkをRamos V65Proから持ってきました。
 設定-表示にてキャリブレーションができるようになります。
・MTLc3m.ttfを/system/fonts/DroidSansJapanese.ttfとして配置しました。

* flashtool :A3_updatetools_pack.zip http://www.multiupload.com/P5J4282P0E
* firmware: ronziA3_20111018a.zip http://www.multiupload.com/AZJ1NXPQ76

How to flash firmware.
English guide: ronzi A3 firmware update guide
日本語: ronzi A3 その4 firmwareアップデート

おまけ
DalvikTurboのドキュメントを見ると、FPU搭載でも標準設定ではFPUを使用しない。
「/data/local.prop」に「ddac.enableFpu=true」という記述を入れることで、FPUを使うようになる、と書いてある。
上記のカスタムfirmwareでは、この設定を入れている。

ちなみに設定してみた場合の起動直後のlogcatメッセージは以下の様になる。

D/AndroidRuntime(   81): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
D/AndroidRuntime(   81): CheckJNI is OFF
I/dalvikvm(   81): Init:sysconf(_SC_PAGESIZE)=4096
I/dalvikvm(   81): DalvikTurbo: build FRG83 @ 199354 on May 26 2011 00:41:37
I/dalvikvm(   81): CM_init: dvmPlatformInvoke @ &0x7d711000
I/dalvikvm(   81): CM_getProperty(ddac.traceLog) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.threshold) => NULL
I/dalvikvm(   81): CM_init: threshold=1000
I/dalvikvm(   81): CM_getProperty(ddac.firstFrag) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.lastFrag) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.onlyFrag) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.printFrags) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.printFragsFail) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.printFragsInline) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.onlyAmStart) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.enableFpu):P => 'true'
I/dalvikvm(   81): CM_getProperty(ddac.livenessAnalysis) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.enableInlining) => NULL
I/dalvikvm(   81): CM_getProperty(ddac.nullPageSize) => NULL
I/dalvikvm(   81): CM_getProperty(com.jbed.mips.txx) => NULL
I/dalvikvm(   81): CM_getProperty(com.jbed.mips.sigbusAdj) => NULL
I/dalvikvm(   81): CM_init: 8 x 32Kb buffers at 0x7d7c0000..0x7d800000
I/dalvikvm(   81): CM_getProperty(ddac.queueLen) => NULL

ちゃんと、「CM_getProperty(ddac.enableFpu):P => ‘true’」というのが認識されているようだ。

MIPS Android Ramos V65Pro


すzさんよりRamos V65ProがJz4760搭載、ということで調べてみた。

Ramosがメーカーおよびブランド名ぽいんですが、中国名が3種類出てきてよくわかりません。
たぶん、フルの社名は「深圳市蓝魔数码科技有限公司」で、「蓝魔音悦汇」がブランド?。「蓝魔」がショート名なのかな?という考えていますが、正解なのかな・・・?

firmwareがダウンロードできるようになっていて、ファイル名を見ると、「[固件]音悦汇V65PRO_0819_RK43A_20110817固件下载」となっています。

「RK43A」はronzi A3でも同じ名前を採用しており、中を見てみるとieronzi配布版のfirmwareと同じような1ファイルタイプのfirmwareと、それに対応したUSBBoottoolがありました。

そんなわけで、とりあえず、ronzi A3に書き込んでみました・・・・・・
画面が映りませんでした。

ま、そんなもんですよね。

MediaTek チップについてのメモ書き


Mediak Tek(MTK)のチップ、といえば、中華の怪しげな携帯でよく採用されている安いチップです。

とはいえ、去年、ドコモからLTEのライセンスを受けていたりするので、今後日本でも見かけるようになっていく可能性が高いものだったりもします。
Impress ケータイWatch: 【Mobile World Congress 2011】自社製品の応用範囲の広さをアピールするMediaTek

そんなMediaTekチップで、良く出てくるチップ名とその機能についてのメモ書きです。

MT6516 ARM9 460MHz, GSM, Android 2.2
MT6513 ARMv11 650MHz, GSM, Android 2.2/2.3(MT6516より上位, これのWCDMA対応版がMT6573)
MT6573 ARM11 650MHz, WCDMA/GSM dual SIM, Android 2.2/2.3

MT6573(MTK6573)は「WCDMA/GSM dual SIM」とあるが、3GのDUALが出来るわけではなく、いまでている搭載製品を見る限りでは「SIM1:WCDMA/GSM SIM, SIM2:GSM SIM」の2枚がさせる、ということまでしかできないのかな?というところです。
そして、Lenovo A60(スマートフォン)に採用されているという話が・・・

MT6236 ARM9 312MHz, GSM dual SIM(extensible to 4SIM), フィーチャーフォン向け
MT6251(Sparrow51) フィーチャーフォンでも低スペック向け, GSM dual SIM
MT6252 ARM7-EJ 104MHz, GSM, 画面はWQVGAまで
MT6268 WCDMA/GSM, 5Mpixカメラ,
MT6276 フィーチャーフォン向け, WCDMA/GSM

MT511 タブレット系CPU WinCE6.0向け

MT5921 Wifiチップ

MT3328 GPSチップ (MT511, MT3351と一緒に使われている)
MT3351 FMトランスミッター

MT6162 RFチップ, WCDMA/GSM用

EA800のペンの圧力関連


ASUS Eee Note EA800はワコムのペンタブ技術搭載!と言われていたわけですが、あんまりそんな感じがせず、がっかりイリュージョンが炸裂していました。

元ネタ:BlacKnight さんのHow to change the pen pressure thresholdより

/bin/ts_printまたは/bin/ts_print_rawを実行すると、ペンの認識状況が出力されるよ!、というもの

実際に見てみる・・・

[root@Linux /root]#/bin/ts_print_raw
     1 --> 1318600504:120796   9215   4620      0      0      0
     2 --> 1318600504:130799   9198   4623      0      0      0
     3 --> 1318600504:140801   9180   4619      0      0      0
     4 --> 1318600504:140823   9160   4613      0      0      0
<略>
    37 --> 1318600875:620793  12410    118      0      0      0
    38 --> 1318600875:760947  12410     85      0      0      0
    39 --> 1318600875:770795  12410     52      0      0      0
    40 --> 1318600875:810783  12410      0      0      0      0
    41 --> 1318600876: 40723  12404     42      0      0      0
    42 --> 1318600876: 50795  12398     78      0      0      0
    43 --> 1318600876: 50814  12391    113      0      0      0
    44 --> 1318600876: 60944  12385    148      0      0      0

いろいろやってみたところ・・・
右上隅

   117 --> 1318601118:380768      0    263      0      0      0
   118 --> 1318601118:450726      0    293      0      0      0

左上隅

   149 --> 1318601129:880722  12026      0      0      0      0
   150 --> 1318601130: 70975  12056      0      0      0      0

左下隅

   180 --> 1318601206:540809  12092  16480      0      0      0
   181 --> 1318601206:570760  12102  16448      0      0      0

右下隅

   196 --> 1318601230:920796      0  16480     14      0      1
   197 --> 1318601230:930799     30  16480      6      0      1

つまり・・・右上隅が「0,0」で左下隅が「12410,16480」。「横,縦」という並びかたで・・・

カウントアップ--> 時刻(unixtime):こまかい秒? 横 縦 圧力 不明 タッチされてれば1

ということでした。

圧力は、どこまでいくかな?とやってみましたが、「174」まで力をかけてもまだ行けそうだったのですが、壊れるといやなのでそこで止めました。

BlacKnight さんの情報によれば「255」まで感知するらしい。
で、/etc/ts.confに「module pthres pmin=数字」を記載することで、動作が変わるそうな。

module_raw input
#module variance xlimit=50 ylimit=50 pthreshold=1
#module dejitter xdelta=10 ydelta=10 pthreshold=1
module pthres pmin=20
module linear noxyswap

上記のように追加して、再起動。
すると、確かにts_print_rawで表示される圧力値に「222」といった値が現れるようになりました。

ただ、こちらの値は、書き換えてもあまりいい効果は現れていないような感じがします。

EA800のペンのサンプリングレート変更


ここんとこ放置していたASUS Eee Note EA800。
最近、また、いろいろ動きがあるようです。

kernelを作ったり、パッケージマネージャを移植したりと、いろいろあるようですが
使い勝手の改善、という重要な動きがありました。

EA800で、結構不満な点の1つが、ワコム技術使ってるはずなのに、結構微妙なペン感度です。
ネタ元: BlacKnight さんの How to overclock your pen! より

/直下に置かれている「wac_tch」というファイル。
実はコレが、タブレットのサンプリングレート変更プログラムということが判明しました。

[root@Linux /root]#ls -l /wac_tch
-rwxr-xr-x    1 root     root         6679 Jan 27  2011 /wac_tch
[root@Linux /root]#/wac_tch
Need samplerate parameter!
[root@Linux /root]#

ただ単に実行するだけでは、上記のようにパラメータを指定してください。と言われるだけです。
指定できるパラメータは以下の4種類。

  • 「–0」 → ペン無効
  • 「–1」 → 133 pps
  • 「–2」 → 80 pps(たぶん、これが標準値)
  • 「–3」 → 40 pps

残念ながら現在地を調べるパラメータはないようです。

お薦めのパラメータは「–1」の133pps。

[root@Linux /root]#/wac_tch --1
wacom touch: set samplerate 133pps
[root@Linux /root]#

これで、素早くペンを動かした時の動作が改善したような感じです。

さて、この変更は再起動すると消えてしまいます。
再起動後も設定が引き継がれるようにするには、/etc/profileの最後に以下を追加します。

# set Wacom pen sample rate to 133 pps
if [ -e /wac_tch ] ; then
/wac_tch --1
fi

これでokです。

さて、BlacKnight さんは、もう1つ、ペンがらみで調査結果を出していますが、それについては、現在調査中です。
別記事になる予定です。