Kindle Fire HDにカスタムROMのCyanogenMod10.1(CM10.1)を導入しようと思い、
まずはブートローダの書き換えと、リカバリーツールであるTWRPの導入を行いました。
CM10.1はAndroid 4.2ベースのカスタムROMになります。
導入はXDAのフォーラムに記載されている流れ通りです。
最新の導入方法を必ずXDAのフォーラムで確認してください。
この作業にはKindle Fire HDのルート化とAndroidSDK環境が構築されていることが前提です。
⇒【Kindle Fire HD】(ルート化 #1) ドライバーをインストールしてパソコンとKindleを認識させる
⇒【Kindle Fire HD】(ルート化 #3) ルート化作業の本番
現在使用しているKindleのOSは、Amazonのストックロムで、2013/5/3時点で最新のバージョン7.3.1です。
導入するTWRPのバージョンは2.4.4.0です。
作業は自己責任でお願いします。
adbコマンドを使用するので、
Kindle Fire HDの設定を開き"その他"⇒"セキュリテ"ィから"ADBを有効にする"を"ON"に変更します。
KindleとパソコンをUSBケーブルで接続し、コマンドプロンプトを起動します。
最初に現在のブート、リカバリー、システム領域のバックアップを行います。
ddコマンドで、対象の領域をKindleの"/sdcard"フォルダにコピーします。
実際のコマンドは以下のようになります。
2013/05/18追記
新しく"boot0″ブロックのバックアップが追加されています。
同じようにバックアップすることをおススメします。
"boot0″ブロックには端末固有の重要な情報が含まれているようです。
詳細は以下で確認してください。
<ATTN: Backup your boot0 block today>
http://forum.xda-developers.com/showthread.php?t=2274338
1 2 3 | adb shell su -c "dd if=/dev/block/platform/omap/omap_hsmmc.1/by-name/boot of=/sdcard/stock-boot.img" adb shell su -c "dd if=/dev/block/platform/omap/omap_hsmmc.1/by-name/recovery of=/sdcard/stock-recovery.img" adb shell su -c "dd if=/dev/block/platform/omap/omap_hsmmc.1/by-name/system of=/sdcard/stock-system.img" |
pullコマンドで、上の3ファイルをKindleからパソコン側コピーします。
実際のコマンドは以下のようになります。※パソコン側のフォルダは環境にあわせて変更してください。
1 2 3 | adb pull /sdcard/stock-boot.img C:\android-sdk-windows\Rom\CM10.1\Backup\stock-boot.img adb pull /sdcard/stock-recovery.img C:\android-sdk-windows\Rom\CM10.1\Backup\stock-recovery.img adb pull /sdcard/stock-system.img C:\android-sdk-windows\Rom\CM10.1\Backup\stock-system.img |
XDAのフォーラムから必要なファイルをダウンロードします。
- stack
- kfhd7-freedom-boot-7.3.0.img
- kfhd7-twrp-2.4.4.0-recovery.img
- kfhd7-u-boot-prod-7.2.3.bin
pushコマンドで、ダウンロードしたstackファイルをKindleの"/data/local/tmp/"フォルダにコピーします。
実際のコマンドは以下のようになります。※パソコン側のフォルダは環境にあわせて変更してください。
1 | adb push C:\android-sdk-windows\Rom\CM10.1\stack /data/local/tmp/ |
ddコマンドで、stackファイルをsystem領域にブロックサイズ指定でコピーします。
実際のコマンドは以下のようになります。
1 | adb shell su -c "dd if=/data/local/tmp/stack of=/dev/block/platform/omap/omap_hsmmc.1/by-name/system bs=6519488 seek=1" |
Kindleに存在する"install-recovery.sh"のファイル名を"install-recovery.sh.bak"に書き換えます。
実際のコマンドは以下のようになります。
1 2 3 | adb shell su -c "mount -o remount,rw ext4 /system" adb shell su -c "mv /system/etc/install-recovery.sh /system/etc/install-recovery.sh.bak" adb shell su -c "mount -o remount,ro ext4 /system" |
==
ここから先はfastbootコマンドで行います。
Factory Cableがある場合はシャットダウン後、Factory Cableを接続して"fastboot"で起動、
Factory Cableがない場合は、以下のコマンドを入力して"fastboot"で起動させます。
この方法はXDAフォーラムとは異なります。
私は"fastboot"コマンドが正しく動作するか確認したかったので、まず"fastboot"で起動させました。
フォーラムに載っている方法は、Kindleの電源を落として、パソコンと接続していない状態から
最初の"fastboot"コマンドをコマンドプロンプトから発行します。
コマンドプロンプトには<waitng for device>が表示され待機状態になります。
この状態でKindleとパソコンと接続すると、
Kindleが"Fastboot"状態で起動し、待機中の発行したコマンドが実行されます。
"Fastboot"状態は維持されますので、次の"fastboot"コマンドを順次発行と記載されています。
1 | adb shell su -c "reboot bootloader" |
再起動後、画面に"Fastboot"の文字が表示されます。
fastbootコマンドが正常に動作するかを確認するには、以下のコマンドを入力します。
1 | fastboot -i 0x1949 getvar product |
"product: Tate-PVT-08″のような返答があると正常に動作しています。
コマンドを発行しているにもかかわらず、<waitng for device>から表示が変わらない場合、
ドライバーが正常にインストールされていません。
現在のAndroidOSのバージョンが7.3.0以上の場合、
ダウンロードした"kfhd7-u-boot-prod-7.2.3.bin"でブートローダ領域を書き換えます。
実際のコマンドは以下のようになります。※パソコン側のフォルダは環境にあわせて変更してください。
1 | fastboot -i 0x1949 flash bootloader C:\android-sdk-windows\Rom\CM10.1\kfhd7-u-boot-prod-7.2.3.bin |
ダウンロードした"kfhd7-freedom-boot-7.3.0.img"でブート領域を書き換えます。
実際のコマンドは以下のようになります。※パソコン側のフォルダは環境にあわせて変更してください。
1 | fastboot -i 0x1949 flash boot C:\android-sdk-windows\Rom\CM10.1\kfhd7-freedom-boot-7.3.0.img |
ダウンロードした"kfhd7-twrp-2.4.4.0-recovery.img"でリカバリー領域をTWRPに書き換えます。
実際のコマンドは以下のようになります。※パソコン側のフォルダは環境にあわせて変更してください。
1 | fastboot -i 0x1949 flash recovery C:\android-sdk-windows\Rom\CM10.1\kfhd7-twrp-2.4.4.0-recovery.img |
再起動します。
実際のコマンドは以下のようになります。
1 | fastboot -i 0x1949 reboot |
再起動中、[Kindle Fire]の"Fire"の色が最初はオレンジに光り、
次にブルーに光ります。
このまま何も操作をしないと再度オレンジ色になり、通常起動します。
"Fire"の色がブルーに光っている時、ボリュームアップのボタンが押されていると、
リカバリーツールのTWRPが起動します。
このTWRPを利用してカスタムROMをインストールします。
XDAのフォーラムから対象ファイルのダウンロードを行います。
今回ダウンロードしたのは
2013/04/22リリース[ALPHA CM10.1 + 3.0.50+ KERNEL]版の
"cm-10.1-20130422a-UNOFFICIAL-tate.zip"ファイルと
Google Apps(2013/03/01版)の"gapps-jb-20130301-signed.zip"ファイルです。
このROMはCyanogenModオフィシャル版ではありません。
現時点ではKindle Fire HD用でオフィシャル版のCM10.1はリリースされていません。
ダウンロードしたファイルはKindleの"Internal Storage"内にある適当なフォルダへコピーします。
今回は"Download"フォルダにコピーしました。
TWRPを起動します。
現在使用しているKindle Fire HDのOSが、Amazonのストックロム(バージョン7.3.1)なのでクリアーします。
"Wipe"をタップします。
"Cache"、"Dalvik Cache"、"Factory Reset"、"System"をWipeします。
"Cache"をタップします。
"Swipe To Wipe"の矢印を右にスワイプします。
"Cache"の"Wipe"が実行されます。"
Back"をタップし、他の"Dalvik Cache"、"Factory Reset"、"System"を"同じ手順でWipeします。
インストールを行います。
"Install"をタップします。
ダウンロードファイルをコピーしたKindleのフォルダに移動します。
コピーしたファイルが確認できます。
まず、"cm-10.1-20130422a-UNOFFICIAL-tate.zip"を指定します。
"Swipe To Confirm Flash"の矢印を右にスワイプして、インストールを実行します。
インストール完了後、"戻る"をタップします。
"Add More Zips"をタップして複数ファイルを一回の作業でインストールできますが、
今回は個別にインストールを行っています。
次に、"gapps-jb-20130301-signed.zip"を指定します。
"Swipe To Confirm Flash"の矢印を右にスワイプして、インストールを実行します。
インストール完了後、"Reboot System"をタップします。
CyanogenModが起動します。
起動後、画面に従い初期設定を行います。
これは通常のAndroidの初期設定と同じです。
"Nexus 7″と同じアカウントを指定して復元を行いました。
設定やアプリなどが同期されます。
設定メニュー
端末情報
Androidのバージョンは4.2.2です。