PS3 Controller worked before 4.x now it doesn't (correctly)
-
Retropie 4.2.2
Pi 3
4.0 was installed from sd image and upgraded to 4.1 then 4.2 then 4.2.2
PS3 compatible controller (bluetooth)
I use a desktop USB charger as a power supply to power the PI and a charger for the controllers. It's 5v and 3 or 4 amp IIRC.
There are no overtemp or low power icons when using the PI.
I have it moderately overclocked for months with no issues and very stable. (Other then controller of course)I have looked all over for ways to fix this issue for the last month on and off and have been coming up short.
I have a PS3 compatible controller (not Sony) that works with the official ps3 drivers and even the gasia drivers. It pairs just fine, it works with games and everything just fine, BUT, when the controller goes to sleep, it usually will no longer connect. I have had it reconnect randomly, but most times it searches and then quits. Very aggrivating when i'm in a game and walk away and come back because I have to reboot the whole system to get it to work with the controller again.The controller worked flawlessly in 3.6 before I upgraded to 4. This only started happening since the upgrade. I thought maybe something went wrong so i did the 4.0 SD image. I have tried removing and reinstalling the drivers. I have tried using PS3 or Gasia clone drivers, both work with the controller. I did the upgrades hoping that it was some bug in the system.
Something to note, when I first upgraded to 4.0 I couldn't even get the controller to pair at all. Not sure what I did to fix that problem.I am at a loss for what to try next and am hoping that someone here can get me pointed in the right direction.
I am pretty sure I've included needed information but if i'm missing something please let me know.
Thank you for your time.Edit - just tried something else, if i connect the controller on startup then disconnect it, i can't reconnected it at all after that.
-
I am having this exact same problem, the only difference is I am currently running 4.1. I have multiple Gasia controllers that I have used in the past and they has reconnected just fine after they went to "sleep" during a game. But now they will not reconnect if any emulator is running, the will just continually blink as if searching for a connection. If I do kill the emulator and go back to the ES screen they will still not connect. I have tried uninstalling and resinstalling drivers, and resetting the signal on the controllers with a paper clip. Neither of these methods worked.
Also, when I restart due to the controller not connecting, it hangs at the following message:
STOPPED Configure Bluetooth Modems connected by UART
-
Not sure this helps either of you, but I had similar issues with my PS4 controller over Bluetooth. I decided to get the USB wireless dongle and try that. It works perfectly and I have never had an issue since making the switch.
-
@TMNTturtlguy
Unfortunately due to my setup this wouldn't be a good solution as it would use up a precious usb slot. I have 4 usb available on the front of my unit and two are used already, leaving two for wired controllers. This is where the bluetooth comes in, allowing me to have 4 players.I haven't made any progress yet as I've been busy with work. If I make any discoveries I'll be sure to post here with the results. Looks like for now I'll be stuck with the wired controllers or just don't let the BT ones goto sleep.
-
@c_death another option is a powered usb hub. you might not want that, but it would work.
-
Still trying to figure out this issue as well. I have a keyboard hooked up aside from the controllers so I have a backup option. However the problem I have is that once I try to reconnect the PS3 controller in-game, it will constantly blink like it's looking for a connection and it will not stop until I reboot the pi. It's not like it will search, fail to find a connection, and then go back to sleep (which would seem like the logical behaviour is the service was unavailable).
Now if the controller goes to sleep while I have a emulator running, I can simply exit the emulator using the keyboard, and then the controller will reconnect at the Emulation Station menu. It just won't reconnect while an emulator is running - if I make the mistake of trying to do this, I have to reboot the pi.
I just can't figure out what would be preventing the controller from reconnecting while an emulator is running. Will continue to look into this.
-
And again, every time I try to shutdown or reboot while the controller is searching, it will hang at the following message:
STOPPED Configure Bluetooth Modems connected by UART
Which would mean the the service is running, correct?
-
@TMNTturtlguy
I should of mentioned that I actually am using a powered hub, but due to it's position the one free port is obstructed by the case i have everything put into. But the hub is not in play for any controllers as I wanted to ensure there would be no problems.@Machtroid
Interesting, I'm pretty sure I have seen mine say bluetooth service is stopped on startup. It is my understanding that the bluetooth service is actually for other things and NOT controllers (at least not ps3). Maybe that is causing an issue for you. I do not have any hangups on restart however. -
@Machtroid
I just reread this post. This is different then my behavior. Once the controller goes to sleep it won't reconnect at all ever after It was gone to sleep in game. It does seem to reconnect on occasion outside of games, but only if i hadn't played a game. Very odd behavior.
I may have some time tomorow to take some more time to look at it. -
Ok so i've found where the ps3 log file is. Also I have two controllers and as soon as one connects, the other controller does not. Swapped controllers with the same result. Here is the log, seems like the system is having a problem with the bluetooth adapter?
ok well it won't let me upload so here is some things it says.
No bluetooth adapter found on the system: will try again in 1 second.
No bluetooth adapter found on the system: will try again in 1 second.
No bluetooth adapter found on the system: will try again in 1 second.
No bluetooth adapter found on the system: will try again in 1 second.
No bluetooth adapter found on the system: will try again in 1 second.
Terminated
No bluetooth adapter found on the system: will try again in 1 second.
No bluetooth adapter found on the system: will try again in 1 second.
No bluetooth adapter found on the system: will try again in 1 second.
No bluetooth adapter found on the system: will try again in 1 second.
No bluetooth adapter found on the system: will try again in 1 second.
Starting bluetooth: bluetoothd
Watching..(5s)
Sixad-bin[850]: started
Sixad-bin[850]: sixad started, press the ps button now
Watchdog: PSCAN not set, resetting
Sixad-bin[850]: done
Sixad-sixaxis[1063]: started
Sixad-sixaxis[1063]: Connected 'PLAYSTATION(R)3 Controller
This is all i get over and over when restarting the system and connecting a controller
Edit
Here are some more log entries after trying to connect the controller again
Sixad-sixaxis[1063]: bad sixaxis buffer (out of battery?), disconnecting now...
Sixad-bin[5433]: unable to connect to sdp session
Sixad-bin[5433]: unable to connect to sdp session
Sixad-bin[5433]: HID create error 104 (connection reset by peer)
Sixad-bin[5433]: unable to connect to sdp session
Sixad-bin[5433]: unable to connect to sdp session
Sixad-bin[5433]: HID create error 110 (connection Timed out)
Sixad-bin[5433]: unable to connect to sdp session
Sixad-bin[5433]: HID create error 107 (connection Endpoint is not connected)Edit2
So I think I have finally found the problem. After looking at the logfiles (/var/log/syslog) it seems that after alllllll this time I've been using the WRONG DRIVERS. I thought I had tested them all, but apparently not. But maybe because I also updated to 4.2.3.
Anyway, the log shows the controller connecting via USB and shows the type of controller, in my case Gasia, Co. So I removed all the PS3 drivers and reinstalled and paired the controllers and now both are connecting and show being disconnected in the logs, where as before they were not showing any log entries.So moral of the story, log files are there to help you out. Just wish I had known where they were or what was generated.
-
@c_death Glad you got it figured out. I got mine figured out as well. I had to follow the instructions here:
https://github.com/RetroPie/RetroPie-Setup/wiki/Bluetooth-Controller
Under the Keep bluetooth scanning part I had to add the line "sudo hciconfig hci0 up piscan" to sudo nano /etc/init.d/rc.local
Now it picks it back up every time it goes to sleep.
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.