Kindle Fire에 대한 기초 내용입니다. 아래 설명에 기반합니다.
Kindle Fire For Beginners
Stock : Kindle제품의 원래 OS의 상태
rooting : 일반 유저가 아닌 관리자의 권한 획득. stock S/W에 일부 자유로움을 부여
flashing (3rd party ROM 설치) : stock S/W대신에 완전히 다른 OS를 사용
bootloader : power on 될때 처음 loading되는 S/W. OS로 control을 넘기기 전에 기본적인 H/W configuration을 설정. stock bootloader는 제한적인 function만 제공하므로, FIREFIREFIRE같은 대안 bootloader를 사용하여 recovery로 access 가능하게 함.
recovery : ROM install,backup, restore, wipe 등을 수행할 수 있는 mini OS. 대표적인 것은 TWRP (Team Win Recovery Project). recovery를 이용하여 현재 ROM을 backup한후, 새로운 ROM을 flash할 수 있음.
Fastboot/ADB : 컴퓨터와 Kindle간의 interaction 동작을 가능하게 하는 command line tool.
partition : Kindle Fire의 8GB 저장공간은 bootloader, recovery, OS의 미리 정해진 partition으로 나뉘어져 있음.
Fastboot : partition을 flash/erase함. (FIREFIREFIRE, TWRP를 flashing). fastboot는 tool을 의미하기도 하고, device가 fastboot 명령을 받을 수 있는 mode를 가르키기도 함.
ADB : device로부터의 file을 copy하는 등의 file level의 상호작용을 수행함. 또한 Kindle 기기에서 Linux 명령을 수행할수 있도록 함. rooting, flashing 작업에 이용. 기기가 recovery 상태 또는 USB debugging on이 되어 있는 OS 상태에서 사용가능함.
bootmode : 기기가 power on 될때, bootloader는 bootmode를 확인하여 그에 따라 booting을 수행함. bootmode로는 normal(4000), fastboot(4002), recovery(5001)이 있음. bootmode는 값을 바꾸기 전에는 계속 유지됨.
unbrick
- bootloop에 빠지게 되는 문제 상황에서는 fastboot/adb로 bootmode 수정.
- OS가 문제일때, fastboot로 new bootloader와 recovery를 설치하여, booting시 recovery로 진입후, new ROM을 설치함.
- FIREFIREFIRE : booting시 노랑삼각logo(v0.9-1.2), 안드로이드logo(v1.3), 백/청 kindle fire logo(v1.4 이후). boot시 fastboot mode로 짧게 진입가능하게 하고, 이때 fastboot command를 주면 reboot전까지 fastboot mode로 남게 됨.
- factory cable : special한 USB케이블로서, 이를 컴퓨터에 연결하면 bootloader가 정상일 경우, fastboot 로 booting 가능함.
Driver
- ADB driver가 설치되어야 fastboot, adb 명령을 기기로 전달할 수 있음. Kindle Fire Utility (KFU)도 이 상태에서 동작함.
- 설치방법1 : Android SDK 를 설치 (개발 관련자 아니면, 이 방법까지 필요없음)
- 설치방법2 : KFU 에서 제공하는 installer 사용. 즉, KFU 파일 안의 install_drivers.bat을 수행함. (혹시 language 관련 not support 메세지가 뜬다면, drivers\dpinst.xml 에서 language code를 0x409 (English)에서 0x412 (korean)으로 변경
- 설치확인 : 컴퓨터 아이콘 오른쪽클릭-관리-장치관리자 화면에서 확인. Kindle을 컴퓨터에 연결하면 아래 그림의 오른편 같이 떠야함.

(왼편: Driver설치 안될경우. 위: Fastboot로 연결시. 아래: adb로 연결시)
adb 연결시, Kindle은 USB debugging이 enable되어 있어야 함 (stock OS는 default on 이 되어 있다고 함). driver가 한번에 잘 안되는 경우도 있으므로 재부팅을 다시 해보던지, Kindle을 다시 재부팅 해보던지 하는 경우가 있음. 계속 잘 안되면 원문 link상의 방법을 참고할것.
fastboot
- fastboot mode로의 진입방법
; bootmode를 4002로 설정하고 reboot
; factory cable 연결하고 reboot
; FireFireFire의 fastboot mode 구간동안에 fastboot 명령을 전달
- fastboot mode인지 확인 방법으로 아래 명령을 주면
fastboot getvar product
product:kindle 이라고 출력됨.
(stock bootloader일 경우 custom vector ID를 붙여야함. 즉, fastboot -i 0x1949 getvar product. FFF bootloader에서는 vendor ID가 normal한 경우로 바뀌어서 생략 가능함)
- bootmode 바꾸고 재부팅
fastboot oem idme bootmode 4000
fastboot oem idme bootmode 4002
fastboot oem idme bootmode 5001
fastboot reboot
- partition 지우기
fastboot erase bootloader
fastboot erase recovery
fastboot erase boot
fastboot erase system
fastboot erase cache (twrp의 factory reset)
fastboot erase userdata (twrp의 factory reset)
fastboot erase media (sdcard partition)
- flashing
fastboot flash bootloader u-boot.bin
fastboot flash recovery twrp.img
fastboot flash boot boot.img
fastboot flash system system.img
fastboot flash userdata userdata.img
- boot (또는 recovery) image로 booting
fastboot boot boot.img
adb
- 기기가 OS또는 recovery로 booting되어있을때 사용가능.
- adb 동작 확인
adb devices
- adb는 background server(daemon) 서비스를 이용하므로, 명령어 발생시, server가 동작인지를 보고 명령을 시작함.
- bootmode 바꾸고 재부팅
adb shell idme bootmode 4000
adb shell idme bootmode 4002
adb shell idme bootmode 5001
adb reboot
- 기기 사이와의 file/folder를 copy
adb push <source on host> <destination on device>
adb pull <source on device> <destination on host>
- App을 sideload
adb install App.apk
- Linux command 실행
adb shell <Linux command>
이하의 내용은 아래 link를 참고하세요.
Root/ Install a ROM / Unroot / Revert to Stock (A KFFB Supplement)