Handheld Daemon (HHD)

Handheld Daemon is a project that aims to provide utilities for managing handheld devices. With features ranging from TDP controls, to controller remappings, and gamescope session management. This will be done through a plugin system and an HTTP(/d-bus?) daemon, which will expose the settings of the plugins in a UI agnostic way.

It is the aim of this project to provide generic hid-based emulators for most mainstream controllers (xbox Elite, DS4, PS5, Joycons), so that users of devices can pick the best target for their device and its controls, which may change depending on the game.

Current Features (for both ROG Ally and Legion Go):

  • Fully functional DualSense Edge emulation
    • All buttons supported
    • Rumble feedback
    • Touchpad support (Steam Input as well)
    • LED remapping
  • Virtual Input device emulation
    • No weird glyphs
    • Gyro and back button support (outside Steam)
  • Touchpad Emulation
    • Fixes left and right clicks within gamescope when using the Legion Go touchpad.
  • Power Button plugin for Big Picture/Steam Deck Mode
    • Short press makes Steam backup saves and wink before suspend.
    • Long press opens Steam power menu.
  • Hides the original Xbox controller
  • HTTP based Configuration
    • Allows configuring HHD over Electron/React apps.
    • Token-based authentication and limited to localhost.
    • Will allow swapping configuration per game.
  • Built-in updater (soon to become available from Decky).

Planned Features (in this order):

  • Steam Deck controller emulation
  • TDP Plugin
    • Will provide parity with Legion Space/Armory crate, hardware is already reverse engineered for the Legion Go
  • High-end Over/Downclocking Utility for Ryzen processors
    • By hooking into the manufacturer ACPI API of the Ryzen platform, it will expose all TDP related parameters manufacturers have access to when spec'ing laptops.
    • RyzenAdj Successor
      • No memory-relaxed requirement
      • Safer, as it is the method used by manufacturers (provided you stay within limits).

Installation Instructions

Instructions not filled in by author. Author knows what to do. Everybody else should avoid this repo.

Active Releases

The following unofficial repositories are provided as-is by owner of this project. Contact the owner directly for bugs or issues (IE: not bugzilla).

* Total number of packages downloaded in the last seven days.

This is a companion discussion topic for the original entry at