[TUT] ROOT HD10 (2017), HD8(2016-2017) - EASY SuperSu

Search This thread

Mr_Tadakichi

Member
Apr 14, 2019
5
0
Will this work for the 2015 fire hd8?

Update - March 23rd, 2019.

There is now an excellent offline rooting method for HD10 (2017), HD8(2016-2018), all current FireOS versions, thanks to the fantastic effort by @diplomatic - link. This new root is obtained within a few seconds, so it is very fast. To install permanent root after mtk-su for HD10 (2017), HD8 (2016-2017), use the scripts by @Rortiz2 in here: v2.1, or v1.0 (see this link for a Linux script). For HD8 (2018), there is a dedicated full bootloader unlocking and permanent root guide - link. For HD10 (2017) there is also a full bootloader unlocking procedure available - link. The historical Kingoroot rooting procedure for HD10 (2017) is below. As a friendly reminder, once you have a root shell (obtained by any means), ensure that you disable OTA updates as to avoid getting an unrootable update (except for HD8 (2018) - do not run the commands below before you unlock the bootloader!!!):
Code:
mount -w -o remount /system
mv /system/priv-app/DeviceSoftwareOTA/DeviceSoftwareOTA.apk /system/priv-app/DeviceSoftwareOTA/DeviceSoftwareOTA.apk_
ls -l /system/priv-app/DeviceSoftwareOTA/

The original Kingoroot method for HD10 (2017), all current FireOS versions - EASY SuperSu


Update v0.9, 12/29/18 As empasized by shonkin in this post, the method still works for FireOS 5.6.3.4. Enjoy!!! I would never have expected the hole to last his long ...
Update v0.8, 01/26/18 - as first reported by @najoor in this post, FireOS 5.6.0.1 is rootable! Today I verified this myself after a somewhat unsuccessful FlashFire update.
Update v0.7, 01/14/18 - @freaky2xd made a video with these rooting instructions, please follow it if you prefer a visual guide (here or here)
Update v0.6, 01/09/18 - there were reports that dr.fone app seems to be able to root the device as well. I took dr.fone for a spin, and based on its bloatedness and a few other annoying features, my personal recommendation is that you stick with the devil we know - Kingoroot (link)
Update v0.5, 01/04/18 - add a DOS bat file to remove any possible updates to Amazon packages
Update v0.4, 01/02/18 - title update
Update v0.3, 12/31/17 - light clean up; I got into a bootloop, and had to sideload a stock ROM & re-root - a.k.a. "eat my own dogfood" :D - Everything works fine.
Update v0.2, 12/30/17 - some redundant commands are removed.
Update v0.1, 12/30/17 - the rooting procedure is essentially taken from @retyre (here and here). Except, the instructions below include a lot of details, and handle mostly everything from the PC/ADB side. Try, and report back. GOOD LUCK!




Here is the guide to the painless root (while out of the box FireOS allows it; right now all FireOS versions up to and including 5.6.0.1 - the current OTA - are rootable). The key enabler is the original post by @ztrund (link), great work blazing the trail (and motivating me to get another Fire tablet ASAP, LOL).

Given that the devices will be shipping with the (older) rootable FireOS for the next few months (but beware of the upcoming updates - see below !!!), there is a good window of opportunity to acquire a rootable Fire HD 10, and root it. As of Dec 27th 2017, there are no reports yet of non-rootable OTAs, but those OTAs will be coming soon, count on it!

The utmost goal here is to preserve the earliest FireOS version that you get, and not let it get updated by Amazon on a whim.
I am starting with a recently bought Fire HD 10 2017 (light refurb from eBay, missed the Black Friday mega sale :( ). I have FireOS 5.5.0.0 (earlier than 5.6.0.0!), version name 5.3.5.1 (591450020)




Part I (avoiding Amazon updating procedure upon the initial Fire setup) - this can (almost safely) be skipped today (end of Dec, 2017), since there are no reports of unrootable OTAs yet

Low tech way (thanks to @Blaiser47 and @retyre for suggestions!):
  1. Unpack Fire HD 10, turn it on, it will immediately demand a WiFi access
  2. Choose any option on that WiFi screen, press cancel, and then skip
  3. Once Alexa shows up, swipe down from the top, turn on Airplane mode just to be sure

High tech way:

  1. Set up a dedicated slow router, limit upload/download speed to ~25 kbps (this is the trickiest part, I have a dedicated Tomato router which I use to control traffic)
  2. Unpack Fire HD 10, turn it on, it will immediately demand a WiFi access
  3. Connect Fire to your slow router
  4. Once Fire finds Internet, it'll immediately have "Checking for updates" on the screen, this is where the slow router should kick in, and do the trick of forcing the update to give up
  5. Wait a bit for updates, hopefully, it won't find them, if found something, do factory reset, and repeat (on my 1st try it did find the update, although, could not download it quickly enough, I did a factory reset via Pwr&Vol+ recovery mode, and tried again - the 2nd time it skipped the update due to the slowness of the connection)
  6. Sign in to Amazon account when prompted
  7. Once Alexa shows up, swipe down from the top, turn on Airplane mode - no more risk of updates!!!




Part II (rooting via Kingoroot, disabling OTA, and getting SuperSu replacement, as per @retyre recommendations)

  1. Take your Fire HD as is, do not do anything dramatic such as "factory reset", Amazon ROM sideloading, etc
  2. Swipe down from the top, turn on Airplane mode - to ensure that there are no OTA updates during the procedure
  3. In "Settings/Device Options", tap "Serial Number" 7 times, a menu "Developer Options" will appear
  4. In "Settings/Device Options/Developer Options", turn ADB debugging to ON (under "Debugging")
  5. In "Settings/Security", turn "Apps from Unknown Sources" to ON
  6. Download ADB to your PC (link)
  7. Setup ADB drivers on your PC, connect Fire to your PC, make sure "adb devices" command shows your Fire device, authorize ADB connection on Fire
  8. Download SuperSu 2.79 (this exact version!!!) to your PC from this link, place it into your ADB PC folder. The filename of this apk will be assumed to be SuperSU-v2.79-20161205182033.apk below
  9. Download the attached su64.zip to your PC (see the attachment below), unzip to your ADB PC folder
  10. Open a CMD window in ADB PC folder (this will be called ADB_cmd window in the following steps), type
    Code:
    adb devices
    adb uninstall eu.chainfire.supersu
    This is a clean up of possible old SuperSu (just in case), ignore any errors you may get (if SuperSu is absent ...)
  11. Download Kingoroot to your PC (link), install, let it update
  12. Connect Fire to your PC; launch Kingoroot on PC; before pushing the big "ROOT" button in Kingoroot, uncheck a small box in the lower left corner for "Install recommended app" ; push "ROOT" button; wait for Kingoroot to root
  13. Once Kingoroot succeeds, open a 2nd CMD window in ADB PC folder to your Fire (this will be called ADB_root window in the following steps), get a root shell, and disable OTA updates
    Code:
    adb shell
    su
    mount -w -o remount /system
    mv /system/priv-app/DeviceSoftwareOTA/DeviceSoftwareOTA.apk /system/priv-app/DeviceSoftwareOTA/DeviceSoftwareOTA.apk_
    ls -l /system/priv-app/DeviceSoftwareOTA/
    ignore any errors you may get while doing this; after 'su', you should see root (#) prompt here
  14. Switch to the first ADB_cmd window, type
    Code:
    adb uninstall com.lionmobi.powerclean
    adb uninstall com.kingoapp.link
    adb uninstall kingoroot.supersu
    adb install SuperSU-v2.79-20161205182033.apk
    adb shell "am start -n eu.chainfire.supersu/eu.chainfire.supersu.MainActivity"
  15. Skip this step - it is not needed
    Switch to the second ADB_root window (with # prompt), type
    Code:
    cd /data/local/tmp
    mount -w -o remount /system
    cp ./su64 /system/xbin/daemonsu
    chmod 0755 /system/xbin/daemonsu
    daemonsu -d &
    cp ./su64 /system/xbin/su
    chmod 0755 /system/xbin/su
    am start -n eu.chainfire.supersu/eu.chainfire.supersu.MainActivity
  16. On your Fire, SuperSu should pop up. Update SuperSu binary as "Normal", it should report "Installation failed." Proceed to reboot. (If it doesn't report an outcome ("failed") in a couple of minutes, go to the Fire's Apps and force-stop SuperSU and retry.)
  17. Upon reboot, SuperSU should be functional. Choose "Grant" as the default access.
  18. Uninstall all the junk from Kingoroot on your Fire, thanks to @fstanis for detailed instructions (copied here, executed from PC):
    Code:
    adb uninstall com.nemo.vidmate
    adb shell rm -rf /sdcard/VidMate
    adb shell rm -rf /sdcard/.a
    adb shell rm -rf /sdcard/.DataStorage
    adb shell rm -rf /sdcard/.UTSystemConfig

Some troubleshooting options:
  • If you believe you have the correct FireOS, but Kingoroot (or SuperSu) still fail, download the attached no_amzn_updates.zip to your PC, unzip to your ADB PC folder, open a CMD window in ADB PC folder, and type
    Code:
    .\no_amzn_updates.bat
    The script will attempt to uninstall any apk updates to the official Amazon packages. Then repeat the rooting procedure from Step 1 skipping as necessary. See this post for more additional info on what the script does.
  • If you mess up your /system too much and get into a bootloop with "Fire" logo - use this post for links to the official Amazon ROM files; these bin's can be sideloaded via "adb sideload" in recovery

Want to say thanks by clicking the "Thanks" button ? ;)
1452654044767407_animate.gif



Will this work with the 2015 fire hd8 model?
 
I don't think this method will. You might need to unlock the bootloader and flash TWRP in order to flash Magisk.

He could always try the offline root method. And if not he can always push the required superuser binary is to the system using mtk SU. Root that way and then flash magisk after.

Sent from my Amazon KFSUWI using XDA Labs
 

GinkoGrazioso

New member
May 19, 2019
1
0
dos this still work for fire 10 7th gen: 5.6.4.0?

also i didnt read this until agter i did the setup. so it says 21 updates are ready but im keeping it open with dev mode so it doesnt start them, and im on airplane mode. can i still do this?
 
also i didnt read this until agter i did the setup. so it says 21 updates are ready but im keeping it open with dev mode so it doesnt start them, and im on airplane mode. can i still do this?

Do a factory reset and wipe cache. If still concerned, can always reflash your fireOS version.

Sent from my Amazon KFSUWI using XDA Labs
 

benk81

New member
Jan 7, 2016
3
0
this process worked awesomely for me. super easy to follow and accomplish. possibly the easiest time i've had rooting any Android device i've owned. great job and thanks.
 

iammrhappy123

Senior Member
Apr 29, 2014
78
4
Hey guys

I have a 2016 HD8 6th gen.


It just automatically updated to 5.6.0.1

I keep getting a failed root at "checking ROOT status"

Is this version able to be rooted?

Thanks
 

Help_Me_Obi_Wan

New member
Oct 13, 2019
2
0
First I would like to thank this tremendous effort, you are awesome!

I have Fire HD 8 6th Gen with the latest version. Which was written wrong on the system and that made me happy as I wanted a downgrade for rooting but it was a false hope..

Anyways; Is there a way to root latest version? I tried the method written even after reseting to factory settings as I had nova launcher and some other stuff installed on the system but with multiple tries, it failed at around %80.

Could you please clarify if the root covers us or not? If so what I am doing wrong?

Thank you
 

byfgjk

Member
Jul 23, 2018
16
2
Does this work with bone stock fire hd suez with 5.3.7 or not, some people are claiming it does, but the instructions here say I need an unlocked bootloader, I don't know what that is.
 

newnewcomputer

Senior Member
Mar 26, 2014
82
64
Does this work with bone stock fire hd suez with 5.3.7 or not, some people are claiming it does, but the instructions here say I need an unlocked bootloader, I don't know what that is.

according to several reports from the bootloader thread, like these:

https://forum.xda-developers.com/hd...ck-fire-hd-10-2017-suez-t3913639/post81840723

and

https://forum.xda-developers.com/hd...ck-fire-hd-10-2017-suez-t3913639/post81838273

this kingoroot method can still give root access to 5.7.3 on HD10 2017. once rooted, u can follow the procedure in that thread to unlock the bootloader. that will give u even more access e.g. installing a custom ROM on ur tablet.
 

gdroid666

Senior Member
Feb 23, 2016
266
8
OnePlus Nord N200 5G
" To install permanent root after mtk-su for HD10 (2017), HD8 (2016-2017), use the scripts by @Rortiz2 in here: v2.1, or v1.0"
what am i supposed to do here ? there is nothing there in those links , i went to the v2.1 and v1.0 link and there is nothing there,i am not seeing anything but a post but there is no link or file and no script no instructions . after i get selinux permissive UID 0 then what do i do to get permanent root , the post talks about automatic but there is no links there is nothing there

also when i go to shell prompt and try to block updates i get an error


C:\adbLink>adb shell
e-user --user 0 com.amazon.device.software.ota.override <
Error: java.lang.IllegalArgumentException: Unknown package: com.amazon.device.software.ota.override
1|[email protected]:/ $

and

C:\adbLink>adb shell pm disable-user --user 0 com.amazon.device.software.ota
Error: java.lang.SecurityException: Permission Denial: attempt to change component state from pid=5726, uid=2000, package uid=32016

C:\adbLink>

it worked on the 2019 HD 10 no problems

is there a different name for the update packages on the 2017 suez ?
also i went a head pushed the arm not arm 64 version of mtk-su
maybe that could be the problem?
 
Last edited:

Rortiz2

Senior Member
" To install permanent root after mtk-su for HD10 (2017), HD8 (2016-2017), use the scripts by @Rortiz2 in here: v2.1, or v1.0"
what am i supposed to do here ? there is nothing there in those links , i went to the v2.1 and v1.0 link and there is nothing there,i am not seeing anything but a post but there is no link or file and no script no instructions . after i get selinux permissive UID 0 then what do i do to get permanent root , the post talks about automatic but there is no links there is nothing there

also when i go to shell prompt and try to block updates i get an error


C:\adbLink>adb shell
e-user --user 0 com.amazon.device.software.ota.override <
Error: java.lang.IllegalArgumentException: Unknown package: com.amazon.device.software.ota.override
1|[email protected]:/ $

and

C:\adbLink>adb shell pm disable-user --user 0 com.amazon.device.software.ota
Error: java.lang.SecurityException: Permission Denial: attempt to change component state from pid=5726, uid=2000, package uid=32016

C:\adbLink>

it worked on the 2019 HD 10 no problems

is there a different name for the update packages on the 2017 suez ?
also i went a head pushed the arm not arm 64 version of mtk-su
maybe that could be the problem?

Hi,

Yes, I removed those links as those are old versions of the tool ;)
If you want to take a look at the latest one see: https://github.com/R0rt1z2/AutomatedRoot
Regards!
 
  • Like
Reactions: gdroid666

gdroid666

Senior Member
Feb 23, 2016
266
8
OnePlus Nord N200 5G
Hi,

Yes, I removed those links as those are old versions of the tool ;)
If you want to take a look at the latest one see: https://github.com/R0rt1z2/AutomatedRoot
Regards!
ok i downloaded the tool but now what do i do with it?

i already rad the mtk-su and have selinux permissive
m tablet is connected to the PC here is what i have so far
2017-fire-HD-10-mtk-su-install-verbose-error-log.png


i clicked the .bat from the .zip and nothing happened

do i need to run the ./mtk-su over again first?

pretty sure i already have a py installed , how do i check from a cmd prompt though?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 125
    Update - March 23rd, 2019.

    There is now an excellent offline rooting method for HD10 (2017), HD8(2016-2018), all current FireOS versions, thanks to the fantastic effort by @diplomatic - link. This new root is obtained within a few seconds, so it is very fast. To install permanent root after mtk-su for HD10 (2017), HD8 (2016-2017), use the scripts by @Rortiz2 in here: v2.1, or v1.0 (see this link for a Linux script). For HD8 (2018), there is a dedicated full bootloader unlocking and permanent root guide - link. For HD10 (2017) there is also a full bootloader unlocking procedure available - link. The historical Kingoroot rooting procedure for HD10 (2017) is below. As a friendly reminder, once you have a root shell (obtained by any means), ensure that you disable OTA updates as to avoid getting an unrootable update (except for HD8 (2018) - do not run the commands below before you unlock the bootloader!!!):
    Code:
    mount -w -o remount /system
    mv /system/priv-app/DeviceSoftwareOTA/DeviceSoftwareOTA.apk /system/priv-app/DeviceSoftwareOTA/DeviceSoftwareOTA.apk_
    ls -l /system/priv-app/DeviceSoftwareOTA/

    The original Kingoroot method for HD10 (2017), all current FireOS versions - EASY SuperSu


    Update v0.9, 12/29/18 As empasized by shonkin in this post, the method still works for FireOS 5.6.3.4. Enjoy!!! I would never have expected the hole to last his long ...
    Update v0.8, 01/26/18 - as first reported by @najoor in this post, FireOS 5.6.0.1 is rootable! Today I verified this myself after a somewhat unsuccessful FlashFire update.
    Update v0.7, 01/14/18 - @freaky2xd made a video with these rooting instructions, please follow it if you prefer a visual guide (here or here)
    Update v0.6, 01/09/18 - there were reports that dr.fone app seems to be able to root the device as well. I took dr.fone for a spin, and based on its bloatedness and a few other annoying features, my personal recommendation is that you stick with the devil we know - Kingoroot (link)
    Update v0.5, 01/04/18 - add a DOS bat file to remove any possible updates to Amazon packages
    Update v0.4, 01/02/18 - title update
    Update v0.3, 12/31/17 - light clean up; I got into a bootloop, and had to sideload a stock ROM & re-root - a.k.a. "eat my own dogfood" :D - Everything works fine.
    Update v0.2, 12/30/17 - some redundant commands are removed.
    Update v0.1, 12/30/17 - the rooting procedure is essentially taken from @retyre (here and here). Except, the instructions below include a lot of details, and handle mostly everything from the PC/ADB side. Try, and report back. GOOD LUCK!




    Here is the guide to the painless root (while out of the box FireOS allows it; right now all FireOS versions up to and including 5.6.0.1 - the current OTA - are rootable). The key enabler is the original post by @ztrund (link), great work blazing the trail (and motivating me to get another Fire tablet ASAP, LOL).

    Given that the devices will be shipping with the (older) rootable FireOS for the next few months (but beware of the upcoming updates - see below !!!), there is a good window of opportunity to acquire a rootable Fire HD 10, and root it. As of Dec 27th 2017, there are no reports yet of non-rootable OTAs, but those OTAs will be coming soon, count on it!

    The utmost goal here is to preserve the earliest FireOS version that you get, and not let it get updated by Amazon on a whim.
    I am starting with a recently bought Fire HD 10 2017 (light refurb from eBay, missed the Black Friday mega sale :( ). I have FireOS 5.5.0.0 (earlier than 5.6.0.0!), version name 5.3.5.1 (591450020)




    Part I (avoiding Amazon updating procedure upon the initial Fire setup) - this can (almost safely) be skipped today (end of Dec, 2017), since there are no reports of unrootable OTAs yet

    Low tech way (thanks to @Blaiser47 and @retyre for suggestions!):
    1. Unpack Fire HD 10, turn it on, it will immediately demand a WiFi access
    2. Choose any option on that WiFi screen, press cancel, and then skip
    3. Once Alexa shows up, swipe down from the top, turn on Airplane mode just to be sure

    High tech way:

    1. Set up a dedicated slow router, limit upload/download speed to ~25 kbps (this is the trickiest part, I have a dedicated Tomato router which I use to control traffic)
    2. Unpack Fire HD 10, turn it on, it will immediately demand a WiFi access
    3. Connect Fire to your slow router
    4. Once Fire finds Internet, it'll immediately have "Checking for updates" on the screen, this is where the slow router should kick in, and do the trick of forcing the update to give up
    5. Wait a bit for updates, hopefully, it won't find them, if found something, do factory reset, and repeat (on my 1st try it did find the update, although, could not download it quickly enough, I did a factory reset via Pwr&Vol+ recovery mode, and tried again - the 2nd time it skipped the update due to the slowness of the connection)
    6. Sign in to Amazon account when prompted
    7. Once Alexa shows up, swipe down from the top, turn on Airplane mode - no more risk of updates!!!




    Part II (rooting via Kingoroot, disabling OTA, and getting SuperSu replacement, as per @retyre recommendations)

    1. Take your Fire HD as is, do not do anything dramatic such as "factory reset", Amazon ROM sideloading, etc
    2. Swipe down from the top, turn on Airplane mode - to ensure that there are no OTA updates during the procedure
    3. In "Settings/Device Options", tap "Serial Number" 7 times, a menu "Developer Options" will appear
    4. In "Settings/Device Options/Developer Options", turn ADB debugging to ON (under "Debugging")
    5. In "Settings/Security", turn "Apps from Unknown Sources" to ON
    6. Download ADB to your PC (link)
    7. Setup ADB drivers on your PC, connect Fire to your PC, make sure "adb devices" command shows your Fire device, authorize ADB connection on Fire
    8. Download SuperSu 2.79 (this exact version!!!) to your PC from this link, place it into your ADB PC folder. The filename of this apk will be assumed to be SuperSU-v2.79-20161205182033.apk below
    9. Download the attached su64.zip to your PC (see the attachment below), unzip to your ADB PC folder
    10. Open a CMD window in ADB PC folder (this will be called ADB_cmd window in the following steps), type
      Code:
      adb devices
      adb uninstall eu.chainfire.supersu
      This is a clean up of possible old SuperSu (just in case), ignore any errors you may get (if SuperSu is absent ...)
    11. Download Kingoroot to your PC (link), install, let it update
    12. Connect Fire to your PC; launch Kingoroot on PC; before pushing the big "ROOT" button in Kingoroot, uncheck a small box in the lower left corner for "Install recommended app" ; push "ROOT" button; wait for Kingoroot to root
    13. Once Kingoroot succeeds, open a 2nd CMD window in ADB PC folder to your Fire (this will be called ADB_root window in the following steps), get a root shell, and disable OTA updates
      Code:
      adb shell
      su
      mount -w -o remount /system
      mv /system/priv-app/DeviceSoftwareOTA/DeviceSoftwareOTA.apk /system/priv-app/DeviceSoftwareOTA/DeviceSoftwareOTA.apk_
      ls -l /system/priv-app/DeviceSoftwareOTA/
      ignore any errors you may get while doing this; after 'su', you should see root (#) prompt here
    14. Switch to the first ADB_cmd window, type
      Code:
      adb uninstall com.lionmobi.powerclean
      adb uninstall com.kingoapp.link
      adb uninstall kingoroot.supersu
      adb install SuperSU-v2.79-20161205182033.apk
      adb shell "am start -n eu.chainfire.supersu/eu.chainfire.supersu.MainActivity"
    15. Skip this step - it is not needed
      Switch to the second ADB_root window (with # prompt), type
      Code:
      cd /data/local/tmp
      mount -w -o remount /system
      cp ./su64 /system/xbin/daemonsu
      chmod 0755 /system/xbin/daemonsu
      daemonsu -d &
      cp ./su64 /system/xbin/su
      chmod 0755 /system/xbin/su
      am start -n eu.chainfire.supersu/eu.chainfire.supersu.MainActivity
    16. On your Fire, SuperSu should pop up. Update SuperSu binary as "Normal", it should report "Installation failed." Proceed to reboot. (If it doesn't report an outcome ("failed") in a couple of minutes, go to the Fire's Apps and force-stop SuperSU and retry.)
    17. Upon reboot, SuperSU should be functional. Choose "Grant" as the default access.
    18. Uninstall all the junk from Kingoroot on your Fire, thanks to @fstanis for detailed instructions (copied here, executed from PC):
      Code:
      adb uninstall com.nemo.vidmate
      adb shell rm -rf /sdcard/VidMate
      adb shell rm -rf /sdcard/.a
      adb shell rm -rf /sdcard/.DataStorage
      adb shell rm -rf /sdcard/.UTSystemConfig

    Some troubleshooting options:
    • If you believe you have the correct FireOS, but Kingoroot (or SuperSu) still fail, download the attached no_amzn_updates.zip to your PC, unzip to your ADB PC folder, open a CMD window in ADB PC folder, and type
      Code:
      .\no_amzn_updates.bat
      The script will attempt to uninstall any apk updates to the official Amazon packages. Then repeat the rooting procedure from Step 1 skipping as necessary. See this post for more additional info on what the script does.
    • If you mess up your /system too much and get into a bootloop with "Fire" logo - use this post for links to the official Amazon ROM files; these bin's can be sideloaded via "adb sideload" in recovery

    Want to say thanks by clicking the "Thanks" button ? ;)
    1452654044767407_animate.gif
    18
    Fire HD 10 ROM links & misc :

    Update: Uploaded modified Supersu 2.82 SR5 ready to be flashed in FlashFire. It really represents the Chainfire's swan song, the last of the true SuperSu versions, the end of the era !!! :D

    Fire HD 10 (7th Gen 2017) ROM links from Amazon (use for sideloading your preferred version in case you mess up). If possible, turn off WiFi before sideloading a bin file - you don't want to catch an OTA while it's loading!

    FireOS 5.6.3.0 (reports say that it's still rootable, the downgrade behavior is not clear)
    update-kindle-suez-40.6.2.6_user_626533320.bin
    update-kindle-40.6.2.6_user_626533320.bin

    FireOS 5.6.2.0 (still rootable, but cannot be downgraded to anything earlier!)
    update-kindle-40.6.1.2_user_612495820.bin

    FireOS 5.6.1.0 (still rootable, but cannot be downgraded to anything earlier!)
    update-kindle-40.6.0.5_user_605485120.bin
    System image (restore via FlashFire) link. Unzip files to /sdcard/FlashFire/Backups/5.6.1.0, rename the 2 img to bin extensions. Create md5 sum files (in a shell, type "md5 system.bin > system.md5", same for boot.bin) The system image includes SuperSu, Xposed, Busybox; OTA apk is NOT renamed.

    FireOS 5.6.0.1
    update-kindle-40.5.9.5_user_595550320.bin
    System image (restore via FlashFire v0.24) - link. Unzip files to /sdcard/FlashFire/Backups/5.6.0.1. The system image includes SuperSu, Xposed, Busybox; OTA apk is renamed.


    FireOS 5.6.0.0
    update-kindle-40.5.9.5_user_595457320.bin

    FireOS 5.6.0.0
    update-kindle-40.5.9.5_user_595457020.bin

    FireOS 5.5.0.0
    update-kindle-40.5.9.1_user_591450020.bin


    In addition, please find attach a SuperSu zip that works with Flash Fire v0.24 (tested with FireOS 5.5.0.0 & 5.6.0.0).

    The file was created by taking SuperSu v2.82 zip from this link (file name - SuperSU-v2.82-201705271822.zip).

    Then in META-INF\com\google\android\update-binary I replaced one line forcing SuperSu to install armv7 binaries instead of arm64:
    Code:
        if [ "$ABILONG" = "arm64-v8a" ]; then ARCH=arm64; SYSTEMLIB=/system/lib64; APPPROCESS64=true; fi;
    with this one:
    Code:
        if [ "$ABILONG" = "arm64-v8a" ]; then ARCH=armv7; fi;

    Everything else is identical to the official version.
    Using the official SuperSu zip will cause a bootloop - it looks like Fire HD 10 is not quite arm64 yet, and needs armv7 version of su binaries to work.
    7
    Useful tips & information:

    How to install Xposed & Flashfire for easy backups and ROM updates
    Follow this post by @retyre (and thank him!!!): link

    Note: With stock FlashFire versions, the latest Flashfire version you can use is v0.24 (see the attached v0.24 apk, it needs the date patch which requires Xposed installed). Alternatively, it is possible to replace a library in Flashfire v0.51, and make v0.51 work:
    link1
    link2
    link3
    For convenience, I've done this procedure to the free FlashFire v.51 version using free apktool, and attached the file below (the signature will not match with the original FlashFire signed by @Chainfire, so you will need to uninstall other FlashFire packages before installing this one!)
    With v0.51, uncheck two options (as per link2):
    1) Emulate framebuffer in Settings
    2) Mount /system read/write (after you choose the update file).
    If you don't do 2), Flashfire v.51 will just sit there and never do anything


    How to enable Amazon packages (apk) updates but prevent the ROM updates (keeping root & rootable rom).

    1) Edit /system/build.prop and change ro.build.version.number to have "9" as the first value instead of "5", as recommended in this link
    2) Reboot
    3) Enable OTA by ensuring that /system/priv-app/DeviceSoftwareOTA/DeviceSoftwareOTA.apk is renamed back to apk from apk_
    4) Reboot

    At this point the Fire will download a lot of apk packages, and will update Amazon system components (keeping FireOS version the same).



    Partition trivia:

    Partition info (gdisk binary) :
    Code:
    [email protected]:/ # df
    df
    Filesystem               Size     Used     Free   Blksize
    /dev                   907.7M    80.0K   907.6M   4096
    /dev/logd              512.0K    96.0K   416.0K   4096
    /sys/fs/cgroup         907.7M    12.0K   907.7M   4096
    /mnt/asec              907.7M     0.0K   907.7M   4096
    /mnt/obb               907.7M     0.0K   907.7M   4096
    /system                  1.5G     1.2G   317.9M   4096
    /data                   26.5G     1.1G    25.4G   4096
    /data/metrics            5.8M   232.0K     5.6M   4096
    /cache                 410.7M    14.9M   395.8M   4096
    /mnt/sqfs               79.8M    79.8M     0.0K   32768
    /mnt/cd-rom              1.2M     1.2M     0.0K   2048
    /mnt/shell/emulated     26.5G     1.1G    25.4G   4096
    /storage/emulated      907.7M     0.0K   907.7M   4096
    /storage/emulated/0     26.5G     1.1G    25.4G   4096
    /storage/emulated/0/Android/obb    26.5G     1.1G    25.4G   4096
    /storage/emulated/legacy    26.5G     1.1G    25.4G   4096
    /storage/emulated/legacy/Android/obb    26.5G     1.1G    25.4G   4096
    
    [email protected]:/data/local/tmp # ./gdisk -l /dev/block/mmcblk0
    ./gdisk -l /dev/block/mmcblk0
    GPT fdisk (gdisk) version 0.8.4
    
    Partition table scan:
      MBR: protective
      BSD: not present
      APM: not present
      GPT: present
    
    Found valid GPT with protective MBR; using GPT.
    Disk /dev/block/mmcblk0: 61071360 sectors, 29.1 GiB
    Logical sector size: 512 bytes
    Disk identifier (GUID): B1541C10-343E-474B-B5B2-05796C64E992
    Partition table holds up to 128 entries
    First usable sector is 34, last usable sector is 61071326
    Partitions will be aligned on 1024-sector boundaries
    Total free space is 990 sectors (495.0 KiB)
    
    Number  Start (sector)    End (sector)  Size       Code  Name
       1            1024            7167   3.0 MiB     8300  proinfo
       2            7168           16383   4.5 MiB     8300  PMT
       3           16384           18431   1024.0 KiB  8300  kb
       4           18432           20479   1024.0 KiB  8300  dkb
       5           20480           22527   1024.0 KiB  8300  lk
       6           22528           32767   5.0 MiB     8300  tee1
       7           32768           43007   5.0 MiB     8300  tee2
       8           43008          123903   39.5 MiB    8300  metadata
       9          123904          124927   512.0 KiB   8300  MISC
      10          124928          141311   8.0 MiB     8300  reserved
      11          141312          174079   16.0 MiB    8300  boot
      12          174080          208895   17.0 MiB    8300  recovery
      13          208896         3515391   1.6 GiB     8300  system
      14         3515392         4383743   424.0 MiB   8300  cache
      15         4383744        61071326   27.0 GiB    8300  userdata
    
    [email protected]:/ # cat /proc/partitions
    cat /proc/partitions
    major minor  #blocks  name
    
       7        0      81664 loop0
       7        1       1254 loop1
       7        2      10240 loop2
     179        0   30535680 mmcblk0
     179        1       3072 mmcblk0p1
     179        2       4608 mmcblk0p2
     179        3       1024 mmcblk0p3
     179        4       1024 mmcblk0p4
     179        5       1024 mmcblk0p5
     179        6       5120 mmcblk0p6
     179        7       5120 mmcblk0p7
     179        8      40448 mmcblk0p8
     179        9        512 mmcblk0p9
     179       10       8192 mmcblk0p10
     179       11      16384 mmcblk0p11
     179       12      17408 mmcblk0p12
     179       13    1653248 mmcblk0p13
     179       14     434176 mmcblk0p14
     179       15   28343791 mmcblk0p15
     179       96       4096 mmcblk0rpmb
     179       64       4096 mmcblk0boot1
     179       32       1024 mmcblk0boot0
     179       33          2 mmcblk0boot0p1
     179       34          2 mmcblk0boot0p2
     179       35        256 mmcblk0boot0p3
     179       36        747 mmcblk0boot0p4
    
     
     [email protected]:/ # ls -l /dev/block
    ls -l /dev/block
    brw------- root     root       7,   0 2017-12-28 11:05 loop0
    brw------- root     root       7,   1 2017-12-28 11:05 loop1
    brw------- root     root       7,   2 2017-12-28 11:05 loop2
    brw------- root     root       7,   3 2017-12-28 11:05 loop3
    brw------- root     root       7,   4 2017-12-28 11:05 loop4
    brw------- root     root       7,   5 2017-12-28 11:05 loop5
    brw------- root     root       7,   6 2017-12-28 11:05 loop6
    brw------- root     root       7,   7 2017-12-28 11:05 loop7
    brw-rw---- root     system   179,   0 2017-12-28 11:05 mmcblk0
    brw-rw---- root     system   179,  32 2017-12-28 11:05 mmcblk0boot0
    brw------- root     root     179,  33 2017-12-28 11:05 mmcblk0boot0p1
    brw------- root     root     179,  34 2017-12-28 11:05 mmcblk0boot0p2
    brw------- root     root     179,  35 2017-12-28 11:05 mmcblk0boot0p3
    brw------- root     root     179,  36 2017-12-28 11:05 mmcblk0boot0p4
    brw-rw---- root     system   179,  64 2017-12-28 11:05 mmcblk0boot1
    brw------- root     root     179,   1 2017-12-28 11:05 mmcblk0p1
    brw------- root     root     179,  10 2017-12-28 11:05 mmcblk0p10
    brw------- root     root     179,  11 2017-12-28 11:05 mmcblk0p11
    brw------- root     root     179,  12 2017-12-28 11:05 mmcblk0p12
    brw------- root     root     179,  13 2017-12-28 11:05 mmcblk0p13
    brw------- root     root     179,  14 2017-12-28 11:05 mmcblk0p14
    brw------- root     root     179,  15 2017-12-28 11:05 mmcblk0p15
    brw------- root     root     179,   2 2017-12-28 11:05 mmcblk0p2
    brw------- root     root     179,   3 2017-12-28 11:05 mmcblk0p3
    brw------- root     root     179,   4 2017-12-28 11:05 mmcblk0p4
    brw------- root     root     179,   5 2017-12-28 11:05 mmcblk0p5
    brw------- root     root     179,   6 2017-12-28 11:05 mmcblk0p6
    brw------- root     root     179,   7 2017-12-28 11:05 mmcblk0p7
    brw------- root     root     179,   8 2017-12-28 11:05 mmcblk0p8
    brw------- root     root     179,   9 2017-12-28 11:05 mmcblk0p9
    brw-rw---- root     system   179,  96 2017-12-28 11:05 mmcblk0rpmb
    drwxr-xr-x root     root              2017-12-28 11:05 platform
    drwx------ root     root              2017-12-28 11:05 vold
    brw------- root     root     254,   0 2017-12-28 11:05 zram0
    
    
    [email protected]:/ # ls -l /dev/block/platform/mtk-msdc.0/by-name/
    ls -l /dev/block/platform/mtk-msdc.0/by-name/
    lrwxrwxrwx root     root              2017-12-28 11:05 MISC -> /dev/block/mmcblk0p9
    lrwxrwxrwx root     root              2017-12-28 11:05 PMT -> /dev/block/mmcblk0p2
    lrwxrwxrwx root     root              2017-12-28 11:05 boot -> /dev/block/mmcblk0p11
    lrwxrwxrwx root     root              2017-12-28 11:05 boot0hdr0 -> /dev/block/mmcblk0boot0p1
    lrwxrwxrwx root     root              2017-12-28 11:05 boot0hdr1 -> /dev/block/mmcblk0boot0p2
    lrwxrwxrwx root     root              2017-12-28 11:05 boot0img0 -> /dev/block/mmcblk0boot0p3
    lrwxrwxrwx root     root              2017-12-28 11:05 boot0img1 -> /dev/block/mmcblk0boot0p4
    lrwxrwxrwx root     root              2017-12-28 11:05 cache -> /dev/block/mmcblk0p14
    lrwxrwxrwx root     root              2017-12-28 11:05 dkb -> /dev/block/mmcblk0p4
    lrwxrwxrwx root     root              2017-12-28 11:05 kb -> /dev/block/mmcblk0p3
    lrwxrwxrwx root     root              2017-12-28 11:05 lk -> /dev/block/mmcblk0p5
    lrwxrwxrwx root     root              2017-12-28 11:05 metadata -> /dev/block/mmcblk0p8
    lrwxrwxrwx root     root              2017-12-28 11:05 proinfo -> /dev/block/mmcblk0p1
    lrwxrwxrwx root     root              2017-12-28 11:05 recovery -> /dev/block/mmcblk0p12
    lrwxrwxrwx root     root              2017-12-28 11:05 reserved -> /dev/block/mmcblk0p10
    lrwxrwxrwx root     root              2017-12-28 11:05 system -> /dev/block/mmcblk0p13
    lrwxrwxrwx root     root              2017-12-28 11:05 tee1 -> /dev/block/mmcblk0p6
    lrwxrwxrwx root     root              2017-12-28 11:05 tee2 -> /dev/block/mmcblk0p7
    lrwxrwxrwx root     root              2017-12-28 11:05 userdata -> /dev/block/mmcblk0p15
    
    [email protected]:/ # fdisk /dev/block/mmcblk0
    fdisk /dev/block/mmcblk0
    
    The number of cylinders for this disk is set to 3786.
    There is nothing wrong with that, but this is larger than 1024,
    and could in certain setups cause problems with:
    1) software that runs at boot time (e.g., old versions of LILO)
    2) booting and partitioning software from other OSs
       (e.g., DOS FDISK, OS/2 FDISK)
    
    Command (m for help): p
    p
    Disk /dev/block/mmcblk0: 29 GB, 31268536320 bytes, 61071360 sectors
    3786 cylinders, 256 heads, 63 sectors/track
    Units: cylinders of 16128 * 512 = 8257536 bytes
    
    Device             Boot StartCHS    EndCHS        StartLBA     EndLBA    Sectors
      Size Id Type
    /dev/block/mmcblk0p1    0,0,2       1023,255,63          1 4294967295 4294967295 2047G ee EFI GPT
    7
    I have been experimenting with various ROMs in order to port one over from another device. So far, without disabling signature verification, there is one ROM that has a lot of promise, the official CyanogenMod for the Amazon JEM (8.9 HD). Assuming flashfire doesn't crap the bed, I believe I can port this ROM to the HD 10. Aside from some obvious system apps needing to be flashed into system, all apps I've experimented with from the CM ROM work. I would be able to get themes working but it requires, I believe, the system ui and framework to be flashed. So far I haven't tried or tested a full port. Then down side: I'm moving back to Florida in a week so I'm not likely to have a full port available to test until after June 25.

    Sent from my Amazon KFSUWI using XDA Labs
    6
    I'm having better luck and fun modding FireOS. Here's an update of what I got working, mostly working and what I will get to work. Mind you, this is all stock android/AOSP settings that replace Amazon's. All Amazon does is comment out or replace com.android.settings.xxx with com.amazon.xxx. so far I've been able to hunt down and redirect the fragments back to Android/AOSP. Here is what I have working so far:

    Stock Android/AOSP settings:
    -VPN
    -Proxy
    -Bluetooth and USB tethering
    -Location based services with full control
    -Wallpaper settings (lockscreen?)

    Almost working:
    -NFC/Android Beam
    -Original cast screen/screen mirroring
    -Full AGPS support (95% complete)
    -Misc settings and other possible goodies.



    Sent from my Samsung Galaxy S4 using XDA Labs