Nvidia Shield TV: 4K UI
Nvidia’s Shield TV is probably the most OPed streaming box on the market, despite using a 4 year old SoC. Despite this, the UI runs in upscaled 1080p, even if you set the resolution to 2160p.
Let’s fix this.
Turns out, you can run a couple of simple shell commands to permanently enable a 4K UI. The setting will persist across reboots and even minor version updates (I don’t know if it would survive a major update like from Nougat to Oreo or Oreo to Pie).
UPDATE: While the setting did survive the Pie upgrade, app icon scaling is broken in Experience 8.0 / Android Pie. This only affects the home screen app row, all other icons and thumbnails display correctly.
UPDATE 2: The problem can be mitigated by app developers updating how their icons are displayed. Hopefully the major players will nail this down soon.
Enable Development Mode on your Shield.
- Go to Settings -> About
- Select “Build” or “Build Number” and press OK repeatedly (10+ times) until a toast appears saying that Developer Mode is enabled.
- Go back to Settings and find Developer Options
- Find USB Debugging and enable it
Setup ADB
- Download the SDK Platform Tools for Windows, Mac, or Linux.
- Unzip and run
$ ./platform-tools adb connect [SHIELD TV IP]
$ ./platform-tools adb shell
This will open the adb shell. Now run:
$ wm size 3840x2160
At this point, the UI will automatically refresh and be running in 2160p. Unfortunately, the scaling will be all wrong. So now run
$ wm density 460
This is where you can experiment a bit. I recommend density
values between 300
and 600
, but it’s going to depend on the size of your TV, how far away from it you sit, and of course personal preference.
Congrats! Your Shield is now running its UI in 4K. To make sure any running apps don’t get confused, reboot the Shield once you’re happy with the density setting. As a treat, open the YouTube app—you’ll be blown away at how good it looks.