Dualshock 4 crazy-fast, repeating controls

Hi, I experience the exact same issue as “codextremist”. And are also looking for a solution for this. Really need help.

The latest nightlies have actual analog deadzone and sensitivity calibration options, which may help with some of this.

I still think there’s something weird with the button mapping in the current autoconfig profile.

My working button assignment is the same as what was used in 2015. In 2017 it was changed (see history) .

Does the PS4 update the firmware on the controller? That could explain the different assignments.

Sorry to bump a somewhat old thread, I just recently acquired a DS4 controller and set it up in Lakka, but I seem to experience the exact same problem you guys have. Both wired and over Bluetooth.

So I followed the solutions you provided, but to no avail, issue still persists. Therefore I was wondering if anyone had came up with a solution to this problem? Or should I just give up? My problem seems to occur with the DS4 model name: CUH-ZCT2E

Did you try rebinding all inputs manually and saving the profile for the DS4? This should be enough to fix the problem. You do, however, require a second working gamepad to do this (or keyboard if it works).

The problem is that the keyboard acts just as strange as the DS4 when both are plugged in, and I cant determine why. Maybe I should just delete all the configs for the controllers inside the joypad folder?

Hi. This might be a general problem. (I’m new so I cannot start a new thread). Been trying out various kernel that I’ve built myself (not lakka but ubuntu). with kernel 4.4.53 (before the VID/PID for v2 of the DS was backported to the Sony HID driver), v1 would control fine, v2 would be wonky. With later kernels where DS4v2 was added, the opposite happened. V2 would be fine, but V1 would be wonky. I looked for clues everywhere, in dmesg, kernel config, source code. I couldn’t find anything particulary that stood out. Both versions “should” work fine.

In the end, the solution was simple:

I deleted “Sony Computer Entertainment Wireless Controller.cfg” from the autoconfig/udev folder. This conflicts with Sony-PlayStation4-DualShock4-Controller.cfg. Dunno the exact cause but looking inside the files I can see the VID/PID are the same but the button mappings are a bit different.

I think with an earlier kernel without explicit support for the v2, probably “Sony_PlayStation4_Dualshock4_500-Million_Limited_Edition.cfg” was conflicting with “Sony-PlayStation4-DualShock4v2-Controller.cfg” With a later kernel, this isn’t the case although you shouldn’t ask me why.

Anyways, at least Sony Computer Entertainment Wireless Controller.cfg should be removed upstream. Maybe “Sony_PlayStation4_Dualshock4_500-Million_Limited_Edition.cfg” too. Any devs that could look into this?

Hello, have the same problem, came today at least as far as connecting the controller and then came to the same behavior.

Had zumidnest managed to stop the controller from configuring itself automatically.

Then I went through the buttons manually:

-> What I noticed at least: With the D-Pad and the analog sticks the value is set to -3 if upwards.

As soon as any key has been set to -3, whether with cable or Bluetooth, it will behave like this.

Can anyone do anything with it?

Or any other workaround?

Translated with www.DeepL.com/Translator

Hey, where is the autoconfig folder you mean?


Sorry, one more stupid question, im logged in with root access and wont let me delete this file, how did you do that?

I didn’t use Lakka, but ubuntu. Lakka is based on OpenELEC so the filesystem is compressed into a squashfs file. Probably Lakka haven’t configured the the overlay file system (or doesn’t use an overlayfs) to cover these files system.

Upon reading http://www.lakka.tv/doc/Accessing-Lakka-filesystem/

The joypad folder is editable. You probably have to replicate the relative path of the original file, which is udev/Sony Computer Entertainment Wireless Controller.cfg.

Maybe if you put a file there named "Sony Computer Entertainment Wireless Controller.cfg” and make it empty, it might override the included one.

Upon checking https://github.com/libretro/retroarch-joypad-autoconfig/tree/master/udev it seems the file Sony Computer Entertainment Wireless Controller.cfg isnt there at all. I dunno how that file ended up in my autoconfig folder. I even tried to delete med autoconfig folder and updated it inside Retroarch and it’s nowhere to be seen.

I dunno how it ended up there in the first place. Maybe because I configured it and saved it before I ran the updater. So I guess, my problem was self inflicted and probably won’t help anyone here. (although the symptoms were the same)

I got it working!

After i enabled ssh and samba i could find out what was wrong with my Dualshock PS4 Controller. Under samba i found 2 files in \Lakka-IP\Joypads\udev ssh: ~/joypads/udev

  • Sony-PlayStation4-DualShock4v2-Controller.cfg
  • Sony-PlayStation4-DualShock4v2-Wired-Crystal-Controller.cfg

After investigating both files in Text-Editor i found out that the options for some configurations where different. for example: input_r_x_plus_axis input_r_x_minus_axis input_r_y_plus_axis input_r_y_minus_axis

After i changed all wrong options in both files to the right values it worked perfekt. This should also work with the wireless file or the bluethooth file. Thanks for all your work in this case.

Hey, great! Could you pleased Post your actual config File?

input_device = "Sony Interactive Entertainment Wireless Controller"
input_driver = "udev"
input_vendor_id  = "1356"
input_product_id = "2508"
input_b_btn = "1"
input_y_btn = "0"
input_select_btn = "8"
input_start_btn = "9"
input_up_btn = "h0up"
input_down_btn = "h0down"
input_left_btn = "h0left"
input_right_btn = "h0right"
input_a_btn = "2"
input_x_btn = "3"
input_l_btn = "4"
input_r_btn = "5"
input_l2_btn = "6"
input_r2_btn = "7"
input_l3_btn = "10"
input_r3_btn = "11"
input_l_x_plus_axis = "+0"
input_l_x_minus_axis = "-0"
input_l_y_plus_axis = "+1"
input_l_y_minus_axis = "-1"
input_r_x_plus_axis = "+2"
input_r_x_minus_axis = "-2"
input_r_y_plus_axis = "+5"
input_r_y_minus_axis = "-5"
input_menu_toggle_btn = "12"

input_b_btn_label = "Cross"
input_y_btn_label = "Square"
input_select_btn_label = "Share"
input_start_btn_label = "Options"
input_up_btn_label = "D-Pad Up"
input_down_btn_label = "D-Pad Down"
input_left_btn_label = "D-Pad Left"
input_right_btn_label = "D-Pad Right"
input_a_btn_label = "Circle"
input_x_btn_label = "Triangle"
input_l_btn_label = "L1"
input_r_btn_label = "R1"
input_l2_btn_label = "L2"
input_r2_btn_label = "R2"
input_l3_btn_label = "L3"
input_r3_btn_label = "R3"
input_l_x_plus_axis_label = "Left Analog Right"
input_l_x_minus_axis_label = "Left Analog Left"
input_l_y_plus_axis_label = "Left Analog Down"
input_l_y_minus_axis_label = "Left Analog Up"
input_r_x_plus_axis_label = "Right Analog Right"
input_r_x_minus_axis_label = "Right Analog Left"
input_r_y_plus_axis_label = "Right Analog Down"
input_r_y_minus_axis_label = "Right Analog Up"
input_menu_toggle_btn_label = "PS"

Please change the Product and Vendor ID to your needs.

1 Like

Thanks a lot! That worked for me, too.

Can someone please help me with getting my wireless 8bitdo to work on Lakka with my RP3+? What would a proper config file look like for it? I’m a complete noob so please go easy on me.

Also, using a keyboard with Lakka is useless because there’s no “back” button. Left arrow should take me out of a current menu but this does nothing. Terrible design choice. I also find it infuriating that Bluetooth can’t work out of the box. Why not? Why can’t it just have all this stuff working by default? Why do I have to become a hacker to achieve this?

Backspace is ‘back’. Left/right arrows cycle through menu options, so it wouldn’t work to make left also go ‘back’ in the menu.

Bluetooth and pairing is always weird in linux, and Lakka is no exception. If you don’t want to learn how to do it (and I agree, it’s a hassle), you can always use USB connections.

Nonsense. The Back arrow is a navigational element. It suggests movement through a network of options, and it behaves as such when the user is at the first menu screen. It ceases to function this way when an option is being changed. This is just bad design. The A, B, Y, or X buttons, or even R and L, should be what are used to change or cycle through an option.

Lakka is riddled with bad interface design like this. For example, no indication of whether the user has successfully connected to WIFI except one word appearing to the right of the current network name. No WiFi icon appearing on the title bar at top right, no error message if the user incorrectly enters the password, no character selection screen to enter a password with a controller…

Plugging in a keyboard doesn’t prompt the user with a HUD to explain what keys are mapped where or how to navigate the system without a controller…

Scanning the ROMS folder does nothing, and no consoles appear at right. No indication of what went wrong, where to go to play them…

The interface is the best out there in terms of look and concept. I would LOVE to use this as my gaming system. But Lakka is a disaster for ease of use. I pray that their developers see this comment and I sincerely hope these issues get addressed. I’ll have to use RetroPie for now. Lakka is unusable for me in its current state.