Late last year, Nvidia released a pair of new Shield TV devices: the tube-shaped Shield TV dongle, and the more traditional Shield TV Pro. It was later discovered that the dongle ran a 32-bit version of Android TV, which caused some to worry about incompatible apps, but you (probably) have nothing to worry about.

Both of 2019's Shield TV devices use the same Tegra X1+ processor, but they differ in RAM amounts. While the Pro has 3GB of RAM, the dongle only has 2GB. Even though the processor is capable of running 64-bit Android TV, Nvidia decided to go with 32-bit Android TV on the dongle.

Many buyers have pointed this out since release, and some have even returned their Shields, believing the 32-bit limitation to be a deal-breaker. Nvidia's website lists the applications that won't work on the dongle, which include most of the older Shield-exclusive titles and the Wii/GameCube emulator Dolphin:

  • Borderlands 2
  • Borderlands: The Pre-Sequel
  • Contrast
  • Doom 3
  • Half-Life 2 + Episodes
  • Metal Gear Rising: Revengeance
  • Metal Gear Solid 2
  • Metal Gear Solid 3
  • Portal
  • Resident Evil 5
  • Super Mega Baseball
  • The Witness
  • Tomb Raider (2013)
  • Ultimate Chicken Horse
  • Dolphin emulator

While Nvidia never clarified why most of the Shield-exclusive catalog is missing, my guess is that the company either can't release 32-bit versions (perhaps due to expired agreements/lack of developer interest), or doesn't believe the games would work well enough with only 2GB of RAM. Update: Nvidia told us the games simply require 3GB of RAM to run.

As for the Dolphin emulator, a post on the project's blog from 2018 explains that a 64-bit CPU is required because it was too difficult to maintain compatibility with all 32-bit architectures (including 32-bit x86 PCs):

ARMv7, as a 32-bit only architecture, was simply too limited for Dolphin to ever obtain fullspeed in 99% of Dolphin's catalog. Just like why we removed our 32-bit x86 JIT, ARMv7's 32-bit nature required all manner of crazy workarounds and prevented countless optimizations. It just couldn't be improved any further.

So, the question remains: why did Nvidia go with 32-bit Android TV on the Shield dongle? We reached out to the company with that very question, and the answer is perhaps unsurprising — Nvidia wanted a more economical price:

For an app to be Android TV-compliant, it must support 32-bit. As a result, SHIELD TV supports all Android TV apps. By moving SHIELD TV to 32-bit we were able to bring it to a lower price point without impacting the user experience for the vast majority of our users.

SHIELD TV Pro continues to support 64-bit for enthusiast users who want to sideload the rare instances when an app is 64-bit-only. Both models support all Android TV apps, Dolby Vision, Dolby Atmos and our new AI Upscaling feature.

It's important to keep in mind that 64-bit operating systems generally perform worse on systems with under 3-4GB of RAM than the 32-bit equivalents, even with identical CPUs. By going with 32-bit Android TV, Nvidia could stretch 2GB of RAM even further than it could with 64-bit Android TV, improving the overall experience.

It's worth noting that Nvidia is not the only manufacturer that has done this. Several Motorola phones in the past have used 32-bit Android to reduce memory usage, like the Moto G6. Amazon has done the same with some of its Fire tablets.

Some of the panic around this issue has come from the 32-bit exodus that has been going on for the past few years. Apple recently dropped support for all 32-bit software across both Mac and iPhone, and many Linux-based operating systems are moving away from 32-bit. However, Google has shown no interest in doing the same with Android — developers aren't even required to create 64-bit binaries yet.

In summary, you probably don't have to stress about the 32-bit OS on the Shield TV dongle. While you will miss out on the older catalog of Shield games, and one emulator, just about every single other Android TV app and game will work just fine.

  • Thanks:
  • Stephen Salter