See for me the upscaler has always said this and I would like to understand better how to know if it is working. Do you know how to tell on stock, without root, it is working? It never said anything for me other than unsupported so I do not know how to tell, rooted or not.
One of the main ideas of this thread is to spread awareness you can root stock images by patching the boot.img, so we have a root method for 9++, unreleased on nvidia gameworks, which is neat.... but useless for those that want AI Upscaling.
I trust what nooted said that it worked for them, I just cannot personally figure out for the life of me how to use it myself to tell the difference. Lol. So if someone from the community could please show us how to tell or explain it to me I would be grateful so we can solve this problem for the community.
Or at least it would be beneficial to me to see what it is I am trying to fix so I know if I got the settings right or not, if that makes sense. I appreciate everyone's time
I can tell you that ai upscaling don't work. It suppose to say, yes in the setting when you turn it on watching a video 720p to 1080p in ai upscaling . When I was rooted , it said unsupported..ai upscale didn't work. Video was same as basic. No difference in video quality. Just basic.
Somehow AI needs fixing. I don't think anyone checked it, except me. I watch videos in Ai upscaling alot. So I know the difference, when no ai upscaling. I have a insignia tv 50" Qled 4k UHD
Okay this is helpful. Next question. Is this something you are able to trigger when in youtube or plex or how are you switching it to active? I have only tried this using youtube and opening settings app from there and on stock it still wouldn't go active. I need to do that basic step to even be able to know what to fix haha
Thank you so much for the specifics. I will recreate this setup on stock and well, find my remote... haha. I am currently working on a problem in vmware with android, trying to get a thread up to develop a fix for it, but after that I will experiment with the upscaler on stock, get it working, then recreate on root.. Again, appreciate your Time~!
Ohhh you know I will plug it into my other one too when I try this again. Thanks Again! I am not sure if this one is actually 4k or not but I know my other one is
Seriously Thank You, haha. I feel like such a dumb dumb. I think it may be this tv and it never even occurred to me. I'll do some scientific like experiments later XD
Thanks to our friends in the XDA Community @ajolly & @nooted1 we now have a working method to achieve ROOT on STOCK Firmware AND to Keep AI Upscaling Working!
HOW TO ROOT:
If you are already running the STOCK firmware version you want to ROOT, Skip to step 2.
(For instance If you are running stock 9.1 or 9.1.1 already, skip to step 2)
STEP 1:
Select a STOCK firmware from this THREAD, and fully install it.
STEP 2:
Download the BOOT MOD that correlates to your installed STOCK firmware.
If you want to build your own "Boot Mod" the instructions are HERE
STEP 3:
Boot your shield into the Bootloader menu. Requires an unlocked bootloader See the PREREQUISITES section in this THREAD for how to do so. Unlocking your bootloader WILL erase your data
STEP 4:
Run .bootmod.bat - this will go through and erase the old boot.img partition, flash the new one, and reboot for us.
Code for reference:
STEP 1:
Download the safetynet module HERE and name it safety. MIRROR
Do whatever you have to, to get the module to your download folder.
If using adb:
Code:
adb push safety.zip /sdcard/Download
STEP 2:
Open Magisk and select the Modules button at the bottom right. The puzzle piece!
Select add a install from storage, navigate to Download, and install safety.zip, then reboot. View attachment 5774401
STEP 3:
MAGISK HIDE SETTINGS-
In magisk, under Settings, enable MagiskHide. Now select Configure MagiskHide View attachment 5774403
Click to show system apps View attachment 5774405
Then check all the settings for Google Services Framework View attachment 5774407
Then check everything under Google Play Services EXCEPT GMS <3 Thank You Noot Noot~! View attachment 5774411
Now go into the SHIELD'S Settings > APPS > and force stop and Clear Cache for Google Play Services, Google Services Framework, and the Google Play Store. Reboot. View attachment 5774415
You will now have Root and still be able to use apps and features that you shouldn't be able to thanks to the safetynet bypass and magiskhide settings. Normally with root we cannot install Disney +, but as you see, we Sure Can Now~! ;-)
Remember that you can turn the safetynet module off, which may be needed to do so you can run adb as root or perform other root operations
THIS METHOD REQUIRES A FIX SO ONE COULD RUN ADB AS ROOT, I AM WORKING ON THAT FIX NOW. FOR THOSE THAT NEED <---Probably just me! =]
Hello Friends~! I feel like the community is getting closer to being able to make roms for our device and to prepare for that, I would like to know: What is it that you Like and or Dislike about the Shield's Firmware you are running? (If you...
forum.xda-developers.com
A very special Thank You to @Renate for allowing me to pester her with every noobie question you could imagine HERE. She always answers in a very Smart way, and does not tell me to google it or "just use linux!" XD
I tried clearing the data of play store, services and the framework in a clean installed 9.1.1 and this is still the results on smarttube and vlc player, both video is running on 720p on a 4k TV
I tried clearing the data of play store, services and the framework in a clean installed 9.1.1 and this is still the results on smarttube and vlc player, both video is running on 720p on a 4k TV
back when i bought this shield, when i was testing the AI upscale on a 4k TV, even a 480p video on smartube and a videofile on 480p, the AI upscaling works, the shield was on a 8.2.3,
Thank you!
Well back to the drawing board....
Looked around a bit...hoping to find an apk that provides ai upscaling.....hoping there's a flag that can be switched in .smali to ignore bootloader status......a long shot, but just want to check
back when i bought this shield, when i was testing the AI upscale on a 4k TV, even a 480p video on smartube and a videofile on 480p, the AI upscaling works, the shield was on a 8.2.3,
Yup 480p gets upscaled...just nothing below 480p.
I've meant to root and test all this myself....but being my main media device it's been hard to find a good time. I'll be testing this on 8.2.3 when i get around to it
Hello mate. it is actually possible to downgrade Shield 2019 to OS 8.2.3. I used this guide and it worked flawlessly: https://florisse.nl/shield/
Obviously huge thanks to the guy who created it as it saves people so much research and trial + error. Basically alot of time saved.
Using this tweak guide, I've deleted close to everything from google and Nvidia (bloatware + data collecting) on the 2019 Shield TV: https://florisse.nl/shield-tweaks/
I've removed the Play Store and Google Play Services, ATV Core Services, ATV Remote Service, Backdrop, Basic Daydreams, Chromecast and many other things.
I don't use Netflix, Amazon Prime Video, Plex etc. So everything was removed from the Shield.
This is my ADB batch file to uninstall pretty much everything unneeded:
Keep in mind this is an extensive removal of pretty much everything. Payed apps etc. wont work with such cleanup. Most apps however do work- Kodi, Firefox, SmartTube, Speedtest, Fdroid, AdAware, Aurora Store (with private login, if you want to update some apps), Aptoide, Twitch, all sorts of Emulators etc.
The thing is that Google Play Store automaticall updates itself in the background, even if you disable it (it gets reenabled automatically) and I dont need that. If I want to update something, I will go to Aurora Store or Aptoide and update manually, but I dont want some sheety apps to be doing whatever they want in the background without asking.
And I didnt install a 3rd party Android Launcher, I use the default one, there are no more ads though after removing like 80% of trash bloatware and adware. The Android TV Home version is 2.1.3-320113730-f and I'm on ShieldOS 8.2.3. No ads to be seen and since even the Nvidia-OTA service was removed, it will never update the Shield by itself or even show a notification that there are updates available- which is exactly how I want it. Everything I need works fine in 8.2.3 and if I ever need an update, I will do it manually.
Also, while we're at it- it is possible to skip the initial login after factory restore, as seen on the picture attached. Source of it is:
https://www.reddit.com/r/ShieldAndroidTV/comments/o8tpkx
However it is actually not required to downgrade Android TV Home app to version 2.0.10 to remove ads from the home screen. By simply downgrading to ShieldOS 8.2.3 (down from 9.1.1), the ads were removed from the main screen automatically. Then if you do some additional cleanup (like removing ATV Core Services and disabling autoupdate for Apps in Google Play Store), the ads will never show up.
We now have a working method to achieve ROOT on STOCK Firmware!
A script has been made that can boot your shield into the bootloader, erase the old boot, flash the new boot, and install your choice of Magisk apk for you. The script is also able to revert you back to the stock boot image if needed.
Takes only a minute or two depending if you already have adb installed, fastboot drivers setup, and bootloader unlocked. (The guide will walk you through this if you are new)
Rooting Your Shield Will Break AI Upscaling and Dolby Vision. You /Cannot/ Lock the bootloader while rooted, you can only Lock the bootloader when you have the stock boot Image installed. This tool simply makes it easier to "Root" and to Revert back to Stock when done, so you can use your AI Enhanced Features again.
HOW TO ROOT:
If you are already running the STOCK firmware version you want to ROOT, Skip to step 2.
You can check your currently installed firmware on the shield by going into Settings, selecting About, then scroll to the bottom.
You will see a section called SHIELD Android TV SW Version, this will show your installed FW
STEP 1:
Select a STOCK firmware from this THREAD, and fully install it.
STEP 2:
Download the BOOT MOD that correlates to your installed STOCK firmware.
If you want to build your own "Boot Mod" the instructions are HERE
Special thanks to @I_did_it_just_tmrrow for taking the time to download from gameworks, patch with magisk, and install the 2015 version, and verified it works HERE as well as they verified the hashes were the same for the boot.img of the 500gb and 16gb boot.img
Note the ip address and in a terminal on your computer, connect to this ip address.
Example: adb connect 192.168.0.10:5555
This will prompt the shield to allow for a connection, say yes.
STEP 4:
Run your choice of .bootmod, .deltamodonly, or .magiskmodonly. MORE INFO
Simple 1 min demo:
How to use the new .bootmod script:
After Enabling USB Debugging and Wireless debugging, then adb connecting to your device, run the .bootmod script
If you did everything correctly, your device should be listed, and you may proceed by pressing 1 and enter.
If you forgot to adb connect you may now do so with option 3, just type in your Shield's IP address.
After you select 1 on the main menu, the script will then reboot your device into the bootloader and will wait for you to press a key so the script can run fastboot devices to verify that your device has posted.
Wait to press any key until you see your shield's lights come on and then you hear the window's chime on your computer. (see 0:16 in the video) Then Press 1 if your device is listed like above.
Run option 2 again, in case the script went too fast or you hit a key too quickly.
If your device is still not showing, make sure you have unlocked the bootloader and installed the fastboot drivers for your device.
Now open Device Manager and follow the steps below:
NOTE THAT UNLOCKING YOUR BOOTLOADER WILL ERASE ALL DATA ON THE DEVICE!
The shield should now be at the bootloader menu, simply select unlock bootloader
Now you can select which boot mod you would prefer. The script will erase the old boot image, flash the new one, reset, then the script will pause for us.
When your shield has fully rebooted and is on the main menu, you can press any key in the terminal and the script will finish the magisk installation for us by installing the apk to the device.
If you accidentally pressed a button too quickly, you can always access the apk menu to adb install the Magisk apk.
Remember that you can always revert back to the Stock Boot Image and Lock your bootloader (again you can only lock it with a Stock boot flashed) to get your AI Upscaler and Dolby Vision working again when you are done with Root.
STEP 5:
Now Opening Magisk will trigger this alert:
Select OK and after the reboot, your Magisk of Choice will be fully installed!
You will now have Root and still be able to use apps and features that you shouldn't be able to. Normally with root (or at least on the Dev Rooted Images) we cannot install Disney +, but as you see, we Sure Can Now~! ;-)
BOOTMOD.BAT ---- There is unused code, the :UNLOCK code will be removed later, it didn't work how I would have liked in testing and I forgot to remove it. It isn't harming anything right now so will remove it with the next update.
Code:
@echo off
title [BOOTMOD]
color 0A
if "%1" neq "" ( goto %1)
:MENU
cls
echo BOOTMOD -- Version 2
echo =========================================
adb devices
echo =========================================
echo 1. Enter Bootloader Menu for Mod Flashing
echo 2. Enter APK Menu
echo 3. ADB Connect
echo 4. Reboot to System
echo 5. HELP
echo 6. EXIT BOOTMOD
echo =========================================
set /p answer= Please Enter your Selection:
if %answer%==1 goto BOOTLOADER
if %answer%==2 goto APK
if %answer%==3 goto ADB
if %answer%==4 goto REBOOT
if %answer%==5 goto HELP
if %answer%==6 goto EXIT
:ADB
cls
set /p answer= Type in SHIELD IP Address:
adb connect %answer%
goto MENU
:APK
cls
echo ===========
echo APK MENU
echo ===========
echo 1. Magisk by TopJohnWu
echo 2. Magisk Delta fork by HuskyDG
echo 3. Return to Main Menu
echo ================================
set /p answer= Please Enter your Selection:
if %answer%==1 goto MAGISKAPK
if %answer%==2 goto DELTAAPK
if %answer%==3 goto MENU
:MAGISKAPK
adb install magisk.apk
goto MENU
:DELTAAPK
adb install delta.apk
goto MENU
:HELP
cls
echo Adb must be installed on the computer and USB debugging must be enabled on the Shield.
echo You will need the Fastboot USB drivers installed on your PC.
echo Check the GUIDE on XDA for more help.
echo LINK: https://forum.xda-developers.com/t/bootmod-root-your-shield-in-1-minute-2015-2017-2019.4524873/
echo =====================================================================================
set /p answer=Press 1 to return to Main Menu:
if %answer%==1 goto MENU
:UNLOCK
cls
fastboot oem unlock
echo ==============================================================
echo Use your shield to select yes. Then press any key to continue
echo ==============================================================
pause
set /p answer=Press 1 to Enter Flash Menu or 2 to return to Main Menu:
if %answer%==1 goto FLASH
if %answer%==2 goto MENU
:BOOTLOADER
cls
adb reboot bootloader
pause
cls
echo =====================================================
fastboot devices
echo =====================================================
echo Is your device listed above?
echo =====================================================
set /p answer=Press 1 for yes or 2 for no or 3 for Help:
if %answer%==1 goto FLASH
if %answer%==2 goto BOOTLOADER
if %answer%==3 goto HELP
:FLASH
cls
echo How would you like to flash your boot today? Do you want to include:
echo ====================================================================
echo 1. TopJohnWu's Magisk
echo 2. HuskyDG's Magisk Delta
echo 3. Revert Back To Stock Boot Image
echo 4. Reboot Shield to System
echo 5. Return to Main Menu
echo ====================================
set /p answer=Select a number and press enter:
if %answer%==1 goto MAGISK
if %answer%==2 goto DELTA
if %answer%==3 goto STOCK
if %answer%==4 goto REBOOT
if %answer%==5 goto MENU
:MAGISK
cls
fastboot erase boot
fastboot flash boot bootmod1.img
fastboot reboot
echo =====================================
echo Wait for your Shield to fully Reboot.
echo =====================================
pause
adb install magisk.apk
goto MENU
:DELTA
cls
fastboot erase boot
fastboot flash boot bootmod2.img
fastboot reboot
echo =====================================
echo Wait for your Shield to fully Reboot.
echo =====================================
pause
adb install delta.apk
goto MENU
:STOCK
cls
fastboot erase boot
fastboot flash boot boot.img
echo ================================================================================
echo REMEMBER TO LOCK YOUR BOOTLOADER FOR AI UPSCALING AND DOLBY VISION FUNCTIONALITY
echo ================================================================================
echo 1. Reboot Shield to the System
echo 2. Return to Main Menu
echo =========================
set /p answer=Enter your selection:
if %answer%==1 goto REBOOT
if %answer%==2 goto MENU
:REBOOT
fastboot reboot
goto MENU
:EXIT
exit /b
Here are the sources for the Magisk apk's and their respective projects, used in making the boot mods.
Topjohnwu's Magisk APK Direct Download Link (v25.2):
SPECIAL THANKS TO OUR FRIENDS IN THE XDA COMMUNITY <333
Thank you to @topjohnwu for making Magisk @huskydg For making the forked magisk with magiskhide enabled and other features @nooted1 for teaching us about the magisk variant "delta" that has magiskhide still configured inside the apk @ajolly for their efforts in educating us about safetynet modules that can be used within magisk @louforgiveno for their efforts in reverse engineering apks, determining that it would be better to clear data in the google playstore instead of cache, and providing excellent feedback on pretty much every step of the way. @abc1054 for testing the ai upscaler and teaching me how to even use the silly thing. @Zer0_rulz for testing the upscaler and teaching us about link2sd and providing a useful idea for studies, to "freeze apps" as opposed to straight deletion in tests. I will use both methods in the future! @pinvok3 for their script they made to teach us how to more efficiently locate the apps tied to the ai upscaler and determining the "tvsettings.apk" to potentially be culpable in jailing our upscaler. They also taught me about the dolby vision feature on the shield @Renate for allowing me to bother her in the AVB thread while I try to learn how to talk to people like her. haha @Manzing for stepping up and being the hero we needed for the 2017 shield community! They were able to locate the correct pathing for the OTA Firmware as well as provide us the stock 9.1 boot and complete OTA!! @I_did_it_just_tmrrow For taking the time to verify magisk is able to indeed patch the 2015 version of the Shield HERE and more so they explained the boot images provided on gameworks for the 2015 version have the same hash, therefore a patched boot will work on both the 16gb and 500gb models. Thank you!
AI UPSCALER FIX: THERE'S SOME TROUBLE WITH THE UPSCALER STILL, THE COMMUNITY IS WORKING TOGETHER IN THE COMMENTS BELOW
Please note that patching the boot with Magisk causes problems like the AI upscaler and Dolby vision being unavailable. You may want to wait for updates unless you have a reason to root with stock but otherwise feel free to join us in troubleshooting!
NOTE THAT THIS METHOD REQUIRES A FIX SO ONE COULD RUN ADB AS ROOT OUTSIDE OF THE SHELL. (adb shell su works, but not adb root outside of shell) Trying to mod this binary. Bare with me
I wanted to share something I discovered today that I didn't know about before and this deals with TWRP.
Today I rewrote a GUIDE going over how to install Lineage OS on the shield.
I noticed that TWRP when opened will then establish a root shell with the device named RECOVERY
So I adb shell ls and noticed that the contents /are not/ the same as what we see in a regular adb shell or in root exploring apps.
In fact, the view we are used to seeing is referred to as "system_root" as listed above. If you were to ls that, you would see your traditional filesystem layout.
So therefore I was not seeing the full picture before... There's files here I pulled that I hadn't read before, I have to sort between the leftover lineage garbage and what not but I will share the native file dump later.
This also makes me wonder if I was trying to flash the "roms" wrong for this device. Maybe a new approach would be to make a modified and preinstalled system_root that could be adb pushed.
Not sure just wanted to share
--edit have to select the MOUNT option in TWRP and then system + vendor to see the full picture, otherwise a lot of empty folders
I'm using 8.2.3. The newer 9 versions seem kind of sluggish. But the script should work on 9 regardless.
Lastly "Or we lost some kind of DRM keys during the boot unlocking phase." Is this something we can obtain with a serial UART or JTAG adapter? I just got mine in and am not afraid to break the shield open here in a few days if there's something that could be obtained and shared there. I am new to all this so I appreciate everyone sharing the things
Sorry I have no idea. I've never worked on Android before and I've spent like 30 minutes on this.
Jtag is usually lower level stuff and I'm pretty sure it's undocumented. If it exists even.
I just remember, that on a previous phone (Sony Xperia) the drm keys were wiped once you unlock the bootloader, resulting in worse Camera image quality.
Considering that the upscale works correctly after unroot/relocking, I guess this would only be a soft lock. But still could be registered in the hardware somewhere, where we have no access to. Maybe it's still patchable though.
@pinvok3 Gosh WOW just wow! Thank You for your Amazing Share!! I will absolutely follow your advice and I will get that app pulled now to poke around.
Are you rolling 8.2.3 or one of the 9's btw??
Lastly "Or we lost some kind of DRM keys during the boot unlocking phase." Is this something we can obtain with a serial UART or JTAG adapter? I just got mine in and am not afraid to break the shield open here in a few days if there's something that could be obtained and shared there. I am new to all this so I appreciate everyone sharing the things
Okay, I'm grasping straws right now, but my shield just crashed after I have started a movie with Dolby Vision enabled. Can someone confirm if Dolby Vision is grayed out (unavailable) on rooted devices but available on nonrooted ones? After this fix I was able to enable Dolby Vision but my system just died with this log:
12-20 23:12:18.951 3725 3839 E WindowManager: Exception checking for game stream. Exception: android.content.pm.PackageManager$NameNotFoundException: ComponentInfo{com.android.tv.settings/.MainSettings}
12-20 23:12:18.951 3725 3839 I InputDispatcher: Dropped event because of pending overdue app switch.
12-20 23:12:18.953 3725 3864 E AudioService: Audioserver died.
12-20 23:12:18.982 4578 5347 D DolbyAudioService: IMs12 implementation died... Restoring settings after restart
12-20 23:12:18.983 4578 5347 D DolbyAudioService: Attempting to connect to IMs12
12-20 23:12:18.992 4578 12382 I DolbyAudioService: Waiting 1 second before attempting to connect to IMs12...
12-20 23:12:19.037 12385 12385 D audiohalservicemsd: main() Starting [email protected] from vendor/dolby.
12-20 23:12:19.050 12385 12385 D : Calling decrypt_blob. err(0)
12-20 23:12:19.056 3432 3432 E Ipprotectd: decrypt_blob: Error during launch operation. err(0xffff0011)
12-20 23:12:19.056 3432 3432 E Ipprotectd: Error occurred at decryption. err(ffff0011)
12-20 23:12:19.058 12385 12385 E : Decryption failed
12-20 23:12:19.058 12385 12385 E : decrypt_blob failed! err(0)
12-20 23:12:19.058 12385 12385 E : Failed to decrypt.
12-20 23:12:19.058 12385 12385 E : Failed decrypt .text section.
12-20 23:12:19.059 12385 12385 F libc : Fatal signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0x4ec98e90 in tid 12385 (android.hardwar), pid 12385 (android.hardwar)
12-20 23:12:19.062 12384 12384 I ServiceManagement: Removing namespace from process name [email protected] to [email protected].
It seems like some encrypted communication fails which takes the whole system with it. It makes me more suspicious that the bootloader unlock removes/hides/blocks some DRM keys required for AI/Dolby Audio to work. If we could somehow hook into the bootloader unlocking phase to see what's happening ..