[Nexus 9 Android Development] retiredtab:
BEFORE YOU decide to try this rom, please read all of post 1, 2 and 3.

I am not responsible for lost data, identity theft, lost money, security vulnerabilities, bricked devices or any other hardware or software malfunctions that comes as a result of flashing this ROM.

BACKUP YOUR DATA AND OLD ROM BEFORE trying this rom.

What works

I only test what I use. There could be other things that work or don't work. Let me be clear since there are people who don't seem to understand this. I cannot test things that I don't have like paid streaming/gaming, NFC, miracast or apps that I don't use. They may work or they may not work.

If you want to know if something works that's not listed here, then you need to try it for yourself. If that's not an acceptable or reasonable answer, then stop reading and find another rom that meets your requirements. I built this rom for myself to use and thought that some in the community might benefit by sharing it. If this rom doesn't meet your requirements, then delete it and use whatever does.

1. audio over bluetooth

2. wifi

3. brightness

4. external audio

5. GPS - a bit slow to get a fix/lock

6. audio through headphone jack

7. camera

What doesn't work

1. screen recorder. The current sepolicy doesn't allow screen recorder to work. While adding code to allow sepolicy to work

#============= mediacodec ==============
allow mediacodec camera_device:chr_file { ioctl open read write };

The omx@1.0-service crashes. A mp4 file is created, but it doesn't seem to be in the correct format? Possibly related to ??

https://review.lineageos.org/c/LineageOS/android_device_htc_flounder/+/210609

FAQ

Q1) Does the build work on Nexus 9 LTE?

A1) I have no idea. I only have the Nexus 9 wifi so I don't know if it will work on LTE. If you have the LTE, you can build your own LTE rom. If you try the wifi build on the LTE, you may end up with a bricked device. Questions regarding LTE will go unanswered.

Q2) Application xyz doesnt' work. Can you fix it?

A2) I only fix what I use. If you use app xyz and it doesn't work, then try 14.1 or going back to the last rom that worked for you. In addition, some of the code is not open source and in proprietary blob format so it's not possible to make changes.

Q3) My tablet hangs or crashes with 15.1. This build is slow and buggy. Can you fix it?

A3) Go back to the last working stable rom for you. 15.1 is a work in progress and will have bugs and frequent changes. In addition, some of the code is not open source and in proprietary blob format so it's not possible to make changes.

Q4) Do you plan to update the rom?

A4) Yes as long as I have high speed Internet, I wil try to release the rom monthly to incorporate the security patches.

Q5) What TWRP should I use?

A6) TWRP 3.3.1 or higher. Get it from

Download TWRP for flounder

Download TWRP Open Recovery for flounder

dl.twrp.me

Q6) What is the difference between this rom and variants?

A6) Use whatever fits your needs. This is a stock LineageOS build with no modifications. I only offer this as an option for those who want or need a new rom and can't build it themselves.

Q7) Will there be a 16.0, 17.1 or 18.1 build?

A7) I tried building 16.0, but the rom get's stuck at the very begining of the boot process and I haven't investigated too much. Do not ask if there is progress on this. I'm an unpaid volunteer building this on my own time. Any questions regarding ETAs will go unanswered.

I suspect that one or two LineageOS developers have a working 16.0 build, but they are not ready to share their code? The repos have been updated to 16.0 at

LineageOS

A free and open-source operating system for various devices, based on the Android mobile platform. This is a mirror of https://review.lineageos.org/ - LineageOS

github.com

on Nov 4, 2020.

If you are a rom builder or developer and want to help get 16.0 going, please contact me.

Q8) Should I upgrade from stock or 14.1 to 15.1?

A8) It's entirely up to you. If you do upgrade, you will need to backup your data, wipe dalvik/art cache, system, data and internal storage in TWRP. You must also format data in TWRP. You cannot dirty flash from stock or 14.1 to 15.1, it must be a completely clean fresh install.

Q9) Can I build this rom myself? Where can I find the source and/or kernel source code?

A9) This is one of the few roms where it required no edits or changes to make it work. Follow the instructions at

Flounder

Build for flounder | LineageOS Wiki

wiki.lineageos.org

Flounder_lte

Build for flounder_lte | LineageOS Wiki

wiki.lineageos.org

and you will get a working 15.1 image. You will need to apply (hw video patch)

https://review.lineageos.org/268654

The roomservice.xml only consists of 3 repos. The roomservice.xml points to all the source code including the kernel source code. That is,

GitHub - LineageOS/android_kernel_htc_flounder

Contribute to LineageOS/android_kernel_htc_flounder development by creating an account on GitHub.

github.com

GitHub - LineageOS/android_device_htc_flounder

Contribute to LineageOS/android_device_htc_flounder development by creating an account on GitHub.

github.com

GitHub - TheMuppets/proprietary_vendor_htc

Contribute to TheMuppets/proprietary_vendor_htc development by creating an account on GitHub.

github.com

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="LineageOS/android_device_htc_flounder" path="device/htc/flounder" remote="github" revision="lineage-15.1" />
<project name="LineageOS/android_kernel_htc_flounder" path="kernel/htc/flounder" remote="github" revision="lineage-15.1" />
<project name="TheMuppets/proprietary_vendor_htc" path="vendor/htc" remote="github" revision="lineage-15.1" />
</manifest>

I changed the fstab.flounder from forceencrypt to encryptable.

/dev/block/platform/sdhci-tegra.3/by-name/UDA /data f2fs noatime,nosuid,nodev,errors=panic wait,check,latemount,encryptable=/dev/block/platform/sdhci-tegra.3/by-name/MD1
/dev/block/platform/sdhci-tegra.3/by-name/UDA /data ext4 noatime,nosuid,nodev,nomblk_io_submit,errors=panic wait,check,latemount,encryptable=/dev/block/platform/sdhci-tegra.3/by-name/MD1

Normally, monthly builds go smoothly, but every once in a while, the monthly changes break something. This happened with the Nexus 9 for the May 5 security patches. While compiling, it was giving

"SSL error when connecting to the Jack server."

After some dead ends and research, I found

Rebuild android code with error “SSL error when connecting to the Jack server. Try 'jack-diagnose”

System: ubuntu 18.04 environment：VirtualBox The first time I compiled the AOSP source code on Ubuntu 18.04, it passed, and the second time I compiled it failed. Here is an error message. [ 10% 538/...

stackoverflow.com

To fix this, you need to "Remove TLSv1, TLSv1.1 from jdk.tls.disabledAlgorithms in /etc/java-8-openjdk/security/java.security" file.

Q10) Why is my question not answered?

A10) It's likely because it's in the FAQ or it's off topic or you are asking something that I cannot answer for the reasons stated in this FAQ.

Q11) How is this 15.1 build different from the ones already on XDA?

A11) The 15.1 roms built before Nov 4, 2020 didn't include this patch

flounder: Patch libraries that rely on arm libm intrinsics · LineageOS/android_device_htc_flounder@b3e476e

* Force-pick https://review.lineageos.org/268655, build "libm" target, rename "libm.so" to "libw.so", and then: `sed -i 's/libm.so/libw.so/g' libw.so...

github.com

Also, some of the 15.1 roms may not have included the hw video patch. It's not part of the repository and requires the builder to pick and apply that patch manually.

For some, depending on how the device is used, having the hw video patch isn't necessary and will work fine without it.

Q12) Is the video hardware accelerated in 15.1?

A12) Yes. The March 9, 2021 and all future builds include this patch

https://review.lineageos.org/268654

for video hardware acceleration.

Q13) Is encryption enabled by default?

A13) Some people say the Nexus 9 lags over time and supposedly removing encryption improves performance. The Nexus 9 is not a daily driver for me so I don't know, but reading the older 14.1 and 15.1 threads, I decided to change the default behavior starting with the March 13, 2021 build so that encryption is disabled by default.

If you want encryption enabled, goto settings, security and privacy, encryption and credentials, encrypt tablet and follow instructions.

Q14) Can you build a variant like slimrom, crDroid, etc?

A14) No, but you can following the instructions and source code above that has been provided.

Q15) What gapps should I use?

A15) I personally am moving away from all google apps and technology. If you must use gapps, pick the smallest one which is pico ARM64.

Q16) Where can I download this rom?

A16) See

retiredtab - Browse /Nexus 9/15.1 at SourceForge.net

sourceforge.net