Skip to content

C0rn3j/sc-controller

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SC Controller

SCC Linux CI Build and publish AppImages

User-mode driver, mapper and GTK3 based GUI for Steam Controller, DS4 and many other controllers.

screenshot1 screenshot2 screenshot3 screenshot3

Features

  • Allows to setup, configure and use the Steam Controller without ever launching Steam
  • Connect multiple controllers at the same time
  • Supports profiles switchable in GUI or with controller button
  • Stick, Pads and Gyroscope input
  • Haptic Feedback and in-game Rumble support
  • OSD, Menus, On-Screen Keyboard for desktop and in games.
  • Automatic profile switching based on active window.
  • Macros, button cycling, rapid fire, modeshift, mouse regions, …
  • Emulates Xbox360 controller, mouse, trackball and keyboard.

Based on Standalone Steam Controller Driver by Ynsta.

Like what I'm doing?

You can check out the ways to donate on my website, or just go straight to my Ko-Fi.

Donation links for kozec, who is the original developer, can be found on the old upstream repository.

Packages

Packaging status

Linux:

  • Arch Linux: Found in AUR/sc-controller and AUR/sc-controller-git
  • Ubuntu (22.04-jammy, 24.04-noble): Packaged as AppImage in GitHub releases, which may also run fine on other operating systems - jammy image is currently the most compatible one
  • Gentoo: Packaged as game-util/sc-controller
  • Void Linux: Packaged as sc-controller - Run xbps-install -S sc-controller in a terminal, points to archived Ryochan7's fork at the time of writing
  • Others: You can attempt to use one of the AppImages (try all, AppImages built on older distributions tend to work better), or a package meant for your parent distribution if applicable. Flatpak is planned.

Windows:

  • It should be possible to get it running as per the wiki, but this is untested and might be broken, report a bug if so

Building the package by yourself

Dependencies

Via Python into a local build directory

  • Download and extract latest release .zip releases without .git directory are currently broken - tracked in #50
  • Clone the repository git clone https://github.com/C0rn3j/sc-controller.git and navigate into it: cd sc-controller
  • python3 -m build --wheel
  • python3 -m installer --destdir="./build" dist/*.whl
  • Run the app via: SCC_SHARED="${PWD}" PYTHONPATH="./build/usr/lib/python3.12/site-packages" PATH="${PWD}/build/usr/bin:${PATH}" ./build/usr/bin/sc-controller

Via Docker

A test build with Docker can be created using the following way:

docker build -o build-output --build-arg BASE_CODENAME=noble .

Via Python venv through run.sh

  • Download and extract latest release .zip releases without .git directory are currently broken - tracked in #50
  • Clone the repository git clone https://github.com/C0rn3j/sc-controller.git and navigate into it: cd sc-controller
  • Optionally checkout a branch or a tag, like python3(default) or v0.4.9.8.8
  • Execute ./run.sh, this automatically builds the project into a venv called .env, activates it and runs sc-controller, which in turn runs scc-daemon if one does not run already
  • If you are debugging an issue, running ./run.sh daemon first will launch the daemon in debug mode, allowing you to launch sc-controller in another terminal with ./run.sh

About

User-mode driver and GTK3 based GUI for Steam Controller

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 95.2%
  • C 3.2%
  • Other 1.6%