Please do not post a support request without first reading and following the advice in

Weird problem with Nintendo Switch Pro controller

  • Hi guys,

    I'm wondering if anyone have this problem. When using my nintendo switch pro controller, the joystick works but for some reason, the up movement to go forward seems to be off.

    For example, let's say I play golden eye 64. When I tried to move forward, James moves but he seems much slower like if the joystick was not all the way up. Same thing if I try to aim on the sides... If I do the same with a Xbox One Controller, there is no issue at all. It looks like the joystick detection for this controller is off....

    It's weird and I am very disappointed because I read that the nintendo switch pro controller was compatible 100% with retropie and I bought one specifically for that and my switch. Is there something I can do to make it better or I need to wait and hope for better support in the futur?

    Thanks in advance, you guys really helped me out before and I really appreciate it.

  • Global Moderator

    @solaris It seems you're not the only one: has some details about joystick problems, it looks like some additional calibration is needed for the analog sticks to work.

  • Humm will try the solution posted. Thanks Mitu. I'll comeback with an answer if this works or not and if it does, I'll post what I did.

  • I got it!!!

    It took me several tries and errors and a few guides but I finally got it.

    Your link helped for 75% of the job.

    I followed these steps:

    Read this, if You're also newbie to Linux systems and SSH.
    Login to your Pie via SSH
    Open Retropie Setup script:
    Check if xboxdrv is installed, and install if not: Manage Packages --> Manage driver packages --> xboxdrv
    Pair controller via Bluetooth: Configuration / tools --> bluetooth --> Register and connect to Bluetooth Device Press sync button on the controller. It should be detected by Pi and shown as "Pro Controller" - select that. --> Select NoInputNoOutput on the next screen.
    Exit RetroPie Setup script.
    sudo wget -O /etc/udev/rules.d/99-nintendo-switch-pro-controller.rules (original step #3)
    sudo wget -O /etc/systemd/system/nintendo-switch-pro-controller.service (original step #4)
    Reboot Pie
    Wake up the controller (hitting Y and then shoulder buttons is sufficient in my case)
    Configure input in EmulationStation
    Have fun!

    But since I already paired my pro controller, I had 2 controllers, one Pro controller and the other the nintendo switch pro controller. In emulators, my switch pro controller would not be picked up because I paired it before. I had to go in /opt/retropie/configs/all/retroarch.cfg and delete all entries related to Pro controller and for the n64, I had to go in /opt/retropie/configs/n64/InputAutoCfg.ini and again delete any config related to Pro controller in InputAutoCfg.ini.

    Then everything worked except up was down and down was up. Had to go back in the config and change the value for the X and Y axis then it worked.

    I'll post my controller config for anyone interested in the futur. I really hope this controller is going to be 100% supported in the next retropie distro. It took me more than a week to make this work!

    P.S: The path might not be 100% correct since I'm working from memory. I'll update this post later.

    Hopping this will help others!

  • Nevermind.... it doesn't work.

    I tried redoing my configs because the switch pro controller would get recognized 1/4 of the time. Ended up with the Pi detecting the pro controller but not the switch pro controller.... I don't get with this is so difficult with the switch...

Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.