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

    Dualshock 4 not connecting on boot.

    Scheduled Pinned Locked Moved Help and Support
    ds4drv
    28 Posts 5 Posters 10.0k 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.
    • M
      michaelconsorti
      last edited by michaelconsorti

      You can find out if it is running. After startup, you'll need to ssh into your raspberry pi and run the following command. Paste the output here.

      ps ax | grep python3

      N 1 Reply Last reply Reply Quote 0
      • N
        Naroth
        last edited by

        pi@retropie:~ $ ps ax | grep python3
        1024 pts/0 S+ 0:00 grep --color=auto python3
        pi@retropie:~ $

        that is what i get when i type in "ps ax | grep python3"

        1 Reply Last reply Reply Quote 0
        • N
          Naroth @michaelconsorti
          last edited by BuZz

          #!/bin/sh -e
          #
          # rc.local
          #
          # This script is executed at the end of each multiuser runlevel.
          # Make sure that the script will "exit 0" on success or any other
          # value on error.
          #
          # In order to enable or disable this script just change the execution
          # bits.
          # By default this script does nothing.
          /usr/local/bin/ds4drv --led 000008 &
          
           exit 0
          

          and thats how my local file looks..

          1 Reply Last reply Reply Quote 0
          • M
            michaelconsorti
            last edited by

            Based on the output of the of the command you ran, the script is not running. However, I'm not sure why it isn't running as your rc.local looks correct.

            If you cd to
            /usr/local/bin

            The script is there correct?

            1 Reply Last reply Reply Quote 0
            • N
              Naroth
              last edited by

              what do you mean cd? :P

              1 Reply Last reply Reply Quote 0
              • M
                michaelconsorti
                last edited by

                It's a unix command to change directory.

                ssh back into your retropie and type in

                cd /usr/local/bin

                then

                ls -lrta

                1 Reply Last reply Reply Quote 0
                • N
                  Naroth
                  last edited by

                  pi@retropie:/usr/local/bin $ ls -lrta
                  total 12
                  drwxrwsr-x 10 root staff 4096 Sep 23 02:20 ..
                  -rwxr-xr-x 1 root staff 217 Jan 7 15:13 ds4drv
                  drwxrwsr-x 2 root staff 4096 Jan 7 15:13 .

                  1 Reply Last reply Reply Quote 0
                  • M
                    michaelconsorti
                    last edited by

                    Everything looks OK there too. Does your rc.local file have '#' symbols before some of the lines. i.e.

                    #This script is executed at the end of each multiuser runlevel.

                    1 Reply Last reply Reply Quote 0
                    • N
                      Naroth
                      last edited by

                      yes, the only lines that doesnt have it is

                      /usr/local/bin/ds4drv &
                      exit 0

                      1 Reply Last reply Reply Quote 0
                      • N
                        Naroth
                        last edited by

                        Anyone got any idea?

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

                          if it's not launching from /etc/rc.localthen you will probably find it is failing in some way. Run it manually from terminal with

                          /usr/local/bin/ds4drv
                          

                          and see if you get any errors.

                          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

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

                            @Naroth Format code in code blocks - http://commonmark.org/help/ - otherwise # symbols will be translated to styling. See your previous posts (I edited the one with /etc/rc.local as an example).

                            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

                            1 Reply Last reply Reply Quote 0
                            • N
                              Naroth @BuZz
                              last edited by

                              @BuZz it works if i run it manually.

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

                                @Naroth check /var/log/syslog for errors. make sure /etc/rc.local has executable permissions too. you could output errors to a log /usr/local/bin/ds4drv 2>/var/log/ds4drv.log & and then check that

                                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

                                N 1 Reply Last reply Reply Quote 0
                                • N
                                  Naroth @BuZz
                                  last edited by

                                  @BuZz will do when i get home. don't know how to check if it /etc/rc/local has persmissions though, so new at this. lol

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

                                    @Naroth ls -l /etc/rc.local

                                    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

                                    N 1 Reply Last reply Reply Quote 0
                                    • N
                                      Naroth @BuZz
                                      last edited by

                                      @BuZz

                                      this is what i get when running those commands

                                      pi@retropie:~ $ ls -l /etc/rc.local
                                      -rwxr-xr-x 1 root root 333 Jan 11 22:16 /etc/rc.local
                                      pi@retropie:~ $ /var/log/syslog
                                      -bash: /var/log/syslog: Permission denied
                                      pi@retropie:~ $ /usr/local/bin/ds4drv 2>/var/log/ds4drv.log &
                                      [1] 1239
                                      pi@retropie:~ $ -bash: /var/log/ds4drv.log: Permission denied

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

                                        @Naroth Format your posts as I have already detailed.

                                        permissions on /etc/rc.local are ok

                                        I didn't say to type the other things. The line /usr/local/bin/ds4drv 2>/var/log/ds4drv.log & is supposed to be in /etc/rc.local (before the exit 0)

                                        You can then check the log by typing cat /var/log/ds4drv.log

                                        Recommend you do some reading on using the terminal. some info here - https://github.com/retropie/retropie-setup/wiki/ssh and lots of tutorials online.

                                        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

                                        N 1 Reply Last reply Reply Quote 0
                                        • N
                                          Naroth @BuZz
                                          last edited by

                                          @BuZz

                                          yeah as i said i know nothing about this.. but i added "/usr/local/bin/ds4drv 2>/var/log/ds4drv.log &" in /etc/rc.local
                                          then i ran "cat /var/log/ds4drv.log" and i got pi@retropie:~ $ cat /var/log/ds4drv.log
                                          cat: /var/log/ds4drv.log: No such file or directory

                                          1 Reply Last reply Reply Quote 0
                                          • E
                                            elshiftos
                                            last edited by

                                            When I have this in rc.local:
                                            /usr/local/bin/ds4drv --led 000008 &
                                            exit 0

                                            I get this error when booting into the CLI:
                                            [ OK ] Started Getty on tty1.
                                            [ OK ] Reached target Login Prompts.
                                            [ OK ] Started LSB: Start NTP daemon.
                                            [error][daemon] 'hcitool clock' returned error. Make sure your bluetooth device is powered up with 'hciconfig hciX up'.
                                            [ OK ] Started LSB: start Samba daemons for the AD DC.
                                            [ OK ] Started LSB: start Samba NetBIOS nameserver (nmbd).
                                            Starting LSB: start Samba SMB/CIFS daemon (smbd)...
                                            [ OK ] Started Configure Bluetooth Modems connected by UART.
                                            Starting Load/Save RF Kill Switch Status of rfkill1...
                                            Starting Bluetooth service...
                                            [ OK ] Started Load/Save RF Kill Switch Status of rfkill1.
                                            [ OK ] Started Bluetooth service.

                                            Try setting your Pi to boot into the CLI and see if you have the same error.

                                            It looks to me like something to do with BT isn't initializing in time for the rc.local entry. Does anyone know why this might be and how to rectify it?

                                            Thanks

                                            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.