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.
- 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).
- Download the latest
SteamControllerDSU.exefrom the Releases page. - Run the executable.
- Turn on your Steam Controller.
- In your emulator settings, enable the Cemuhook DSU protocol and point it to
127.0.0.1:26760. - Play!
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.
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- Based on and heavily expanded from the original NightHammer1000/sc2dsu project.
- HID protocol reversed from SDL3
SDL_hidapi_steam_triton.c. - DSU protocol implementation inspired by v1993/gcemuhook.
- Licensed under the MIT License.