[Shield Android TV General] dragonstomp:
I have a 500gb 2015 Pro with broken hard drive. Just stopped working a few days ago with no warning. Don't care about the wildvine keys really but I wanted to save this device if I could. Plus I'm stubborn and a nerd. (lol) I ended up landing here while googling. I do wish I would have known to back up the drive. Nvidia should have a way for us to recover these somehow. Pretty frustrating.

Anyways.

I figured it might be a good idea to put a March/April 2024 version of what I went through to get my Shield back up and going after catastrophy.

I actually had a spare 500gb drive on hand. It wasn't SSD but the steps are the same.

You need Linux for the dd command in Tilator's files so I used raspberry pi formated with current raspbian and installed gparted afterwards but I figure most any Linux box would work. (I did end up trying it on my nas with Ubuntu as well and it was fine)

Attach your new drive with sata adapter to the pi and open up gparted and create a new partition table as dos and format it fat32 on the whole drive. Don't forget to apply your changes with green checkmark button. I got this from a comment and not sure that it's 100% necessary but it worked a handful of times in succession so going with it lol. (Honestly ext4 should work too. It did the first time I tried it) Edit: Ext4 or Fat32 works fine. The TWRP Wipe part below was important for me though.

After you format fat32 just close gparted and open a terminal and do as the instructions say in Tilator's readme file. DD the start.bin and end.bin's. My drive was /dev/sda in my case.

Place the drive back in shield and power on. I got the drive to show nvidia logo and then the android animated graphics for about 20-30 minutes. I let it go a bit longer since I'm using a mechanical drive I had on hand. Then power off and restart. IF it doesn't boot into the standard out of box setup then you might have to reboot into fastboot mode (In my case on 2015 pro: reboot and hold nvidia button on shield down after 2 seconds until the fastboot menu shows up)

Choose the TWRP recovery kernel and then choose Wipe button after swiping the slider at the bottom with a mouse plugged into the usb port of the shield. I did a default standard wipe and rebooted.

Android setup came up and eventually you will get to the dreaded Google Sign in section that is unavoidable on that torrent image. I found no way to get around it after much googling and reading threads on there so I eventually gave up on that. Pretend a Gandalf image is here with "you shall not pass".

If you are at this point you are actually in pretty good shape even though I was questioning my sanity a few times during this journey.

Consensus seemed to be after research was that you must upgrade the software with nvidia's flash files at this point. I learned after much trial and error that trying to flash via fastboot any files newer than "nv-recovery-image-shield-atv-pro-7.1.0" from the gameworks downloads on nvidia's site that it will just flip out and not boot at all. I tried probably a dozen different ways to upgrade until I tried 7.1.0 and it just worked to my surprise. You will want to follow the 2nd set of instructions included in the readme file on nvidia's site where you don't use the adb reboot commands. https://developer.download.nvidia.c...owtoflash/HowTo-Flash-Recovery-Image-2015.txt

Hopefully after all that after the next reboot Google signin is now upgraded and working. You might have to confirm the signin with Google prompt on a device like iphone or android. I used my android tablet to confirm.

At that point you can stair step your way up the nvidia experience upgrade ladder til you want to stop. I am currently on the 8.0 one after upgrading a couple of times.

Thanks for image Tilator and thanks to you all in the thread who contributed to get my shield back up and going.

Edit: I tried to upgrade to the nvidia experience 9.1 the normal way and that ended up in a boot loop. I tried to go from 8.0 to 8.2.3 via fastboot and that also ended up in a boot loop. I guess I'm stuck at 8.0 here which isn't terrible I guess.