Tutorial  Updated

Yet another Android 8.1 LineageOS tutorial - How to get Android on the Switch!

PicsArt_07-28-10.18.53.jpg
Running Android on the Switch has always been a demand by many fans and enthusiasts of the switch homebrew scene. The Nintendo Switch, being a "tablet-like" device, creates a suitable environment for running Android on it. Moreover, with the switch having a custom NVIDIA X1 chipset porting Android to it made the whole process a lot simpler.
Thanks to the hard work and effort put by the Switchroot team, we now have the chance to run Android on our Switches, so for those who yearned for it for so long rejoice, for the wait is over!
With that being said though, do keep in mind that this is an early release, hence bugs,crashes and slowdowns are to be expected.
In case you didn't know, LineageOS is a continuation of the old, well-known CyanogenMod's legacy (that got discontinued back in 2016), which means it comes out of the box with many nifty features usually not found in stock Android, thus allowing to customize and adjust your system to your very own preferences and liking.
This guide aims to provide a comprehensive and understandable how-to to the reader seeking help, should they stumble into any possible difficulties setting up android. In addition to that I am hoping to keep all Android-related issues and inquiries to this thread, helping reduce the number of questions posted by users on here. Note that this tutorial will only cover the initial Android installation and setup. For help with rooting/modding etc consult other guides.
Here's a full list of features as shown in the original XDA thread.
XDA Thread said:
  • 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
Without further ado, let's get started!

General Warning
As per usual, proceed with caution. By running unsigned code, modifying your console and doing other things of this manner, you run the risk of damaging/bricking your system.Never rush into doing something you aren't sure of, and don't hesitate to ask for help. However, no GBAtemp member or affiliate of the Switchroot team will be held liable and responsive for any damages that might occur along the process, you take full responsibility for your actions. Feel free to ask but, be civil and DO NOT backlash at others.


Prerequisites

  • A Nintendo Switch assuming it's an early iteration non-patched unit (see here, or refer to this guide.)
  • The required LineageOS image file. (either the 16GB, the 32GB .,64GB or the 128GB image file) choose the one that corresponds to your SD card's file size capacity.
  • A reliable and working SD card of a minimum capacity of at least 16GB, though 32 GB and more are preferable(use H2testw to confirm whether your SD card is legit or not.)
  • The additional Shield-ifier file
  • balenaEtcher--what we will be using to flash the image file onto our SD cards. Get it from this link
  • A SD card adapter if youre not using a laptop/your computer doesn't come with one by default and/or if it's broken.
  • An USB C to A cable( for pushing the payloads from your PC)
  • Hekate 5.0.1 and latter - Get Hekate from here (what will be used to boot up Android)
  • The Switch dock (optional, only needed if you wish to connect it to your TV)
  • TegraRCMGUI, get the portable or the .msi installer, whichever best suits your needs. Additionally any other means of injecting payloads can be used.
  • The OpenGApps files which can be downloaded here

Setting up and preparing the SD card


etcher.png
First and foremost i would recommend you to backup any data you might be storing in your SD card, as this process will wipe out any data that may be present on it. Furthermore i strongly advise not to use a SD card that you've currently set up emuNAND on, (especially the partition type of emuNAND), as i reckon this might mess up the partition.
Whether this can be dual booted with linux or emummc i don't know either sadly, so use a spare SD card that you might have lying around somewhere.
Download balenaEtcher from from the link given in the link above.
Click on the installable and follow the on-screen instructions and let the app finish installing. Once Etcher is done installing, launch it, click on the big blue 'Select Image" button and browse to where you have put your downloaded image file. Like the official XDA thread suggests, you might use an image file smaller than your card's size (ie using a 32GB image on a 64GB SD card) resulting in a larger free storage space capacity thereof. Likewise, extracting the image out of the archive is not a necessity as Etcher handles compressed .imgs just fine (so the XDA thread implies).
Once you've chosen your desired image file, Select the drive you wish to flash the image to (if it's not chosen by default) and then click Flash
Now, wait and be patient. It might take approximately from 30 minutes up to an hour and a half depending on your SD card's write spped, though it's not always subject to that, as many other factors may come into play that would result in a slowdown such as: overall state of the PC, if it's an old potato PC etc.

Regardless wait, and let Etcher do it's thing on the flashing/verifying part. Note that you should have backed up everything like i aforementioned because this process overwrites data, deleting anything in the process.
After Etcher finishes with the flashing, youll see two new partitions on your SD card. If Windows prompts you to format any of them DO NOT do that.

Before proceeding onward to the next step make sure you've already got up and running TegraRCM (or any other tool you use to inject payloads onto your switch) the Nintendo Switch USB driver and their other respective dependencies.
If you don't know how to access RCM there's many guides out there such as this FAQ



Installing GApps & dependencies and finalizing setup

partitions.png
Just as i mentioned above, now there will be two partitions on your SD card. The FAT one and the RAW drive.
For a full android experience you shoud get the OpenGApps files that we will be flashing to our system. Select the ARM64 uner Platorm, the Android 8.1 version (as that's on what this android rom is based on) and under the variant select it to your liking, whether you want the full GApps package or just some of the apps.
While the switch can run without these, would you want a barebones minimal android experience?
On a side note, YouTube and Google Play store won't function without those.
Additionally download the shield-ifier.zip file. That makes it possible for your switch to be detected as a NVIDIA Shield, how awesome right?
Once everything downloads, copy them over to your SD's FAT partiton. Everything should be put like this:
files.png
Safely eject your SD card, take it out of your computer and put it back into the Switch.
Use your USB C to A cable to connect your switch to the PC, but make sure it's already put on RCM mode.
Next fire up TegraRCM GUI (or whatever tool you use inject payloads into your Switch and push the Hekate 5.0.1 payload.
You'll be greeted by hekate's fancy new UI and you should tap on "More Configs" afterwards.
Then tap on the "Switchroot Android" logo.
20190728_204205.jpg
During the initial phase of the LineageOS android installation the VOL+ button must be held until the TWRP menu pops up!
Otherwise Android will not be installed as it should, hence resulting in many problems.
Upon booting up the TWRP recovery menu, you'll be prompted to allow writing to the system partition or keeping it as a read-only.
Tick the Never show this again box and swipe to the right to unlock system write premission.
Once that gets taken care of, click on "Mount" then tick the following "System" and "SD Card". By doing so it ensures that our GApps and shield-fier zip packages get installed as they should. While still there also select the external storage as the install location.
Next click on the "Install" button. Browse to where you have placed your files and install the GApps first.
Once it's done installing, wipe cache/dalvik and then head back to the main menu and then install the additional shieldifier.zip file,then do the wipe cache/dalvik as per usual.
On a last note. If TWRP prompts you to install their app do so by swiping right. With that said though, sometimes that app causes the switch to hang on a blackscreen endlessly so better avoid it altogether
After all of those installed files are taken care of now you shouldn't boot android quite yet.
Power your console down and connect it to your PC again, in order to inject the hekate payload once more.
After hekate boots, tap on more configs>Switchroot Android.
Unlike before this time around you don't need to hold the Volume + key any longer.
During the initial first time boot, it should take about 10 minutes or more as the android is being configured. Subsequental boots shouldn't take that long, so don't worry.


20190728_151354.jpg
And well guys, that concludes everything. If you followed the steps above you should have android running on your switch by now.
Do keep in mind that it's still a beta and many bugs and hiccups are prevalent. Not everything should work as it should.
For instance, i had this particular issue with the on-screen keyboard. It kept acting up in an odd manner, not responding to input or being over being over sensitive.
Refer to the FAQ and known bugs below:


FAQ and Known Bugs:

Official XDA thread said:
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.


Known bugs:
Official XDA thread said:


    • 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 ;)

Additional Information

Code:
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

Updates/Addons

Official XDA thread said:
Make sure to flash that in TWRP.
Like the guys officially stated updates will be handed out as zip files, to be flashed via TWRP, and i will be updating and maintaining the guide accordingly.
If you happen to find any bug, report them at their Official XDA thread.
 
Last edited by NoNAND,

Akumara

Well-Known Member
Member
Joined
Mar 13, 2018
Messages
202
Trophies
0
Age
34
XP
926
Country
Australia
I dont get why there are larger image sizes?

Since we can use the smaller image size and have the rest as free space...what reason would anyone have to use the larger image size??
 

tabzer

This place is a meme.
Member
Joined
Feb 15, 2019
Messages
5,844
Trophies
1
Age
39
XP
4,910
Country
Japan
I dont get why there are larger image sizes?

Since we can use the smaller image size and have the rest as free space...what reason would anyone have to use the larger image size??

Because many user here don't know how to use linux or gparted to expand their userdata partition after flashing.
 

Akumara

Well-Known Member
Member
Joined
Mar 13, 2018
Messages
202
Trophies
0
Age
34
XP
926
Country
Australia
Once that gets taken care of, click on "Mount" then tick the following "System" and "SD Card". By doing so it ensures that our GApps and shield-fier zip packages get installed as they should. While still there also select the external storage as the install location.

This part is so confusing......ive tried so many ways to do this but i keep getting insufficient storage space error while trying to install Gapps package.

We go to mount and make sure "System, Micro SD card and Data" are checked, right?
I think you meant to select ïnternal storage because there is no external storage option...

Can you please remake this guide with clearer instructions?
Heck once i get this done, i might make my own tutorial.
Thanks for your efforts though
 

NoNAND

Give me back my legions!
OP
Member
Joined
Aug 22, 2015
Messages
2,274
Trophies
1
Location
Somewhere
XP
5,064
Country
Albania
So is this a permanent installation?
Or can I easily switch from ReiNX to LineageOS for example, if I use two separate SD cards?
It runs off the SD card not touching anything on the switches internal storage/NAND
Use a spare SD card that you may have because this will wipe and delete everything off your SD card

Really useful guide, thanks for writing it.
I'm glad i could be of service to you :)
 
  • Like
Reactions: Deleted User

NoNAND

Give me back my legions!
OP
Member
Joined
Aug 22, 2015
Messages
2,274
Trophies
1
Location
Somewhere
XP
5,064
Country
Albania
when i dock mine it looks fuckin awful. screen stretched out all weird and suuuper fuzzy. does anyone know any solutions to this? :O
For now at best would be to undock and redock it. That's what the official thread suggests to do.
it's nothing wrong with your switch but rather with the android build.
Hopefully a future update will resolve this.
 
  • Like
Reactions: Deleted User

evanequilibrium

New Member
Newbie
Joined
Aug 10, 2019
Messages
3
Trophies
0
Age
31
XP
52
Country
United States
For now at best would be to undock and redock it. That's what the official thread suggests to do.
it's nothing wrong with your switch but rather with the android build.
Hopefully a future update will resolve this.
yeah thats what i was kinda scared of, but im really surprised that ive seen absolutely noone mention it. does it not happen to other people?
 
  • Like
Reactions: NoNAND

NoNAND

Give me back my legions!
OP
Member
Joined
Aug 22, 2015
Messages
2,274
Trophies
1
Location
Somewhere
XP
5,064
Country
Albania
yeah thats what i was kinda scared of, but im really surprised that ive seen absolutely noone mention it. does it not happen to other people?
I can confirm it does.
Least said for myself. Had that happen on a consistent basis which annoys the heck of me.
But there's no point in using it docked unless you've got a Bluetooth keyboard that also have a touchpad. Otherwise you won't navigate through things.
But there should be something else, having said that.
 
  • Like
Reactions: Deleted User

evanequilibrium

New Member
Newbie
Joined
Aug 10, 2019
Messages
3
Trophies
0
Age
31
XP
52
Country
United States
I can confirm it does.
Least said for myself. Had that happen on a consistent basis which annoys the heck of me.
But there's no point in using it docked unless you've got a Bluetooth keyboard that also have a touchpad. Otherwise you won't navigate through things.
But there should be something else, having said that.
i totally use all my controllers on it through bluetooth juuuust fine. it does the steam link thing flawlessly too. i really hope someone figures out a fix for it soon :O

--------------------- MERGED ---------------------------

i totally use all my controllers on it through bluetooth without issues navigating or clicking stuff. it does the steam link thing flawlessly too. i really hope someone figures out a fix for it soon :O
 
  • Like
Reactions: NoNAND

NoNAND

Give me back my legions!
OP
Member
Joined
Aug 22, 2015
Messages
2,274
Trophies
1
Location
Somewhere
XP
5,064
Country
Albania
Can it be installed on the same micro SD as lakka?
I'm not that sure, I believe you could dual boot with Linux but I don't know about lakka.
Can I use Win32DiskImager instead of balenaEtcher?
Go head give it a try.I sadly can't give support if anything goes wrong
My WiFi keeps disconnecting and reconnecting a lot does anyone have a fix for this?
For now your only option is rebooting.
I'm sorry but it's a bug and here's hoping the next update will fix it.
 
  • Like
Reactions: Deleted User

NoNAND

Give me back my legions!
OP
Member
Joined
Aug 22, 2015
Messages
2,274
Trophies
1
Location
Somewhere
XP
5,064
Country
Albania
Ive bootet successfully into android, but my joycons dont work. How can I enable them?
enable Bluetooth then sync them up with the console.
Press the sync button on each of the joycons and they ought to show up on your available Bluetooth devices list. tap on it to pair them.
On a last note: if you do wish to play with them docked Bluetooth must be kept on as it won't support then docked the regular way like in horizon
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    Psionic Roshambo @ Psionic Roshambo: https://youtu.be/3eGAHfC5P-Y?si=Fo3iEl1pZ4D_O6dp +1