[ROM][UNOFFICIAL] switchroot Android 10

bylaws

Senior Member
Dec 28, 2018
57
137
43
Introduction
A new, updated version of Android for the Nintendo Switch. Now based off of Android 10 (Q) (LineageOS 17.1 with Shield TV trees) it's faster, more responsive and has many new features over the previous release, including deep sleep and an Android TV build.

Features
  • Android 10 based on Lineage 17.1
  • Significantly improved UI smoothness compared to Oreo.
  • OTA updates (bugfixes and new features without a reinstall).
  • Deep sleep that can last for weeks compared to hours in the previous version.
  • Full Joy-Con and Pro Controller support with analog sticks and rails.
  • Hori Joy-Con support.
  • Uses Joy-Con HOS Bluetooth paring data.
  • Both Android TV and Android Tablet builds.
  • Reworked fan profiles for quieter operation.
  • Optimized dock support with resolution scaling.
  • OTG support including DisplayPort or HDMI output (no power supply necessary).
  • 3rd party dock/hub support including DisplayPort or HDMI output.
  • Rewritten charging driver to properly support USB-PD.
  • Optimized touch screen driver.
  • Easier install via hekate partition tool.
  • Reworked, simpler, power profiles.
  • Much improved WiFi driver with less dropouts.
  • Shield TV remote app support for easy docked control.
  • Reboot to payload support.
  • Improved Bluetooth accessory support.
  • Auto rotation support.

Known Bugs:
  • Shield games are broken, DO NOT BUY THEM.
  • Joycons do not turn off in sleep automatically, make sure to turn them off by tapping the 'sync' button on side.
  • Default keyboard can't be used with a controller.
  • Some apps don't like the Joy-Con D-Pad.

Downloads
Hekate - Extract zip to root of SD Card.
ROM zip - choose one of these and extract to root of SD Card using 7-zip, not the built in windows extractor:
Tablet - Works best undocked and has the full Android app library.​
Android TV - Provides a great docked and undocked experience for media but may not support all apps and games.​

Flashable Zips, don't extract but instead install in TWRP:
Gapps - Use arm64 pico for tablet and arm64 tvmini for Android TV.
Alarm Disable Zip - disables alarms and notifications in sleep in order to dramatically improve sleep time and avoid some SoDs.
Xbox Joycon Layout Zip - Swaps a/b and x/y to match an xbox controller.​


Installing
What you will need:
  • An RCM exploitable Switch console. Check here to see if your device is exploitable. If you have a newer device an exploit may be possible on older firmwares, but if you haven't already set it up you probably updated to a too new version already. Read more here. (for non-RCM exploitable devices)
  • A jig or other method of triggering RCM. Here's a few methods. Premade jigs can be found online.
  • A computer.
  • A good USB-C cable that can connect to your PC and Switch.
  • A high quality, high speed microSD card of at least 16GB.
  • A way to read microSD cards on your PC.
Steps:
  1. Be aware that if you have any previous Android Oreo installs on your SD card your old Android data will be wiped, so back it up. This cannot be avoided!
  2. If you have an existing Q install make sure it was created with hekate v5.5.3 or newer, anything else will have broken OTAs due to a missing MSC partition.
  3. Ensure your SD Card is FAT32 formatted, this guide will not work with EXFAT SD cards.
  4. Grab the files you want from the Download section and place on your SD. Extract only the hekate zip and the ROM zip once, use 7-zip, not the built in windows extractor.
  5. Overwrite any existing existing files and keep any flashable zips compressed.
  6. Boot into the normal switch firmware with your joycons docked to the console, this will pair them.
  7. Now boot your switch into hekate, dock your Joy-Cons and select the 'Nyx Options' menu then select 'Dump Joy-Con BT' in the top right.
    nyx20890123_202109.png

    nyx20890123_204917.png
  8. Ensure the message looks as follows, if not then re-pair Joy-Cons in normal FW.
    3.png
  9. Now return to the hekate main menu and select 'Tools' then 'Partition SD Card' in the top right.
    nyx20890123_204922.png

    nyx20890123_204928.png
  10. Drag the Android slider to assign the amount of space you want for Android, the HOS slider shows how much space the normal Switch OS can use.
  11. Now press next step, follow the instructions, if requested, backup your files with UMS to your PC and restore them afterwards with the UMS option.
  12. Select the 'Flash Android' option and follow the steps, then press continue to reboot to recovery.
  13. If you miss the opportunity to reboot to recovery go to 'More Configs' and select 'switchroot Android 10' while holding volume up, keep holding till the TWRP logo shows.
  14. Once you're in TWRP swipe the bar to allow modifications and press 'Install'.
  15. Press 'Select Storage' in the bottom right and choose 'Micro SD Card'
  16. First install the Lineage zip, ignore any errors that come up, they are expected.
  17. Then install any other zips you want to install, do not install zips meant for O, they will not work!
  18. After you're done installing zips, press reboot to system in TWRP.
  19. Enjoy your new Android install! To launch it in the future use the 'More Configs' -> 'switchroot Android 10' option in hekate.
  20. If setup gets stuck on voice detection go back to the wifi config page in the setup and select "Skip for now"
  21. Checkout the Tips & Tricks section below for some things to do.
Updating:
  • Updates will be pushed through OTAs and you will get a notification when they are available - just install through there. Your data will be unharmed.
Changelog:
OTA 12/02/2021:
  • Fixes deep sleep crashes on most devices.
  • Fixes BT audio lag and stutter in most apps.
  • Fixes bluetooth crash issues that affected some devices.
  • Fixes joycon LEDs not being turned off when docked.
Tips & Tricks:
  • To enable Performance Mode and change resolution go to Settings -> Scroll Down -> System -> Scroll Down -> Display and Performance configuration.
  • If you don't need notifications or alarms you should grab the alarm disable zip in downloads, it increases sleep time by several orders of magnitude.
  • The Nvidia Shield TV app is a must have for docked usage, allowing keyboard and mouse control from a phone.
  • If you don't set a password the switch will auto-unlock after being docked.
  • The capture button on the Joy-Cons is mapped to Play/Pause media.
  • You can enable desktop mode to have a slightly better docked experience by going to Developer Options and scrolling down to 'Force Desktop Mode' enable that and reboot.
  • To see battery percentage on ATV follow this guide.
  • If you want to use a controller to type on tablet then install this keyboard.
  • To run tablet apps on ATV use this launcher.
  • For root the latest magisk can be flashed in TWRP
  • To transfer files to Android you can use MTP over USB.


Stay in touch
Discord: https://discord.gg/9d66FYg
Twitter: https://twitter.com/switchroot_org
Website: https://switchroot.org/

Sources
https://gitlab.com/switchroot/android
https://gitlab.com/switchroot
See manifest repo for build instructions.

Credits
Ave - Handling hosting of OTAs and the switchroot website. Check out her patreon!
CTCaer - Fixing a lot of things in the kernel - charging, dock, touch etc - and adding Android install support for nyx. Donate to his patreon here!
Langerhans - Figuring out the majority of stuff for deep sleep and helping massively with initial bringup.
Steel01 - Maintaining the Shield TV Lineage trees which ours are heavily based on.
Nvidia + Nintendo - ❤
Everyone else who contributed!
 

Attachments

Last edited:

SirGarmaples

Senior Member
Nov 28, 2016
465
163
53
You guys have made my Switch a ton more useful, thanks for all the work you guys put in! ★\(^▽^ )♪
Android 10 and Deep Sleep are great to have! Haven't tested the build yet since I won't be free until tomorrow but I'm looking forward to it!
 
Last edited:

Fukurou83

New member
Feb 6, 2021
2
0
11
Hello! I'm trying to install it but I'm stuck on google voice assistant.
If I tap on "No thanks" it brings me a page back everytime.
 

hippy dave

Senior Member
Jun 13, 2013
101
37
48
Very exciting day, big thanks to everyone who worked so hard on this! I loved playing with the original Android release, but decided to wait for a version with the kinks worked out, looking forward to diving back in!
 

rac08241988

New member
Feb 6, 2021
3
0
11
I can't get my switch to boot into twrp. I used balina to put previous version in but would rather use twrp for familiarities. Is there a guide to installing twrp?
 

sashka69

New member
Jul 24, 2008
4
4
23
Hi there. I'm glad to see it is official now. Can I do a dirty flash via twrp? I have a SD card setup from an unofficial selfmade build from October. Thank you.
 
  • Like
Reactions: philliyxx

bylaws

Senior Member
Dec 28, 2018
57
137
43
I can't get my switch to boot into twrp. I used balina to put previous version in but would rather use twrp for familiarities. Is there a guide to installing twrp?
Just follow the guide in post
Hi there. I'm glad to see it is official now. Can I do a dirty flash via twrp? I have a SD card setup from an unofficial selfmade build from October. Thank you.
Dirty flash wont work, you need to wipe and repartition in hekate
 

rac08241988

New member
Feb 6, 2021
3
0
11
Dirty flash wont work, you need to wipe and repartition in hekate
I did. I unzipped hikati and rom. Just moved everything else. Sd card is class 1 64 gb formatted into fat 32 followed instructions within hikati. First time I tried it said flash successful but wouldn't boot into twrp. Now it just says flashable files not found. Imma start over from scratch see if I can get it. Must be something I missed. I'll see.
 

SirGarmaples

Senior Member
Nov 28, 2016
465
163
53
Hello! I'm trying to install it but I'm stuck on google voice assistant.
If I tap on "No thanks" it brings me a page back everytime.
The Installation Guide's 20th step is "If setup gets stuck on voice detection go back to the wifi config page in the setup and select "Skip for now"".
This should solve your issue!
 
Last edited:

bylaws

Senior Member
Dec 28, 2018
57
137
43
I did. I unzipped hikati and rom. Just moved everything else. Sd card is class 1 64 gb formatted into fat 32 followed instructions within hikati. First time I tried it said flash successful but wouldn't boot into twrp. Now it just says flashable files not found. Imma start over from scratch see if I can get it. Must be something I missed. I'll see.
try redownloading, we updated the zips
 

rac08241988

New member
Feb 6, 2021
3
0
11
try redownloading, we updated the zips
I got it. I don't know what happened but it worked the second time I did it. Sorry for wasting people's time lol I like the improvements alot. So glad lockscreen and battery charging indicator is working properly now.
 

TarikVaineTree

Senior Member
Dec 7, 2012
90
15
38
I'm simply amazed. Thank u so much for all the months of hard work @ANyOne involved!

I've got two questions:
1. If I go for the non-Android TV image, can I control the Switch in the dock with the Joy-Cons wirelessly?
2. If going for the Android TV image, would it support the Google Cast protocoll receiver-sided (meaning I could cast to it)?

Edit: Please let me add a third question:
3. Can Android access the FAT32 partition I'm using in Horizon?
Aka can I continue my SNES savegames in Android's RetroArch by pointing it's directory settings to the same folder on the FAT32 partition I'm using in Horizon's RetroArch for the savegames?
 
Last edited: