[ROM][Full Android Oreo for Shield TV][v.1.10]

Full Android Experience with NO Limits on Shield TV and Nexus Player
User avatar
zulu99
Site Admin
Posts: 2485
Joined: Tue Oct 09, 2012 6:42 am

[ROM][Full Android Oreo for Shield TV][v.1.10]

Post by zulu99 »

Full Android Oreo for Shield TV

v.1.10
Android on TV is not just movies and songs but also millions of apps and games.
This firmware provide Full Android Experience with NO Limits.
With Android you can run all standard Google Play apps and also apps made specifically for Android TV.
Please read the 2nd and 3rd posts for How-to's and other info BEFORE POSTING!
For the best interaction with Android from your couch i suggest DroidMote, because with DroidMote, multi-touch is not a problem on TV. And especially in Oreo the Touch Mouse will help you in many situations where only the normal mouse is not sufficient. Also with the videos inside the Chrome Browser.
Take a look here to understand why Android on TV is better than Android TV:
https://www.youtube.com/playlist?list=P ... B9D757086B

FIRMWARE FEATURES:

Based on the lastest Nvidia stock Oreo firmware
Everything the stock firmware can offer + full Android
All Android apps installable directly from Google Play
Status Bar
Navigation Bar
Recent Apps
Split Screen
Freeform Windows
Webcam
Old and new Nvidia Controllers in wireless mode and also with MIC and audio via controllers.
full Android Settings and Android TV Settings
In one word, Everything.

DOWNLOADS:

* Full Android Oreo 1.10 firmware: http://bit.ly/2QDZwhl
SHA1: 31F3B5235D9EFB95FE78F623C6F07747DF43F042

Support the development with a vote on Google Play for DroidMote Client


-------------------------------------------------------------------------------------------

ADB and Fastboot tools:
https://developer.android.com/studio/re ... form-tools

Nvidia Shield TV drivers for Windows PC:
https://developer.nvidia.com/shield-open-source


INSTRUCTIONS:

*** You MUST start the procedure with the stock firmware Oreo 7.2.2 ALREADY installed. To avoid issues please CLEAN INSTALL this firmware

*** Once your Shield TV 2015 has upgraded to stock Nvidia Android TV Oreo, you CANNOT LONGER DOWNGRADE THE BOOTLOADER (blob file) to Nogaut or older, otherwise you will HARD BRICK your device. While you DON'T FLASH WRONG BOOTLOADER and be able to boot into fastboot/bootloader mode, your device will be recoverable.
TIP: avoid using flash-all.bat, flash-all.sh and do not flash MM or older OTA packages




How to boot into Fastboot mode, HW method, Shield TV 2017:
https://youtu.be/YTtwnVFYRKQ

How to boot into Fastboot mode, HW method, Shield TV 2015 and PRO:
https://youtu.be/2AzHF-uNiY8

WRITTEN INSTRUCTIONS:
- You must download and setup ADB/Fastboot tools on your Windows/Linux/OSX PC first

- Put the Nvidia Shield TV in Fastboot mode:

How to put 2017 model in Fastboot mode, Controller method:
Image
http://nv-tegra.nvidia.com/gitweb/?p=ma ... r1-partner

How to put 2015 and PRO models in Fastboot mode, HW method:
Image
http://nv-tegra.nvidia.com/gitweb/?p=ma ... .1-partner

*** If you are on a Windows PC, download and install Nvidia ADB/Fastboot drivers while booted up in Fastboot mode for your device to get recognized.


- You MUST unlock bootloader before all other operations with the following command:
(if you ever run into an issue do not run "fastboot oem lock" as apparently device can't be unlocked again after that)

fastboot oem unlock

- When the bootloader is unlocked, in the command prompt type:

Code: Select all


Shield TV 16GB 2017 model

fastboot flash system system.img
fastboot flash vendor vendor.img
fastboot flash boot magisk_boot_darcy_7.2.2-v1.img
fastboot flash dtb tegra210-darcy-p2894-0050-a04-00.dtb
fastboot -w
fastboot reboot

Shield TV 16GB 2015 model

fastboot flash system system.img
fastboot flash vendor vendor.img
fastboot flash boot magisk_boot_foster_e_7.2.2-v1.img
fastboot -w
fastboot reboot

Shield TV 500GB model

fastboot flash system system.img
fastboot flash vendor vendor.img
fastboot flash boot magisk_boot_foster_e_hdd_7.2.2-v1.img 
fastboot -w
fastboot reboot

AFTER THE FISRT BOOT, REBOOT THE DEVICE TO OPTIMIZE THE SPEED
MAGISK PATCHED BOOT IMAGES FOR DIFFERENT MODELS AND DTB FOR DARCY:

Shield TV 16GB 2015 model
http://bit.ly/2CYvjWz

Shield TV 500GB model
http://bit.ly/2skolVW

Shield TV 16GB 2017 model
boot image:
http://bit.ly/2sldcnU

custom DTB file to disable verity:
http://bit.ly/2CxB1hS

HOW TO ROOT:
The Magisk patched boot image already root your device, you need to install only the Magisk Manager apk after the first start.
https://forum.xda-developers.com/apps/m ... s-t3473445

NOTES:
For the SATV 500GB Pro model, instead of using fastboot -w to clear data / cache, you can use the TWRP recovery to clear data and cache ( to avoid 2 hours of formatting data, because you have a large HD ).

For all Shield TVs 2015 models (codename "foster") you can skip the steps to flash the Magisk patched boot image in your device if you don't want to root, but, for all 2017 models (codename "darcy") you MUST flash the patched boot image to root your device FOR FIRST TIME, otherwise it will be stuck at boot SHOWING A STATIC SPLASH SCREEN WITH AN ERROR MESSAGE "can't verify bootloader" and Nvidia logo... why? because Magisk modifies boot.img, disabling some checks at boot allowing your device to boot to Android normally. Next time you re-flash the same firmware or go back to equivalent version of stock Android TV, there's no needed to flash the pached boot image again as boot image won't be touched unless you upgrade stock Android TV firmware (a.k.a Nvidia Upgrade Experience)

Changelog:

v.1.10
restored old mouse behaviour before Oreo.
Because Nvidia messed up with many things in his Oreo firmware.
The problem is that Nvidia use a very old Oreo AOSP source code and add modifications not in line with Google guidelines.

v.1.9
based on Nvidia 7.2.2
PIP bug fix
Live wallpaper fixed

v.1.8
based on Nvidia 7.2.1


v.1.7
Bug fix on some graphic elements of the UI

v.1.6
Based on stock 7.1 firmware

v.1.5
Fix crash on Settings -> Display -> Advanced -> Display size

v.1.4
Based on stock 7.0.2 Nvidia firmware

v.1.3
Fixed bug in AOSP keyboard
Default Launcher AOSP Launcher3

v.1.2
Corrected the annoying bug that not permit the scroll of AbsListView with the mouse.
https://android-review.googlesource.com ... e/+/551840
Firmware deodexed and patched with smali / baksmali

v.1.1
First release
Based on latest 7.0.1 Nvidia update.
Developer of DroidMote Server and DroidMote Client. Read the Quick Start Guides and then I'll be happy to help.
Donate with Paypal or Donate with Crypto
User avatar
zulu99
Site Admin
Posts: 2485
Joined: Tue Oct 09, 2012 6:42 am

Re: [ROM][Full Android Oreo for Shield TV][v.1.1]

Post by zulu99 »

GENERAL INFOS

⬤ Some Android TV apps not fit the screen ?:

# Root required #
You can hide completly the Navigation Bar.
When you use DroidMote or others remotes, you don't need the Navigation Bar.

Open the file /system/build.prop with a text editor

Change:

Code: Select all

qemu.hw.mainkeys=0
To:

Code: Select all

qemu.hw.mainkeys=1
Reboot

⬤ Magisk don't remember to which app you granted root permissions ?:

This happen only on Shield TV and few other devices because on Shield TV the default sqlite journal mode is set to WAL ( Write-Ahead Logging ) and Magisk not take in consideration this. When journal mode is set to WAL there is a selinux problem on autogenerated sqlite files /data/adb/magisk.db-WAL and /data/adb/magisk.db-SHM and therefore the /data/adb/magisk.db database can't be read or write.

# Root required #

Open the file /system/build.prop with a text editor

Add this line:

Code: Select all

debug.sqlite.journalmode=DISABLE
Delete the files:

Code: Select all

/data/adb/magisk.db
/data/adb/magisk.db-wal
Reboot.

⬤ How to have Full Mouse + other features in your Gamepad:

# Root required #
In order to get Mouse functionality with the right stick of your Gamepad like in stock but in all apps/screen, plus TouchMouse (for

game apps that only detect touch actions) and Gamepad2Touch (to play hundreds of multi-touch games with your favourite Gamepad)

features, you need to install both DroidMote Cient and Server in your Nvidia Shield TV.

Once you install them, you need to START the Server, then CONNECT DroidMote Client to the Local DroidMote Server (127.0.0.1) and enable droidmoteIME.

After that, Mouse mode will be enabled by default and ready to be used with your Gamepad. Please check the following images for more help:

Image

⬤ How to Play Nvidia Streaming Games ?:

# Root required #
Download this archive, unrar and copy in the vendor/app folder.
Reboot
Go in Google Play and update Nvidia Games
https://bit.ly/2yUI30x

Video guide:
https://youtu.be/etmu0IHJBWA

⬤ How to restore Screensaver and Sleep time like in stock:

1. You must enable developer options by going into:
Android TV settings > About > Build (it's located at the very bottom), hit the build option 5 to 7 times, then a toast notification will appear mentioning that Developer mode has been unlocked.
2. Go back to the main settings menu, search for Developer options and click on it:
Disable "Stay awake" option
3. Go back, then go to Screen saver menu and set:
Screen saver > Backdrop
When to start > After 5 minutes of inactivity
4. Install and Open QuickShortcutMaker app.
In QuickShortcutMaker search "Screen Saver", expand Settings click on DreamSettingsActivity, Click on Try
5. In the DreamSettingsActivity Hit the 3 dot menu at the top right > When to start screen saver > select While charging

Done! You can now temporarily set the Sleep time to 15 seconds to test in:
Full Android (AOSP) settings > Display > Sleep or simply wait the 5 minutes.

⬤ Video playback pause after a while ?:
Is the Nvidia Controller 2017 bluetooth that when resume from sleep send a pause event. Is not a problem of the firmware.
But you can solve.

# Root required #

1. navigate to system/usr/keychars/ using any file explorer
2. edit the file Generic.kcm
3. search for "BUTTON_15"
4. edit the lines as seen below

Change this:

Code: Select all

key BUTTON_15 {
base: fallback DPAD_CENTER
} 
To this:

Code: Select all

key BUTTON_15 {
base: none
}
⬤ How to make the 2nd USB port of the SATV 16GB 2017 work normally again:

# Root required #
When Full Android is installed, by default the 2nd USB port of the Shield TV 16GB 2017 work for ADB/Debug only.

In order to recover normal functionality back and be able to use USB debugging and Host mode at the same time

you need to add the following to the build.prop and then save the changes (preferably right after you install the firmware and boot for the first time):

Code: Select all

persist.convertible.usb.mode=host
YOU MUST FACTORY RESET YOUR SHIELD TV AFTER THIS because the firmware must start with this string already inside the build.prop for it to work.

________________________________________________________________
For my reference, and for others developers, at low level happen this:

To enable USB-HOST:

Code: Select all

echo USB-HOST > /sys/class/exton/ID/connect
To disable USB-HOST:

Code: Select all

echo none > /sys/class/exton/ID/connect
Developer of DroidMote Server and DroidMote Client. Read the Quick Start Guides and then I'll be happy to help.
Donate with Paypal or Donate with Crypto
User avatar
zulu99
Site Admin
Posts: 2485
Joined: Tue Oct 09, 2012 6:42 am

Re: [ROM][Full Android Oreo for Shield TV][v.1.1]

Post by zulu99 »

UPGRADE INSTRUCTIONS FROM Full Android Nougat
From full Android Nougat install the Nvidia recovery firmware 7.0.X
https://developer.nvidia.com/shield-open-source

Return in fastboot mode and type:
fastboot -w

Fastboot -w Is necessary to avoid conflicts between android tv apps and full Android apps.
Without fastboot -w, the device will not boot up correctly because, if you come from Full Android, you have installed full Google apps.

Restart.

When you have Android TV Oreo, you can install the Full Android Oreo following the instructions in the first post.
Developer of DroidMote Server and DroidMote Client. Read the Quick Start Guides and then I'll be happy to help.
Donate with Paypal or Donate with Crypto
Stevie G
Posts: 53
Joined: Mon Sep 05, 2016 4:40 pm

Re: [ROM][Full Android Oreo for Shield TV][v.1.1]

Post by Stevie G »

Well done zulu :P :P :P
I am so grateful to you for all the hard work you have put into this. It's amazing that you can complete Oreo in such a short space of time.

Well done!
Stevie G
Posts: 53
Joined: Mon Sep 05, 2016 4:40 pm

Re: [ROM][Full Android Oreo for Shield TV][v.1.1]

Post by Stevie G »

zulu99 wrote:
UPGRADE INSTRUCTIONS FROM Full Android Nougat
From full Android Nougat install the Nvidia recovery firmware 7.0.1
https://developer.nvidia.com/shield-open-source

Return in fastboot mode and type:
fastboot -w

Fastboot -w Is necessary to avoid conflicts between android tv apps and full Android apps. Without fastboot -w, the device will not boot up correctly.

Restart.

When you have Android TV Oreo, you can install the Full Android Oreo following the instructions in the first post.
Is this an option if you are on Full Android without flashing to stock first and just fastboot - w and then flash above Nvidia recovery firmware 7.0.1

I'm still on Nougat 1.4 though, can I still flash straight to Nvidia recovery firmware 7.0.1 or must I first upgrade to Nougat 1.5 before proceeding with stock Nvidia recovery firmware 7.0.1

What's the actual reason for going this route as you have to anyway flash to make the 2nd USB port available on 2017 16gb Shield.

Would appreciate the feedback thanks.
User avatar
zulu99
Site Admin
Posts: 2485
Joined: Tue Oct 09, 2012 6:42 am

Re: [ROM][Full Android Oreo for Shield TV][v.1.1]

Post by zulu99 »

Stevie G wrote:
zulu99 wrote:
UPGRADE INSTRUCTIONS FROM Full Android Nougat
From full Android Nougat install the Nvidia recovery firmware 7.0.1
https://developer.nvidia.com/shield-open-source

Return in fastboot mode and type:
fastboot -w

Fastboot -w Is necessary to avoid conflicts between android tv apps and full Android apps. Without fastboot -w, the device will not boot up correctly.

Restart.

When you have Android TV Oreo, you can install the Full Android Oreo following the instructions in the first post.
Is this an option if you are on Full Android without flashing to stock first and just fastboot - w and then flash above Nvidia recovery firmware 7.0.1

I'm still on Nougat 1.4 though, can I still flash straight to Nvidia recovery firmware 7.0.1 or must I first upgrade to Nougat 1.5 before proceeding with stock Nvidia recovery firmware 7.0.1

What's the actual reason for going this route as you have to anyway flash to make the 2nd USB port available on 2017 16gb Shield.

Would appreciate the feedback thanks.
Maybe i not explained well.

Yes you must install stock firmware, and i called it Nvidia recovery firmware 7.0.1 in my previous post.

Also from Nougat 1.4 you can follow the same procedure.

I suggest this procedure so users can update the bootloader with the Nvidia procedure and without install it manually.

But if you are able, you can also install the new bootloader and after install the patched boot image, system and vendor of full android and wipe with fastboot -w

In the past we had only the OTA, now we have the Nvidia recovery stock firmware 7.0.1 online on Nvidia website.
Developer of DroidMote Server and DroidMote Client. Read the Quick Start Guides and then I'll be happy to help.
Donate with Paypal or Donate with Crypto
Hazeno
Posts: 1
Joined: Sun Jun 24, 2018 1:58 pm

Re: [ROM][Full Android Oreo for Shield TV][v.1.1]

Post by Hazeno »

Flashed as per instructions and had a fair few issues.

A. Wi-Fi wouldn't enable.
B. Google Play crashes
C. Shield Remote random disconnect.

I was already on 7.0.1 but flashed the recovery firmware first before hand and wiped userdata.

Any reasons you can think of to why it's failing even after a second reset?
MiikkaKoo
Posts: 39
Joined: Fri May 06, 2016 6:50 pm

Re: [ROM][Full Android Oreo for Shield TV][v.1.1]

Post by MiikkaKoo »

Thank you Zulu, this is amazing rom.
Flashing was easy with patched boot and no need twrp,
specially becouse i have to use other tv for twrp, it not work with my 4k tv.
Everything installed back and all working like charm :)
I removing navbar with Buildprop editor and installing Set Orientation app, so everything work full screen landscape without navbar, and of course i use Droidmote :)

Sorry again my bad English :))
MiikkaKoo
Posts: 39
Joined: Fri May 06, 2016 6:50 pm

Re: [ROM][Full Android Oreo for Shield TV][v.1.1]

Post by MiikkaKoo »

I noticed after reboot Magisk ask root permission for Droidmote, it wont save other app too eg. Buildprop editor.
Magisk is 16,04 Manager 5.7.0 modules and hide work like it should be.
Not a big problem but.. nice to use only with Droidmote :)
User avatar
zulu99
Site Admin
Posts: 2485
Joined: Tue Oct 09, 2012 6:42 am

Re: [ROM][Full Android Oreo for Shield TV][v.1.1]

Post by zulu99 »

MiikkaKoo wrote:I noticed after reboot Magisk ask root permission for Droidmote, it wont save other app too eg. Buildprop editor.
Magisk is 16,04 Manager 5.7.0 modules and hide work like it should be.
Not a big problem but.. nice to use only with Droidmote :)
try to wipe data again with fastboot -w


this happened to me one time. but now magisk remember the permissions.

let me know if this happen after a wipe.
Developer of DroidMote Server and DroidMote Client. Read the Quick Start Guides and then I'll be happy to help.
Donate with Paypal or Donate with Crypto