Lineage Android OS for the Jetson TX2 and TX2 NX

I’ve merged several fixes to the 20 branch for quill. Somehow I had broken the inline bootloader update build for the standard working tree layout, but it worked for me with parts of the build setup spread across three drives. Just finished a build after a clean breakfast, fresh vendor extract, and one cherry-pick that can’t be merged right now, which I forgot about. That’s been an issue for while, but I haven’t sat down to figure out how to make it mergable.

https://review.lineageos.org/c/LineageOS/android_build/+/357472

Anyone building 20 needs to run repopick 357472 after the envsetup.sh step. There’s a matching change for 19.1 as well, change number 357489.

It looks better now :) . Have to flash it.

There are 2 .zip package files , the same size. Do we need the ota one ?

No, just use the standard named lineage zip.

For more information: they’re the same zip. Many versions ago, the cm/lineage zip used to different from the standard aosp ota zip. But for a few versions now, the lineage zip is just a rename of the aosp one. But for consistency reasons, lineage still generates the lineage naming now.

I’ve flashed the TX2 with 20.0 and all was good until I started playing with different streaming apps (Prime Video, Max, free once like Pluto, Tubi… etc. ) None of those can play any streams normally - the vide\audio is sluggish. KODI is the same. Surprisingly YouTube can play 4K videos without a problem. I don’t think this has anything to do with DRM, most likely encoding problem. It’s not the internet connection either - wired Ethernet tested 300Mbsp- exactly what I pay for.

Even kodi is lagging? That’s weird. But at least that one I can test. My baseline regression testing tends to just hit smarttube in regards to hardware decoding. Seems weird that youtube would be okay, but other stuff wouldn’t, though. Just to verify, is the kodi lag with hardware accelerated decode or with the ffmpeg software fallback? For things like 10 bit h264, there’s no hw decode support, so it has to be software decoded. I’ll try to do a few more performance checks to see if there’s any obvious regressions.

One other thing to check. In a root adb shell (apparently I’ve got perms stuff to fix, since this only works as root atm), run nvpmodel -q. On an original tx2 devkit, it should return mode 2, maxp all core, which means all cores are enabled in ‘max performance’ mode. That’s the mode I default to.

Yes it is :
NV Power Mode: MAXP_CORE_ALL
2
I just installed KODI with default settings and tried to stream a local library I have. Some of the movies played fine but some didn’t - I think because of different file formats. I’ve also tried using Jellyfin - same problem. Jellyfin works perfectly on any other devices -especially on the older build TX2 -17.1

Mmm, I can’t reproduce this. I installed kodi, threw my profile at it (with sources, db info, etc) and everything I tried played fine. From the simple h264 8-bit stuff using hardware decoding to software decoding on h264 10-bit high-ish bitrate and a bd remux at stupid rates of 6 GB for a 24 minute video. No hiccups at all. Tried 3dmark as well, just to see if 3d rendering was okay and got ~4500 on wildlife, which is within reason.

You mentioned seeing problems on free video apps as well. Can you detail an exact reproduction? Like ‘install this app’, then ‘play this video’. I’ll see if I can match the issue. Unfortunately, if I can’t locally reproduce an issue, it’s really hard to fix anything.

one of the apps is Pluto from the Google Play Store also Tubi. Just try to play any channel

It could be a DRM problem. Now in Tubi I’m getting a message “DRM Error. Tubi does not work on rooted device”

The drm the majority of playback apps want is decidedly unavailable. Widevine L3 should work, but to my knowledge, everything on Android TV requires L1 or it just doesn’t work at all. Some mobile playback apps will work with L3 at low resolutions, but none of those work properly with a controller. So if something says it needs drm, it should not work on any of the android versions on these devices. If one does work back on like 17, I would love to know how. The only thing coming to mind is that the app is looser on restrictions on older versions, then requires more on current versions.

I installed Pluto and not seeing any breaking issues. It’s a bit flaky, like I was getting some playback skips while browsing the channel list, but when I was just watching a channel, it was completely smooth. Tried a few channels like cbs texas, something in central florida, then nbc dateline. All were playing fine.

Definitely there is something wrong with my set. I can share my build if you want to test it or is there a way I can flash your image?

Mmm. I can probably put together a build and upload it. I need to tweak a few build options first, though. Like not including my adb keys and such. I might need a couple days to get that together, though. I’ve got a few things in my queue that I’m trying to fix right now.

Edit: It’s my intent to ship quill builds again when foster ships on 20 or 21. So that ‘should’ be coming. But I can’t give any guarantees or timeline on that.

That will be perfect, Thanks.

Here’s the build. Did a quick test sideloading MTG atv minimal and installing pluto tv. It was playing as smoothly as my earlier tests.

This build works a lot better. Thanks

I have now shipped quill and quill_tab on Lineage 20.0. These builds will run later this week, Thursday and Sunday respectively. There are unfortunately some known issues on 20, which is why I didn’t ship the newer versions until 18 hit EOL. ATV is currently broken on Android 14, so Lineage 21 isn’t feasible to ship until that is sorted out.

Known Issues:

  • Aosp Bluetooth auto-pair fails. This includes first boot when gapps are not installed and when pressing the pairing button (power button) on the full size devkit. In those cases, a wired controller or keyboard is required to pair a new bluetooth remote. If gapps are installed, auto-pair during the gapps setup wizard works as expected.
  • In some rare setups, wpa 2/3 mixed mode networks cannot be connected to by the gapps setup wizard. Most notably, this has been observed on openwrt routers. These networks can be connected to fine by the aosp wifi wizard. And skipping network connection is now possible in the recommended gapps package. Afterwards, tvsettings can be used to connect to the network.
  • Frame rate matching in kodi causes the app to hang more often than not. This issue is being looked into slowly by both the Lineage maintainer and some kodi devs, but no solution has been found yet. Other apps that support nvidia’s frame rate matching work as expected, such as smarttubenext.

After flashing the system of Nvidia jetson tx2, the computer screen displays normally, but when connected to the TV, the display is abnormal. How to fix this problem?

I’ve seen this before. Basically, the gpu driver is selecting a colorspace that Lineage does not support. The cases that I’ve looked at, it was because the tv defaults to yuv. And aosp, thus Lineage by derivation, does not support yuv for ui rendering.

Unfortunately as of right now, there’s no way for a user to select a usable colorspace on Lineage. There is a half-written app that works on the tablet build where the resolution and colorspace can be forced, though it is not included in official builds because it’s not done. It is not available for atv at all, because no one has written the UI for that.

Lineage could really use a UI developer for a few tegra specific things like that. UI related things are not my forte, and with no one that does have said experience interested in helping, stuff like this just doesn’t get done.

Thank you very much for your answer. It seems that we can only wait for experts to solve this problem in the future.