v1.0.0 · BLAZINGLY FAST

pskursor

$ gamepad → cursor on linux

A simple Linux device driver written in Rust that lets you use your gamepads and controllers to control your mouse cursor. Navigate your desktop without a mouse — finally.

Rust
Linux
GPLv2
~/pskursor — bash
~/pskursor cargo build --release
Compiling pskursor v1.0.0
Compiling ratatui v0.30.2
Compiling serde v1.0.228
Compiling evdev-rs v0.6.1
Finished release [optimized] target(s)
~/pskursor sudo ./pskursor
[*] scanning input devices...
[+] found: E-Signal Kreo Hawk
[+] handler: /dev/input/event12
[+] bus: USB (0003)
[✓] driver attached. gamepad → cursor active
◆ HIDAPI INTEGRATION ◆ BLUETOOTH + USB ◆ LINUX NATIVE API ◆ WRITTEN IN RUST ◆ BLAZINGLY FAST ◆ TUI INTERFACE ◆ GPLv2 LICENSED ◆ OPEN SOURCE
◆ HIDAPI INTEGRATION ◆ BLUETOOTH + USB ◆ LINUX NATIVE API ◆ WRITTEN IN RUST ◆ BLAZINGLY FAST ◆ TUI INTERFACE ◆ GPLv2 LICENSED ◆ OPEN SOURCE
// 01 · FEATURES

What's under the hood

pskursor bridges the gap between your controller and your cursor using low-level Linux input APIs.

HIDAPI Detection

Leverages hidapi for seamless Bluetooth and USB device detection. Plug in, pair up, or just play.

Linux Native API

Direct integration with /dev/input/event* and the evdev subsystem for precise cursor control.

Blazingly Fast

Implemented in Rust — zero-cost abstractions, memory safety, and raw performance. No lag, no excuses.

// 02 · HOW IT WORKS

From gamepad to pixel

pskursor reads the raw input stream from your controller and translates it into cursor movement events.

STEP 01

Detect

Scans /dev/input and uses evdev API to identify connected gamepads.

STEP 02

Attach

Opens the evdev handler stream at /dev/input/event* and begins reading raw packets.

STEP 03

Translate

Maps analog stick deltas to cursor movement via the Linux native mouse API. You move, the cursor moves.

// 03 · SCREENSHOTS

A proper TUI

Manage your devices and tweak controls without ever leaving the terminal.

device-management
TUI Main Screen

↳ Main device selection screen

control-screen
TUI Control Screen

↳ Control & sensitivity configuration

// 04 · CHANGELOG

Release notes

What shipped, what got fixed.

v1.0.0 latest · 2026 stable

Initial public release

  • + HIDAPI integration for USB & Bluetooth
  • + Linux native API cursor control
  • + Interactive TUI for device management
  • + Sensitivity & control configuration
v0.2.0 pre-release

Bluetooth support

  • + Added wireless controller pairing
  • ~ Refactored input handler pipeline
v0.1.0 pre-release

First commit

  • + Basic USB gamepad detection
  • + Proof-of-concept cursor movement
// 05 · AUTHOR

Made with ❤️

SV

Syed Vilayat Ali Rizvi

@vilayat-ali · systems tinkerer

Building low-level tools for Linux because the terminal is home. pskursor started as a weekend experiment — "what if I could navigate my desktop with a gamepad?" — and turned into a proper driver.

// ready?

Grab your controller.
Ditch the mouse.

Clone the repo, build with cargo, and start navigating Linux like it's 2026.

$ git clone https://github.com/pskursor/pskursor