Kindle Fireの赤画面からの復旧方法+Cynanogenmod10.1の導入

Kindle FireにCyanogenmodを入れようとして失敗して、赤画面のままどうにもならなくなった。

この状態からの復旧方法について調べた。

必要なもの
・Factory Cableと呼ばれるmicroUSBコネクタ側の1ピンと4ピンが接続されているもの
・古いバージョンのbootloader
・適切なfirmware等

とりあえず調べた時のネタ元は以下の2つ。
[Kindle Fire 2 Restore][Working!!!]-12/7/2012
[BOOTLOADER] 2nd-Bootloader/Recovery unlock process for KFire 2 [04/02 TWRP update]


手順1: Factory Cableを用意する。

[Info]Making/Using a Factory Cable
↑の元ネタは「How/why to make your own Motorola “Factory Cable”」で、こちらの方が、配線図付きでわかりやすい(以下の画像は、ここからの転載)
Schematic


手順2: Factory Cableを使ってパソコンとKindle Fireをつなげる
手順3: Kindle Fireの電源を入れる

「Fastboot」という画面が表示されます。


手順4: fastbootコマンドが動くか確認

まず、Windows上で「Android Bootloader Interface」を認識させる。
その状態で、fastboot devicesを実行。

Z:\android\kindle>fastboot.exe devices

Z:\android\kindle>

何も表示されない。

では、「fastboot -i 0x1949 devices」では?

Z:\android\kindle>c:fastboot -i 0x1949 devices
393C000600000001        fastboot

Z:\android\kindle>

「-i 0x1949」というオプション指定が必要です。

手順5: bootloaderを古いバージョンにする

bootloaderをver 10.2.4のもので書き直します。
入手元は、[BOOTLOADER] 2nd-Bootloader/Recovery unlock process for KFire 2 [04/02 TWRP update]です。

Z:\android\kindle>c:fastboot.exe  -i 0x1949 flash bootloader otter2-u-boot-prod-10.2.4.bin
target reported max download size of 486539264 bytes
sending 'bootloader' (227 KB)...
OKAY [  0.197s]
writing 'bootloader'...
OKAY [  0.276s]
finished. total time: 0.475s

Z:\android\kindle>

手順6: 続いて、bootイメージとかを書き戻します。

Cyanogenmodにするときは、「otter2-freedom-boot.img」「otter2-twrp-2.4.4.0-recovery.img」を使います。
標準のKindle Fire OSにしたい時は、バックアップしてあった「boot.img」「recovery.img」「system.img」を使います。

ここでは、Cyanogenmod用のものを書き込んでいきます。

Z:\android\kindle>c:fastboot -i 0x1949 flash boot otter2-freedom-boot.img
target reported max download size of 486539264 bytes
sending 'boot' (8192 KB)...
OKAY [  0.454s]
writing 'boot'...
OKAY [  1.085s]
finished. total time: 1.541s

Z:\android\kindle>c:fastboot -i 0x1949 flash recovery otter2-twrp-2.4.4.0-recovery.img
target reported max download size of 486539264 bytes
sending 'recovery' (8153 KB)...
OKAY [  0.379s]
writing 'recovery'...
OKAY [  0.839s]
finished. total time: 1.220s

Z:\android\kindle>c:fastboot -i 0x1949 reboot
rebooting...

finished. total time: 0.002s

Z:\android\kindle>

注: Kindle Fire純正OSにする場合は、rebootの前に「fastboot -i 0x1949 flash system system.img」でシステムを戻してからrebootします。

手順7: systemを書き込みます。
TWRPからcyanogenmodとgappsのzipファイルを適用します。

手順8: 再起動して終了

Kindle Fireでroot取得とfirmwareバックアップ

Kindle Fireを手に入れたので、とりあえず標準状態で1日使ってみた。

・・・あまり面白くない。

そこで、普通のAndroidタブレットとして使おうと試みた。

その場合、2つやり方がある。

その1:標準のAmazon Kindle Fire OSのAndroid部分を表に出すようにする
その2:標準OSは消して、別のAndroid OSを入れる

まず、必要な情報集め

・日本のKindle Fireは、海外のKindle Fire 2/Kindle Fire 2nd Genに相当するRAM 1GBモデル
・海外のKindle Fire 2の開発コードは「otter2」?
・海外のKindle Fire(RAM 512MB)と、海外のKindle Fire 2(RAM 1GB)は別のfirmwareを使う

(以下、「Kindle Fire」を表記した場合は、日本のKindle Fire=海外のKindle Fire 2をさす)
・Kindle FireにKindle Fire HDのfirmwareは使えない
・Kindle Fireに別OSを入れる場合はロックされているbootloaderを解除する必要あり(bootloader unlock)
・bootloader unlockには、標準OSでroot取得できるようにする必要がある

・Androidスマートフォン向けで有名なCynanogenmodからKindle Fire向けも出ている
・その他、いろんな情報はxda-developersの「Kindle Fire 2 Android Development」にある

今回は、とりあえず、「root取得」と「firmwareバックアップ」までの記事とします。
(警告: Kindle Fire 10.4.3_user_4308520で「[ONE-CLICK] Automated Freedom-Boot and TWRP installer」を使ったら失敗し、赤画面から進まなくなりました)


手順1: rootの取得

まず、現状、手元のKindle Fireは、firmwareが2013/06/20段階での最新 10.4.3_user_4308520になっている。
これに対して、root取得が可能かどうかが最大の問題となる。

[Root][Working 10.3.1]Kindle Fire 2 Root made easy」で紹介されているroot取得ツールのうち、「Bin4ry’s Root(Root MANY ANDROID! [Upd: 18.06.2013] – Switched to improved method)」を使って実施。

Z:\android\kindle\Root_with_Restore_by_Bin4ry_v31>RunMe.bat
======================================================================
= This script will root your Android phone with adb restore function =
= Script by Bin4ry (thanks to Goroh_kun and tkymgr for the idea)     =
=             Idea for Tablet S from Fi01_IS01                       =
=                      (18.06.2013) v31                              =
======================================================================

Device type:
1) New Standard-Root (thx Ariel Berkman)
2) New Xperia Root by Goroh_kun (Xperia Z, Xperia V [JellyBean] ...)
3) Old
4) Old-Special (for example: Sony Tablet S, Medion Lifetab)
G) Google Glass Mode (thx Saurik for the ab file)

x) Unroot

Make a choice: 1
Please connect Device with enabled USB-Debugging to your Computer
Doing a Backup first, please confirm this on your device!
Now unlock your device and confirm the backup operation.
Done!
続行するには何かキーを押してください . . .

Kindle Fireの画面に、バックアップしますか?という表示が出るので、バックアップを実施する。
バックアップ完了の表示が出たら、パソコン側でキーを押す

Please select the RESTORE MY DATA option now on your device!
Now unlock your device and confirm the restore operation.
Please press any Key when restore is done.
続行するには何かキーを押してください . . .

Kindle Fireの画面に、リストアしますか?という表示が出るので、リストアを実施する。
リストア完了の表示が出たら、パソコン側でキーを押すと、Kindle Fireが再起動する。

Going to reboot now ...
4644 KB/s (380532 bytes in 0.080s)
5069 KB/s (1500495 bytes in 0.289s)
4948 KB/s (1165484 bytes in 0.230s)
remote object '/system/bin/ric' does not exist
.
Going to copy files to it's place
Rebooting again, please wait!
Z:\android\kindle\Root_with_Restore_by_Bin4ry_v31\ric が見つかりませんでした。

ここまで出たところで、再度、Kindle Fireが再起動。
画面ロックが出たら、ロック解除を実施。

Z:\android\kindle\Root_with_Restore_by_Bin4ry_v31\ric が見つかりませんでした。
Restoring previous Backup! Please select the RESTORE MY DATA option now on your
device!
Now unlock your device and confirm the restore operation.
Please press any Key when restore is done.
続行するには何かキーを押してください . . .

今度はKindle Fire上に「完全な復元」という画面が表示される。
「データを復元する」を選択する。

そして、パソコン側で何かキーを入力すると、Kindle Fireが再起動する。

Going to reboot last time now ...
You can close all open command-prompts now!
After reboot all is done! Have fun!
Bin4ry
続行するには何かキーを押してください . . .

そして、Kindle Fireにロック解除画面が出てきたら、処理完了。

C:\Program Files (x86)\Android\android-sdk\platform-tools>adb shell
shell@android:/ $ su
su
shell@android:/ #

手順2:バックアップ取得

いろいろバックアップを取得します。
手法は「[BOOTLOADER] 2nd-Bootloader/Recovery unlock process for KFire 2 [04/02 TWRP update]」を元に実施。

上記のページには↓な風に書かれているのですが、このままやったところ、全然動きませんでした。

adb pull /dev/block/mmcblk0boot0
adb pull /dev/block/platform/omap/omap_hsmmc.1/by-name/boot
adb pull /dev/block/platform/omap/omap_hsmmc.1/by-name/recovery
adb pull /dev/block/platform/omap/omap_hsmmc.1/by-name/system

うちで実施した手順は以下のようになります。

C:\Program Files (x86)\Android\android-sdk\platform-tools>adb shell
shell@android:/ $ su
shell@android:/ # cd /mnt/sdcard
shell@android:/mnt/sdcard # mkdir backup
shell@android:/mnt/sdcard # cd backup
shell@android:/mnt/sdcard/backup # dd if=/dev/block/mmcblk0boot0 of=mmcblk0boot0.img
4096+0 records in
4096+0 records out
2097152 bytes transferred in 0.479 secs (4378187 bytes/sec)
shell@android:/mnt/sdcard/backup # dd if=/dev/block/platform/omap/omap_hsmmc.1/by-name/boot of=boot.img
16384+0 records in
16384+0 records out
8388608 bytes transferred in 1.955 secs (4290848 bytes/sec)
shell@android:/mnt/sdcard/backup # dd if=/dev/block/platform/omap/omap_hsmmc.1/by-name/recovery of=recovery.img
16384+0 records in
16384+0 records out
8388608 bytes transferred in 1.904 secs (4405781 bytes/sec)
shell@android:/mnt/sdcard/backup # dd if=/dev/block/platform/omap/omap_hsmmc.1/by-name/system  of=system.img
1814528+0 records in
1814528+0 records out
929038336 bytes transferred in 271.368 secs (3423536 bytes/sec)
shell@android:/mnt/sdcard/backup # ls -l
-rw-rw-r-- root     sdcard_rw  8388608 2013-06-20 10:06 boot.img
-rw-rw-r-- root     sdcard_rw  2097152 2013-06-20 10:05 mmcblk0boot0.img
-rw-rw-r-- root     sdcard_rw  8388608 2013-06-20 10:06 recovery.img
-rw-rw-r-- root     sdcard_rw 929038336 2013-06-20 10:11 system.img
shell@android:/mnt/sdcard/backup # exit
C:\Program Files (x86)\Android\android-sdk\platform-tools>z:

Z:\android\kindle>c:adb pull /mnt/sdcard/backup/mmcblk0boot0.img
3373 KB/s (2097152 bytes in 0.607s)

Z:\android\kindle>c:adb pull /mnt/sdcard/backup/boot.img
3232 KB/s (8388608 bytes in 2.534s)

Z:\android\kindle>c:adb pull /mnt/sdcard/backup/recovery.img
3472 KB/s (8388608 bytes in 2.359s)

Z:\android\kindle>c:adb pull /mnt/sdcard/backup/system.img
3646 KB/s (929038336 bytes in 248.811s)

Z:\android\kindle>

以上で、完了です。

デジカメ用WiFi SDカード Spectec Cloud Flash SDW-829

以前からmicroSDスロットのSDIO対応Wifiカードとか出していた台湾のSpectecから、SDカードサイズでmicroSDカードを追加して使う形、つまりはPQI Air Card的な製品が発売されるそうです。

日本の製品ページ: CloudFlash (型番: CLF-WF01)
メーカ製品ページ: SDW-829 cloud flash -SD WLAN adapter with microSD slot

発売に関する記事例: ケータイWatch「microSDにWi-Fi機能を追加、SDカード型アダプター

そして、2013/07/05にはエバーグリーン/上海問屋からも発売されるとのニュースが
製品情報兼販売ページ: 上海問屋「【カメラ用】カメラで撮影した画像がiPhoneやPCでwi-fi経由ですぐに見れる! 無線LAN機能 搭載 SDカード アダプター 上海問屋 DN-84717
発売に関する記事例: AV Watch「エバーグリーン、3,999円の無線LAN SDカードアダプタ

Spectec Wi-Fi内蔵SDカードアダプタ CloudFlash CLF-WF01

Spectec Wi-Fi内蔵SDカードアダプタ CloudFlash CLF-WF01
価格:3,980円(税込、送料別)

まぁ、うたい文句的には、いままでの東芝FlashAir, TREK2000 Flucard Pro, PQI Air Cardと似たような感じで、特に特色が無い感じが・・・

ちょっと気になる点としては、「SDW-829」で検索すると、Eye-Fiのフォーラムで2012/02/12にSDW-829について触れられていたり(フォーラムのスレッド)、COMPTEXのページで紹介されていたり(紹介ページの写真日付が2012/02/14)と、結構前から存在自体はあったような感じなのに、いまごろの販売となっているあたり。
spectec-wifi

果たして、どんな完成度合いになっていることやら・・・

ちなみに、Spectecは、Cloud Disk (Wireless Portable Drive)SCD-836というのも出しています。


参考情報として、スイッチ操作でWiFiをon/offするというタイプの製品についても触れておきます。
最近では、LZeal Information TechnologyezShareという製品も発売されています。

INTERNET Watch「テック、Wi-Fi機能搭載Class 10対応SDカード「ezShare」~同時アクセスは5人
AKIBA PC Hotline 2013/07/03「LZeal Information Technology ezShare

日本代理店 株式会社テック「Wi-Fi機能を搭載したSDカード 【ezShare】

まぁ、デジカメ使用中にon/offしようとすると、蓋を開けなければいけないので、使い勝手が微妙そうですけどね

MIPS JZ4775搭載のGEAK WatchというAndroid搭載腕時計

GEAK Watchという名前でMIPSコアのJZ4774搭載でAndroid OSの腕時計が発売されるようです。
watch_parameter_banner

販売メーカ:GEAK/上海果壳电子有限公司
製品ページ:GEAK Watch(GEAK手表)
元ネタ: edgadget china「盛大 GEAK 推出可獨立運作的智慧型手表 GEAK Watch,使用 Android 4.1 系統及強大的硬體配備
およびMIPS公式twitter

CPUについては上記のMIPS公式twitterではIngenic Semiconductor(北京君正集成电路)のJz4774を使っている、と書いてありますが、GEAK Watch製品ページのスペックには「JZ4775 1G主频 M IPS架构 超低功耗」と記載されています。
まぁ、IngenicにはJz4775に関する情報はあってもJz4774についての情報は見当たらないので、おそらくはJz4775なんでしょうね。
・Ingenic「Jz4775に関するリリースニュース
・Ingenic「JZ4775製品情報

Jz4775は、2012年にリリースしたJz4770から、CPUコア数などは増やさず1コアのまま、3D関連の機能を削減し、そして省電力にして、組み込みしやすくしたもののようです。
なので、これに搭載されているAndroid上で日本語IMEを使いたいのであれば、うちで配布している「MIPS Android(JZ4760)用nicoWnnG version 2012.1107-1/2012.1120-1 独自ビルド版」を使えばいいんじゃないかと思います。

なお、GEEK Watchの全体スペックとしては以下となっています。

CPU Jz4775 1.0GHz
RAM 512MB
ROM 4GB
1.55インチ 240×240液晶、マルチタッチ対応
Android 4.1
WiFi 802.11 b/g/n
Bluetooth 4.0
NFCあり
FMラジオあり
GPS/重力センサー/ジャイロ(陀螺仪)/地磁気センサーあり
電池 500mAh
生活防水あり

・・・一言でいえば、スペックアップしたMOTOACTVですよね。これ

MediaTekのLTE対応チップMT6290は2013年末から出荷予定?

MediaTek(联发科)から出てくると言われているLTE対応チップですが、名前は「MT6290」となり、2013年末ぐらいから試験出荷が始まり、本格的な生産は2014年となる見込みのようです。

MediaTekは2010年7月にドコモからLTE対応の通信プラットフォームのライセンスを受けています。(「ドコモ、台湾MediaTekにLTEプラットフォームをライセンス提供」)

その成果がようやくでてくるような感じです。

今回の話のネタ元
・C114中国通信网/C114新聞「联发科换将:押宝4G,强调性价比」(2013/5/27)
・C114中国通信网/C114新聞「联发科中国新帅章维力:今年底推TD-LTE芯片 全面布局中低高端」(2013/5/28)
・MTK手机网「可支持5模10频 联发科TD-LTE芯片MT6290年底见」(2013/06/12)

5/24にあったMediaTekの会見で、今年は4G/LTEに力を入れていき、中国でTD-LTEのサービスを拡大していく。
端末側もMT6290という4G対応のものを出していく。

MT6290は28nmプロセスで製造され、5種類の形式と10個のバンドに対応(可支持5模10频)している。
なお、5種類とは以下のもの
・TD-LTE
・FDD-LTE
・TD-SCDMA
・WCDMA
・GSM/EDGE

という形で、話は出てきたのですが、まぁ・・・LTE対応チップの話は、2012年から出たり消えたりしてますから、果たしてどうなることやら・・・