Excited to announce release v0.2.0 for CtrlAssist, adding rumble pass-through support and significant improvements to controller multiplexing! CtrlAssist brings “controller assist” functionality to Linux gaming by allowing multiple physical controllers to operate as a single virtual input device. This enables collaborative play and customizable gamepad setups, making it easier for players of all ages and abilities to enjoy games together.

🎯 What’s New

Rumble Pass-Through

Force feedback can now be forwarded to paired physical controllers! Configure which controller(s) receive rumble effects—route them to Primary, Assist, both, or neither. Share every haptic encounter from turbulence, engine failure, and hard landings with your co-pilot. Even better: if a controller disconnects mid-game (swapping batteries, USB cords, etc.), CtrlAssist automatically recovers and restores all force feedback effects when it reconnects.

Smoother Input Transitions

All assist modes now feature improved synchronization for more natural gameplay:

  • Joysticks snap cleanly: When assistance begins or ends, both X and Y axes update together—no more jarring diagonal-to-cardinal transitions
  • Toggle mode syncs instantly: Switching between Primary and Assist now mirrors the active controller’s complete current state, eliminating phantom inputs from buttons or sticks that were held during the switch

Better Device Discovery

Controllers device trees are now discovered more reliably, preventing edge cases where multiple similar devices could cause conflicts. This also improves device hiding and rumble pass-through selection.

🛠️ Under the Hood

  • Refactored input handling for consistency across all three modes
  • Fixed button mapping quirks across physical and virtual device boundaries
  • Improved error handling and logging for edge cases and issue reporting
  • More graceful shutdown on Ctrl+C with robust cleanup

📦 Install and Upgrade

cargo install ctrlassist --force

Full changelog available at the GitHub release page.


Note: If you have experience with Arch or modding SteamOS, I could use also some help in fixing/documenting SteamDeck support, as I’ve not the hardware on hand and most of my Linux development has been on NixOS and Ubuntu thus far:

  • eleijeep@piefed.social
    link
    fedilink
    English
    arrow-up
    4
    ·
    22 hours ago

    🤖 LLM-generated lemmy post 🤖 LLM-generated README 🤖 AI-generated banner image in README

    With that much AI use visible, it’s an obvious question to ask.

    • ruffsl@programming.devOP
      link
      fedilink
      English
      arrow-up
      7
      ·
      21 hours ago

      I’m no graphic artist, and with my disabilities it certainly would have taken me much longer to type out the same docs. Also, emojiis is what I grew up with back when AOL chat and sms char limits where the norm. LLMs have been a boon for assistive technology users, but admittedly a crux for those who less experience in computer science; though not much different from any double edge sword.