Last updated
Last updated
This workaround is a temporary fix since your Android device's Bluetooth MAC address can change or a Switch update may unpair previously connected devices causing you to redo this process. This is not guaranteed to work!
A Android device with and Magisk.
A non-rooted Android with Bluetooth HID Profiles support (must be Samsung if you want to )
1) On the rooted Android, follow the or to change the Device Class to 002508
2) Find the Bluetooth MAC Address of your non-rooted Android and change the rooted Android's Bluetooth MAC address to the Bluetooth MAC address of the non-rooted Android. Instructions from step 3 . (Instead of a real controller, you will change the MAC address to the non-rooted phone.)
3) Now connect your rooted phone that has copied your non-rooted phone's Bluetooth MAC address to your Switch using JoyCon Droid and make sure it's paired.
4) Your Switch should remember that Bluetooth MAC Address so you can disconnect the rooted Android now.
5) Try to connect with your non-rooted Android.
If you have access to a computer with Bluetooth, you can either run Linux natively or use a virtual machine with another software (unrelated to JoyCon Droid) called . With joycontrol, you can use your PC or Linux machine, such as a raspberry pi, as a controller for the Switch and even use amiibos.
You can simply use joycontrol if it works for you but it can also be used as another method of getting your Android device with JoyCon Droid to connect to the Switch if it is not rooted or if you have issues with Bluetooth++ or the MAC address workaround. You would just need to change your Linux device's Bluetooth MAC address to your phone's Bluetooth MAC address and have a successful pair to the Switch using joycontrol before trying to use JoyCon Droid this way.
Your Android device still needs to have support to work as a controller so please click the link to test it first. If you want to then it also still needs to be a Samsung device OR another device with a custom ROM based on LineageOS 16+/AOSP built after September 2020 because of the requirement of HID DEV MTU SIZE of 512 bytes.
(Unofficial PDF guide created by a community member on Discord)
Use a spare rooted Android device to help a non-rooted one connect.