github Valkirie/HandheldCompanion 0.28.3.3
Release Build 0.28.3.3

10 hours ago

Handheld Companion – Release Notes

0.28.3.3

Highlights

  • UI/UX overhaul (Profiles + Layout): Redesigned pages for simpler navigation and reduced loading times, plus improved controller-first navigation across the app.
  • NavigationView improvements: Main window navigation is now horizontal (use L1/R1), and embedded NavigationViews (as seen on the Layout page) now support L2/R2 navigation.
  • Update interval (advanced latency tuning): New setting for advanced users to manipulate the controller update rate. Default is now 125 Hz (8 ms) instead of 100 Hz (10 ms), with options up to 1000 Hz (1 ms).
  • Controller order management (better out-of-the-box experience): Controller order adjustment is now manual by default, with clear UI feedback (toast + icon) if your virtual controller is not on slot 1—helping avoid “why is my controller unresponsive?” situations.

UI/UX improvements

  • Profiles page: Full UI refresh aimed at faster load and simpler day-to-day navigation.
  • Layout page: Revamped layout experience and navigation, including easier access to advanced action configuration.
  • Controller management UI polish: Controller management should behave the same as before, but now includes clearer interface text and notifications (updated across all supported languages), and a more understandable user flow around controller order and slot state.
  • Quality-of-life: Added a library shortcut to edit controller layout when pressing the X button.

NavigationView controls:

  • Main window: L1/R1 navigation (horizontal logic).
  • Embedded views (Layout page): L2/R2 navigation.

Update interval (advanced latency tuning)

We’re adding a new setting for advanced users who want to manipulate the controller update rate. The new default is 125 Hz (8 ms), replacing the previous 100 Hz (10 ms).

Available options:

  • 125 Hz ≈ 8.00 ms: very common for Xbox/XInput-class wireless + many older controllers
  • 250 Hz ≈ 4.00 ms: very common for PlayStation over USB, and many wired third-party pads
  • 500 Hz ≈ 2.00 ms: less common; some wireless/dongle implementations
  • 1000 Hz ≈ 1.00 ms: common on competitive/PC-focused wired pads; some dongles

Higher rates may slightly increase CPU usage, but the goal is to give latency-focused users a straightforward, supported way to tune responsiveness.

Stability & Fixes

  • Fixed a crash when calling ControllerManager.GetDefault().
  • Fixed a crash when cloning an unsynced Layout (Clone()).
  • Fixed SensorsManager suspend/resume handling across sleep.
  • Fixed a race-condition crash in TimerManager.
  • GPD Win 5: Added OEM buttons mapping support.

Library updates

  • SDL: updated gamecontrollerdb and SDL 3.3.6.

Special thanks to

  • @P3P0 (new layout functions + layout UI revamp)
  • @mistakeplays (support to validate and land proper GPD Win 5 mapping)

Full Changelog: 0.28.3.1...0.28.3.3

Don't miss a new HandheldCompanion release

NewReleases is sending notifications on new releases.