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

    PS4 controller not detected in Retropie 4.6 on Pi 4B

    Scheduled Pinned Locked Moved Help and Support
    ps4 controllerpi4 bretropie 4.6dualshock 4usb gamepad
    39 Posts 5 Posters 7.6k 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.
    • ?
      A Former User @mitu
      last edited by

      @mitu

      I type

      make && sudo make install
      

      And then reboot.

      When the system was reloaded again, I get "failed to retrieve feature report 0x81 with the DualShock 4 MAC address" in dmesg and I take a look a hid-sony.c patched and I not found this string in the file.

      1 Reply Last reply Reply Quote 0
      • mituM
        mitu Global Moderator
        last edited by

        Then the patching hasn't been successful, maybe the patch doesn't apply correctly to the current version of hid-sony. Do you get any errors after running the patch command ?

        ? 1 Reply Last reply Reply Quote 0
        • ?
          A Former User @mitu
          last edited by A Former User

          @mitu

          patching file hid-sony.c
          Hunk #1 succeeded at 476 (offset -28 lines).
          Hunk #2 succeeded at 2455 (offset -139 lines).
          Hunk #3 succeeded at 2524 (offset -139 lines).
          patch unexpectedly ends in middle of line
          Hunk #4 succeeded at 2564 with fuzz 1 (offset -139 lines).
          
          

          It seems ok.

          I have looked at the resulting hid-sony.c file and the new function appears and it seems that the rest of the things that have marked to remove on .diff file has been removed.

          $ make && sudo make install
          make -C /lib/modules/5.10.63-v7+/build M=/home/pi/hid-sony modules
          make[1]: Entering directory '/usr/src/linux-headers-5.10.63-v7+'
            CC [M]  /home/pi/hid-sony/hid-sony.o
            MODPOST /home/pi/hid-sony/Module.symvers
            CC [M]  /home/pi/hid-sony/hid-sony.mod.o
            LD [M]  /home/pi/hid-sony/hid-sony.ko
          make[1]:  Leaving directory '/usr/src/linux-headers-5.10.63-v7+'
          cp hid-sony.ko /lib/modules/5.10.63-v7+/kernel/drivers/hid/
          
          1 Reply Last reply Reply Quote 0
          • mituM
            mitu Global Moderator
            last edited by

            Looks like it the patch/install went ok, if it's still not working then maybe the patch is not enough for the controller.

            ? 1 Reply Last reply Reply Quote 0
            • ?
              A Former User @mitu
              last edited by A Former User

              @mitu

              I take a look at: https://github.com/soreau/hid-sony and I see a Reload module section.

              I try it and I get this:

              $ sudo rmmod hid_sony && modprobe hid-sony
              modprobe: ERROR: could not insert 'hid_sony': Operation not permitted
              

              How could I remove the module and add it again?

              I type:

              $ lsmod
              Module                  Size  Used by
              hid_sony               36864  0
              hidp                   24576  2
              cmac                   16384  1
              bnep                   20480  0
              hci_uart               40960  1
              btbcm                  16384  1 hci_uart
              bluetooth             393216  9 hidp,hci_uart,bnep,btbcm
              

              hid_sony is not use.

              1 Reply Last reply Reply Quote 0
              • mituM
                mitu Global Moderator
                last edited by

                @juanzt said in PS4 controller not detected in Retropie 4.6 on Pi 4B:

                sudo rmmod hid_sony && modprobe hid-sony

                This should be 'sudo rmmod hid_sony && sudo modprobe hid-sony, both operations require root` privileges.
                Restarting will take care of loading the updated module, so that's an option.

                ? 1 Reply Last reply Reply Quote 0
                • ?
                  A Former User @mitu
                  last edited by A Former User

                  @mitu

                  Thanks for the info.

                  I reboot several times and I type:

                  $ dkms status
                  hid-sony, 0.1.3, 5.10.63-v7+, armv7l: installed (original_module exists)
                  xpad, 0.4, 5.10.63-v7+, armv7l: installed (original_module exists)
                  
                  

                  Could it be possible that it does not load the module that I have compiled?

                  hid-sony.c doesn't contains "failed to retrieve feature report 0x81 with the DualShock 4 MAC address" string. Where dmesg take it from?

                  Regards.

                  mituM 1 Reply Last reply Reply Quote 0
                  • mituM
                    mitu Global Moderator @A Former User
                    last edited by

                    @juanzt said in PS4 controller not detected in Retropie 4.6 on Pi 4B:

                    Could it be possible that it does not load the module that I have compiled?

                    If you installed the Custom hid-sony driver from RetroPie-Setup, then you should un-install it and then re-install the patched driver.

                    ? 1 Reply Last reply Reply Quote 0
                    • ?
                      A Former User @mitu
                      last edited by A Former User

                      I uninstall Custom hid-sony driver and I type:

                      $ make && sudo make install
                      

                      Then

                      $ sudo reboot
                      

                      And on restart I type dmesg:

                      [   74.513174] usb 1-1.3: new full-speed USB device number 21 using dwc_otg
                      [   74.648746] usb 1-1.3: New USB device found, idVendor=054c, idProduct=09cc, bcdDevice= 1.00
                      [   74.648772] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
                      [   74.648784] usb 1-1.3: Product: Wireless Controller
                      [   74.648796] usb 1-1.3: Manufacturer: Sony Interactive Entertainment
                      [   74.648807] usb 1-1.3: SerialNumber: Wireless Controller
                      [   74.672009] sony 0003:054C:09CC.0011: failed to retrieve feature report 0x81 with the DualShock 4 MAC address
                      [   74.672389] sony 0003:054C:09CC.0011: hidraw0: USB HID v81.11 Gamepad [Sony Interactive Entertainment Wireless Controller] on usb-3f980000.usb-1.3/input3
                      [   74.672405] sony 0003:054C:09CC.0011: failed to claim input
                      
                      

                      Where dmesg take "failed to retrieve feature report 0x81 with the DualShock 4 MAC address" string from?

                      mituM 1 Reply Last reply Reply Quote 0
                      • mituM
                        mitu Global Moderator @A Former User
                        last edited by

                        @juanzt Sorry, no idea why it's still not working.

                        ? 1 Reply Last reply Reply Quote 0
                        • ?
                          A Former User @mitu
                          last edited by

                          @mitu

                          It's Ok, thank you for guiding me through all the steps.

                          Regards.

                          ? 1 Reply Last reply Reply Quote 0
                          • ?
                            A Former User @A Former User
                            last edited by A Former User

                            @mitu

                            After trying a thousand things, I try this:

                             $ sudo modinfo hid_sony
                            filename:       /lib/modules/5.10.63-v7+/updates/dkms/hid-sony.ko
                            ....
                            ....
                            ....
                            

                            So path to hid_sony is /lib/modules/$(uname -r)/updates/dkms/ not /lib/modules/$(uname -r)/kernel/drivers/hid/

                            So I try this:

                            $ sudo cp ./hid-sony.ko /lib/modules/$(uname -r)/updates/dkms/
                            

                            And now my controller works!!!!

                             $ dmesg
                            
                            [    8.590774] usb 1-1.3: Product: Wireless Controller
                            [    8.590789] usb 1-1.3: Manufacturer: Sony Interactive Entertainment
                            [    8.590803] usb 1-1.3: SerialNumber: Wireless Controller
                            [    8.639230] input: Sony Interactive Entertainment Wireless Controller Touchpad as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.3/0003:054C:09CC.0003/input/input2
                            [    8.639929] input: Sony Interactive Entertainment Wireless Controller Motion Sensors as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.3/0003:054C:09CC.0003/input/input3
                            [    8.704967] input: Sony Interactive Entertainment Wireless Controller as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.3/0003:054C:09CC.0003/input/input1
                            [    8.705567] sony 0003:054C:09CC.0003: input,hidraw0: USB HID v81.11 Gamepad [Sony Interactive Entertainment Wireless Controller] on usb-3f980000.usb-1.3/input3
                            
                            

                            Please include hid-sony.diff in Retropie to PS4 controllers that give the error: "failed to retrieve feature report 0x81 with the DualShock 4 MAC address" can work.

                            Thanks

                            C 1 Reply Last reply Reply Quote 0
                            • System referenced this topic on
                            • C
                              chrismeistre @A Former User
                              last edited by

                              @JuanZt

                              Just stopped by to thank you. I've used your steps and was able to get my PS4 controller (not original) to work.

                              1 Reply Last reply Reply Quote 0
                              • M misuok referenced this topic on
                              • mituM mitu referenced this topic on
                              • 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.