Android 10 Switch

From GameBrew
Revision as of 12:36, 1 April 2023 by HydeWing (talk | contribs) (Created page with "{{Infobox Switch Homebrews |title=Android 10 |image=android10switch.png |description=Android 10 on Switch. |author=Switchroot team |lastupdated=2022/04/08 |type=Operating systems |version=20220408 |license=Mixed |download=https://dlhb.gamebrew.org/switchhomebrews/android10switch.7z |website=https://wiki.switchroot.org/en/Android/Build-10 |source=https://gitlab.com/switchroot/android |donation= }} {{#seo: |title=Switch Homebrew Apps (Operating systems) - GameBrew |title_...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Android 10
File:Android10switch.png
General
AuthorSwitchroot team
TypeOperating systems
Version20220408
LicenseMixed
Last Updated2022/04/08
Links
Download
Website
Source

A new version of Android, based on Android 10 (Q) and LineageOS 17.1 with Shield TV trees, has been released for the Nintendo Switch. This updated version offers improved speed and responsiveness compared to the previous release, as well as new features such as 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.
  • RSMouse support for controlling a mouse cursor with your right stick
  • 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.

Android 10/Q Setup Guide

Requirements

  • RCM-exploitable Switch (CHECK HERE FIRST)
  • RCM exploitation method (Usually a jig, but other methods can be found HERE)
  • Computer
  • USB-C cable/USB-C Switch autoinjector
  • High quality SD card >= 16GB
  • microSD card reader for the computer

Prerequisites

  • Nuke any Switchroot Andorid Oreo installations or Pie, Q, or R dev builds before attempting to install this release
  • Ensure SD is formatted as FAT32 or exFAT. It will be formatted automatically as FAT32 during partitioning as it is necessary to boot Android (or L4T Linux)

Steps

1. Download the required files and put hekate on the SD card
a. Download the latest version of the hekate bootloader from HERE (hekate_ctcaer_[version]_Nyx_[version].zip)
b. Unzip the hekate archive to the root of the SD card
c. Download the latest zip HERE of either icosa-tab (standard tablet Android) or icosa-atv (Android TV)

Your SD card should now look like this, assuming it is shared with HOS (Horizon OS/Switch OS):

root
|- bootloader
|  |- ini
|  |  |- ...
|  |- payloads
|  |  |- ...
|  |- res
|  |  |- ...
|  |- sys
|  |  |- ...

2. Prepare Switch, boot into hekate, and dump JoyCon pairing info
a. Boot into HOS and ensure Joy-Cons are paired
b. Insert your SD card into your Switch, slide the RCM jig into the right rail
c. Hook your Switch up to your PC (or other payload injector) via USB-C and power off the console
d. Press Power and VOL + simultaneously to enter RCM mode and inject the hekate payload (hekate_ctcaer_[version].bin) that came with your downloaded hekate zip
NOTE: To keep it simple you can use this in Google Chrome (not compatible with other browsers), check "Upload .bin payload" and select the payload mentioned above, then click "Do the thing!" and select "APX" from the pop-up menu.
e. Once booted into hekate, you can remove the RCM jig, and launch Nyx Options
android10switch-01.png
f. Dump your Joy-Con BT pairing information (with your Joy-Cons railed)
android10switch-02.png
g. Ensure the message is correct, otherwise physically re-connect and re-pair the JoyCons in HOS and try again
android10switch-03.png

3. Partition SD card in hekate
a. Navigate to hekate's partition manager
android10switch-04.png
android10switch-05.png b. Use sliders to select appropriate space for each OS (we recommend at least 16 GB for Android, although it should be usable with ~8GB), then press Next Step
NOTE: this step creates multiple partitions for a somewhat standard AOSP layout -- look HERE for more information if interested

c. You may want backup Nintendo folder or any CFW files if necessary via hekate's SD UMS tool over USB-C or by removing the SD card and reading directly on a PC (hekate/Nyx can pause and reload when SD is removed), but Hekate will offer to backup and restore up to 1 GB of data from your existing file-system.

4.Add ROM zips to SD
a. Plug the Switch into your PC and select "SD UMS"

b. Extract the icosa-tab or icosa-atv zip to the root of the SD card (any major unzipping program should work fine as of 8/16/21)

root
|- bootloader
|  |- ini
|  |  |- ...
|  |- payloads
|  |  |- ...
|  |- res
|  |  |- ...
|  |- sys
|  |  |- ...
|- Nintendo
|  |- ...
|- switchroot
|  |- android
|  |  |- ...
|  |- install
|  |  |- ...
|- lineage-17.1-[date]-UNOFFICIAL-[device]-signed.zip

5. Add other zips and enter recovery
a. If you would like to add Google Play functionality, we follow the recommendations of the LineageOS org on which GApps package to install. For standard tab Android, use MindTheGapps 10.0 for arm64, and for Android TV, use OpenGApps 10.0 tvmini for arm64.
b. If you have any other flashable zips, place them on the root of the SD card
c. Safely remove/eject the SD UMS device from your computer
d. Back on the Switch, select "Flash Android" and accept the prompt to reboot to recovery
e. Swipe right to allow writing to the SD
f. Press Install, then "Select Storage" in recovery and select "Micro SD Card"

g. Install the Lineage zip, followed by your GApps zip and any other zips you may have to install (see Extra Zips), and select Reboot -> System

6. First boot
a. If setup gets stuck on voice detection go back to the Wi-Fi config page and select "Skip for now"

b. Your JoyCons will not auto-pair on first boot--reboot to auto-pair your dumped JoyCons in Android

7. Subsequent boots
a. Boot Switchroot Android from More Configs --> Switchroot Android 10 in hekate
b. Hold VOL + on choosing this option to get back to recovery to flash zips
c. Hold VOL - on choosing this option to get back to hekate without having to reinject a payload

d. Rebooting the Switch will take you back to stock firmware

8. Asking for support/If you get stuck
a. First, get a screenshot of SD Info in hekate--this will allow us to rule out the most common issue first
b. If you are experiencing seemingly unintended behavior while already booted into Android, try and get us a log--find a guide on how to install adb, enable USB debugging in developer options on the Switch, plug into the computer with adb installed, and run adb logcat > switchroot.log. If this seems like too much for you, just get a bug report from developer settings.

c. Submit the screenshot and logs if needed to in our Discord server--the invite link can be found HERE.

Extra Zips

  • GApps--Google Apps packages are used to add Google Play, GMS, and basic Google stock applications to your device. See step 5a for details.
  • JoyCon Xbox Layout--grab the package from HERE to use an Xbox controller-style control scheme
  • Lumince's CPU overclock zips. Grab one of the <FREQUENCY>_OC-April_8th.zip package from HERE to use it
    • WARNING: Leaving your Switch CPU OC'd to higher than recommended speeds for extended periods can decrease your battery's lifespan, and this zip is not recommended for those who are not attempting to maximize performance at the expense of hardware longevity
  • Lumince's custom bootanimation zip. Grab the package from HERE to use it

Updating

Updates are pushed through OTA (over-the-air) updates, just like any standard Android OEM. Use the Updater in Settings to get the latest updates without losing data.

Tips & Tricks

  • To enable Performance Mode and change resolution go to Settings -> Scroll Down -> System -> Scroll Down -> Display and Performance configuration.
  • 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 recovery
  • To transfer files to Android you can use MTP over USB.

Media

How to install android 10 on a switch and play xbox game pass without loosing anything on sd card! - (Alien Retro Gaming)

Screenshots

android10switch-06.pngandroid10switch-07.pngandroid10switch-08.pngandroid10switch-09.png

Known Bugs

  • Shield games are broken, DO NOT BUY THEM.
  • Desktop GL is not supported and some EGL games have issues
  • 5GHz Wi-Fi channels >44 can cause instability--check your router settings if you're having issues connecting to Wi-Fi
  • Hardware overlays are forced off (software compositing only)
  • 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.

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!

External links

Advertising: