Page 1 of 1

ds4/sn30pro+ sticky buttons/strange behavior

Posted: Wed Jul 15, 2020 5:33 pm
by retrossauro
Im experiencing a strange behavior with some USB controllers on multiple cores. I have a hard time pressing more than one button at the same time if one of those buttons is the bottom right button (circle button on the dualshock 4 or "A" button on SN30pro+). If i swap around the mister logical button assigned to the physical button, the problem persists on the same physical button (circle).

The behavior is rather strange but ill try my best to describe it: if i press 2 buttons, like X+square, X+ triangle, square + triangle...etc, they work fine. If i press the circle button by itself, it works fine. But if a press circle + any other button, most of the times only circle registers, no matter how hard i press. Sometimes both buttons register, but then other button (not circle) get "sticky", and wont release until i press that button again.

I can reproduce this behavior easily using a Snes gamepad test rom or the Neogeo hardware test with the settings dip switch activated... on 2 separate dualshock 4 controllers (both genuine, second revision), and a SN30pro+. It happens connected direclty via USB, or even using it in wireless mode with a 8bitdo usb wireless dongle. I also tested with dinput mode and xinput mode on the 8bitdo sn30pro+ and the 8bitdo dongle. All those scenarios turned ou to present the exact same behavior.

Example of sticky "C" button with no button being pressed (after that glitch happened):
sticky buttom neogeo core.jpg
sticky buttom neogeo core.jpg (601.85 KiB) Viewed 4874 times

Another example, with a second dualshock 4:
sticky buttom neogeo core another dualshock4.jpg
sticky buttom neogeo core another dualshock4.jpg (117.63 KiB) Viewed 4874 times

And again, this time on the snes core:
sticky buttom snes core.jpg
sticky buttom snes core.jpg (313.94 KiB) Viewed 4874 times

And yes, i tested all controllers on my PC and on the PS4, both in wired and wireless modes, and they work fine there.

Strangely enough, the problem doesnt happen with a retrobit 2.4ghz genesis controller:
retrobid 2dot4g wireless.jpg
retrobid 2dot4g wireless.jpg (915.37 KiB) Viewed 4874 times

But it happens with the sn30pro+ aforementioned:
sn30pro+.jpg
sn30pro+.jpg (296.87 KiB) Viewed 4874 times
All my controllers are fine, the buttons are fine, im pretty confident that this is not a hardware problem.

Just for sanity checking , i also confirmed that the Sn30pro+ and 8bitdo dongle are on latest fw avaliable.

I also tested 3 different revisions of the neogeo core, and they all behave the same (NeoGeo_20200325, NeoGeo_20200510 and NeoGeo_20200622).

Lastly, i tested this with USB fast pooling on and off, and again, same behavior.

I'd appreciate if anyone could try to reproduce this behavior!

Re: ds4/sn30pro+ sticky buttons/strange behavior

Posted: Wed Jul 15, 2020 6:39 pm
by bootsector
Are you using a powered USB hub?

Re: ds4/sn30pro+ sticky buttons/strange behavior

Posted: Wed Jul 15, 2020 7:50 pm
by retrossauro
bootsector wrote: Wed Jul 15, 2020 6:39 pm Are you using a powered USB hub?
Yup.Its a tplink uh720. https://www.tp-link.com/br/home-network ... ory/uh720/
IMG_20200715_164527.jpg
IMG_20200715_164527.jpg (189.62 KiB) Viewed 4859 times

Re: ds4/sn30pro+ sticky buttons/strange behavior

Posted: Wed Jul 15, 2020 8:22 pm
by retrossauro
Just ran a couple more tests to see if i could rule the usb hub variable out of the equasion...

I connected the controlers and the dongle to de de-10 nano with other usb hub (a cheap 2.0 chinese one). I tried it both with and without a power supply connected to the hub. And got the same results again.

FInally i decided to test the controllers and dongle conected the directly to the de-10 nano with a micro b and no usb hubs at all ...and once again, same results.

so i think its safe to rule out the usb hub?

Re: ds4/sn30pro+ sticky buttons/strange behavior

Posted: Wed Jul 15, 2020 8:28 pm
by retrossauro
If anyone who owns a DS4 controller could try to reproduce this... its very easy to reproduce:

- Load the neogeo core
- Set the dip switch for Settings to "on"
- load any game, when the dip settings screen show up, enter first option (hardware test), press start a couple times to get to the controller testing screen, then just try to press circle + any other button

Re: ds4/sn30pro+ sticky buttons/strange behavior

Posted: Wed Jul 15, 2020 9:17 pm
by bootsector
Do you have an OTG cable that you could use to plug the DualShock4 directly to the OTG port? The idea is to rule out the USB hub as the potential culprit.

I will try to reproduce your steps and report here.

Edit: I’ve just read your post about the hub.

Re: ds4/sn30pro+ sticky buttons/strange behavior

Posted: Wed Jul 15, 2020 9:34 pm
by bootsector
I couldn’t figure how to get into the Neo Geo core’s pad test but I did the same test with the SNES core and the SNES burn-in test ROM and I couldn’t reproduce it with a DS4.

Re: ds4/sn30pro+ sticky buttons/strange behavior

Posted: Wed Jul 15, 2020 10:34 pm
by retrossauro
@bootsector , thank you for testing it. Welp, i guess it should be something on my end then. Not sure on what else to look for tho... Since im just using a de-10nano connected directly with (allegedly) fully working genuine DS4 controllers with an OTG adapter, and the same setup works fine with other controllers (like my madcatz arcade controller or the retrobit genesis).

Maybe my de-10 nano is deffective?

I guess im stuck lol...

but again thank you !

Re: ds4/sn30pro+ sticky buttons/strange behavior

Posted: Thu Jul 16, 2020 12:20 am
by bootsector
If you didn’t do it already I would suggest checking the DE10 Nano on-board DIP switches to see if they are at the default positions.

Also, a clean install on the SD in order to make sure you’re using the latest Linux kernel and no old pad map files on the SD.

Re: ds4/sn30pro+ sticky buttons/strange behavior

Posted: Thu May 13, 2021 8:39 pm
by Wwweh
To anyone looking at this, I had the same issue.

I was mapping the "Sniper/emu" button in the mister menu buttons and then using that button in core definition.

If you just don't define that sniper button everything will just work great.