RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Bluetooth no longer working after fresh install

    Scheduled Pinned Locked Moved Help and Support
    bluetooth8bitdo sn30 pro
    60 Posts 6 Posters 5.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      charleszimm @psyke83
      last edited by

      @psyke83 Okay finally got to it. Sorry for the delay.

      When I went to remove the controller through bluetoothctl, this happened:

      [bluetooth]# devices
      Device 98:B6:E9:42:4B:35 Pro Controller
      [bluetooth]# remove 98:B6:E9:42:4B:35
      [DEL] Device 98:B6:E9:42:4B:35 Pro Controller
      Device has been removed
      [DEL] Controller B8:27:EB:81:C7:4C theaterretropie [default]
      Waiting to connect to bluetoothd...

      I check the bluetooth.service status and crashy crash crash.

      pi@theaterretropie:~ $ systemctl status bluetooth.service
      ● bluetooth.service - Bluetooth service
      Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
      Active: failed (Result: signal) since Wed 2019-02-20 08:01:45 EST; 1min 32s ago
      Docs: man:bluetoothd(8)
      Main PID: 571 (code=killed, signal=SEGV)
      Status: "Running"

      Feb 20 08:01:10 theaterretropie bluetoothd[571]: Can't get HIDP connection info
      Feb 20 08:01:15 theaterretropie bluetoothd[571]: connect error: Host is down (112)
      Feb 20 08:01:21 theaterretropie bluetoothd[571]: Can't get HIDP connection info
      Feb 20 08:01:27 theaterretropie bluetoothd[571]: connect error: Host is down (112)
      Feb 20 08:01:32 theaterretropie bluetoothd[571]: Can't get HIDP connection info
      Feb 20 08:01:38 theaterretropie bluetoothd[571]: connect error: Host is down (112)
      Feb 20 08:01:43 theaterretropie bluetoothd[571]: Can't get HIDP connection info
      Feb 20 08:01:45 theaterretropie systemd[1]: bluetooth.service: Main process exited, code=killed, status=11/SEGV
      Feb 20 08:01:45 theaterretropie systemd[1]: bluetooth.service: Unit entered failed state.
      Feb 20 08:01:45 theaterretropie systemd[1]: bluetooth.service: Failed with result 'signal'.

      I restart bluetooth.service and no errors:

      pi@theaterretropie:~ $ sudo systemctl start bluetooth.service
      pi@theaterretropie:~ $ systemctl status bluetooth.service
      ● bluetooth.service - Bluetooth service
      Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
      Active: active (running) since Wed 2019-02-20 08:03:30 EST; 5s ago
      Docs: man:bluetoothd(8)
      Main PID: 29848 (bluetoothd)
      Status: "Running"
      CGroup: /system.slice/bluetooth.service
      └─29848 /usr/lib/bluetooth/bluetoothd

      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: Starting SDP server
      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: Bluetooth management interface 1.14 initialized
      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: Failed to obtain handles for "Service Changed" characteristic
      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: setsockopt(L2CAP_OPTIONS): Invalid argument (22)
      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: avrcp-controller: Protocol not supported (93)
      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: setsockopt(L2CAP_OPTIONS): Invalid argument (22)
      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: audio-avrcp-target: Protocol not supported (93)
      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: Sap driver initialization failed.
      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: sap-server: Operation not permitted (1)
      Feb 20 08:03:30 theaterretropie bluetoothd[29848]: Failed to set privacy: Rejected (0x0b)

      Some of those things don't look good but I continue forward. I go back into bluetoothctl and start the scan (I won't post all of the MAC address that it finds since it obviously finds everything that has Bluetooth enabled in the house, but just the SN30 Pro)

      [bluetooth]# devices
      [bluetooth]# scan on
      [NEW] Device 98:B6:E9:42:4B:35 Pro Controller
      [bluetooth]# connect 98:B6:E9:42:4B:35
      Attempting to connect to 98:B6:E9:42:4B:35
      [CHG] Device 98:B6:E9:42:4B:35 Connected: yes
      [CHG] Device 98:B6:E9:42:4B:35 Connected: no
      Failed to connect: org.bluez.Error.Failed
      [bluetooth]# info 98:B6:E9:42:4B:35
      Device 98:B6:E9:42:4B:35
      Name: Pro Controller
      Alias: Pro Controller
      Class: 0x002508
      Icon: input-gaming
      Paired: no
      Trusted: no
      Blocked: no
      Connected: no
      LegacyPairing: no
      RSSI: -77
      [bluetooth]# trust 98:B6:E9:42:4B:35
      [CHG] Device 98:B6:E9:42:4B:35 Trusted: yes
      Changing 98:B6:E9:42:4B:35 trust succeeded
      [bluetooth]# info 98:B6:E9:42:4B:35
      Device 98:B6:E9:42:4B:35
      Name: Pro Controller
      Alias: Pro Controller
      Class: 0x002508
      Icon: input-gaming
      Paired: no
      Trusted: yes
      Blocked: no
      Connected: no
      LegacyPairing: no

      At this point I try to turn the controller back on.

      [bluetooth]# connect 98:B6:E9:42:4B:35
      Attempting to connect to 98:B6:E9:42:4B:35
      [CHG] Device 98:B6:E9:42:4B:35 Connected: yes
      [CHG] Device 98:B6:E9:42:4B:35 Modalias: usb:v057Ep2009d0001
      [CHG] Device 98:B6:E9:42:4B:35 UUIDs: 00001124-0000-1000-8000-00805f9b34fb
      [CHG] Device 98:B6:E9:42:4B:35 UUIDs: 00001200-0000-1000-8000-00805f9b34fb
      [CHG] Device 98:B6:E9:42:4B:35 ServicesResolved: yes
      [CHG] Device 98:B6:E9:42:4B:35 Paired: yes
      Connection successful

      Success!

      So for entertainment sake, I turn off the controller.

      [Pro Controller]# info 98:B6:E9:42:4B:35
      Device 98:B6:E9:42:4B:35
      Name: Pro Controller
      Alias: Pro Controller
      Class: 0x002508
      Icon: input-gaming
      Paired: yes
      Trusted: yes
      Blocked: no
      Connected: yes
      LegacyPairing: no
      UUID: Human Interface Device... (00001124-0000-1000-8000-00805f9b34fb)
      UUID: PnP Information (00001200-0000-1000-8000-00805f9b34fb)
      Modalias: usb:v057Ep2009d0001

      It still showed connected which was weird. So I turned the controller back on and bluetoothctl updated with this:

      [CHG] Device 98:B6:E9:42:4B:35 ServicesResolved: no
      [CHG] Device 98:B6:E9:42:4B:35 Connected: no
      [CHG] Device 98:B6:E9:42:4B:35 Connected: yes

      I look up at the TV and the controller is working. I decided to reboot the Pi to see if the controller automatically syncs. It does!

      pi@theaterretropie:~ $ bluetoothctl
      [NEW] Controller B8:27:EB:81:C7:4C theaterretropie [default]
      [NEW] Device 98:B6:E9:42:4B:35 Pro Controller
      [CHG] Device 98:B6:E9:42:4B:35 Connected: yes

      So I'm not sure what this tells us. I started digging through the bluetooth.sh script under scriptmodules/supplementary directory to see if anything strikes me that could be causing it to get stuck between bluez, hcitool, and bluetoothctl.

      I did notice something weird though. If I go into RetroArch, it doesn't detect the controller as a "RetroPad" like it use to. Instead it is treating the controller as a keyboard but that might be a different topic for a different post.

      1 Reply Last reply Reply Quote 0
      • P
        psyke83 Global Moderator
        last edited by

        @charleszimm,

        Despite your success, some of your output is still concerning, and we still need to establish whether there's a potential problem in the Bluetooth script that needs addressing.

        A potential fix for the infinite hang has just been merged (https://github.com/RetroPie/RetroPie-Setup/pull/2625). Can you try updating your script to ensure you have this change, and then remove & re-register your device, but this time only using the Bluetooth script?

        C 2 Replies Last reply Reply Quote 0
        • C
          charleszimm @psyke83
          last edited by

          @psyke83 said in Bluetooth no longer working after fresh install:

          https://github.com/RetroPie/RetroPie-Setup/pull/2625

          Totally agree with the output concerns. I felt the same way which was why I started digging around the setup script. Give me a few minutes to update the script and remove the device from the bluetoothctl registration.

          1 Reply Last reply Reply Quote 0
          • C
            charleszimm @psyke83
            last edited by

            @psyke83 Update:

            Got the latest script and confirmed the commit times matched with the Github post.

            I no longer hang on "Searching..." so that's all good. It picked up the SN30 Pro, I got the prompt for the input mode, but then I get:

            "An error occurred connecting to the bluetooth device (Creating device failed: org.bluez.Error.AuthenticationFailed: Authentication Failed)"

            It shows as a registered device but so does every Bluetooth device in the house. The daemon.log shows:

            Feb 20 09:29:00 theaterretropie bluetoothd[545]: Refusing input device connect: No such file or directory (2)
            Feb 20 09:29:00 theaterretropie bluetoothd[545]: Refusing connection from 98:B6:E9:42:4B:35: unknown device
            Feb 20 09:29:06 theaterretropie bluetoothd[545]: 98:B6:E9:42:4B:35: error updating services: Host is down (112)
            Feb 20 09:31:43 theaterretropie bluetoothd[545]: Refusing input device connect: No such file or directory (2)
            Feb 20 09:31:43 theaterretropie bluetoothd[545]: Refusing connection from 98:B6:E9:42:4B:35: unknown device
            Feb 20 09:31:48 theaterretropie bluetoothd[545]: Refusing input device connect: No such file or directory (2)
            Feb 20 09:31:48 theaterretropie bluetoothd[545]: Refusing connection from 98:B6:E9:42:4B:35: unknown device

            Bluetoothctl shows the device. I try to start the controller up after the sync through the Setup Script and I no longer get stuck in the Connected yes/no loop, but I got automatically disconnected:

            pi@theaterretropie:~ $ bluetoothctl
            [NEW] Controller B8:27:EB:81:C7:4C theaterretropie [default]
            [NEW] Device 98:B6:E9:42:4B:35 Pro Controller
            [CHG] Device 98:B6:E9:42:4B:35 Connected: yes
            [CHG] Device 98:B6:E9:42:4B:35 Connected: no

            I checked info and it does show pair but not trusted. I decided to try to trust it but same connected yes/no:

            [bluetooth]# info 98:B6:E9:42:4B:35
            Device 98:B6:E9:42:4B:35
            Name: Pro Controller
            Alias: Pro Controller
            Class: 0x002508
            Icon: input-gaming
            Paired: yes
            Trusted: no
            Blocked: no
            Connected: no
            LegacyPairing: no
            [bluetooth]# trust 98:B6:E9:42:4B:35
            [CHG] Device 98:B6:E9:42:4B:35 Trusted: yes
            Changing 98:B6:E9:42:4B:35 trust succeeded
            [CHG] Device 98:B6:E9:42:4B:35 Connected: yes
            [CHG] Device 98:B6:E9:42:4B:35 Connected: no

            BuZzB 1 Reply Last reply Reply Quote 0
            • BuZzB
              BuZz administrators @charleszimm
              last edited by

              @charleszimm just to confirm, you're running latest firmware on controller and have powered on in the correct mode? Apologies if.you have already answered these. Gets confusing with multiple user issues on one thread :-)

              To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

              C 1 Reply Last reply Reply Quote 0
              • C
                charleszimm @BuZz
                last edited by

                @BuZz Yep updated and the SN30 Pro is on firmware 1.29 which is the latest firmware for it I can see on 8bitdo's site.

                BuZzB 1 Reply Last reply Reply Quote 0
                • BuZzB
                  BuZz administrators @charleszimm
                  last edited by

                  @charleszimm It might be worth trying to register/pair with different power on modes.

                  found this post - a little old but may be useful. https://retropie.org.uk/forum/topic/15201/8bitdo-sf30-pro-and-sn30-pro

                  To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                  C 1 Reply Last reply Reply Quote 0
                  • C
                    charleszimm @BuZz
                    last edited by

                    @BuZz I gave that a shot prior to trying to reaching out on here, but I just ran a quick test in Windows mode. Similar error in the Setup script:

                    "An error occurred connecting to the bluetooth device (Creating device failed: org.bluez.ErrorConnectionAttemptFailed: Page Timeout)"

                    1 Reply Last reply Reply Quote 0
                    • P
                      psyke83 Global Moderator
                      last edited by

                      @charleszimm

                      I think you're comfortable with using the terminal, so could you try reverting RetroPie-Setup to just before my recent major bluetooth changes and retry the same procedure (remove & register via the script only)?

                      You need to test before commit 12cb7eb1bc9d810e98adbc8ec7f9a8369ed1f25e, so:

                      git checkout 12cb7eb1bc9d810e98adbc8ec7f9a8369ed1f25e^
                      

                      To go back:

                      git checkout master
                      

                      Thanks.

                      C 1 Reply Last reply Reply Quote 0
                      • P
                        psyke83 Global Moderator
                        last edited by

                        @charleszimm said in Bluetooth no longer working after fresh install:

                        (Creating device failed: org.bluez.ErrorConnectionAttemptFailed: Page Timeout)

                        I also did a quick google of the error in conjunction with those controllers, and it does suggest that @buzz is correct that the boot method is related to your issue. See: https://www.reddit.com/r/RetroPie/comments/8pxe5d/help_with_8bitdo_n30_pro_bluetooth_gamepad/

                        Please keep us informed as to your results as we need to know if the recent Bluetooth changes need any more fixes.

                        1 Reply Last reply Reply Quote 0
                        • C
                          charleszimm @psyke83
                          last edited by

                          @psyke83 I should probably state at this point that I'm a Linux sys admin...but I'm also a Linux sys admin that doesn't do a lot with GitHub. Don't I need a branch or a repo for that command to work? When I run git checkout, I get this:

                          pi@theaterretropie:~ $ git checkout 12cb7eb1bc9d810e98adbc8ec7f9a8369ed1f25e
                          fatal: Not a git repository (or any of the parent directories): .git

                          Do I need to clone it first?

                          Also the boot mode and security type make no difference. I followed the link from Reddit and that just brings its back to the 8bitdo wiki page on the RetroPie GitHub. Those steps were tried (and remember originally didn't work because of the "Searching..." hang).

                          P 1 Reply Last reply Reply Quote 0
                          • P
                            psyke83 Global Moderator @charleszimm
                            last edited by psyke83

                            @charleszimm

                            No need to clone a new copy - simply make sure that you're in the same directory as the existing RetroPie-Setup script:

                            cd ~/RetroPie-Setup
                            git checkout 12cb7eb1bc9d810e98adbc8ec7f9a8369ed1f25e^
                            

                            Note that you omitted the caret to signify the commit preceding the commit specified, so make sure to include it (since you want to test the script right before that commit).

                            C 1 Reply Last reply Reply Quote 0
                            • C
                              charleszimm @psyke83
                              last edited by

                              @psyke83 Sorry for the delay. Here's the response:

                              pi@theaterretropie:~/RetroPie-Setup $ pwd
                              /home/pi/RetroPie-Setup
                              pi@theaterretropie:~/RetroPie-Setup $ git checkout 12cb7eb1bc9d810e98adbc8ec7f9a8369ed1f25e^
                              error: pathspec '12cb7eb1bc9d810e98adbc8ec7f9a8369ed1f25e^' did not match any file(s) known to git.

                              P 1 Reply Last reply Reply Quote 0
                              • P
                                psyke83 Global Moderator @charleszimm
                                last edited by

                                @charleszimm said in Bluetooth no longer working after fresh install:

                                git checkout 12cb7eb1bc9d810e98adbc8ec7f9a8369ed1f25e^

                                Huh that's odd. Try to fetch origin before checkout:

                                git fetch origin
                                

                                I just tried a fresh clone of the repo and was able to checkout that commit without any problem (on my Pi and laptop).

                                1 Reply Last reply Reply Quote 0
                                • C
                                  charleszimm
                                  last edited by

                                  I keep getting flagged as spam but tried the git fetch origin and then the commit point but same message. I recloned the entire RetroPie-Setup from GitHub and tried it again and got the same error.

                                  P 1 Reply Last reply Reply Quote 0
                                  • P
                                    psyke83 Global Moderator @charleszimm
                                    last edited by

                                    @charleszimm

                                    Not sure what's going on there, sorry. Perhaps the caret is causing issues somehow, so it might help to specify another commit that precedes the change. Try:

                                    git checkout 2c9fa79a1ae41c2988d21bd179c33ce515e29245
                                    
                                    C 1 Reply Last reply Reply Quote 0
                                    • C
                                      charleszimm @psyke83
                                      last edited by

                                      @psyke83 said in Bluetooth no longer working after fresh install:

                                      git checkout 2c9fa79a1ae41c2988d21bd179c33ce515e29245

                                      Nope.

                                      pi@theaterretropie:~/RetroPie-Setup $ git checkout 2c9fa79a1ae41c2988d21bd179c33ce515e29245
                                      fatal: reference is not a tree: 2c9fa79a1ae41c2988d21bd179c33ce515e29245

                                      P 1 Reply Last reply Reply Quote 0
                                      • P
                                        psyke83 Global Moderator @charleszimm
                                        last edited by

                                        @charleszimm said in Bluetooth no longer working after fresh install:

                                        @psyke83 said in Bluetooth no longer working after fresh install:

                                        git checkout 2c9fa79a1ae41c2988d21bd179c33ce515e29245

                                        Nope.

                                        pi@theaterretropie:~/RetroPie-Setup $ git checkout 2c9fa79a1ae41c2988d21bd179c33ce515e29245
                                        fatal: reference is not a tree: 2c9fa79a1ae41c2988d21bd179c33ce515e29245

                                        Very odd. Did you clone from a forked repository instead of the official one? What's the output of git remote -v in that folder?

                                        P.S. You should encapsulate code via the code tag icon in the editor to avoid the spam filter (and to keep the text tidy).

                                        C 1 Reply Last reply Reply Quote 0
                                        • C
                                          charleszimm @psyke83
                                          last edited by

                                          @psyke83 Oh yeah good point. It was more of a laziness thing on my part I won't lie. :-)

                                          pi@theaterretropie:~/RetroPie-Setup $ git remote -v
                                          origin	https://github.com/RetroPie/RetroPie-Setup.git (fetch)
                                          origin	https://github.com/RetroPie/RetroPie-Setup.git (push)
                                          
                                          P 1 Reply Last reply Reply Quote 0
                                          • P
                                            psyke83 Global Moderator @charleszimm
                                            last edited by psyke83

                                            @charleszimm said in Bluetooth no longer working after fresh install:

                                            @psyke83 Oh yeah good point. It was more of a laziness thing on my part I won't lie. :-)

                                            pi@theaterretropie:~/RetroPie-Setup $ git remote -v
                                            origin	https://github.com/RetroPie/RetroPie-Setup.git (fetch)
                                            origin	https://github.com/RetroPie/RetroPie-Setup.git (push)
                                            

                                            Really bizarre. The only possibility I can think of is that you somehow have a shallow copy of the repository, so it doesn't include the history of commits up to what we need.

                                            Make sure you're on the master branch, then try to force the whole history to be downloaded:

                                            git checkout master
                                            git pull --unshallow
                                            

                                            You can see what the oldest commit is via git log --reverse - in my case, it shows the very first commit to the repository from 2012.

                                            C 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            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.