• If you are experiencing issues logging in, we moved to a new and more secure software and older account passwords were not able to be migrated. We recommend trying to reset your password, then contacting us if there are issues.
  • Nearly done! Migration cleanup is mostly done. There are a small number of issues left that we continue to work on, but all the heavy lifting is done. We still would love to hear feedback over at this thread and also check out the new XDA app! Thanks and we hope you enjoy the new forums, and thanks for your support of XDA <3

[ROM][UNOFFICIAL][8.1] switchroot LineageOS 15.1

langer hans

Elite Member
Aug 19, 2007
1,336
4,484
0
Code:
*** Disclaimer

Don't break your stuff, okay? // TODO write better disclaimer
Introduction

LineageOS 15.1 for Nintendo Switch by switchroot. This is the first publicly available Android ROM for the Nintendo Switch. Based on the Nvidia Shield TV builds it brings a smooth and powerful Android experience to your Switch in both handheld and docked mode.
Images

As previously shown:



Features

  • LineageOS 15.1 - Android 8.1 Oreo
  • Based on the Nvidia Shield TV trees
  • TWRP pre-installed
  • CPU and GPU performance profiles
  • Works in handheld and docked mode
  • Audio is supported
  • Joycons connect via Bluetooth, also in handheld mode
  • Reboot to Payload (NEW!). Rebooting will reboot to android and reboot to boodloader will boot hekate.
Known bugs:
  • Deep sleep, so battery life is not great
  • Auto rotation as we haven't figured out how to talk to the sensor yet
  • Screen off in dock
  • Charging is not detected, but console still charges
  • Some apps don't handle joycon inputs correctly
  • The touchscreen sometimes detects touches even when your finger is just floating over the screen
  • There is a system process ANR on boot. Just click „Wait“ and it won’t happen again until next boot
  • Screenshots do not work
  • WiFi may randomly stop working. If this happens just reboot
  • If TV looks odd and grainy when docking then redock a few times.
  • No TV keyboard that can be used with gamepad
  • SELinux is disabled
  • You can’t access the FAT32 partition of the SD card on macOS. Windows and Linux works.
  • You tell us ;)
Installation instructions

  1. Pick the image that corresponds to the size of your SD card. You can use an image that is smaller than your card. You’ll end up with the remaining space unused on your card.
  2. Write the image to your SD card with e.g. balenaEtcher Do not extract the image, Etcher can handle the compressed image just fine! WARNING: This will overwrite any contents on your card! The progress bar/percentage might go haywire in Etcher, but you can ignore that. The flashing will still work and Etcher will let you know when it’s done. It can take up to an hour depending on your SD card’s speed. Also make sure not to format any of the partitions when Windows prompts you to after flashing.
  3. Download GApps for Android 8.1. from OpenGApps, use ARM64 NANO. Put the file on the first partition of your new SD card
  4. If desired download the "Shield-ifier" zip and place it also on the SD card. This will make your Switch identify as Nvidia Shield TV and install the Nvidia app.
  5. Load hekate and boot to TWRP by holding VOL+ when you select the Android config.
  6. Make sure to mount /system and /vendor first in TWRP. Flash GApps zip, reboot2payload zip and optionally flash other zips. Also after installing GApps wipe cache/dalvik as offered by TWRP. Video that shows how to access and flash zips in TWRP: https://youtu.be/3F6WgAb44yk
  7. Reboot to hekate and boot into Android
  8. Complete the inital setup, but DO NOT connect to wifi, do that after set-up has completed. For the Nvidia app to work make sure to update it from Play Store!
Changelog

Code:
Initial release: 2019-07-27
Previous changelogs

Code:
// TODO make more releases
Downloads

16GB image: Direct | Torrent
32GB image: Direct | Torrent
64GB image: Direct | Torrent
128GB image: Direct | Torrent
Shield-ifier: Direct | Torrent
Reboot2payload update: Direct
Addons / Extras

  • Joycon Fix: Enables L3/R3 and reports the sticks as analog, which should fix games like GTA: fix-joycon.zip
FAQ

Q: How to switch performance profiles?
A: Go to Settings -> Battery -> Power Profiles. The options are Balanced = 1 GHz CPU / 468 MHz GPU, Quick = 1.4 GHz CPU / 768 MHz GPU and Performance = 1.7 GHz CPU / 920 MHz GPU. Keep in mind that the high performance profiles use MUCH more battery.

Q: How will updates be done?
A: For updates, flashable zips will be released.

Q: Can we use TV mode?
A: Use HAL launcher from the Play Store to run apps in TV mode.

Q: Nvidia GameStream doesn’t perform well, what to do?
A: Try using Moonlight instead.

Q: Does Magisk work?
A: Yes, just flash it in TWRP

Q: I get an error about „invalid architecture“ when trying to flash GApps
A: Make sure you mounted System in TWRP

Q: Does this work on any Switch?
A: You will need to be able to boot into hekate. If you can do that, your Switch is compatible.
Sources

https://gitlab.com/switchroot/android
https://gitlab.com/switchroot
Instructions for building will come, for the moment ask in discord
Thanks To/Credits

  • The LineageOS Tegra devs, especially @Steel01
  • Our testers
  • Everyone who contributed
Stay in touch

XDA:DevDB Information
switchroot LineageOS 15.1, ROM for the Nintendo Switch

Contributors
langer hans, bylaws
Source Code: https://gitlab.com/switchroot

ROM OS Version: 8.x Oreo
ROM Kernel: Linux 4.x

Version Information
Status: Beta
Current Beta Version: 1.0
Beta Release Date: 2019-07-27

Created 2019-07-24
Last Updated 2020-10-05
 

langer hans

Elite Member
Aug 19, 2007
1,336
4,484
0
Reserved

SHA1 sums of the images:
Code:
63c02149407e31c0620c3a0a2079f57e7d2d6855  android-128gb.img.gz
7615277cf2b383dfe32163746debfe2da8683728  android-16gb.img.gz
890c6cc203862f266caaf77fca4616ebe864eee6  android-32gb.img.gz
d5439008ecdb0aa5e9350e6f0848fc0d56578427  android-64gb.img.gz
e90143137a45d5bdecceb708c360742a76532182  shieldifier.zip
 
Last edited:

dision2019

New member
Jul 27, 2019
1
0
0
What do the different sized versions do? What happens if I have a 128gb micro sd card and then choose the 64gb image? Does this create a partition automatically for the android stuff and the rest is usable as normal?
 

Citruspers

Senior Member
Jan 10, 2012
97
20
0
www.westerbeek.biz
We’re working on the server issues. Please some patience :)
Is it possible to get a torrent going that contains all versions (since you can select which files you want in most clients)? I wouldn't mind help seeding it for a while.

Also, MD5/SHA hashes for the files would be great, both for checking download integrity as well as making sure any mirrored files are genuine.
 
Last edited:
  • Like
Reactions: kekistaneerefugee

langer hans

Elite Member
Aug 19, 2007
1,336
4,484
0
Is it possible to get a torrent going that contains all versions (since you can select which files you want in most clients)? I wouldn't mind help seeding it for a while.

Also, MD5/SHA hashes for the files would be great, both for checking integrity as well as making sure any mirrored files are genuine.
I have added the sha1sums to the second post. Official torrents will follow.
 

PurpleMadness

Member
Nov 30, 2011
18
0
0
Temporary mirror for the 64gb version: removed


edit: the file seems to be corrupt/has a different sha1 hash. I'll reupload when I get the correct one.
 
Last edited:

langer hans

Elite Member
Aug 19, 2007
1,336
4,484
0
If you download an image from anywhere but the links provided in the OP, for the love of god, check the shasums in the second post. Running anything unverified on your Switch can lead to unrecoverable bricks!
Not saying people here would be this malicious, but it’s good practice regardless ;)
 

langer hans

Elite Member
Aug 19, 2007
1,336
4,484
0
Can we put CFW files in the fat32 partition and have Atmosphere and Android in the same SD card the same way we did with L4T?
Yes if it’s just Atmosphere sure. The fat32 partition is 2GB so anything that fits on that is okay. So CFW and some homebrew works. But anything past that would probably be too large.
 
  • Like
Reactions: Neo_123