Introduction
- First I just want to say that I’m not the author of the code, full credit goes to the developers working on the
SC Controller
project.
https://github.com/kozec/sc-controller
- This is how I made DualSense (PS5) controller work for non-Steam games on
Manjaro
and Pop!_OS
distributions using SC Controller
project.
- Using
Lutris
for example, DualSense controller will appear as XBox controller in game
Dependencies
-
SC Controller
project is written in python2
, it is required to run it
https://github.com/kozec/sc-controller#dependencies
- I installed almost all the dependencies using
pacman
, only exception was python2-evdev
which I installed from AUR
https://aur.archlinux.org/packages/python2-evdev/
Installing SC Controller
- At the moment of writing
DualSense
controller support is not yet on the master branch, installing SC Controller
using package manager won’t have DualSense
support
- Pull request:
https://github.com/kozec/sc-controller/pull/648
- Issue:
https://github.com/kozec/sc-controller/issues/624
- To run code with
DualSense
support, follow these steps:
git clone https://github.com/psstoyanov/sc-controller.git
cd sc-controller
git checkout dualsense
- According to the comments in the GitHub issue you can try running
run.sh
script, but that didn’t work for me
./run.sh
- If the
run.sh
script doesn’t work (controller doesn’t get recognized), install SC controller using setup.py
:
python2 setup.py build
sudo python2 setup.py install --record files.txt
-
files.txt
will have all the files setup.py
script installed so you can easily remove them using xargs rm -rf < files.txt
if you wish
- Connect
DualSense
controller (via USB or via Bluetooth)
- Run
sc-controller
- Choose
XBox Controller
from the dropdown menu
- Wait for the circle on the upper left to become green, that means emulation is working
- You can install and use
jstest-gtk
to test if everything is working
- For me,
DPad
wasn’t mapped in SC Controller
when I installed it. You can map it from the SC Controller UI
, bottom left.
- For testing I used
Lutris
with Diablo II: Resurrected
, worked great on both distributions.
Other options:
- Playstation 5 (Dualsense) controller section on the arch wiki might work for you, it didn’t for me
https://wiki.archlinux.org/title/Gamepad#Playstation_5_(Dualsense)_controller
-
ds360
project created by yoyossef
, same person that opened SC Controller
issue for DualSense
, uses xboxdrv
method mentioned in the wiki
https://github.com/yoyossef/ds360
- There is a fork
Ryochan7/sc-controller
that is more up to date, uses python3
, but as far as I know, at the moment of writing, DualSense is not supported
https://github.com/Ryochan7/sc-controller
1 Like