Two PS3 controllers over Bluetooth issue

Home Forums RetroPie Project Everything else related to the RetroPie Project Two PS3 controllers over Bluetooth issue

RetroPie has a new website and forum. Please visit https://retropie.org.uk/ for the new site. The new forum is located at https://retropie.org.uk/forum/. This forum is left here as a read-only archive.

This topic contains 16 replies, has 7 voices, and was last updated by Profile photo of prinler prinler 3 years, 1 month ago.

Viewing 17 posts - 1 through 17 (of 17 total)
  • Author
    Posts
  • #3708
    Profile photo of motorhead
    motorhead
    Participant

    Hi! I have two PS3 controllers working over bluetooth, it looks like it’s working fine, but when the game starts it’s like there are missing commands, sometimes the character doesn’t move, or the movements are stuck. The thing is that I can’t play with two players at the same time. If there is only one player playing but with two controllers connected it’s the same, it isn’t working fine. Any ideas??

    #3759
    Profile photo of motorhead
    motorhead
    Participant

    Hi! Someone has ps3 controllers working over USB?? Im trying to solve this, I want to try controolers over usb and if the problem dissapears, maybe the problem is the bluetooth dongle…

    #3829
    Profile photo of atherisavidi
    atherisavidi
    Participant

    I’m having trouble getting one controller working via USB :/ – I receive a script error [a]

    #3868
    Profile photo of motorhead
    motorhead
    Participant

    Hi! I got 2 ps3 controllers working using USB following this tutorial:

    http://blog.petrockblock.com/2013/12/02/retropie-autoconfig-functionality/

    You can use my ps3 config file, unzip and leave it here:

    /home/pi/RetroPie/emulators/RetroArch/configs/

    Then you need to modify ES_input.cfg in /home/pi/.emulationstation, add this:

    <inputConfig type=”joystick” deviceName=”Sony PLAYSTATION(R)3 Controller”>
    <input name=”a” type=”button” id=”13″ value=”1″ />
    <input name=”b” type=”button” id=”14″ value=”1″ />
    <input name=”menu” type=”button” id=”16″ value=”1″ />
    <input name=”pagedown” type=”button” id=”10″ value=”1″ />
    <input name=”pageup” type=”button” id=”11″ value=”1″ />
    <input name=”select” type=”button” id=”0″ value=”1″ />
    <input name=”down” type=”button” id=”6″ value=”1″ />
    <input name=”left” type=”button” id=”7″ value=”-1″ />
    <input name=”right” type=”button” id=”5″ value=”1″ />
    <input name=”up” type=”button” id=”4″ value=”-1″ />
    </inputConfig>

    The last step is to modify retropie.cfg at /home/pi/RetroPie/configs/all, add this:

    input_player1_joypad_index = “0”
    input_player1_a_btn = “13”
    input_player1_b_btn = “14”
    input_player1_x_btn = “12”
    input_player1_y_btn = “15”
    input_player1_l_btn = “10”
    input_player1_r_btn = “11”
    input_player1_l2_btn = “8”
    input_player1_r2_btn = “9”
    input_player1_l3_btn = “1”
    input_player1_r3_btn = “2”
    input_player1_start_btn = “3”
    input_player1_select_btn = “0”
    input_player1_left_btn = “7”
    input_player1_up_btn = “4”
    input_player1_right_btn = “5”
    input_player1_down_btn = “6”
    input_player1_l_x_plus_axis = “+0”
    input_player1_l_y_plus_axis = “+1”
    input_player1_l_x_minus_axis = “-0”
    input_player1_l_y_minus_axis = “-1”
    input_player1_r_x_plus_axis = “+2”
    input_player1_r_y_plus_axis = “+3”
    input_player1_r_x_minus_axis = “-2”
    input_player1_r_x_minus_axis = “-3”

    input_player2_joypad_index = “1”
    input_player2_a_btn = “13”
    input_player2_b_btn = “14”
    input_player2_x_btn = “12”
    input_player2_y_btn = “15”
    input_player2_l_btn = “10”
    input_player2_r_btn = “11”
    input_player2_l2_btn = “8”
    input_player2_r2_btn = “9”
    input_player2_l3_btn = “1”
    input_player2_r3_btn = “2”
    input_player2_start_btn = “3”
    input_player2_select_btn = “0”
    input_player2_left_btn = “7”
    input_player2_up_btn = “4”
    input_player2_right_btn = “5”
    input_player2_down_btn = “6”
    input_player2_l_x_plus_axis = “+0”
    input_player2_l_y_plus_axis = “+1”
    input_player2_l_x_minus_axis = “-0”
    input_player2_l_y_minus_axis = “-1”
    input_player2_r_x_plus_axis = “+2”
    input_player2_r_y_plus_axis = “+3”
    input_player2_r_x_minus_axis = “-2”
    input_player2_r_x_minus_axis = “-3”

    #3980
    Profile photo of farhax
    farhax
    Participant

    Hi! I got 2 ps3 controllers working using USB following this tutorial:

    Cool, but how did go over bluetooth?
    I can run one controller at a time aswell.

    The autoscript didnt work so i combined it using this tutorial.
    https://github.com/retropie/RetroPie-Setup/wiki/Setting-up-a-PS3-controller
    Note. Files were added in : /home/pi/RetroPie/supplementary

    I really want to be able to run it wireless.
    sudo jstest /dev/input/js0 works for only one, there is no js1.

    #4006
    Profile photo of motorhead
    motorhead
    Participant

    If you have one ps3 controller working over bluetooth, you only need to parse the second controller like the first, but with the first desconected I mean… and modify retropie.cfg for adding player 2.

    #4321
    Profile photo of flipbug
    flipbug
    Participant

    I’ve setup my PS3 controller via the script in retropie-setup.sh. Unfortunately if you run it for both controllers it seems to overwrite the setup for the first one. I need help getting my second controller paired.

    atherisavidi: Do you still need help with the script error? I have the solution – reinstall ES-Config via Install From Source in retropie-setup.sh

    #4431
    Profile photo of motorhead
    motorhead
    Participant

    Hi! the retropie setup is only for usb controllers, and you only need to run it once. If you want to use ps3 controllers using bluethooth, you must follow this:

    https://github.com/retropie/RetroPie-Setup/wiki/Setting-up-a-PS3-controller

    When you get the first one working, just parse the second one and it’s all…

    #4704
    Profile photo of
    Anonymous

    I’m having the same issue flipbug. As soon as I connect one of the controllers the other won’t connect. They both work independently of each other. It just never creates a js1 in /dev/input. No matter how many times I connect it and run sudo ./sixpair and then sudo sixad -s. I’ve tried connecting one and then running through the same steps with the second controller, but it only overwrites js0.

    What do you mean exactly when you say “parse the second one”?

    #4736
    Profile photo of wrichards
    wrichards
    Participant

    “If you have one ps3 controller working over bluetooth, you only need to parse the second controller like the first, but with the first desconected I mean… and modify retropie.cfg for adding player 2.”

    ok first off hello and thank you for getting me this far… I want 2 working ps3 wireless controllers to work…

    Im at this stage and stuck: I have two controllers paired in sixad, on start up of retropie, I can choose either controler and press the ps button to pair it and it works fine for one player…. both controlers are capable of working as single player on start up… I can press the ps button on the second controller and I see it blink briefly then pair. but it is not working on menues or in game… interestingly if I start up for example an atarti2600 game then open the in game menu “f1” I see controller 1 as playstation controler etc, I then can change the player 2 controller to playstation, and when I go back in game the one controler is playing both players in game..

    at this point I think im very close, I need to somehow have sixad uniquly register each controler.

    ok I can not find jtest on my system, Ive loaded it, it says its there, but I cant sudo jtest /dev/input/js0(x) what/where is the command for this?

    setup in menu to config, ONLY recognizes the first paird controler, never the second. Ive tryed adding MAC address to the two controller sections in es_input, ive edited the “all” config etc.

    I think the real problem is the bluetooth (which is working great (asus)) and sixad is not understanding that there are 2 controlers. I start one first making sure its paired befor starting the other. Ive trying starting pairing before, during and after exiting retropie, nothing changes.

    so I guess what im asking is… whats left to check? both pair and are the SAME address as blutooth when I sudo ./sixpair.

    I guess I need a detailed walk through of the “need to parse the second controller like the first”

    I SOOO CLOSE!!! help me PLEASE ( tearing out hair)

    thanks in advance for responses… and believe me Ive got a dozen web pages up from forums trying to peice this together.. am soo close… ARG!!!

    ill be very happy to post any config files or whatnot…

    ADDITIONAL INFO: both p1 and p2.cfg are identical w exception of joypad_index = “0” and “1” respectivly, wondering if they need to be “00” and “01”

    #4813
    Profile photo of wrichards
    wrichards
    Participant

    ok nailed it! found this that solved it.. knew it was somthing deeper…

    found this at the end of dhoium3009.wordpress.com link

    Michael
    on February 9, 2014 at 6:28 am said:
    SOLVED! Here’s the forum post that saved my life:

    The error message “unable to connect to sdp session” is because the newer version of bluetoothd is not running the sdp socket in udev mode. Running the bluetoothd daemon without ‘–udev’ will not allow the PS3 controller to connect. I believe it has to do with the protocol Sony is using. The sdp session is used by sixad to determine which controller type is connected over bluetooth. If anyone wants to research how to get the sdp running in udev mode please do.

    For myself I modified the source code to ignore the controller type. Since I’m only using a PS3 controller I don’t care about the others. Here is how to modify the code. Assuming you already have the source code installed.

    In directory ‘QtSixA-1.5.1/sixad’ edit the file ‘bluetooth.cpp’. Change line #218 in the ‘l2cap_accept’ function.

    OLD:
    if (!legacy && req.vendor == 0x054c && req.product == 0×0268) {
    NEW:
    if (!legacy) {

    Next run the ‘make’ command. Followed by the ‘sudo make install’ command.

    Remember to restart the service or reboot the RPi.

    FINALY FINALY FINALY!!!!

    #4831
    Profile photo of
    Anonymous

    Can’t wait to try this! I’m nearly hairless as well!

    #4835
    Profile photo of wrichards
    wrichards
    Participant

    yea it was weird… on the next rebot the friggin controllers came alive! they blinked, RUMBELED! and leds setteled on the #1 and #2 lights…. HAPPY FACE!!! only other thing I had to do was add the MAC addresses at the end of the descriptions of joysticks in the es_input.cfg

    anyway last step for me to set the analog sticks… thanks again to everyone who worked on this solution. I do understand the effort it takes to do this stuff..

    #4901
    Profile photo of
    Anonymous

    When I try to run ‘make’ after editing the file, It throws back a syntax error wherever there is a ‘(‘. Also, how are you entering the MAC address in es_input.cfg? Sorry, not sure which line you were referring too. Could you maybe even share your es_input.cfg?

    Here’s an image of the error I get when running ‘make’

    Sent from my iPhone using Tapatalk

    #4914
    Profile photo of wrichards
    wrichards
    Participant

    here you go…

    <?xml version=”1.0″?>
    <inputList>
    <inputConfig type=”keyboard”>
    <input name=”a” type=”key” id=”13″ value=”1″ />
    <input name=”b” type=”key” id=”8″ value=”1″ />
    <input name=”down” type=”key” id=”274″ value=”1″ />
    <input name=”left” type=”key” id=”276″ value=”1″ />
    <input name=”menu” type=”key” id=”303″ value=”1″ />
    <input name=”pagedown” type=”key” id=”281″ value=”1″ />
    <input name=”pageup” type=”key” id=”280″ value=”1″ />
    <input name=”right” type=”key” id=”275″ value=”1″ />
    <input name=”up” type=”key” id=”273″ value=”1″ />
    </inputConfig>
    <inputConfig type=”joystick” deviceName=”PLAYSTATION(R)3 Controller (38:C0:96:A4:22:C5)”>
    <input name=”a” type=”button” id=”14″ value=”1″ />
    <input name=”b” type=”button” id=”13″ value=”1″ />
    <input name=”down” type=”button” id=”6″ value=”1″ />
    <input name=”left” type=”button” id=”7″ value=”-1″ />
    <input name=”menu” type=”button” id=”16″ value=”1″ />
    <input name=”pagedown” type=”button” id=”9″ value=”1″ />
    <input name=”pageup” type=”button” id=”11″ value=”1″ />
    <input name=”right” type=”button” id=”5″ value=”1″ />
    <input name=”select” type=”button” id=”0″ value=”1″ />
    <input name=”up” type=”button” id=”4″ value=”1″ />
    </inputConfig>
    <inputConfig type=”joystick” deviceName=”PLAYSTATION(R)3 Controller (00:26:43:66:C1:4B)”>
    <input name=”a” type=”button” id=”14″ value=”1″ />
    <input name=”b” type=”button” id=”13″ value=”1″ />
    <input name=”down” type=”button” id=”6″ value=”1″ />
    <input name=”left” type=”button” id=”7″ value=”-1″ />
    <input name=”menu” type=”button” id=”16″ value=”1″ />
    <input name=”pagedown” type=”button” id=”9″ value=”1″ />
    <input name=”pageup” type=”button” id=”11″ value=”1″ />
    <input name=”right” type=”button” id=”5″ value=”1″ />
    <input name=”select” type=”button” id=”0″ value=”1″ />
    <input name=”up” type=”button” id=”4″ value=”1″ />
    </inputConfig>
    </inputList>

    #4915
    Profile photo of
    Anonymous

    It’s interesting that both of you controllers get unique MAC addresses, whenever I pair my controllers they both get the same one. I have feeling something may have gone wrong for me in one of the setup steps. Thank you for sharing.

    #5564
    Profile photo of prinler
    prinler
    Participant

    I still can not get this to work! I have edited the bluetooth.cpp and remade it. Rebooted. Stopped the sixad and restarted it… still tells me “unable to connect to sdp session”
    I try over and over and it still will not connect. The remote blink and blinks. I press it over and over nothing seems to work.
    I tried the Retropie image and raspian then compiled the retropie for 10+ hours. Still nothing.
    Any one help me out?

Viewing 17 posts - 1 through 17 (of 17 total)

Forums are currently read only - please visit the new RetroPie forums at https://retropie.org.uk/forums/

Skip to toolbar