• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[ROM][UNOFFICIAL] switchroot Android 10

Search This thread

fjfcb

Senior Member
May 31, 2011
97
37
does connecting a dualshock device sucks for anyone else? here the lag is insane == I think this is not specific to switchroot as I've saw other people saying to have the same with lineage and other OSes.
===
Regarding input lag, I noticed that the display lag is very high when the switch is docked. Steam Link reports 61ms display lag when docked. Undocked it says around 20ms. Can anyone confirm they also have similar display response time on steam link?
 
Last edited:

Sharren Dabs

New member
Sep 21, 2021
1
0
Hi I have an issue with lineage zip installing correctly on twrps. When I go to flash the zip, it stalls 1/2 way into install and crashes. Or just fails all together. I’ve tried endless builds from other people, loads of different tutorials and have had no luck. I’ve been at this for 4 days now.
I have everything correct, fat32 sd card, all the files, everything’s working. It’s just the zip fails to install.
 

fjfcb

Senior Member
May 31, 2011
97
37
Hi I have an issue with lineage zip installing correctly on twrps. When I go to flash the zip, it stalls 1/2 way into install and crashes. Or just fails all together. I’ve tried endless builds from other people, loads of different tutorials and have had no luck. I’ve been at this for 4 days now.
I have everything correct, fat32 sd card, all the files, everything’s working. It’s just the zip fails to install.
Are you allocating enough space for Lineage? Also maybe try with another SD Card.
 

dryfer

Member
Dec 23, 2016
27
1
Edit:
Already installed it and working fine, is there a way to use the joy cons connected to the switch (I mean already on the switch not by bluetooth) as controllers? games I'm trying doesn't detect them as gamepad.

Edit2:
For some reason SELinux is disabled, is this normal?
 
Last edited:

XDM inc

Senior Member
Mar 7, 2011
1,583
352
I am having some issues with my rom. its installed and working but VERY sluggy at times. when i open apps like the browser it hangs for a while until i close the app and i have to try multiple times to get it to launch
 

manuelx98

New member
Jul 22, 2019
1
1
I'm having deep sleep problems with my rom. I have installed the first version and it worked normally, then I installed both the updates via OTA in order and now the deep sleep is broken, whenever I put it in standby it doesn't turn on anymore and I have to restart it. Any suggestions?
 
  • Like
Reactions: smisi

Ginosius

Senior Member
Jul 5, 2011
84
31
I just did some testing.
I flashed the latest release onto two switch consoles.
The regular one, not the ATV one.

They were fresh installs, with no additional zip-files.
So no gapps, alarm disable mod or Magisk.
Just the ROM and nothing else.

Now when the screen goes off (or when you press the power button), it goes into sleep mode or standby or whatever you might call it.

When this happens, one of the two switch models usually locks up.
When I press the power button to try and wake it up, I can see the lockscreen for a brief moment but it remains frozen.

For the other switch model this doesn't happen as often and usually just wakes up fine.

Like I said, there were no additional zip files (such as gapps, Magisk etc) installed.
Just the vanilla ROM.

This behavior was always the same, even for the previous android releases.

That makes me think that it could be related to the sd-card being used, because that's the only thing that differs hardware-wise or it's because there is a difference in the SoC (CPU).

Because Android tries to put the device in its lowest performance state (with a lower voltage) when it goes into standby, to save up battery.
Perhaps the crashing switch model has a more crappy SoC/CPU requiring a little more voltage even in its lowest performance state for it not to be crashing.

So I'm wondering if it would be possible to see the performance states and their voltages and perhaps edit/tweak them a little.

Any thoughts on this?
 
  • Like
Reactions: mahmutpekkara

Statico

New member
Apr 7, 2009
1
0
I'm having an issue with joycons in games I've tried (Bully, Vice City) - analog does appear to be working, but pretty much any direction other than UP is registering as just a slight move. This means I can run forwards in games just fine, but trying to run left/right or down actually results in walking. If I push the stick really hard in one direction it does register as running but I have to push it uncomfortably hard.

Is there any way to adjust these sensitivities, or does anyone else experience the same thing?
 

J-Lindo

Senior Member
Jul 4, 2016
220
104
Moto G5 Plus
On the ATV build, Amazon Prime Video works—signing in, browsing, even watching trailers—but watching a movie throws up an HDMI connection error, whether docked or undocked. Is there a known reason/solution/workaround?
 

pierofb

New member
Nov 9, 2021
1
0
I found a problem when trying to sync the pro controller to Switch with Android. Some buttons do not work on the joystick (such as the L and R buttons). Does anyone know how to fix this?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    Hi, I couldn't get my Switch to register on my docking station either when in Android. I had the tablet version installed since I didn't think it would disable the docking station completely, but it did, which is a bummer.
    So I tried the TV-release, but I couldn't get it to boot, so I ended up with the tablet-version again. But yea, it kinda bums me out that TV output is completely disabled in the tablet-version. Guess I'm gonna try installing a fresh download of the TV version with a new SD-card or something. Maybe it was corrupted or something.
    I'm using the TV version (which, for me, works with the dock), and I found I was unable to get it to boot until I flashed a GApps build that was from near the same date as this Android build. Search for my previous posts in this thread and it should point you the right direction 🤙🏿
  • 72
    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.
    • 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.

    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.

    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.
    OTA 10/05/2021:
    • Dramatically increases deep sleep battery life.
    • Adds support for controlling the mouse cursor with a controller's right stick.
    • Fixes various controller input issues with procon and the D-Pad in minecraft.
    • Fixes broken hori joycons.
    • Improved app launch times.
    • Adds support for more ethernet -> USB adapters.
    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!
    6
    runs great games run great emulators runs great but my bluethoot headphones cut in and out the audio for some reazon maybe a bug anyone having the same problem? apart from that android is running great
    Will be fixed in next OTA
    Running great except "Bluetooth" keeps crashing multiple times after starting up the system.
    But Bluetooth works afterwards.

    Is this a known issue?

    thx

    Does anyone has the same issue?
    Will be fixed in next OTA

    I was able to get some logs concerning my broken Wifi. Below is a logcat of me tapping on the wifi icon in the notification dropdown. There's some errors and I hope it helps getting to the bottom of the problem.

    Code:
    =u:r:magisk_client:s0:c84,c256,c512,c768 tcontext=u:r:hal_graphics_allocator_default:s0 tclass=fd permissive=1 app=com.android.terminal
    02-08 20:40:39.375  6777  6777 I su      : type=1400 audit(0.0:714): avc: denied { read } for name="audio.primary.tegra.so" dev="mmcblk0p3" ino=536 scontext=u:r:magisk_client:s0:c84,c256,c512,c768 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1 app=com.android.terminal
    02-08 20:40:39.375  6777  6777 I su      : type=1400 audit(0.0:715): avc: denied { getattr } for path="/vendor/lib/hw/audio.primary.tegra.so" dev="mmcblk0p3" ino=536 scontext=u:r:magisk_client:s0:c84,c256,c512,c768 tcontext=u:object_r:vendor_file:s0 tclass=file permissive=1 app=com.android.terminal
    02-08 20:40:39.375  6777  6777 I su      : type=1400 audit(0.0:716): avc: denied { read } for name="bin" dev="mmcblk0p3" ino=26 scontext=u:r:magisk_client:s0:c84,c256,c512,c768 tcontext=u:object_r:vendor_file:s0 tclass=dir permissive=1 app=com.android.terminal
    02-08 20:40:39.727  6781  6781 D AndroidRuntime: >>>>>> START com.android.internal.os.RuntimeInit uid 0 <<<<<<
    02-08 20:40:39.733  6781  6781 I AndroidRuntime: Using default boot image
    02-08 20:40:39.734  6781  6781 I AndroidRuntime: Leaving lock profiling enabled
    02-08 20:40:39.739  6781  6781 I /system/bin/app_process: Core platform API reporting enabled, enforcing=false
    02-08 20:40:39.888  6781  6781 D ICU     : Time zone APEX file found: /apex/com.android.tzdata/etc/icu/icu_tzdata.dat
    02-08 20:40:39.906  6781  6781 I /system/bin/app_process: The ClassLoaderContext is a special shared library.
    02-08 20:40:39.930  6781  6781 W /system/bin/app_process: JNI RegisterNativeMethods: attempt to register 0 native methods for android.media.AudioAttributes
    02-08 20:40:39.938  6781  6781 D AndroidRuntime: Calling main entry com.android.commands.content.Content
    02-08 20:40:39.957  6781  6781 D AndroidRuntime: Shutting down VM
    02-08 20:40:39.967  6574  6574 I RenderThread: type=1400 audit(0.0:717): avc: denied { call } for scontext=u:r:untrusted_app_27:s0:c129,c256,c512,c768 tcontext=u:r:hal_cplservice_default:s0 tclass=binder permissive=1 app=com.topjohnwu.magisk
    02-08 20:40:39.971  6574  6574 I RenderThread: type=1400 audit(0.0:718): avc: denied { call } for scontext=u:r:untrusted_app_27:s0:c129,c256,c512,c768 tcontext=u:r:hal_cplservice_default:s0 tclass=binder permissive=1 app=com.topjohnwu.magisk
    02-08 20:40:41.115  3376  3376 I InputReader: type=1400 audit(0.0:719): avc: denied { call } for scontext=u:r:system_server:s0 tcontext=u:r:init:s0 tclass=binder permissive=1
    02-08 20:40:41.972  3376  3911 W NotificationService: Toast already killed. pkg=com.topjohnwu.magisk [email protected]
    02-08 20:40:43.435  3149  3149 I storaged: type=1400 audit(0.0:720): avc: denied { call } for scontext=u:r:storaged:s0 tcontext=u:r:init:s0 tclass=binder permissive=1
    02-08 20:40:43.463  3376  3398 W WindowManager: Unable to start animation, surface is null or no children.
    02-08 20:40:52.965  3376  3376 W WindowManager: removeWindowToken: Attempted to remove non-existing token: [email protected]
    02-08 20:41:00.002  3586  3586 D KeyguardClockSwitch: Updating clock: 20:41
    02-08 20:41:08.115  3376  3412 E LightsService: Light requested not available on this device. 2
    02-08 20:41:08.117  3376  3470 E LightsService: Light requested not available on this device. 2
    02-08 20:41:46.319  3586  3586 D StatusBar: disable<e i a s b h r c s > disable2<q i n >
    02-08 20:41:46.363  3519  3538 D RSMouse : mFeatureEnabled=true  mPackageEnabled=true
    02-08 20:41:48.149  3376  4233 I WifiService: setWifiEnabled package=com.android.systemui uid=10097 enable=true
    02-08 20:41:48.149  3376  3485 D WifiController: StaEnabledState.enter()
    02-08 20:41:48.149  3376  3486 D WifiActiveModeWarden: received a message in WifiDisabledState: { when=0 what=0 target=com.android.internal.util.StateMachine$SmHandler }
    02-08 20:41:48.149  3376  3486 D WifiActiveModeWarden: Switching from WifiDisabledState to ClientMode
    02-08 20:41:48.149  3376  3486 D WifiActiveModeWarden: Entering ClientModeActiveState
    02-08 20:41:48.150  3376  3486 D WifiClientModeManager: entering IdleState
    02-08 20:41:48.150  3376  3486 D WifiActiveModeWarden: State changed from client mode. state = 2
    02-08 20:41:48.151  3376  3376 D WifiP2pService: Wifi enabled=false, P2P Interface availability=true
    02-08 20:41:48.151  3376  3486 I WifiVendorHal: Vendor Hal started successfully
    02-08 20:41:48.153  3376  3486 I SupplicantStaIfaceHal: Starting supplicant using HIDL
    02-08 20:41:48.154  3376  3487 I WifiP2pNative: Registering for interface available listener
    02-08 20:41:48.156  3376  3486 I android_os_HwBinder: HwBinder: Starting thread pool for getting: [email protected]::ISupplicant/default
    02-08 20:41:48.156  3376  3486 E SupplicantStaIfaceHal: Death handler already present
    02-08 20:41:48.161  3068  3068 E [email protected]: Failed to open wlan fw path param: No such file or directory
    02-08 20:41:48.155  3068  3068 I [email protected]: type=1400 audit(0.0:721): avc: denied { read } for name="fw_path" dev="mmcblk0p10" ino=784924 scontext=u:r:hal_wifi_default:s0 tcontext=u:object_r:wifi_vendor_data_file:s0 tclass=lnk_file permissive=1
    02-08 20:41:48.161  3068  3068 E [email protected]: Failed to change firmware mode
    02-08 20:41:48.161  3376  3486 D HalDevMgr: updateRttController: no one is interested in RTT controllers
    02-08 20:41:48.161  3376  3486 E HalDevMgr: executeChipReconfiguration: configureChip error: 9 ()
    02-08 20:41:48.161  3376  3486 E WifiVendorHal: Failed to create STA iface
    02-08 20:41:48.161  3376  3486 E WifiNative: Failed to create STA iface in vendor HAL
    02-08 20:41:48.161  3376  3486 E WifiClientModeManager: Failed to create ClientInterface. Sit in Idle
    02-08 20:41:48.161  3376  3486 D WifiActiveModeWarden: State changed from client mode. state = 4
    02-08 20:41:48.161  3376  3486 D WifiClientModeManager: expected stop, not triggering callbacks: newState = 1
    02-08 20:41:48.161  3376  3486 E WifiNative: Could not get Iface object for interface null
    02-08 20:41:48.162  3376  3376 D WifiP2pService: Wifi enabled=false, P2P Interface availability=true
    02-08 20:41:48.162  3376  3486 D WifiActiveModeWarden: ClientMode failed, return to WifiDisabledState.
    02-08 20:41:48.162  3376  3486 D WifiController: ClientMode unexpected failure: state unknown
    02-08 20:41:48.162  3376  3486 D WifiClientModeManager:  currentstate: IdleState
    02-08 20:41:48.162  3376  3486 D WifiScanRequestProxy: Sending scan available broadcast: false
    02-08 20:41:48.162  3376  3489 I WifiScanningService: wifi driver unloaded
    02-08 20:41:48.163  3376  3486 I WifiScanRequestProxy: Scanning is disabled
    02-08 20:41:48.164  3376  3409 D KernelCpuUidUserSysTimeReader: Removing uids 1037-1037
    02-08 20:41:48.165  3376  3486 D WifiActiveModeWarden: Entering WifiDisabledState
    02-08 20:41:48.166  3376  3486 D WifiActiveModeWarden: received a message in WifiDisabledState: { when=-3ms what=3 target=com.android.internal.util.StateMachine$SmHandler }
    02-08 20:41:48.166  3376  3486 D WifiActiveModeWarden: Switching from WifiDisabledState to WifiDisabled
    02-08 20:41:48.166  3376  3486 D WifiActiveModeWarden: Entering WifiDisabledState
    02-08 20:41:48.166  3376  3486 E WifiNative: Could not get Iface object for interface null
    02-08 20:41:48.169  4206  4782 W Settings: Setting airplane_mode_on has moved from android.provider.Settings.System to android.provider.Settings.Global, returning read-only value.
    02-08 20:41:49.891  3069  3069 I joycond : type=1400 audit(0.0:722): avc: denied { read } for scontext=u:r:init:s0 tcontext=u:r:init:s0 tclass=netlink_kobject_uevent_socket permissive=1


    EDIT:

    I also grabbed a dmesg which I have uploaded to my server since it's too large to attach here

    Grepping for "wifi"/"wlan" yields a whole lot of errors, for example:
    service "vendor.wifiloader" exited with status 255

    Naturally, wifi works just fine in Horizon, just in case you suspect faulty hardware
    Thanks, does it only crash after sleep?

    How Can I reboot to hekate ? Thanks
    Reboot and hold vol-
    For me the sleep mode is not working. Battery draining really fast. Anyone with the same problem?
    Should be fixed in OTA
    Today my Lp0 didn't work. I use CPU spy to observe this. This happened after a reboot.

    My switch stayed on with 100mhz all the time but screen was off.

    I turned wifi and bt on and off. This helped. Afterwards my switch went into deep sleep again and stayed there as long as the screen was off.

    Maybe this helps.
    Should be fixed in OTA
    5
    Flash this in TWRP and reboot. It fixes ZL ZR button for the pro controller in bluetooth.
    5
    I'm unable to connect to wifi.
    4
    anyone get safetynet to pass?
    I flashed it and gapps and tested safety net and it failed. Wasn't sure if there was something I missed

    yes I did. To me a while to work out but you have to:

    1. Mans sure you have flashed magisk
    2. In the manager install busybox and magiskhidepropsconf
    3. Reboot
    4. Install termux from the App Store
    5. Open termux and type ‘su props’
    6. Option 1 then follow the instructions to change the fingerprint to nvidia shield tv pro 2019
    7. Reboot and it all works