12-12-2013, 11:39 AM
(This post was last modified: 12-12-2013, 03:17 PM by yetifrisstlama2.)
Hi,
I'm new here, so first of all a big thanks to Scarlet.Crush for that brilliant driver and for keeping it open source!
It turns out I also bought a fake PS3 controller without knowing. The thing looks absolutely genuie, until you open it and discover the blue battery pack without any warnings or labels on it.
I tried it with the current SCP driver:
While it works fine over USB, the driver just does not recognize the gamepad over Bluetooth.
I checked the .log file after a connection attempt and saw this:
Turns out that whoever made the controller, managed to put a spelling mistake in the Bluetooth ID.
As a workaround, I modified the following line in BthDevice.cs:
to
I think it would be a very helpful feature to make the Bluetooth ID user-configurable in the SCP driver. Maybe with a small config file.
But that was not the whole story, the driver was still hanging at:
Seems like the fake controllers do not answer to Service Channel Requests
I found a post, showing how to disable the relevant check in the code and ..voila.. Bluetooth worked perfectly.
However, I'm not sure what these Service Channel Requests are used for. Maybe Scarlet does know more about that.
So, if anyone is still having trouble with non-genuie PS3 controllers, I have attached the modified and compiled ScpControl.dll file. Just replace the original one and reinstall the drivers.
Hope it helps.
Cheers!
I'm new here, so first of all a big thanks to Scarlet.Crush for that brilliant driver and for keeping it open source!
It turns out I also bought a fake PS3 controller without knowing. The thing looks absolutely genuie, until you open it and discover the blue battery pack without any warnings or labels on it.
I tried it with the current SCP driver:
Code:
"SCP-DS3-Driver-Package-1.0.0.103.7z"
I checked the .log file after a connection attempt and saw this:
Code:
10/12/2013 00:56:02.253 -- Remote Name : 00:18:00:E9:D5:DB - PLAYSTATION(R)3Conteroller-ghic
10/12/2013 00:56:02.253 << HCI_Reject_Connection_Request [040A]
As a workaround, I modified the following line in BthDevice.cs:
Code:
if (Name == "PLAYSTATION(R)3 Controller" || Name == "Navigation Controller")
Code:
if (Name == "PLAYSTATION(R)3 Controller" || Name == "Navigation Controller" || Name.StartsWith("PLAYSTATION") )
I think it would be a very helpful feature to make the Bluetooth ID user-configurable in the SCP driver. Maybe with a small config file.
But that was not the whole story, the driver was still hanging at:
Code:
11/12/2013 01:34:36.935 << L2CAP_Connection_Request [02] PSM [01]
I found a post, showing how to disable the relevant check in the code and ..voila.. Bluetooth worked perfectly.
However, I'm not sure what these Service Channel Requests are used for. Maybe Scarlet does know more about that.
So, if anyone is still having trouble with non-genuie PS3 controllers, I have attached the modified and compiled ScpControl.dll file. Just replace the original one and reinstall the drivers.
Hope it helps.
Cheers!