[UNLOCK][ROOT][TWRP][UNBRICK] Fire TV Stick 2nd gen (tank)

Search This thread

riffdex

New member
Sep 3, 2022
2
0
So I completed the process thru step 8. Now I presume my fire stick is in TWRP mode. So what do I do now in order to install custom rom such as LineageOS? The guide doesn’t provide any steps and I’m quite confused. I’m afraid if I disconnect the fire stick without getting a custom rom installed I’ll lose all the progress I made (including about 50 attempts to short the connections before I was successful)
 

hasobist

Senior Member
Feb 1, 2021
64
18
So I completed the process thru step 8. Now I presume my fire stick is in TWRP mode. So what do I do now in order to install custom rom such as LineageOS? The guide doesn’t provide any steps and I’m quite confused. I’m afraid if I disconnect the fire stick without getting a custom rom installed I’ll lose all the progress I made (including about 50 attempts to short the connections before I was successful)
Hello
Presuming your on stock rom cause if cleared all stick will never boot.
You'll remain unlocked with TWRP installed just you need to know how to boot into recovery
Read post #1673 of this thread and if possible go through the thread and also the thread for Lineage os of firetv tank you'll find loads of answers,hope it helps.......
Cheers!
 

riffdex

New member
Sep 3, 2022
2
0
Hello
Presuming your on stock rom cause if cleared all stick will never boot.
You'll remain unlocked with TWRP installed just you need to know how to boot into recovery
Read post #1673 of this thread and if possible go through the thread and also the thread for Lineage os of firetv tank you'll find loads of answers,hope it helps.......
Cheers!
Thank you! I will try this when I get home. So I do not need to short the connection again if I already successfully completed that process yesterday and unplugged the fire stick afterwards? It will remain rooted?
 

hasobist

Senior Member
Feb 1, 2021
64
18
Thank you! I will try this when I get home. So I do not need to short the connection again if I already successfully completed that process yesterday and unplugged the fire stick afterwards? It will remain rooted?
Hello
If successful you ain't need to do the unlocking process again and again it'sa one time process.
For root you need to flash Magisk manager and if your flashing pre-rooted or Lineage os follow the steps as in the above referred post.
 
Jan 28, 2013
11
1
Hello
You can use adblink to install Busybox it has busybox inbuit in tools or search the starting posts have the flashable zip file see if you can find so.......
Edit: check if the attached works.
Hope it helps.......
Thanks to hasobist and Sus_i one more time
I have been able to go step by step and end up with a rooted device and working fine.
hasobist, the stericson-busybox-apk. works wonders.
(y)(y)🍻
 
  • Like
Reactions: Sus_i

irek.187

Member
Jan 12, 2020
14
3
Could be that your cache partition needs a clean-up or something like that...
Anyways, not worth the hassle, just flash the rom you like via twrp, done (y)
Thats the latest one:
Code:
https://d1s31zyz7dcc2d.cloudfront.net/6b45be2a4aa689df55f69967eb67e2f2/update-kindle-full_tank-288.6.7.8_user_678752620.bin



Just flash a fireOS stock rom, wipe data and cache if you come from lineageOS, done.

Code:
5.2.8.7
https://d1s31zyz7dcc2d.cloudfront.net/8e9503fd5cc84475da2be18944ce0246/update-kindle-full_tank-288.6.7.4_user_674730620.bin

5.2.8.8
https://d1s31zyz7dcc2d.cloudfront.net/bc7bad4c0b5d7300fc27f8b7f57104a5/update-kindle-full_tank-288.6.7.6_user_676742620.bin

5.2.8.9
https://d1s31zyz7dcc2d.cloudfront.net/6b45be2a4aa689df55f69967eb67e2f2/update-kindle-full_tank-288.6.7.8_user_678752620.bin

If you like to unroot and to lock the bootloader too, wipe data is necessary, then flash the boot.img (out of the .bin update you flashed in the first place) via hacked fastboot...
Excuse me. I have tried flash boot.img and I get this result:
/sdcard # twrp install boot.img
Installing zip file '/data/media/0/boot.img'
Installing zip file '/data/media/0/boot.img'
Checking for Digest file...
Skipping Digest check: no Digest file found
Zip file is corrupt!
Error installing zip file '/data/media/0/boot.img'
Done processing script file
 
  • Like
Reactions: Sus_i

Sus_i

Senior Member
Apr 9, 2013
1,858
811
Excuse me. I have tried flash boot.img and I get this result:
/sdcard # twrp install boot.img
Installing zip file '/data/media/0/boot.img'
Installing zip file '/data/media/0/boot.img'
Checking for Digest file...
Skipping Digest check: no Digest file found
Zip file is corrupt!
Error installing zip file '/data/media/0/boot.img'
Done processing script file
If you want to un-do the unlock, i.e. lock the bootloader again, then you would need to flash the boot.img with hacked fastboot.

Before you flash the boot.img, make sure that your stick is full stock, i.e. install a clean stock rom, don't forget to wipe data.

From TWRP via (usb connection) you can boot into hacked-fastboot, if you run 'adb shell' and 'reboot-amonet'
then flash the boot.img with 'fastboot flash boot boot.img'
 
  • Like
Reactions: irek.187

Sus_i

Senior Member
Apr 9, 2013
1,858
811
hi, how can i check if my tank is a revised version? i tried several times but i never enter bl mode
Apply the short, keep it and then connect the stick to ubuntu... take a look at lsusb while still keeping the short... (without running the bootrom-step) if you see something like MTK phone, preloader or mtp fire...
 

thanos49

Member
Jan 24, 2020
12
1
Hello, i own a tank which got bricked due to power going out while updating, and it is stuck in an update unsuccesful loop. I tried this guide, but i simply can't get past the < waiting for any device > prompt after running fastboot-step.sh (bootrom-step.sh flashes all fine)
 
Last edited:

thanos49

Member
Jan 24, 2020
12
1
@Sus_i Alright so i tried the commands, and it still shows the same < waiting for any device > message after running fastboot-step.sh

sudo apt-get update shows:

Code:
Get:1 http://security.ubuntu.com/ubuntu jammy-security InRelease [110 kB]
Hit:2 http://archive.ubuntu.com/ubuntu jammy InRelease                        
Get:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [114 kB]      
Ign:4 http://packages.linuxmint.com vanessa InRelease                        
Hit:5 http://packages.linuxmint.com vanessa Release    
Get:6 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [99,8 kB]
Get:7 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [455 kB]
Get:8 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages [683 kB]
Get:9 http://security.ubuntu.com/ubuntu jammy-security/main i386 Packages [200 kB]
Get:10 http://security.ubuntu.com/ubuntu jammy-security/main Translation-en [99,9 kB]
Get:11 http://security.ubuntu.com/ubuntu jammy-security/main amd64 DEP-11 Metadata [20,0 kB]
Get:12 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [367 kB]
Get:14 http://security.ubuntu.com/ubuntu jammy-security/restricted Translation-en [56,5 kB]
Get:15 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages [602 kB]
Get:16 http://security.ubuntu.com/ubuntu jammy-security/universe i386 Packages [471 kB]
Get:17 http://security.ubuntu.com/ubuntu jammy-security/universe Translation-en [76,2 kB]
Get:18 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 DEP-11 Metadata [13,3 kB]
Get:19 http://archive.ubuntu.com/ubuntu jammy-updates/main i386 Packages [365 kB]
Get:20 http://archive.ubuntu.com/ubuntu jammy-updates/main Translation-en [156 kB]
Get:21 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 DEP-11 Metadata [92,8 kB]
Get:22 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 c-n-f Metadata [9.404 B]
Get:23 http://archive.ubuntu.com/ubuntu jammy-updates/restricted i386 Packages [22,2 kB]
Get:24 http://archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 Packages [403 kB]
Get:25 http://archive.ubuntu.com/ubuntu jammy-updates/restricted Translation-en [62,0 kB]
Get:26 http://archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 c-n-f Metadata [540 B]
Get:27 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages [735 kB]
Get:28 http://archive.ubuntu.com/ubuntu jammy-updates/universe i386 Packages [543 kB]
Get:29 http://archive.ubuntu.com/ubuntu jammy-updates/universe Translation-en [119 kB]
Get:30 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 DEP-11 Metadata [248 kB]
Get:31 http://archive.ubuntu.com/ubuntu jammy-updates/multiverse amd64 Packages [13,7 kB]
Get:32 http://archive.ubuntu.com/ubuntu jammy-updates/multiverse i386 Packages [3.612 B]
Get:33 http://archive.ubuntu.com/ubuntu jammy-updates/multiverse Translation-en [4.228 B]
Get:34 http://archive.ubuntu.com/ubuntu jammy-updates/multiverse amd64 DEP-11 Metadata [940 B]
Get:35 http://archive.ubuntu.com/ubuntu jammy-backports/universe i386 Packages [5.200 B]
Get:36 http://archive.ubuntu.com/ubuntu jammy-backports/universe amd64 Packages [6.752 B]
Get:37 http://archive.ubuntu.com/ubuntu jammy-backports/universe Translation-en [9.360 B]
Get:38 http://archive.ubuntu.com/ubuntu jammy-backports/universe amd64 DEP-11 Metadata [12,6 kB]
Get:39 http://archive.ubuntu.com/ubuntu jammy-backports/universe amd64 c-n-f Metadata [356 B]
Fetched 6.181 kB in 2s (3.121 kB/s)                            
Reading package lists... Done

and sudo apt-get install fastboot shows:

Code:
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
fastboot is already the newest version (1:10.0.0+r36-9).
0 upgraded, 0 newly installed, 0 to remove and 15 not upgraded.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    It will brick if you damage parts, you may need to do the shorting carefully, don't use sharp tools...
    hehe ok.
    A steady hand is needed!
    I think i need to read quite a bit more before doing this.
    Was hoping i could root it and install IinageOS.
  • 67
    Read this whole guide before starting.

    This is for the 2nd gen Fire TV Stick (tank)

    Current relase: amonet-tank-v1.2.2.zip

    NOTE: Recent reports indicate a change that disables brom DL-mode
    The change seems to have been introduced with devices that where manufactured in December 2019 or later.
    The change is unrelated to the software-version and results in the device not showing up as a USB device when shorted.
    Unfortunately these devices cannot currently be unlocked.

    NOTE: If you are on version 1.0, don't update to 1.2.1 through TWRP, as there is a bug.
    NOTE: This issue has been fixed in version 1.2.2
    NOTE: When updating from version 1.0, don't install anything else before rebooting



    To update to the current release if you are already unlocked, just flash the zip in TWRP.

    What you need:
    • A Linux installation or live-system
    • A micro-USB cable
    • Something conductive (paperclip, tweezers etc)
    • Something to open the stick.


    NOTE: Ideally you want to update your system to 5.2.6.9 before starting this process, since this flashes the 5.2.6.8 boot.img and people have reported issues with adb-authorization with older firmware.
    Since version 1.2 this isn't required, because instead of flashing the 5.2.6.9 boot.img, your existing boot.img will be patched.
    It is still recommended to first update to 5.2.6.9


    Install python3, PySerial, adb and fastboot. For Debian/Ubuntu something like this should work:
    Code:
    sudo apt update
    sudo add-apt-repository universe
    sudo apt install python3 python3-serial android-tools-adb android-tools-fastboot

    Make sure ModemManager is disabled or uninstalled:
    Code:
    sudo systemctl stop ModemManager
    sudo systemctl disable ModemManager


    NOTE: If you have issues running the scripts, you might have to run them using sudo.
    Also try using different USB-ports (preferably USB-2.0-ports)


    1. Extract the attached zip-file "amonet-tank-v1.2.2.zip" and open a terminal in that directory.
    2. start the script:
    Code:
    ./bootrom-step.sh

    It should now say Waiting for bootrom.

    Short CLK to GND (The metal shielding is also GND) according to the attached photo and plug it in.


    NOTE:

    In lsusb the boot-rom shows up as:
    Code:
    Bus 002 Device 013: ID [b]0e8d:0003[/b] MediaTek Inc. MT6227 phone

    If it shows up as:
    Code:
    Bus 002 Device 014: ID [b]0e8d:2000[/b] MediaTek Inc. MT65xx Preloader
    instead, you are in preloader-mode, try again.

    dmesg lists the correct device as:
    Code:
    [ 6383.962057] usb 2-2: New USB device found, idVendor=[b]0e8d[/b], idProduct=[b]0003[/b], bcdDevice= 1.00


    4. When the script asks you to remove the short, remove the short and press enter.

    5. Wait for the script to finish.
    If it stalls at some point, stop it and restart the process from step 2.

    6. Your device should now reboot into unlocked fastboot state.

    7. Run
    Code:
    ./fastboot-step.sh

    8. Wait for the device to reboot into TWRP.

    9. Use TWRP to flash custom ROM, Magisk etc.


    NOTE:
    Only ever flash boot/recovery images using TWRP, if you use FlashFire or other methods that are not aware of the exploit,
    your device will likely not boot anymore (unless you flashed a signed image).
    TWRP will patch recovery/boot-images on the fly.


    NOTE:
    This process does not disable OTA or does any other modifications to your system.
    You will have to do that according to the other guides in this forum.


    Very special thanks to @xyz` for making all this possible and putting up with the countless questions I have asked, helping me finish this.
    Thanks to @hwmod for doing initial investigations and providing the attached image.
    12
    There are three options for interacting with TWRP:
    1. A mouse via USB-OTG
    2. TWRP commandline via adb: https://twrp.me/faq/openrecoveryscript.html
    3. Via /cache/recovery/command

    Example for /cache/recovery/command:
    Code:
    echo "--update_package=/path/to/zipfile" > /cache/recovery/command
    echo "--wipe_cache" >> /cache/recovery/command
    reboot recovery

    Should you somehow end in a bootloop you can boot into hacked fastboot or recovery using.
    Code:
    sudo ./boot-fastboot.sh

    Code:
    sudo ./boot-recovery.sh

    NOTE:This will only work if the boot-exploit is still there.

    Source Code:
    https://github.com/chaosmaster/amonet
    https://github.com/chaosmaster/android_bootable_recovery
    9
    Changelog

    Version 1.2 (25.03.2019)
    • Update TWRP to twrp-9.0 sources
    • Implement downgrade-protection for LK/PL/TZ
    • Add scripts to enter fastboot/recovery in case of bootloop
    • Automatically restore boot-patch when you boot into recovery

    Features.

    • Hacked fastboot mode lets you use all fastboot commands (flash etc).
    • Boots custom/unsigned kernel-images (need to be patched)
    • For the devs: sets printk.disable_uart=0 (enables debug-output over UART).
    • TWRP protects from accidental lk/preloader/tz downgrades
    • Set bootmode via preloader

    NOTE: Hacked fastboot can be reached via TWRP.

    NOTE: Hacked fastboot won't patch your boot/recovery-images, so you can easily go back to stock.
    Use TWRP for autopatching.
    8
    Please read the instructions k4y0z wrote (1st page), then read the extra info below. It was my first time rooting a FireTV Stick via hardware and I had a lot of questions. Although, most answered via post replies throughout this thread. Here is a descriptive version of the rooting process for other beginners from what I learned.

    Any damages or issues resulting from rooting your own device falls on you!

    EDIT: I know this is long, but if you are a beginner DO NOT SKIM THROUGH.

    A Linux operating system is required. Ubuntu 19.04 is recommended and the following instructions are for Debian based systems like Ubuntu.

    The following packages were used (Check for updates):
    Amonet-tank-v1.2.2
    tank-5.2.6.9-rooted_r1
    Magisk-v19.2
    Everything was saved to the Downloads folder.

    Step 0: Open the FireTV Stick
    1. Use a plastic tool like an unused credit card. With a bit of force push the plastic tool into the edge (seam) of the FireTV Stick while slightly popping the side wall outwards until a snap. Continue on all sides until the plastic shell can be separated. Then, remove the motherboard. Disassembly video - Link
    2. On the side with the smaller metal shield, use a thin blunt knife or flathead. Start near the HDMI port above and below the black pad. There are small gaps that can be used to push the metal shield up. Continue around the metal shield until it is removed. Be careful not to scratch the board and leave the metal rim.
    3. Attach the micro USB cable to the FireTV Stick but not to a computer!
    4. Extract “amonet-tank-v1.2.2.zip” in the Downloads folder and open a Terminal on a Linux system.

    Step 1: Update Ubuntu
    Code:
    sudo apt update && sudo apt upgrade -y

    Step 2: Install Dependencies (Ignore if Android Studio is installed)
    Code:
    sudo apt install python3 python3-serial android-tools-adb android-tools-fastboot

    Step 3: Stop and Disable ModemManager
    Code:
    sudo systemctl stop ModemManager
    sudo systemctl disable ModemManager

    Step 4: Short CLK to GND (Please read k4y0z instructions as well)
    1. Navigate to script directory:
      Code:
      cd ~/Downloads/amonet-tank-v1.2.2/amonet/
    2. Start the script:
      Code:
      sudo bash bootrom-step.sh
    3. When the Terminal prompt says "waiting for bootrom" (Easiest with two people)
    4. Place the removed metal shield next to the disassembled FireTV Stick. If it doesn't short, then use k4y0z suggested GND method.
    5. Use a paperclip (etc), and lightly touch the bottom metal piece of the CLK to the metal shield (CLK location, but use metal shield as GND). The CLK is tiny so be careful.
    6. Plug the USB cable connected to the FireTV Stick into the computer while holding the short!!! When I did it, I accidentally lost the short but it still worked (uncommon).
    7. The Terminal prompt will say when to "remove the short and press enter".
    8. Wait until the script finishes. If the script stalls, unplug USB and start the script again and short.
    9. Run fastboot script:
      Code:
      sudo bash fastboot-step.sh
    10. Next step has instructions.

    Step 5: Using Fastboot to install Roms and Magisk
    1. Wait for the FireStick to reboot into TWRP
    2. Push Tank’s prerooted rom zip file onto the FireTV Stick sd card:
      Code:
      adb push ~/Downloads/tank-5.2.6.9-rooted_r1.zip /sdcard/
    3. Push Magisk zip file:
      Code:
      adb push ~/Downloads/Magisk-v19.2.zip /sdcard/
    4. Go into ADB Shell:
      Code:
      adb shell
    5. Install rom:
      Code:
      twrp install /sdcard/tank-5.2.6.9-rooted_r1.zip
    6. Install Magisk:
      Code:
      twrp install /sdcard/Magisk-v19.2.zip
    7. EDIT: STOP! DO NOT WIPE ANYTHING OTHER THEN WHAT WAS STATED OR SKIP WIPING ENTIRELY IF YOU'RE A BEGINNER! You can skip wiping and reboot (#9 & #10) or decide if you want to wipe the cache and dalvik only (advanced):
      Code:
      twrp wipe cache
    8. Code:
      twrp wipe dalvik
    9. Code:
      reboot -p
    10. Unplug USB and plug the disassembled FireTV Stick into a monitor or TV. Use the power brick and handle with care.
    11. The "Optimizing Storage" screen will display and will take 10 minutes to complete.

    Optimizing Storage Screen Hangs Issue*
    Try plugging the FireTV Stick's USB to a different power brick temporarily.

    Otherwise and unfortunately, the following instructions will erase your apps and will force you to re-register your FireTV Stick.
    1. Unplug the FireTV Stick USB from the power brick only and open a Terminal window.
    2. Navigate to script directory:
      Code:
      cd ~/Downloads/amonet-tank-v1.2.2/amonet/
    3. Run the boot recovery script to boot into twrp:
      Code:
      sudo bash boot-recovery.sh
    4. When the Terminal prompt says "Waiting for preloader", plug the USB into the computer.
    5. Go into ADB Shell:
      Code:
      adb shell
    6. Code:
      twrp wipe data
    7. Code:
      twrp wipe cache
    8. Code:
      twrp wipe dalvik
    9. Install rom:
      Code:
      twrp install /sdcard/tank-5.2.6.9-rooted_r1.zip
    10. Install Magisk:
      Code:
      twrp install /sdcard/Magisk-v19.2.zip
    11. Code:
      reboot -p
    12. Plug FireTV Stick into a TV or Monitor and wait for the "Optimizing Storage" screen to finish and re-register your device.

    TWRP Can Be Accessed Anytime via Boot Recovery Script*
    Run the boot-recovery script and plug the FireTV Stick into the computer.

    How to backup TWRP**
    I haven't made a backup yet via the command line. But I assume it would go as follow and if anyone wants to help, please do.
    1. Unplug the FireTV Stick USB from the power brick only and open a Terminal window.
    2. Navigate to script directory:
      Code:
      cd ~/Downloads/amonet-tank-v1.2.2/amonet/
    3. Run the boot recovery script to boot into twrp:
      Code:
      sudo bash boot-recovery.sh
    4. When the Terminal prompt says "Waiting for preloader", plug the USB into the computer.
    5. Go into ADB Shell:
      Code:
      adb shell
    6. Create a TWRP backup (everything):
      Code:
      twrp backup twrp
      OR here is a list of partitions that can be backed up.

    Here is a list of bloatware to disable***
    Be extremely careful. Disabling the wrong thing can break your FireTV Stick! - Link

    1. Enable ADB debugging via FireTV Stick Settings and get the ip address under About.
    2. Connect to the FireTV Stick via Wifi:
      Code:
      adb kill-server
      adb start-server
      adb connect <ip-address>:5555 # Grant access via prompt on TV or monitor.
      adb shell
      su
    3. If su command does not work in shell, then open Magisk app and grant root access to shell (in sidebar menu).
    4. Disable bloat as shown in the link above. Be careful!!
    5
    I have not ported my bootmenu recovery to this device yet. I'll try to work on getting the device added to my build system and see what I can put together. Unfortunately I don't have any time this weekend, I'll see if I can get something going next weekend.