Using 8bitdo SN30 Pro Controllers (USB and Bluetooth versions)
-
I thought I'd post this in case anyone has thoughts on how these controllers from 8bitdo are identified.
I have recently bought the SN30 Pro (USB) and also the SN30 Pro (Bluetooth) controllers from 8bitdo. Both of mine are the lighter grey version with the red nintendo style buttons.
Pi Model or other hardware:
Pi4 - 2GB
Power Supply used
: Official mains PSU
RetroPie Version Used
: 4.8.1
Built From
: Standard image from RetroPie website
USB Devices connected
: A keyboard, and the controller below
Controller used
: 8bitdo SN30 ProSN30 Pro (Bluetooth)
When I connect this controller to the Pi using its USB cable, I turn it on with Start+B to put it in "D-Input" mode.
It is identified in Emulation Station and writes a Retroarch config file using the name "8Bitdo SF30 Pro 8Bitdo SN30 Pro.cfg"That works fine and without issue.
Then if I use the same Bluetooth controller and pair it, so not using the USB cable, then EmulationStation identifies it differently and writes a RetroArch file of "8Bitdo SN30 Pro.cfg"
Again, no problem with that either, and it works well.
SN30 Pro (Wired USB)
This controller doesnt appear to support "modes" like D-Input, the manual states a default only of "Switch mode, X-input". When this is plugged in, EmulationStation sees this as an X-Box controller and writes a RetroArch file as "Microsoft X-Box 360 pad.cfg".
Despite it being logged as an X-Box controller, it seems to work fine, including trigger and analogue buttons.There are some posts here, that seems to suggest the triggers arent always detected and that an xbox driver needs to be installed, although I didnt seem to have that issue.
Reddit Post #1
Reddit Post #2
RetroPie Forum PostLooking at the setup in the RetroPie setup script, which I haven't changed, it says
Manage Packages | Manage Drivers |
xboxdrv (This is not installed)
xpad (Installed - via source)So I guess if I have a question on this, is why would the USB wired controller not be identified as a 8bitdo controller, and instead as an X-Box controller?
RetroArch seems to have a record of this wired type:
https://github.com/libretro/retroarch-joypad-autoconfig/blob/master/udev/8Bitdo_Pro_SN30_USB.cfgBut maybe that isn't the exact controller - is it that the hardware is reporting a different vendor id or something?
Mine (Wired USB) seems to be reporting
045e:028eWhereas the Bluetooth version (when wired) reports
2dc8:6001
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.