Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reconnect issues with 8bitdo SN30 pro+ Bluetooth controller in "Switch" mode #880

Open
benstor214 opened this issue Oct 17, 2022 · 22 comments

Comments

@benstor214
Copy link

benstor214 commented Oct 17, 2022

Your system information

  • Steam client version: 1664998519
  • SteamOS version: 3.3.2 (build 20221005.1)
  • Opted into Steam client beta?: No
  • Opted into SteamOS beta?: No
  • Have you checked for updates in Settings > System?: Yes

Please describe your issue in as much detail as possible:

When using my 8bitdo SN30 pro+ Bluetooth controller in "Switch" mode (hold Y and press Start to turn the controller on) the Steam Deck correctly recognizes it as a "Pro Controller". Alas inputs only work after first pairing of the device.
After a disconnect and reconnect of the controller (still using Bluetooth) all inputs are ignored by the Steam Deck and to resolve the issue the controller needs to be paired again with the Steam Deck (by pressing Options > Forget Device and pushing the pairing button on the controller).

Observations:

• in Settings > Bluetooth the controller appears to be connected (name is in bright white font)
• in Settings > Controller the controller is completely missing (usually there is a "Controller 0" and "Steam Deck")
• the Steam Deck seems to generally be a bit unresponsive (Steam Deck inputs take long to show an effect)

Steps for reproducing this issue:

  1. Pair an 8bitdo SN30 pro+ Bluetooth controller in "Switch" mode (hold Y and press Start to turn the controller on)
  2. Turn Bluetooth off
  3. Turn Bluetooth back on
  4. Turn the controller on and wait until it is "reconnected" to the Steam Deck

edit: grammar

@Link2999
Copy link

Same problem here.

@casperiv
Copy link

Same issue testing with an 8Bitdo Pro 2. Worked great the first time it was paired, would not work after. Also seems to cause unusual issues with the integrated controls when reconnected before being unpaired and paired again.

@paperninja
Copy link

Same issue here.

@ergoithz
Copy link

ergoithz commented Jan 7, 2023

Can you check if his still happens when the Rumble function isn't enabled in the controller settings?

If that fixes mitigates the issue, then this would be a duplicate of
ValveSoftware/steam-for-linux#7631

@benstor214
Copy link
Author

I will check on Tuesday. Maybe someone can try it out earlier?

@popsUlfr
Copy link

popsUlfr commented Jan 10, 2023

I have the 8BitDo Pro 2 and rumble on/off doesn't change anything. It reconnects to bluetooth but the controller is not recognized as a controller by Steam. There's some strange input happening though seemingly randomly where a constant down input would be sent, or the STEAM button on the Steam Deck not working anymore (the QAM button also not working).

@benstor214
Copy link
Author

I'm a little delayed, but I can confirm that the problem persists even when the Rumble function is deactivated.
It is exactly the same as before: in Bluetooth settings the controller seems to be connected (as Pro Controller) but it does not show up in controller settings at all - while it showed up earlier (at first pairing) in the controller settings as "Controller 0". Thank you for looking into it.

@syixxs
Copy link

syixxs commented Apr 20, 2023

Adding another voice to this one. Same problem, 8BitDo SN30 Pro, in my case.

@NoLimitsNick
Copy link

This is still an ongoing issue with my SN30 Pro. Great aside from the connection issue

@benstor214
Copy link
Author

benstor214 commented May 13, 2023 via email

@GritchJnr
Copy link

Having the same issue.. absolutely love the controller. Hopefully be sorted soon

@GsakuL
Copy link

GsakuL commented Jul 18, 2023

I'm having the same issue with my SN30 pro (non-plus).

I've like to add, that I tried using XInput (X+Start) and DInput (B+Start) modes for the Deck. Which neither where mentioned here previously, but both modes show the same behavior of only working after the first connect/pairing. They seem to work as expected (at least according to the Gamepad Tester), but can't reconnect once the controller turns off.
Turning off Rumble in Decks settings after pairing doesn't help.

(not directly relevant to this issue) Annoyingly, the controller reports the same name for different modes, yet "produces" different devices in any kind of PC/Deck Bluetooth list. So I have the same twice, when switching X/DInput. Have to stick to one mode, for better testing/actual usage. In wired mode, it shows X/DInput in Settings -> Controller

@chris-marsh
Copy link

chris-marsh commented Sep 3, 2023

Same issue with the 8bitdo Pro 2.
X Input works flawlessly but using switch mode it pairs and works fine, but reconnecting does not work and the decks built in controls become erratic.

@Mero2k9
Copy link

Mero2k9 commented Nov 5, 2023

Same here SN30 pro+. I want to use motion control an switch mode seems the only mode, but it don't work. I can confirm that the Steam deck becomes erratic when I try to reconnect controller.

@GsakuL
Copy link

GsakuL commented Nov 19, 2023

today, I've seen SteamDeck Update 3.5.5 https://store.steampowered.com/news/app/1675200/view/5484882897552407488
It mentioned

General:
...
- Improved Bluetooth connection stability, especially with multiple controllers

On a whim, it reminded me about this issue, and I tried my 8bitdo again. And it seems to be fixed. It reconnects now, when I Restart the Controller (Start+Select), or disable and re-enable Bluetooth on the Deck.
Controller still a "SN30 pro" (non-plus), and Firmware 2.02 (from 2023-07-07), which is the newest as of writing this (just checked). It also works across reboots, and in Desktop Mode. I don't know about strange and specific edge-cases, just my experience.

I did re-test all the modes, and they seemed to be the same as before:
macOS (Start+A) reports a Wireless Controller but appears to have no input - seems useless in this mode.
XInput/XBox (Start+X) Works, however The Button Mapping is A/B & X/Y flipped, since the whole XBox One emulation on Nintendo-Layout. But using "Nintendo Layout" Toggle in Controller settings flips everything, and On Screen-Display is still/again wrong - it just messes with me at least. So either your Buttons are flipped, or the UI. Maybe you guys with the 8bitdo-Desktop-Tool can change the mapping, I don't know. It can be "positional-correct" but not "letter-correct"
Nintendo Switch (Start+Y) Controller emulates NS Pro Controller. Works as expected (No AB/XY-Problem like xinput)
DInput/Playstation(?) (Start+B) It emulates some generic or PS Controller. This is actually "letter-correct", and UI Letters correspond to Letters on the Controller; however the testing-screen shows the AB/XY position-swapped. Using "Nintendo Layout" Toggle works as expected. So it's kinda like an opposite to Xinput. However i like it more

@Adamanthul
Copy link

Adamanthul commented Dec 2, 2023

Replying to #880 (comment)

My Deck is on 3.5.7 and Im still experiencing the issue of the 8bitdo only working on first connect in y-input mode... Could there have been a regression from 3.5.5 ?

Im also on the latest 8bitdo firmware and a curious thing is, when forgetting the controller and newly pairing it remembers the custom name/settings i gave it.

@mikey242
Copy link

mikey242 commented Dec 5, 2023

@Adamanthul I had this issue on 3.5.5 also so don't think there was a regression.

@GsakuL
Copy link

GsakuL commented Dec 6, 2023

I'm not sure where to look then. I'm running the stock SteamOS. I've installed some stuff in Desktop Mode, but mostly "irrelevant stuff" like a web browser, some game/mod-Launchers/patchers. I've not changed kernel modules or drivers or similar. Since I've invested some time in getting the things running, I wouldn't wand to re-do it all to test from a clean install.

Do you have a SN30 Pro+ or a SN30 Pro (non-plus)? I Have only the latter one (non-plus), Model 80DJ (if I've read that correctly - it's a tiny font). According to 8bitdo's website, the current models have a pixelated heart as the "Home" button, however my unit has the (old?) 3/half-moon thingy. Not sure if that's just plastic, or some Hardware/Firmware differences (especially to the Plus-Version)

@mikey242
Copy link

mikey242 commented Dec 6, 2023

I have the SN30 pro+ with a pixelated heart. I previously experienced other issues with it where, upon connecting (even for the first time), it would near enough lock up the steam deck (totally unresponsive). Now at least since 3.5.5 it works perfectly fine until I try reconnecting.

@benklop
Copy link

benklop commented Dec 15, 2023

I decided to check dmesg, and it looks like there are a number of related kernel error messages:

[   70.946306] hid-generic 0005:057E:2009.0007: unknown main item tag 0x0
[   70.946412] input: Pro Controller as /devices/pci0000:00/0000:00:08.1/0000:04:00.4/usb3/3-5/3-5:1.0/bluetooth/hci0/hci0:1/0005:057E:2009.0007/input/input33
[   70.947046] hid-generic 0005:057E:2009.0007: input,hidraw5: BLUETOOTH HID v0.01 Gamepad [Pro Controller] on 34:6f:24:c1:47:54
[   71.036520] nintendo 0005:057E:2009.0007: unknown main item tag 0x0
[   71.037127] nintendo 0005:057E:2009.0007: hidraw5: BLUETOOTH HID v80.01 Gamepad [Pro Controller] on 34:6f:24:c1:47:54
[   75.143191] nintendo 0005:057E:2009.0007: failed reading SPI flash; ret=-110
[   75.143202] nintendo 0005:057E:2009.0007: using factory cal for left stick
[   77.184171] nintendo 0005:057E:2009.0007: failed reading SPI flash; ret=-110
[   77.184181] nintendo 0005:057E:2009.0007: using factory cal for right stick
[   79.221982] nintendo 0005:057E:2009.0007: failed reading SPI flash; ret=-110
[   79.221993] nintendo 0005:057E:2009.0007: Failed to read left stick cal, using defaults; e=-110
[   81.256927] nintendo 0005:057E:2009.0007: failed reading SPI flash; ret=-110
[   81.256939] nintendo 0005:057E:2009.0007: Failed to read right stick cal, using defaults; e=-110
[   83.289908] nintendo 0005:057E:2009.0007: failed reading SPI flash; ret=-110
[   83.289919] nintendo 0005:057E:2009.0007: using factory cal for IMU
[   85.324727] nintendo 0005:057E:2009.0007: failed reading SPI flash; ret=-110
[   85.324737] nintendo 0005:057E:2009.0007: Failed to read IMU cal, using defaults; ret=-110
[   85.324741] nintendo 0005:057E:2009.0007: Unable to read IMU calibration data
[   87.351775] nintendo 0005:057E:2009.0007: Failed to set report mode; ret=-110
[   87.351985] nintendo 0005:057E:2009.0007: probe - fail = -110
[   87.352005] nintendo: probe of 0005:057E:2009.0007 failed with error -110

This is with both the steam deck and the SN30 pro on the latest firmware.

@benklop
Copy link

benklop commented Dec 15, 2023

Looks like this is the same issue reported against Mint, so it's not a steam specific issue: https://forums.linuxmint.com/viewtopic.php?t=403378

@XBigTK13X
Copy link

I have this problem in xinput (start+x) and switch (start+y) modes. However, on the latest controller firmware and September 11, 2024 steam deck update, dinput mode (start+b) works great. The controller always reconnects after a disconnect, after sleep, reboot, whatever. The star button isn't available to be mapped, but at least the controller stays connected.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests