ps3 bluetooth problem

This topic contains 14 replies, has 5 voices, and was last updated by  azaryc2s 2 years, 6 months ago.

Viewing 15 posts - 1 through 15 (of 15 total)
  • Author
    Posts
  • #89500

    umut
    Participant

    First off, this has become a really addicting forum for me (a relatively new Pi2 user). I started off with installing retropie 2.5 on my pi2 and nearly everything worked really good. I followed most of floob’s tutorials (which are really informative and good) and did the usual stuff like install the ps3 controller and roms etc. I managed to get 2 ps3 controllers working, wired and wireless.

    Yesterday i wanted to start fresh, i kind of experimented a lot with the 2.5 image and i was planning to get a neat emulationstation with only working roms etc. I used the new 2.6 image for Pi2 from this website.

    I did everything like last time (expand filesystem, overclock to pi2, install the ps3 controller through retropie_setup.sh, sixpair etc.), now my ps3 controller works if i keep it connected through usb but when i unplug it after a few seconds it pairs briefly wirelessly with my bluetooth dongle but the leds flash twice from 1 to 4 and the controller keeps vibrating. After a while all the leds stop and the connection is broken. I know there is a connection briefly because at the time it vibrates i can see through /dev/input ls that js0 is there.

    I tried a lot of things and even formatted and rewrote the 2.6 image twice but the problem persists. Does anyone recognizes this and does anyone knows what the problem might be? Thanks in advance

    Btw the sixaxis controllers are original and not china made

    #89502

    killer101
    Participant

    I had have an issue too with connecting wirelessly to a PS3 Controller. The hci was always down.

    Try adding these 2 lines before the line “exit 0” to the file etc/rc.local

    hciconfig hci0 up
    hciconfig hci0 piscan

    Fixed it for me!

    #89503

    umut
    Participant

    nope, like i said, it connects briefly so it can’t be a problem with the hciconfig, adding that didn’t make a difference, the leds keep flashing a few times from 1 to 4 and back and the controller vibrates and then shuts itself off.

    #89618

    umut
    Participant

    i have now find out with the command sixad –stop; sixad -s that after a brief connection it has something to do with bad sixaxis buffer:

    Bad Sixaxis buffer (out of battery?)

    I have charged both my controllers fully so it can’t be that. On the internet i saw more people had this problem, but i couldn’t find a solution, does anyone know a solution? is it a faulty bluetooth dongle? (bare in mind it worked with the retropie 2.5 version)

    #89865

    thewiep
    Participant

    I had the same problem.
    It worked fine under 2.5.0 on my Pi 2 with an original PS3 controller.
    Then did a clean install of 2.6.0 and it paired but after a reboot it just vibrated and blinked.
    I then tested with sixad -s like you posted and got the same message.

    I got it to work by reverting following commit:
    https://github.com/retropie/RetroPie-Setup/commit/a52118c97b4d9cf674392c1aedae92c1889d835e#diff-359bdced80f55957bff58044e064f3af
    You can just change following file:
    home/pi/RetroPie-Setup/scriptmodules/supplementary/ps3controller.sh

    then just start retropie_setup.sh and install the PS3 driver again.
    Pair it again and possibly you need to reboot once or twice before it really connects.

    #89920

    umut
    Participant

    Nope, it didn’t worked for me, it stays the same. My ps3controller.sh file is already the same as the one in the link you provided. I searched a bit more on that website and came across a compilation_sid.patch. The difference was only 2 lines (QtSixA-1.5.1.orig instead of a and another line). That also didn’t changed anything.

    Besides, when i change the file ps3controller.sh and then install the ps3 driver again via retropie_setup, it reverts the changes i made. i tried either way (with installing ps3 drivers after the changes and without installing ps3 drivers again and pairing after that), but it didn’t made a difference. Can you upload your ps3controller.sh so that i can use that or look at the differences?

    #89921

    thewiep
    Participant

    I cannot access that RPi now so will upload the file tomorrow if still needed.

    I did an additional step which I didn’t think was needed to mention..
    I actually created a copy of ps3controller.sh in the same folder and reverted the changes in the copied version.
    I also changed following entry in the copied version from
    rp_module_desc=”Install PS3 controller driver”
    to
    rp_module_desc=”Install PS3 controller driver – Mod”
    so I would recognize the difference between both when they show up in the menu.
    I then installed the driver again through the “Install PS3 controller driver – Mod” entry.

    #89976

    thewiep
    Participant

    I also forgot to add that I needed to perform the same action that was needed on 2.5.0.
    After pairing and restart it seems that sixad is started before bluetooth is up or bluetooth doesn’t come up at all.
    You need to do following in this order:
    sudo hciconfig hci0 up
    sudo /etc/init.d/sixad restart

    and then press the PS button on your controller and it should connect.

    You can automate it by doing following:
    sudo nano /etc/udev/rules.d/10-local.rules

    and add following line:
    ACTION==”add”, KERNEL==”hci0″, RUN+=”/usr/sbin/hciconfig hci0 up”

    save and reboot.

    #89980

    umut
    Participant

    Thanks, I will trie that tonight. Can you – to be sure – upload your file so I don’t have to worry about that?

    Thanks in advance

    #90004

    thewiep
    Participant

    it seems I renamed the original to ps3controller_orig.sh and modified ps3controller.sh.
    this is the contents of my ps3controller.sh

    rp_module_id="ps3controller"
    rp_module_desc="Install PS3 controller driver-mod"
    rp_module_menus="3+"
    rp_module_flags="nobin"
    
    function depends_ps3controller() {
        getDepends bluez-utils bluez-compat bluez-hcidump checkinstall libusb-dev libbluetooth-dev joystick
    }
    
    function sources_ps3controller() {
        wget -nv http://www.pabr.org/sixlinux/sixpair.c -O "$md_build/sixpair.c"
        wget -O- -q http://sourceforge.net/projects/qtsixa/files/QtSixA%201.5.1/QtSixA-1.5.1-src.tar.gz | tar -xvz --strip-components=1
    }
    
    function build_ps3controller() {
        gcc -o sixpair sixpair.c -lusb
        cd sixad
        make clean
        make CXX="g++-4.6" CXXFLAGS="-O2"
    }
    
    function install_ps3controller() {
        cd sixad
        checkinstall -y --fstrans=no
        update-rc.d sixad defaults
    
        md_ret_files=(
            'sixpair'
        )
    }
    
    function configure_ps3controller() {
        printMsgs "dialog" "Please make sure that your Bluetooth dongle is connected to the Raspberry Pi and press ENTER."
        if ! hciconfig | grep -q "BR/EDR"; then
            printMsgs "dialog" "Cannot find the Bluetooth dongle. Please try to (re-)connect it and try again."
            break
        fi
    
        printMsgs "dialog" "Please connect your PS3 controller via USB-CABLE and press ENTER."
        if $md_inst/sixpair | grep -q "Setting master"; then
            printMsgs "dialog" "Cannot find the PS3 controller via USB-connection. Please try to (re-)connect it and try again."
            break
        fi
    
        printMsgs "dialog" "The driver and configuration tools for connecting PS3 controllers have been installed. Please visit https://github.com/retropie/RetroPie-Setup/wiki/Setting-up-a-PS3-controller for further information."
    }
    

    also there seems to be a difference in users:

    -rw-r--r-- 1 root root 1.7K Mar  1 15:06 ps3controller.sh
    -rw-r--r-- 1 pi   pi   1.9K Mar  1 15:03 ps3controller_orig.sh

    it is still working fine for me even after quite some reboots 🙂

    #90024

    umut
    Participant

    nope, tried everything you wrote, even copy/pasted your ps3controller.sh but it didn’t changed anything. I keep getting the bad sixaxis buffer (out of battery?) when doing the sixad –stop en sixad –start commands. Both of my controllers keep vibrating and blinking in sequence from 1 to 4 and back and connection drops after that.

    #90050

    blockaboots
    Participant

    Im having the same issue as umut, getting annoyed with the ps3 pad now 🙁

    #90173

    thewiep
    Participant

    I don’t know what else to say 🙂

    For me it now just works..

    I did only test with 1 controller though.
    I also didn’t run the sixad command manually after re-installing..

    #90244

    umut
    Participant

    Finally after a lot of trial and error I got it fixed ! (after I nearly went to buy a new bluetooth adapter)

    This is how I fixed it:

    Via the retropie setup (RetroPie-Setup/retropie_setup.sh) menu I chose setup and after that I installed PS3 controller driver-mod 315 (instead of the usual ps3 controller driver 314). After it installed I did another sixpair command and after a reboot it worked (and it is still working). So I guess it had something to do with the original driver not being compatible with 2.6, it did however worked with 2.5.

    #97952

    azaryc2s
    Participant

    I found another solution for this problem. Simply edit the /etc/default/sixad file and set LEGACY=1. You won’t get the rumble on the controller, but at least it’ll work 🙂 (retropie 3.0 BETA).

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

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