While you're here, please consider supporting GamingOnLinux on:
Reward Tiers: Patreon. Plain Donations: PayPal.
This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!
You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Reward Tiers: Patreon. Plain Donations: PayPal.
This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!
You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register
- Steam Controller 2 is apparently a thing and being 'tooled for a mass production' plus a new VR controller
- Unofficial PC port of Zelda: Majora's Mask, 2 Ship 2 Harkinian has a big new release out
- Half-Life: Blue Shift remake mod Black Mesa: Blue Shift - Chapter 5: Focal Point released
- Linux kernel 6.12 is out now with real-time capabilities, more gaming handheld support
- Steam Deck OLED: Limited Edition White and Steam Deck Australia have launched
- > See more over 30 days here
-
S.T.A.L.K.E.R. 2: Heart of Chornobyl review - works on …
- Shmerl -
S.T.A.L.K.E.R. 2: Heart of Chornobyl review - works on …
- Trias -
S.T.A.L.K.E.R. 2: Heart of Chornobyl review - works on …
- Shmerl -
Wine 9.22 released noting the 'Wayland driver enabled i…
- Shmerl -
Wine 9.22 released noting the 'Wayland driver enabled i…
- Shmerl - > See more comments
- Types of programs that are irritating
- Cyril - Weekend Players' Club 11/22/2024
- StoneColdSpider - Our own anti-cheat list
- Liam Dawe - Spare gog keys
- on_en_a_gros - What do you want to see on GamingOnLinux?
- dpanter - See more posts
So this is in opensuse and with USB cable.
Step 1:
Install xboxdrv, in my case (opensuse) it's found right here
modprobe joydev and modprobe uinput need to be enabled, in my case this already was the case, check with modprobe -l
Step 2:
start xboxdrv simply by typing xboxdrv, now here the fun part start, IF you get a segement fault then do Step 3, else go to Step 4
Step 3:
The segment fault seems to come from the fact that you as a user don't have rights to /dev/uinput and this needs to be solved by making a udev rule
Connect the PS3 controller to your system with a USB cable and do a dmesg so you get the correct Vendor and Product ID:
[Fri Jan 24 15:41:13 2014] usb 3-1: New USB device found, idVendor=054c, idProduct=0268
change to root and head over to /etc/udev/rules.d/ and using vi create a file called 40-xboxdrv.rules
In this file place the following code:
ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="054c", ATTR{idProduct}=="0268", OWNER="root", GROUP="users", MODE="0660", RUN+="/bin/chown root:users /dev/uinput", RUN+="/bin/chmod 0660 /dev/uinput"
notice where you use the Vendor and Product ID and that you will give the group "users" rw right to /dev/uinput as well as adding the group "users" to the directory owner group.
save the file and reconnect your PS3 controller, if you do a ls -l /dev/uinput you should get something like
crw-rw---- 1 root users 10, 223 Jan 24 15:15 /dev/uinput
if you now type xboxdrv as normal user it should not longer give a segment fault. (probably some other message but we don't care yet)
Step 4:
Create a file called PS3.xboxdrv in your home directory and paste the following code in it (which came from here with the evdev line marked out)
# Example configuration for the Playstation 3 controller
#
# Note this only works when connected with USB, when using Bluetooth a
# different configuration is required.
[xboxdrv]
#evdev=/dev/input/by-id/usb-Sony_PLAYSTATION_R_3_Controller-event-joystick
[evdev-absmap]
ABS_X = x1
ABS_Y = y1
ABS_Z = x2
ABS_RZ = y2
ABS_#48 = lt
ABS_#49 = rt
[evdev-keymap]
BTN_THUMB = tl
BTN_THUMB2 = tr
BTN_BASE5 = lb
BTN_BASE6 = rb
KEY_#302 = a
KEY_#301 = b
BTN_DEAD = x
KEY_#300 = y
BTN_TRIGGER = back
KEY_#720 = guide
BTN_TOP = start
BTN_TOP2 = du
BTN_PINKIE = dr
BTN_BASE = dd
BTN_BASE2 = dl
# EOF #
Step 5:
Basicly your done now and you can start the xboxdrv now using the following command:
xboxdrv --detach-kernel-driver --silent --mimic-xpad --config ~/PS3.xboxdrv
you can remove --silent to see more info if you run into trouble but normally it's not needed.
Of course you could even add this line in a small script or if your clever even in a udev rule so it starts the moment you plug the controller in.