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 9.9k 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.
    • N
      Naroth
      last edited by

      Hey. to start of i'm a complete beginner with raspberry pi.

      So. i followed the wiki to how to connect the DS4 with DS4DRV and i get it to connect using " dsd4drv --led 00008" but i dont seem to get it to work when i boot it up. i added the script in the local file but i must be doing something wrong as it doesnt work. so if anyone could just like take a screenshot of the local file so i just could replicate it id be over the moon. thanks :)

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

        Are you putting the DS4 controller in pairing mode (ps button + share) once you boot and is the LED blinking a light blue? Did you configure the script to run at startup in rc.local?

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

          @michaelconsorti

          yes and yes. but i guess i must've done something wrong in rc.local, so i'd be glad if someone could post exactly how it should look.

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

            anyone out there that can help ? =)

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

              Your rc.local could be different than someone else's. However, this is what is needed to get the d4drv script to run on startup. If while testing the --hidraw option was not working, then remove it from rc.local

              /usr/local/bin/ds4drv --hidraw --led 000008 &
              exit 0

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

                the weird thing is that mine is identical except the hidraw... so im kinda lost as to what the problem could be.. :(

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

                  What version of retropie are you running? And what happens when you try to pair the controller, does it just continue blinking?

                  1 Reply Last reply Reply Quote 0
                  • W
                    w3ss
                    last edited by w3ss

                    I have the exact same problem running retropie 4.1 without hidraw.

                    Can connect both remotes when starting the script manually but when rebooting in retropie noting is detected.

                    Maybe the script isn't starting in rc.local?

                    1 Reply Last reply Reply Quote 0
                    • 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
                                            • 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.