Multiple Switch Pro Controllers
-
Pi 3
Power supply came bundled in kit from Amazon, I believe it is appropriate for pi 3
RetroPie 4.4 latest image for sd card on official website
USB devices connected: logitech dongle for keyboard (and I have also added a separate bluetooth dongle in the process of trying to fix this)
How to replicate: Pair both Switch Pro controllers like normal (this part works) but then try to use them in emulationstation or in games. Only one will work at a time. When you turn on the second one, either the first one stops working, or sometimes the second one just doesn't work.Having a hard time getting two new Switch Pro controllers working simultaneously. I've previously had 4 8bitdo nes30 pro controllers working fine, but I didn't love the d-pad and the trigger/shoulder buttons on all 4 controllers broke (nephews were over for thanksgiving- they did drop the controllers, but really? seems pretty low quality that those shoulders/triggers are that easily broken)
I can get one Switch Pro working fine, but not a second one. i reformatted and started clean, same issue. I then read that the Switch Pros tend to hog the entire bluetooth adapter somehow, so I put in a separate bluetooth usb dongle in the pi. Not sure if there is any way to easily control multiple bluetooth dongles with the GUI, I turned to bluetoothctl. I connected one controller, then switched to the other bluetooth controller and connected the other one. This actually worked and I could play games with both controllers.
I then restarted and sure enough it didn't work, so apparently bluetoothctl either doesn't save the configuration for which dongle should pair which controller, or else there was a bug of some sort. I tried going back to bluetoothctl and did what I just did before. Both controllers connected, but this time one of the controllers wasn't working in emulationstation despite seeming to be connected. Since it worked once I was going to restart and try again but was running late to work.
So my questions, and sorry for their extreme length and detail:
- the hell?
- why?
- how?
- fix plz?
i'd rather not have to go to command line and pair via bluetoothctl every single time the system reboots, and based on my limited experience this morning that doesn't even work every time. Do the Switch Pro controllers just not work well? Should I go back to 8bitdo? I really didn't love the dpad on the n30pro
-
Please add the info requested in https://retropie.org.uk/forum/topic/3/read-this-first.
-
Added info to top of original post
-
@cVf6XUdldZ This looks like the Switch controllers are having the same MAC address. If you look in the Bluetooth setup script, you'll have a Display registered and connected BT devices entry, how does it look for your controllers ? Does it show 2 controllers or just 1 ?
-
Assuming the MAC address is the series of numbers separated by colons and next to the words "Pro Controller" then no, they don't have the same MAC address. When I connect both controllers using the retropie GUI then I do see them both listed with their unique MAC addresses.
Each one just seems to completely take over the bluetooth controller and they fight with each other when I try to connect them both. Does anybody here have two working? I'm not sure if this is a bug I'm running into or if this controller just isn't compatible
-
I believe I have figured it out, although I'll see how everything acts for the next few days.
I did have to use a separate bluetooth controller for each switch pro controller. I did everything using bluetoothctl. I left scan on both bt controllers, discovery off, and agent to NoInputNoOutput. I then connected one switch pro to each bluetooth controller and trusted the switch pro controller. Seems like I can now turn off a controller and turn it back on and it will connect automatically, nothing manual required.
I can't figure out the analog sticks with two controllers. I saw a post about using xboxdrv and a udev rule and a systemd service file, I tried that, but only one controller was being recognized as a "Switch Pro Controller", the other still only recognized as a "Pro Controller" (so no analog up or right). Also, for some reason when I had all of this enabled and I would try to configure the inputs on a switch pro controller it would say that 5 gamepads were detected. Couldn't get anything to actually work in a game either, only in emulationstation. Once I uninstalled xboxdrv and deleted the udev rule and systemd service file and restarted retropie then worked correctly, only seeing 2 gamepads and they work in games.
Maybe one day the analog sticks will just werk without messin around with it. Until then I just won't be playing n64, which I guess doesn't work all that well anyway
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.