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
- Fedora KDE gets approval to be upgraded to sit alongside Fedora Workstation
- Steam gets new tools for game devs to offer players version switching in-game
- Palworld dev details the patents Nintendo and The Pokemon Company are suing for
- Sony say their PSN account requirement on PC is so you can enjoy their games 'safely'
- SEGA Mega Drive and Genesis Classics & Dreamcast Classics get delisted in December
- > See more over 30 days here
-
GOG launch their Preservation Program to make games liv…
- Phlebiac -
GOG launch their Preservation Program to make games liv…
- elmapul -
GOG launch their Preservation Program to make games liv…
- elmapul -
GOG launch their Preservation Program to make games liv…
- Klaas -
GOG launch their Preservation Program to make games liv…
- elmapul - > See more comments
- Steam and offline gaming
- Dorrit - Weekend Players' Club 10/11/2024
- Pengling - Upped the limit on article titles
- eldaking - New social media bar in article list
- whizse - Weekend Players' Club 10/18/2024
- DylanFox - 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.