Why does my 8bitdo and PS3 controllers randomly move?
-
@jamrom2 said in Why does my 8bitdo and PS3 controllers randomly move?:
I have iBuffalo USB SNES controllers. I made a build for a co-worker...his does it too. He has Retroflag USB SNES controllers.
This kind of issue with the iBuffalo controllers has been reported and discussed multiple times in the past - it seems to be a controller issue. See for instance here.
-
@mitu you're spot on.. It is... and for the sake of closing this thread... it's not Retropie (as you already know)...
I just bought the new "The C64" (full-size)... plugged in my iBuffalo SNES... and it does the same thing. Randomly moves.
Thanks as always for the reply and thread reference.
-
Got my new power supply (3.1A 5v). Issue still happens with new power supply
-
I'll try to reproduce the issue with my PS3 controller. I have one, but it's not connected.
-
That was easier than I thought.
After configuring the controller on my Pi3, tried to scrape for more videos and the issue appeared during scraping - I think producing any load on the system triggers this when EmulationStation is started. So instead of using the videos in ES, I just re-ran Skyscraper in a loop, re-generating gamelists to produce load.
The ghost inputs appear also injstest
orevtest
- not onlysdl2-jstest
. Runningevtest
is actually easier to see the new inputs.What fixes it is lowering the BT baud rate (as mentioned in https://retropie.org.uk/docs/Bluetooth-Controller/, but it's line 27 not line 22 as mentioned there). Modify
/usr/bin/btuart
and lower it from the921600
to one of the values recommended (230400 or 115200). With115200
set, I think I had only 2 or 3 ghost inputs with more that 30 min of continuous testing. Give it a try and see if that makes a difference for your setup. -
@mitu said in Why does my 8bitdo and PS3 controllers randomly move?:
That was easier than I thought.
After configuring the controller on my Pi3, tried to scrape for more videos and the issue appeared during scraping - I think producing any load on the system triggers this when EmulationStation is started. So instead of using the videos in ES, I just re-ran Skyscraper in a loop, re-generating gamelists to produce load.
The ghost inputs appear also in jstest or evtest - not only sdl2-jstest. Running evtest is actually easier to see the new inputs.
What fixes it is lowering the BT baud rate (as mentioned in https://retropie.org.uk/docs/Bluetooth-Controller/, but it's line 27 not line 22 as mentioned there). Modify /usr/bin/btuart and lower it from the 921600 to one of the values recommended (230400 or 115200). With 115200 set, I think I had only 2 or 3 ghost inputs with more that 30 min of continuous testing. Give it a try and see if that makes a difference for your setup.That worked perfectly for me. 10 minutes and no ghost movements.
I'll let the people in /r/retropie know. Should make a lot of people happy :)
Thanks for looking in to this. I know you all have to be doing this on volunteer basis.
-
@mitu other than swapping transistors which that thread points to (I've already ordered them)... is there a null input value to set in a USB Joystick control file somewhere?
Maybe that could be added if not?
-
@jamrom2 said in Why does my 8bitdo and PS3 controllers randomly move?:
Maybe that could be added if not?
Not sure if I follow - you mean to disable the button inputs for EmulationStation ?
-
@mitu you know how some games allow you to set a 'null input' so that there is a little play in the input to the game? This is done with a lot of Flight Sim games so that you can make slight adjustments without the plane doing rolls or loops.
Maybe that's what it needs to void out the ghost inputs? I don't know if it's possible. Does ES just see an input value... or does it see an input based on a length of time or a set voltage value.
so if a ghost input is +.02 volts... and an actual press gives + 1.2 volts... you would set the null to ignore anything under +1.0 volts. Effectively ignoring the ghost input.
That's what the capacitor mod is doing to the controller. It's adding a higher filter to the input so more power is required.
-
@jamrom2 said in Why does my 8bitdo and PS3 controllers randomly move?:
so if a ghost input is +.02 volts... and an actual press gives + 1.2 volts... you would set the null to ignore anything under +1.0 volts. Effectively ignoring the ghost input.
It doesn't work like that. There is no method to know how much 'volts' trigger the input, in order to ignore it or not.
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.