Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SteamControllerDSU

A lightweight, high-performance Cemuhook DSU server dedicated to extracting low-latency Gyroscope and Accelerometer data from the 2026 Steam Controller (Triton / Proteus Puck).

While Steam Input flawlessly handles your controller's buttons and triggers, it historically isolates the motion sensors. SteamControllerDSU bridges this gap, exposing raw, calibrated IMU data to emulators like Cemu, Yuzu, Ryujinx, and Citra.

✨ Key Features

  • Zero-Latency DSU Server: Runs a highly optimized UDP server at 127.0.0.1:26760.
  • Auto-Swap by Activity (Steam Input Sync): Seamlessly mirrors Steam Input's dynamic player assignment. The controller used to launch the game (most recent button press) is automatically crowned as Player 1 (DSU Slot 0) the moment the emulator connects.
  • Sticky Slots: No more motion controls swapping mid-game. If a controller disconnects or goes to sleep while an emulator is active, your slots remain locked and stable.
  • Auto-Calibration: Built-in continuous drift compensation. Simply rest the controller on a flat surface, and the software will neutralize gyro drift automatically.
  • Custom Axis Mapping: Fully customizable axis inversion and source swapping via the GUI. Changes are applied instantly.
  • Multi-Controller Support: Tracks up to 4 concurrent controllers with configurable priority hierarchies ("Remember Controller Order").
  • Run Modes: Run it as a standard GUI, minimized to the System Tray (--tray), or as a headless background service (--headless).

🚀 Getting Started

  1. Download the latest SteamControllerDSU.exe from the Releases page.
  2. Run the executable.
  3. Turn on your Steam Controller.
  4. In your emulator settings, enable the Cemuhook DSU protocol and point it to 127.0.0.1:26760.
  5. Play!

⚙️ Configuration

The server runs with a clean Native Windows GUI showing real-time 3D orientation, calibration confidence, and server stats. Settings are saved live to %APPDATA%\SteamControllerDSU\config.toml.

  • Start with Windows: Use the UI toggle to automatically start the app silently in the system tray when Windows boots.
  • Remember Controller Order: Allows you to define a stable, preferred hierarchy for your devices.

🛠️ Building from Source

Ensure you have Rust installed. The project compiles with zero warnings and relies on hidapi for direct USB/Bluetooth communication.

git clone https://github.com/dbarreropl/SteamControllerDSU.git
cd SteamControllerDSU
cargo build --release

📜 Credits & License

About

Cemuhook DSU server to use the Steam Controller's gyro and accelerometer. Features 4-controller support, Auto-Swap to sync with Steam Input, continuous auto-calibration, and a native Windows GUI

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages