yashsingh1/xdaforums huggingface dataset:
[Fire TV Android Development] Sus_i:
OK, I think that looks fine. :good:

I would say it's time to heat up your soldering iron ;)

Disconnect all 4 wires from the emmc adapter side.

You can use the end from the clk pad wire, to bridge the two clk pads as a quick provisional clk resistor replacement. That allows you to boot in order to do a few tests before disconnecting all wires. But be sure that the other wires makes no short anywhere!

Now you can hook up a HDMI cable...

Just do a quick test, the box should boot, first the bootmenu, then optimizing apps up to fireOS Launcher.

Try to call su with adb (your FTV asks two times for permission on TV).

Try to boot TWRP with bootmenu.

If you messed up your data partition with apps like gapps or so, it can be that you have to wipe data with twrp... Don't know, watch out for bootloops ;)

Come back to tell me your results ;)
[Fire TV Android Development] LocoMexican:
The iron is heating. I'm going to block any updates through my router, even though it probably won't be connected to any internet at this point. I'll post back results.

---------- Post added at 07:47 PM ---------- Previous post was at 06:53 PM ----------

IT LIVES AGAIN.... It booted fine, gave the option for twrp and then booted into the optimizing etc. I did a restart, and on reboot, selected twrp, and it's there in all its glory. Right now I have it shut down, but from the looks of it, it seems to have survived it's open heart surgery and makeover. I'm going to leave the board taped down to its cardboard retainer and see if I can get a wireless connection. If I can get a wireless connection, I'll see if I can call up su and then do an internal block on updates. I can't believe it. Thanks for all your help.
[Fire TV Android Development] Sus_i:
All right. Congratulations :good:

As I mentioned, I haven't solder the resistor back, a piece of the wire will do the trick fine. Your decision.

Good Idea with the block, seems that amazon pushes a new update since about five days, called 5.2.7.1

Don't let it connect to the internet, or you have to reconnect the emmc adapter :D

If your FTV has internet access, keep the fireTV busy, i.e. play a long video... Then connect as soon as possible with adb and do this:

adb shell

su

pm disable com.amazon.device.software.ota

pm disable com.amazon.device.software.ota.override

pm clear com.amazon.device.software.ota

The last one clears all pending updates.

Additional to the disable command, or maybe before you let your FTV connect to the internet, its good if you set a custom version number in build.prop. You can do this complete in TWRP with adb. An OTA update attempt will fail with that. You can use windows and the notepad++ freeware to edit that file or try it with ubuntu ;)

There is a guide...

This guide is almost complete, but don't forget to chmod 755 the lastly pushed build.prop file (with twrp filebrowser), thats missing in the guide.
[Fire TV Android Development] LocoMexican:
OK, I did as you suggested with su and adb shell regarding OTA updates. I have also used Build Prop Editor to change the build version number. It seems to run just fine. I'm going to power it off, remove the wires, close the gap where the resister once sat, untape it from its cardboard workbench and put the board back in its original case. I'm thrilled.

Mr. Sus_i, you've just made an aged 73 year old man happy. You and others like you on this site have gone above and beyond the call of duty when it comes to helping people like me who are computer challenged. Your patience with me has been extraordinary. Thank you again for making my day.
[Fire TV Android Development] LocoMexican:
Post Script: If anyone wants to try this, look at the video tips on soldering. I'll try to post a pic of my set up. I used a really old soldering iron. Has a switch to change between 15W and 30W. I used 15W. Instead of using my shaky hands to try and get the solder tip into a really tight area to remove the "resistor" I used a heat gun. I was able to use tin foil to reduce the opening on the gun to about the size of a dime and ran it on its lowest setting. That focused the heat to a small area. Before I started this process, I reinforced and covered the entire area except for the resistor with a heat resistant tape. If I'm able to post a pic, you can see the discolored tape (yellowish/gold). Then you can simply lift the resistor off the board with a pair of tweezers as it heats up. This could be risky, but for me it was less of a risk compared to my unsteady hands. After that, I just soldered one wire at a time and taped each one down separately before moving on to the next wire. Hope this helps other novices like myself.

Sorry about no pic. I'm too new to post yet.
[Fire TV Android Development] LocoMexican:
Question? I bought a AFTV 1st gen to replace the one I bricked before I realized it might be possible to unbrick it. It has current standard 5.2.7.0 installed and is still in it's original (unrooted) condition. It is in all respects original. Is it possible to use the unbrick method you just walked me through to actually root it? Just curious. If not possible, then I'll try to re-sell it on ebay which is where I got it in the first place. Thanks again for everything.
[Fire TV Android Development] LocoMexican:
So I need to remove the resistor and do the soldering part with the four wires, and then simply run the above script. When you say "do the (dos2linix) and chmod thing", I assume you mean dos2unix and chmod thing. I thought I did those two things as part of acquiring a sparse img, which I think I already have from before. So that's a bit confusing. I don't think I'm following, so can you clarify for me please. Thanks.
[Fire TV Android Development] Sus_i:
Yes :good:

Yeah, dos2unix is right. Sorry about that^^ Worked the whole day and I'm tired ;)

To clarify this point: you use dos2unix for example to eliminate hidden line feeds in the script. It's maybe not required, but it doesn't hurt, you do this to prevent errors. The chmod u+x makes this script executable for you.

After that + connecting the emmc adapter, you can run the script...
[Fire TV Android Development] LocoMexican:
Sweet. I might just give it a try. It's one thing to take a bricked device like I had vs taking one that works perfectly fine and risking the resistor removal. The soldering part is pretty much plain jane, but since the pads for the resistor are easily susceptible to pulling off, I want to think about it for a day or two. Maybe over the weekend. I'll let you know how it goes. Thanks again.
[Fire TV Android Development] Sus_i:
No, this variable is without a function, as I deleted the function behind that. In the posted scripts for you, I've chosen the right bootloader manually for you...

OK. So you have now a 5.2.6.9 rooted device. That's ok. If you had told me that earlier, I would have included a 5.2.7.0 system flash in the script. But if you want you can easily update with the prerooted rom from rbox, but be sure to have a working adb twrp connection, in order to restart the recovery if it hangs.

Yeah, think this too. :good:

Just for clarification:

If you working with a installed ubuntu system started from HDD, you have to run the following commands only one time. It installs the applications pv and dos2unix. They got permanently installed on system. If you working with a ubuntu live system started from dvd, you have to do this every time you did a restart.

sudo apt install dos2unix

sudo apt install pv

The following commands are file based, you do this with every new created script .sh file...

sudo dos2unix filename.sh

sudo chmod u+x filename.sh

The sdat2img run isn't needed if you don't want to flash a new system, or if you have an image ready into your folder from a previous run...
[Fire TV Android Development] LocoMexican:
Thanks for all of your help.
[Fire TV Android Development] Sus_i:
[MENTION=8133270]LocoMexican[/MENTION]

Is your second bueller alive, TWRP & root works? Did you flashed the 5.2.7.0 with TWRP?
[Fire TV Android Development] LocoMexican:
Disaster struck, so I, we, will never know. Just as I was soldering the other end of the clock wire my pet dog decided to run straight into the electric cord to my solder iron, pulling the iron and the FTV right down to the floor. When I got everything picked up and under control, I noticed the clock wire was not present, nor was the pad it was attached to. So, I now have a perfectly good FTV remote and power adapter, just no device. I may see if I can find one on ebay w/o the remote and power adapter and try again, but for now, I'm out of luck. I like to think it would have worked, but this is simply because of the read-out I got after running your new script. If I can locate another FTV, I'll try again. Thanks again for all your help.
[Fire TV Android Development] Sus_i:
Yeah, I think it worked fine.

Unfortunate, I'm sorry for you. Maybe your wire was too thick and ripped off the pad. Had a similar situation and the wire cracked...

If you look close at the missing pad with a high magnification glass, can you see the trace of the line on the PCB?

Maybe scratch carefully the green cover from the PCB a little bit off, round about the missing pad, in direction to the emmc, in order to uncover the clk line. With luck and good flux you get a fine wire to the uncovered line connected. That's what I would do. If you can uncover the line but soldering fails, maybe a thick trace of conductive silver paint is an option.

You could also try to find an additional pad or point for the missing pad with your ohm meter. The clk line runs between emmc chip <-> soc processor. Try to find a point/pad or see if you can trace/uncover the line.

Last thing you could try is to desolder the whole emmc chip with hot air. If there is enough space between the pads, you can place a new wire from the emmc clk pad to the missing pad. A dremel tool and epoxy glue is helpful, in order to place a new line under the chip with copper wire. Then the emmc must be reflowed with hotair. Reflowing looks easy on youtube ;)
[Fire TV Android Development] LocoMexican:
I'll scratch around on it in the a.m. and see what I can find. Thanks for the ideas on how to salvage this FTV. I'm not too sure I am equipped to do the kind of soldering and tracing you are referring to, but I'll try.
[Fire TV Android Development] Sus_i:
You have nothing to lose, it's allready the worst case.

Goal is to connect the interrupted line. Should be possible to fix, wish you good luck :good:
[Fire TV Android Development] LocoMexican:
I'm not having any luck trying to get solder to flow into the cleaned up area where the pad was. I'm afraid this one is toast. If I knew of any other solder points that would have the desired effect, I would certainly give them a try. I might be able to obtain another FTV and give it a second try. But for now, I'm giving it a break. Thanks again for all of your help. Your the best.
[Fire TV Android Development] feegus:
Installed latest Rbox custom rom last week on my AFTV. Every so often it now wants to perform an OS update. If I agree to the update it just reboots into recovery and is basically locked since the the remote can't be used in the recovery menu. I have to pull the power at least once a day to get passed this. Any ideas on how I can fix this?
[Fire TV Android Development] moeduss:
This worked for me.

https://www.google.com/url?sa=t&sou...FjAEegQIDhAa&usg=AOvVaw1VWKQys3dVrIU-zzCTGfTx
[Fire TV Android Development] feegus:
Nope. Not for me :( - I tried blocking the amazon updates sites via my router but no bueno. What method worked for you?
[Fire TV Android Development] moeduss:
I used the adb method to the fire tv.

---------- Post added at 01:16 AM ---------- Previous post was at 01:11 AM ----------

I used method 1 requiring root. It worked perfectly, if you have root this is the best one.
[Fire TV Android Development] feegus:
Just came back to post a quick thanks. My FTV is upstairs and I wasn't getting up there quick enough to grant su permission. :p

I got in sorted now. Thanks!
[Fire TV Android Development] snebojsa:
[MENTION=5213625]Sus_i[/MENTION]
[MENTION=8133270]LocoMexican[/MENTION]

Hello, here is another one "proud" owner of the bricked FTV1 :)

Friend give it to me so I don't know anything about it, what software version he had, etc.

Think it was pure stock, his kids used it to watch movies and cartoons.

Maybe some OTA goes wrong (or power outage) and now it's just white Amazon logo and breathing white light for about a 1-2 minutes and then it shuts down, no signal on TV and orange light on the box.

Looking for a solution online and found this hardware method, decided to go for it. Any advice for me?:)

Soldering is not the problem, have a good soldering station and some experience.

First need to order emmc adapter from exploitee.rs, hope they deliver to Serbia.

Need this adapter from them, nothing else?

Then I need sd card reader. Have laptop with sd card reader built in, can I use that instead?

Copper wire, will use from old ATX power supply transformer.

That's for hardware side, for software-download latest rbox prerooted stock image, in this case 5.2.7.0_r1,

and use Sus_i scripts on Linux machine. That's about it, yes?:)
[Fire TV Android Development] Sus_i:
Yeah, that's it. You can look through my posts, I explained the process in detail. It isn't hard, but you have to be carefull.

A butchered power supply wire works fine, best is to use a very fine wire from a small coil. Keep the wires short as possible (2,5-3 inches).

Don't know if your buildin sdcard reader would work, but you can test it yourself: you have to cover all DAT pads from a sdcard except the DAT0 pad, plug it in your reader and if you can see the files from the card, your reader is 1bit Mode compatible and would probably work with the emmc adapter. As for the scripts, you have to look whether your box is unlocked or not (the script for locomex first box is the unlocked variant) and you have to edit the paths to compare with your linux setup.
[Fire TV Android Development] justinlarsen:
Noob question, I have TWRP Rooted, Bootloader Unlocked.

I'm currently on 5.2.1.0. I have rbox luncher script installed so the system auto boots into kodi (luancher enabled), and the home button goes to kodi as well. For some reason when going to the Amazon dashboard it no longer displays content and says unable to connect so I assume I need to update the firmware.

It's been sometime since I have done this, so im curious the best way and how to go about it in TWRP without losing any of my settings and Kodi install. Do I install the firmware thru recovery or the install button in twrp?

Thanks for the help.
[Fire TV Android Development] snebojsa:
[MENTION=5213625]Sus_i[/MENTION]

Thank you for your reply.

Don't know if the box is unlocked, will assume that is locked and proceed from there.

About scripts, will contact you if there were any problems.

Will order adapter today, hope they have it.
[Fire TV Android Development] Sus_i:
:good:

Yes, I would assume a locked device too. You can easily change the path in the script to point to the locked bootloader., both versions are in the prerooted zip.
[Fire TV Android Development] snebojsa:
Ok, thanks.

Adapter is ordered today so we waiting...
[Fire TV Android Development] LocoMexican:
shebojsa, I'm following your progress. If you read my posts, it's clear I'm a total novice with regard to the script. I just followed Sus_i instructions. As far as soldering, "don't get in a hurry". Tape each wire down tight as soon as you get it soldered in place. I didn't think soldering would be a problem for me, but that's what took down my last effort. I was down to one last wire when disaster stuck. Good luck. It is doable.
[Fire TV Android Development] snebojsa:
Ok, thanks. Will tell here when adapter arrives.
[Fire TV Android Development] snebojsa:
[MENTION=5213625]Sus_i[/MENTION] [MENTION=8133270]LocoMexican[/MENTION]

Adapter has arrived, yey :)

But...

I followed the instructions but cannot get connection.

Disassembled the box, remove resistor, use thin copper wire for connections, properly solder everything to adapter.

Then made bootable Ubuntu USB, booted, everything is ok.

First apply power to AFTV and try to connect to laptop SD card slot but nothing happens.

Then tryed with SD card reader, but again nothing,

Checked the connections multiple times with multimeter and everything is ok but cannot connect and see the files.

Here is some pictures.

One silly question.

What adapter must use, this one:

https://shop.exploitee.rs/shop/microsdemmc-breakout-board-pdexl

or this one (Low Voltage eMMC Adapter):

https://shop.exploitee.rs/shop/low-voltage-emmc-adapter

???
[Fire TV Android Development] snebojsa:
I figured it out that must use the second one adapter, Low Voltage eMMC Adapter.

Solder everything to that adapter, get solid blue light but cannot see files in Linux?
[Fire TV Android Development] Sus_i:
Yeah, you need the low voltage emmc adapter for this. Solid blue light is good. If the wire is to long, you get error messages in ubuntu and the light doesn't stay blue.

Have you powered on the FireTV with the power supply after connecting the usb reader? Without pluged power supply it won't work.

Could be an issue with your reader. Have you checked if your sdcard reader works with the 1bit mode (cover all DAT1 to DAT3 pins on a sdcard with tape)?

Exploiteers says that the best reader is the TS-RDF5
[Fire TV Android Development] snebojsa:
Yes, I powered up the FireTV with it's original and working adapter.

Maybe it's the reader, mine is USB 2.0 and the one you mentioned is USB 3.0, maybe that's the problem.

I tried to plug in to laptop built-in SD card reader but only what I get is a quick blink of the blue light and then nothing.

What do you mean to cover all DAT1 to DAT3 pins on a sdcard with tape? Do you mean pins on low voltage adapter, because I can't see pins on SD card reader itself?
[Fire TV Android Development] Sus_i:
The emmc adapter uses 1bit mode, the slowest mode over only one pad: dat0.

In order to test your reader, take a SD Card, maybe 500mb or 2Gb or so, go to wikipedia and look for a pinout of such a SD Card. Cover all DAT pads (1to3) on this Card with tape, except the DAT0. Plug in this card and look if you can mount the card... If you see your files on the card, your reader should work with the emmc adapter too.
[Fire TV Android Development] snebojsa:
Ok, now I understand. Will try in Monday, I'm out of town for the weekend. Thanks.
[Fire TV Android Development] snebojsa:
Tried with another SD card reader (USB 3.0 , Manhattan) and it worked, now can see files in Ubuntu :)

Now, I'm struggling with scripts, of course.

My working folder is Shared on desktop, so:

SHARED="/home/ubuntu/Desktop/Shared"

ZIP="${SHARED}/bueller-5.2.7.0-rooted_r1"

BACKUP="${SHARED}/backup"

SDAT2IMG=~/Desktop/sdat2img/sdat2img.py

What script I have to use to backup and then copy files to AFTV?
[Fire TV Android Development] snebojsa:
How to do this?

Yes, I run the Ubuntu from USB, have 6GB of RAM, do you think that is enough?
[Fire TV Android Development] Sus_i:
Something like this:

sudo add-apt-repository universe

sudo apt update

sudo apt install dos2unix

sudo apt install pv

sudo dos2unix nameofthescript.sh

sudo chmod u+x nameofthescript.sh

You can look through my posts, I explained it in detail somewere in this thread.

The ROM, the extracted system from the rom and the backup from the box goes in there. Don't know.

If you have an usb stick, you can plug it in and edit the SHARED path in order to point to the stick... Copy all from the desktop SHARED Folder over to your new SHARED Folder on the stick.
[Fire TV Android Development] snebojsa:
Ok, thanks, will try tomorrow.

Cross my mind, can I use existing Windows HDD for Shared folder? I have USB stick but it's only 8GB.
[Fire TV Android Development] Sus_i:
My old laptop with 4GB RAM running 16.4 ubuntu live dvd, runs out of space at the first script (extract system with sdat2img). Maybe your 6GB is enough, but maybe you get an error at the backup step.

An usb stick with 8GB is enough. You have to extract the prerooted rom into it's folder on the stick, look for the path and edit the scripts.

Leave the sdat2img folder and your scripts on desktop, set permissions and you are almost done.

A windows partition should work too, but I would do it with an usb stick.
[Fire TV Android Development] snebojsa:
Found USB flash with 16GB and put Shared folder there (edited the path too).

First script finished successfully and got system_sdat2img.img

ubuntu@ubuntu:~/Desktop/sdat2img$ sudo ./sdat2img.sh

Converting system.new.dat to img format... sdat2img binary - version: 1.2

Android Lollipop 5.0 detected!

Skipping command erase...

Copying 32767 blocks into position 0...

Copying 32767 blocks into position 32768...

Copying 32767 blocks into position 65536...

Copying 32767 blocks into position 98304...

Copying 18247 blocks into position 131072...

Copying 32767 blocks into position 163840...

Done! Output image: /media/ubuntu/KINGSTON/1/Shared/bueller-5.2.7.0-rooted_r1/system_sdat2img.img

Done!

Then I tried second script but got some errors (dd: failed to open '/dev/disk/by-partlabel/system': Read-only file system):

ubuntu@ubuntu:~/Desktop/sdat2img$ sudo ./sdat2img.sh

Unmounting system...Done.

1572864+0 records in4MiB/s] [================================> ] 99% ETA 0:00:00

1572864+0 records out

805306368 bytes (805 MB, 768 MiB) copied, 145.818 s, 5.5 MB/s

768MiB 0:02:25 [5.27MiB/s] [================================>] 100%

1572864+0 records in

1572864+0 records out

805306368 bytes (805 MB, 768 MiB) copied, 161.186 s, 5.0 MB/s

Done.

Unmounting recovery...umount: /dev/disk/by-partlabel/recovery: not mounted.

Done.

20480+0 records in.18MiB/s] [==================> ] 56% ETA 0:00:00

20480+0 records out

10.0MiB 0:00:01 [5.24MiB/s] [=================================] 107%

10485760 bytes (10 MB, 10 MiB) copied, 1.90748 s, 5.5 MB/s

20480+0 records in

20480+0 records out

10485760 bytes (10 MB, 10 MiB) copied, 4.18002 s, 2.5 MB/s

Done.

Unmounting boot...umount: /dev/disk/by-partlabel/boot: not mounted.

Done.

20480+0 records in.19MiB/s] [==========================> ] 82% ETA 0:00:00

20480+0 records out

10.0MiB 0:00:01 [5.16MiB/s] [=================================] 158%

10485760 bytes (10 MB, 10 MiB) copied, 1.93806 s, 5.4 MB/s

20480+0 records in

20480+0 records out

10485760 bytes (10 MB, 10 MiB) copied, 3.46446 s, 3.0 MB/s

Done.

Clearing cache...umount: /dev/disk/by-partlabel/cache: not mounted.

mke2fs 1.44.1 (24-Mar-2018)

/dev/disk/by-partlabel/cache contains a ext4 file system

last mounted on /cache on Thu Jan 1 01:00:03 1970

Proceed anyway? (y,N) y

/dev/disk/by-partlabel/cache: Read-only file system while setting up superblock

Done.

dd: failed to open '/dev/disk/by-partlabel/system': Read-only file system

10.5KiB 0:00:00 [11.3MiB/s] [> ] 0%

ubuntu@ubuntu:~/Desktop/sdat2img$

How to proceed?
[Fire TV Android Development] Sus_i:
Hmm, don't know why your ubuntu mounts your emmc as readonly. Is there any write protect switch onto your cardreader?

Try this one here, and post the result please:

sudo mount -o remount,rw /dev/disk/by-partlabel/system

---------- Post added at 01:11 PM ---------- Previous post was at 12:53 PM ----------

Maybe your wires are too long. If you get any I/O errors during emmc access/mounting, ubuntu may switch the whole emmc to read only, in order to avoid data corruption. Thats the only thing I could think of.

I would try shortening the wires and don't use this metal clamp pins that you have soldered to the emmc adapter. It's better if you solder the wire directly to the board.
[Fire TV Android Development] snebojsa:
Ok, will try that.

Script is ok?