Wired SN30 Pro not detected
-
@mitu Sorry, forgot to mention that I used Switch mode. It's identified but nothing happens on button press etc. Tried different cables as well.
pi@retropie:~ $ jstest /dev/input/js0 Driver version is 2.1.0. Joystick (Nintendo Co., Ltd. Pro Controller) has 6 axes (X, Y, Z, Rz, Hat0X, Hat0Y) and 18 buttons (Trigger, ThumbBtn, ThumbBtn2, TopBtn, TopBtn2, PinkieBtn, BaseBtn, BaseBtn2, BaseBtn3, BaseBtn4, BaseBtn5, BaseBtn6, ?, ?, ?, BtnDead, (null), (null)). Testing ... (interrupt to exit)
I have two identical controllers and both behave the same way.
-
If there's no input, there's not much to do as far as EmulationStation or emulators are concerned. Switch it to PC/XInput mode and see if it starts working.
-
@mitu It worked! It's recognised as Xbox 360 controller on wired X mode and SN30 Pro Controller wireless. The funny part is that A, B and X is recognised and receive inputs but switch mode Y doesn't trigger anything when wired. But using BT it works fine.
It might be a placebo effect, but I don't experience the same lag wirelesss with X mode as with Y mode.
Not really have a need for it myself but if someone else bumps into the same problem it might be good to know that on X mode, the bumpers are recognised but the triggers are not. This applies both to wired and wireless connection.
-
@stuffu said in Wired SN30 Pro not detected:
Not really have a need for it myself but if someone else bumps into the same problem it might be good to know that on X mode, the bumpers are recognised but the triggers are not.
This usually happens when the
xpad
driver is not installed - the version included in RetroPie will remap the triggers as buttons and they should be recognized. Maybe re-install the driver and then re-configure the gamepad again in EmulationStation. -
@mitu Guess this ended up in even more questions... I started over and removed
es_inputs.cfg
removedxpad
driver and installed again and configured the controllers again with the same result, no triggers recognised. Also some instances doesn't receive any inputs at all. Like the Retropie-Setup menu. Wired or wireless, keyboard works though. -
@stuffu said in Wired SN30 Pro not detected:
I started over and removed es_inputs.cfg
That's not the correct way to re-configure your inputs, removing that file will disable any auto-configuration of the gamepads in the emulators.
-
@mitu Ok, that was bad news. Then I have to make a new install on a separate sd card and copy it from there and start over from there.
I'll restore and see what happens. Thanks!
-
@mitu found how to reset
es_input.cfg
in the documentation but the controllers are still behaving very weird.Even with
xpad
reinstalled no trigger inputs are recognized and it’s only when wired the controller works outside of ES, like retropie setup menu.In scummvm the controller only works as mouse input when wired and I can’t launch any games when controller is wireless since no controller is detected, even if the controller is set up and is working in the frontend.
I understand that this is a pain, should I just give up using the controller wired as well as wireless and go back to wireless only, or could there be an “easy” solution to try?
-
Even with
xpad
reinstalled no trigger inputs are recognized and it’s only when wired the controller works outside of ES, like retropie setup menu.The RetroPie-Setup menu uses the RetroArch configuration for the gamepad, which is generated automatically by EmulationStation when the input is configured (barring a broken
es_input.cfg
). Is the controller working correctly in any of the libretro emulators ?In scummvm the controller only works as mouse input when wired and I can’t launch any games when controller is wireless since no controller is detected, even if the controller is set up and is working in the frontend.
I'm not sure how ScummVM uses the gamepad, it's one of the emulators that's not auto-configured by EmulationStation.
-
@mitu I restored
es_input.cfg
so everything is fine there.None of the libretro emulators work, when launching a game, a black screen appears and then quits back to the emulator. Nothing odd in
runcommand.log
but it's for sure related the controller settings.When wired, the controller is identified as Xbox 360 controller and libretro works. When wireless the controller is identified as SN30 Pro and no libretro emulators work.
Just to clarify, this was also the behaviour prior to removing
es_input.cfg
As I mentioned earlier, if this is something only affecting me, it's not that important and I know you have better things to do instead of troubleshooting this :) I can go back to Switch mode and just sit very close to the RPI :)
-
@stuffu said in Wired SN30 Pro not detected:
None of the libretro emulators work, when launching a game, a black screen appears and then quits back to the emulator. Nothing odd in runcommand.log but it's for sure related the controller settings.
Shouldn't be, since RetroArch can work even without a controller. If you get a verbose log, post it on pastebin.com
When wired, the controller is identified as Xbox 360 controller and libretro works. When wireless the controller is identified as SN30 Pro and no libretro emulators work.
Does RetroArch pops up a notification saying that the controller is detected, but not configured ? If so, the auto-configuration file is missing - that's created automatically by EmulationStation after the input configuration. You can check in
/opt/retropie/configs/all/retroarch-joypads
and see what configuration files are there, there should one for each controller type (name) you have configured in EmulationStation. -
@mitu In the verbose log there is something odd. https://pastebin.com/6ZzDcBwC
[INFO] [CONTENT LOAD]: Loading content file: /home/pi/RetroPie/roms/nes/Super Mario Bros. (JU) (PRG0) [!].zip#__MACOSX/._Super Mario Bros. (JU) (PRG0) [!].nes [ERROR] [CONTENT LOAD]: Could not read content file "/home/pi/RetroPie/roms/nes/Super Mario Bros. (JU) (PRG0) [!].zip#__MACOSX/._Super Mario Bros. (JU) (PRG0) [!].nes".
I don't see any reference to macosx somewhere in any file but this doesn't seem to have anything to do with the controller... Seems there are two different problem that at first seemed related but aren't...
There is no RetroArch popup saying it's not configured. I noticed the names of the different inputs when configuring wired/wireless.
Also, there are both
8Bitdo SN30 Pro.cfg
andMicrosoft X-Box 360 pad.cfg
inretroarch-joypads
-
@stuffu said in Wired SN30 Pro not detected:
@mitu In the verbose log there is something odd. https://pastebin.com/6ZzDcBwC
[INFO] [CONTENT LOAD]: Loading content file: /home/pi/RetroPie/roms/nes/Super Mario Bros. (JU) (PRG0) [!].zip#__MACOSX/._Super Mario Bros. (JU) (PRG0) [!].nes [ERROR] [CONTENT LOAD]: Could not read content file "/home/pi/RetroPie/roms/nes/Super Mario Bros. (JU) (PRG0) [!].zip#__MACOSX/._Super Mario Bros. (JU) (PRG0) [!].nes".
Yes, it's unrelated. The
.zip
file contains a__MACOSX
folder, usually added by the Finder in macOS to store additional data about files and RetroArch tries to load the first file from the archive, which happens to be._Super Mario Bros. (JU) (PRG0) [!].nes
. You should either unzip the archive and use the.nes
ROM or clean up the.zip
file(s).Related to the gamepad not working in RetroPie setup, a similar thing happened to me because of the same Finder behavior. Editing/opening a gamepad
.cfg
in the macos Finder would create a similar file in/opt/retropie/configs/all/retroarch-joypads
(._8Bitdo SN30 Pro.cfg
), which would be picked by thejoy2key
(the utility that translates the gamepad inputs to keyboard keys and thus enabled navigation of the setup scripts with the gamepad) and would render the gamepad navigation unusable. Check for any._XYZ.cfg
files in/opt/retropie/configs/all/retroarch-joypads
and remove them - you'll need to use Linux for that, since the Finder won't show them. -
Yes, it's unrelated. The
.zip
file contains a__MACOSX
folder, usually added by the Finder in macOS to store additional data about files and RetroArch tries to load the first file from the archive, which happens to be._Super Mario Bros. (JU) (PRG0) [!].nes
. You should either unzip the archive and use the.nes
ROM or clean up the.zip
file(s).Oh no, this is a disaster... But I don't really get it. The
.zip
files did work before and are untouched and unzipping them (also showing hidden files) just shows the.nes
file, nothing else. Could it be something else? (fingers crossed)Related to the gamepad not working in RetroPie setup, a similar thing happened to me because of the same Finder behavior. Editing/opening a gamepad
.cfg
in the macos Finder would create a similar file in/opt/retropie/configs/all/retroarch-joypads
(._8Bitdo SN30 Pro.cfg
), which would be picked by thejoy2key
(the utility that translates the gamepad inputs to keyboard keys and thus enabled navigation of the setup scripts with the gamepad) and would render the gamepad navigation unusable. Check for any._XYZ.cfg
files in/opt/retropie/configs/all/retroarch-joypads
and remove them - you'll need to use Linux for that, since the Finder won't show them.I will look into that as well.
Thanks for the suggestions and help here, invaluable as always! :)
-
@stuffu As someone who also owns this controller (well, SN30 Pro+) and tend to use it wired, I tend to use it in D-input/Android mode (Start+B). It works just fine for me, with all buttons working correctly. It uses the same mapping as when it's connected via Bluetooth in this mode.
As someone who also uses a Mac, I have encountered this problem before. Zipping files with the right click -> Compress action in Finder will zip up hidden files like __MACOSX. Unzipping a file created in this way on MacOS will not show the hidden __MACOSX folder. I had a bunch of files created like this (romhacks mostly) that stopped working after a recent RetroPie update with all OS packages. I assume it's an update for Retroarch that caused it to no longer work. Fortunately, you can clean up your zip files created like this by opening Terminal and running the following command:
zip -d "FILE.zip" __MACOSX/\*
That will delete the __MACOSX folder and all contents from the specified ZIP file. Zipping files using the "zip" command on the command line will avoid zipping hidden files like __MACOSX or .DS_STORE in the first place. You could also create a shortcut in Automator that will let you compress files without hidden metadata files from the right click menu.
-
@g30ff Thanks for responding and for the suggestion! I suspected that something changed recently that made this problem occur. Will try out the Start+B option as well as the zip files. However, I have a lot of zip files! :) Can you apply it to all .zip files in a specific folder?
-
@stuffu I have tons of zip files as well, so I wrote myself a shell script to do it for multiple folders. If you know how to use shell scripts, take this script, and save it as a .sh file. I've used it myself, but run at your own risk.
#!/bin/bash for d in ./*/ ; do cd "$d" for zipFile in *.zip; do echo "Cleaning up ${zipFile}..." zip -d "${zipFile}" __MACOSX/\* echo "Done" done cd ../ done echo "All done."
Assuming your rom folder is organized, for example, /roms/nes, /roms/snes, /roms/megadrive, etc., you would place the shell script in /roms, and then run it. The script will check all subfolders of the current directory for zip files and run the cleanup command on them, if they have __MACOSX folders contained in them.
-
This probably won't add anything to the conversation but here's what happened to me today - sounds almost the same.
My older SN30 controllers were connecting via Bluetooth and in Emulation Station they would work fine. All buttons did what they were supposed to. When I tried to play a game with them the D-Pad worked BUT ABXY weren't even registering and for some reason START was acting like B. Turns out my controllers were on 3.00 Firmware. I updated them to 4.20 (looks like the SN30 Pro latest firmware is v1.34), deleted the Bluetooth entry, rebooted and then paired them again using the 8BitDo guide. Now they work exactly as they should. It was just a firmware issue for me. I didn't see it mentioned in the thread so just putting in my 2 cents. :)
Good luck!
-
@classicgmr thanks for the input, i think I have ruled out fw as the issue. Mine is on latest 1.36. But always good with some alternative options. any help is welcome :)
-
@g30ff YES! That was the best advice someone could give me at this moment! It worked! Big thanks!
Edit: Regarding the shell script. Should have quoted...
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.