Releases: Valkirie/HandheldCompanion
Build 0.20.3.0
These are the release notes for 0.20.3.0 For completeness, the release notes of the in between EA releases since 0.19.1.8 can be found below.
0.20.3.0
A new HC release. Some awesome new features, new device support and tons of bug fixes!
Please note that this release replaces the separately running HWiNFO application with the internal usage of the LibreHardwareMonitor library.
HWiNFO will no longer be installed along side HC nor will it be (re)started along side the application.
If you do not need HWiNFO, you can uninstall HWiNFO through the usual ways in Windows.
What's Changed
Improvements
- Implemented nightlight toggle, easier on the eyes at night.
- Implemented OSD toggle, easily switch the OSD off and back the your last selected level with the push of a button. Thank you @cerahmed
- Implemented profile specific compatibility settings, Windows compatibility settings for your game or app can now be configured easily through HC.
- Implemented an "Interruptable" toggle for button actions, providing users with enhanced control options. Thank you @MSeys
- Improved hardware information monitoring, removed HWiNFO, HC now uses LibreHardwareMonitor instead of HWiNFO. HWiNFO will no longer be installed along side HC. Thank you @0SkillAllLuck
- Improved LS by adding a warning, make it clear what happens with the resolution.
- Update About page contributors list, giving credit where credit is due.
Bugfixes
- Fixed DSU server/client getting broken with the .NET8 update, now works again with your favorite emulator
- Fixed an issue with the TDP up and down hotkeys.
- Fixed an issue with the QT left and right margin
- Fixed an issue with LED control through QT.
- Fixed an issue with the volume icon and brightness sliders on QT not updating
- Fixed an issue with the Ayaneo RGB LEDs turning on in various power change situtations. Thank you @indiesaudi
0.20.2.7
Good afternoon Companions, today we're publishing our first 2024 release with 0.20.2.7. Once again all developers and contributors have been hard at work fixing issues and improving the overall user experience. Take a moment to read the below changelog.
What's Changed
Add support for
- AYANEO Kun (LED Control), thank you @0SkillAllLuck !
Improvements
- Improved AutoTDP and extended range to 144 Hz
- Improved FPS limiter in relation to screen frequency
- Improved AMD Device Library eXtra (ADLX) implementation and Integer Scaling
- Improved UI experience by hiding LED options that are not supported by device (brightness)
- Improved UI experience by renaming Power Profiles to Power Presets
- Improved UI experience by adding a few tooltips
- Improved UI experience by adding support for gamepad held inputs (to manipulate sliders)
- Implemented two new layout mode : Double press, Hold press
Bugfixes
- Fixed an issue where HC would crash when XInputPlus.ini is not available
- Fixed an issue where Legion Go back buttons would not work after hibernate/sleep
- Fixed an issue where ADLX would cause HC to freeze/timeout
- Fixed an issue where the foreground process would no longer be properly detected
- Fixed an issue with AYANEO KUN LC and RC being swapped
- Fixed an issue with software fan control allowing devices to overheat once they go above 100 degrees
- Fixed an issue with new Legion Go Firmware wireless connection (please update your controllers)
- Fixed an issue with Quick Tools profiles page toggle not applying profiles
- Fixed an issue causing memory leak when unplugging controller
- Fixed an issue causing a crash when unplugging controller
- Fixed an issue where the QuickTools overlay page would not focus the gamepad navigation
- Fixed a few more crashes related to profile
0.20.2.5 the Christmas build
Oh, oh, oh 🎅 Look who's just come down the chimney! It's our patreon build 0.20.2.5 right before Christmas. Thanks to the incredible support of our new collaborators, we were able to put together this exciting release.
The long-awaited sub-profile per application feature is now implemented, allowing you to create and navigate through multiple profiles on a single application. A perfect fit for Xbox Gamepass and emulation.
We've also implemented Integer Scaling and Radeon Image Sharpening across all supported devices.
The Quicktools Home page as also been simplified, with hotkeys right by the corner.
What's Changed
Add support for
- Steam Deck OLED (Up to latest BIOS v107)
- AYANEO Kun (Fan control, front buttons)
Improvements
- Improved Quicktools UI (simplified Home, Device and Profile pages)
- Improved device-specific Power Profiles logic
- Implemented multiple-profiles per application
- Implemented Integer Scaling and Radeon Image Sharpening, thanks to JamesCJ and ProjectSBC
- Improved Framerate Limiter UI (now a dropdown with more elements)
- Implemented new LED modes for Legion Go
Bugfixes
- Fixed an issue causing crash when HC was manipulating Task Scheduler
- Fixed an issue causing a UI typo with DPad Right being spelled PPad Right
- Fixed an issue where the actual emulated controller type was incorrect on the layout page
- Fixed the Legion Go notification about Legion Space (services and executables)
- Fixed an issue causing Ambilight to not be correctly applied
- Fixed an issue showing more LED modes than available for current device
- Fixed an issue causing high CPU usage on sleep/hibernation wakeup
Hotfix
- 0.20.2.5 fixes an issue causing HC to rely on outdated settings file
Build 0.19.1.8
A new HC release! A hot fix release to address issues reported by the community.
What's Changed
Improvements
- Lenovo Legion Go fan toggle, quick adjustment between fan default curve or max speed, thank you @m33ts4k0z
Bugfixes
- Lenovo Legion Go no controller detected after latest firmware update
- BSOD and TDP issues due to too frequent setting of TDP
Build 0.19.1.6
What's Changed
Bugfixes
- Fixed an issue with Steam Deck Controller not properly reconnecting after hiding/unhiding.
- Fixed an issue with controller IsBusy check.
- Fixed an issue where VirtualManager vClient is null when profile HIDmode is applied (this should not happen!).
Build 0.19.1.5
What's Changed
Bugfixes
- Fixed an issue with DInput controller support.
Build 0.19.1.4
A word form the team
Before we dig into the changelog, I think we should cover the very long period of time since our latest early access build and our messy beta journey... Supporting the feature-rich Lenovo Legion Go was way more work than expected. Also, our controller management logic ended up being hard to implement. Both issues resulted in six beta builds and over a month since our latest EA which is unfortunate and very unpleasant for everyone (including the dev team).
Now for the good news, 0.19.1.4 is a major update which should provide a stable experience to all users.
We want to thank everyone who helped out during the beta test phase for their patience and feedback as well as our new contributors @slayer and @matthias and all knowledgeable people would helped us: @NeroReflex and @fighterguard.
Support for new devices
- Lenovo Legion Go
- OneXFly
- Steam Deck (OLED)
- AYANEO AIR Plus (Mendocino)
- NUC Deck (initial support)
What's Changed
Improvements
- Implemented a notification system, various device or app specific settings are now checked and user is notified if action is required.
- Implemented Asus Rog Ally split M1/M2 support.
- Improved controller management logic, thus allowing HC virtual controller to get first slot at all time.
- Implemented per-game virtual controller type preference.
- Implemented a new hotkey for controller type change, to quickly change controller type.
- Implemented per-device default layout logic, for greater out-of-the-box experience on newly supported devices.
- Implemented a new EC value to allow X1/X2 buttons on ONEX2 to send VolumeUp/Down.
- Implemented OSK (On screen Keyboard) support to define keys within custom hotkeys.
- Implemented a new Kill process button as part of Quicktools, Suspender menu.
- Migrated the project to latest .NET Framework 8.0.
- Improved overall UI experience on controller page, so that users are less likely to be confused.
- Improved gamepad navigation, removed inaccessible radio buttons and toggles that were not gamepad navigation compatible.
- Improved motion activation toggles, allowing users to have toggle type motion activation for gyro aiming.
- Implemented a new toggle for Lenovo Legion Go: Touchpad Passthrough, to let user decide whether or not HC should manage touchpad inputs.
- Improved the overall Ambilight experience.
- Implemented a new toggle to override the default layout by one of yours.
- Improved OSD to display frametime alongside FPS.
- Implemented proper power cycling support on Steam Deck (OLED/LCD). This should prevent double inputs issues by preventing Steam from holding access to the physical controller when hidden.
- Improved overall UI responsiveness while controller management is running.
- Improved controller management robustness.
- We'll no-longer map OEM1 button to Xbox Guide by default (this won't affect your current profiles).
- HWiNFO 12 Hour limit is now respected.
Bugfixes
- Fixed issues with laggy touchpad inputs on disconnect/reconnect.
- Fixed an issue causing instability on resume from hibernation.
- Fixed a crash when using ambilight and changing resolutions.
- Fixed an issue with CPU core count not properly restoring after a profile changes them.
- Fixed an issue where HC would keep setting RTSS FPS cap to 0 if profiles did not have a cap.
- Fixed various OEM button icons missing or not being correct (GPD and OneXPlayer).
- Fixed custom hotkey output field not being cleared on delete.
- Fixed an issue that power profiles would not be properly applied if a software fan control curve was used.
- Fixed an issue causing CPU maximum frequency to be capped to non-turbo frequency.
- Fixed an issue causing DSUServer to hang on client disconnect.
- Fixed an issue causing infinite rumble on AOKZOE or ONEX devices.
- Fixed an issue preventing proper power control and affecting performance on on Lenovo Legion Go.
- Fixed a regression with Asus ROG Ally affecting M1/M2 button support.
- Fixed a regression affecting keyboard input when managing custom hotkeys.
- Fixed a crash when emulating a virtual Dual Shock 4 with controller management enabled.
- Fixed a crash when resuming device from long sleep or long hibernation.
- Fixed a crash when changing screen orientation to portrait or inversed portrait.
- Fixed an issue where controller management "try again" button would put HC into a stalled state.
- Fixed an issue causing a crash on Legion Go during initialisation phase.
- Fixed an issue causing a crash when reading MotherboardInfo from a thread.
- Fixed an issue causing a crash on Legion Go when dataThread is null.
- Fixed an issue causing a crash on Legion Go when trying to manipulate GetSmartFanMode.
- Fixed an issue causing a crash when trying to apply a profile with a specific HIDmode set.
- Fixed an issue causing controller manager to loose track of virtual controllers while controller management is running. This should prevent memory leak.
- Fixed an issue preventing us from getting proper screen resolution, affecting quicktools dropdown items and ambilight.
- Fixed an issue causing a random crash when plugging a new controller.
- Fixed an issue with emulated controller type switch when applying a profile.
- Fixed an issue causing a crash when target controller is being cleared while not fully initialized.
- Fixed an issue preventing RTSS from working normally.
Build 0.18.0.6
What's Changed
Improvements
- Improved ROG Ally OEM buttons compatibility, making ASUS Optimization service installation no longer mandatory. Back paddles now supports both short and long press.
Build 0.18.0.5
What's Changed
Bugfixes
- Fixed an issue with Rog Ally OEM back paddles buttons sending keydown but never sending keyup
Build 0.18.0.4
Developer note: This is a bug fix and quality of life release while a large scale effort is ongoing to bring you LED and fan curve control for a large set of devices.
Support for new devices
- Add support for GPD Win 4 2023.
- Asus ROG Ally, manual fan control.
Improvements
- DualSense and DualShock LED, the 4 LEDs will now be equal to Windows Accent Color.
- Bluetooth controllers power cycling logic, allows for proper connection and identification of external blue tooth controllers.
- HidLibrary improved, migrated to a more reliable and faster library.
- Improve bluetooth controllers, better stability and UI experience.
Bugfixes
- Fixed an issue with broken first start check.
- Fixed an issue with infinite rumble on start.
Mainline 0.18.0.3
Support for new devices
- Add support for, OXP2 7840U (Non-Eva)
Improvements
- Implemented Steam Deck GPU control, control the Steam Deck GPU, based on work from SteamDeckTools.
- Implemented Steam Xbox Controller Enhanced Features Driver detection, HC will show a warning when this is enabled in Steam, as it conflicts with HidHide.
- Implemented Steam Desktop Mode detection, HC will show a warning when Steam was started before HC with Steam Desktop Layout enabled, causing double inputs.
- Implemented AutoTDP max TDP per profile setting through manual TDP slider, the manual TDP slider can now be used together with AutoTDP and will restrict it's upper range limit.
- Implemented gyro weight based on joystick position, prevent gyro and joystick fighting by having a configurable weight. This should result in smoother gyro aiming, especially in scenarios where players had to move both the joystick and use gyro simultaneously, like in fast-paced 3rd or 1st person shooters.
- Improved controller hiding process, by implementing a more robust HidHide logic, therefore improving overall controller hiding/unhiding process. UI experience was also improved.
- Improved XInput device detection.
Bugfixes
- Fixed HC from setting RTSS OSD to off.
- Fixed an issue freezing the UI thread.
- Fixed an issue when hiding/unhiding controller that could freeze the UI or fails.
- Fixed the settings needing to be re done every update of HC, note this will start working next install, not this install.
- Fixed an issue crashing HC when power cycling Steam Controllers.
- Fixed the main GUI navigation menu going back to the Controller page on the first page change.
- Fixed an issue preventing settings from being saved properly if HandheldCompanion folder was missing from local %appdata%.
- Fixed an issue causing HC to crash when power-cycling Neptune and Gordon controllers (Steam Deck and Steam Controller).
- Fixed an issue causing HC to crash when trying to manipulate locked files or folders.
Release 0.18.0.1b
Version 0.18.0.0 should mark a new milestone for the project. We have spent a considerable number of hours improving the software and simplifying its use. Version 0.18.0.0 also marks the end of Controller Service, reducing the software's resource consumption and simplifying its maintainability. Last but not least, this new version sees the appearance of the gyroscope in the layout manager, enabling you to transform your movements into mouse commands.
A huge thanks to all the (new) contributors we helped out for this release. @Havner @trippy @lunabagboi @oolongtea @micdah @Geckon01 @MiguelLedesmaC @MeikoMenmaHonma
Hotfix 0.18.0.1a
- Fix an issue preventing default profile from being loaded on application startup
- Fix an issue preventing RSR and other AMD specific features to work
- Fix OEM buttons support for AYANEO 1S
Hotfix 0.18.0.1b
- Fix an issue with layout manager being stuck on Desktop Layout
Support for new devices
- Add support for, AOKZOE A1 Pro
- Add support for, AYN Loki
- Add support for, OneXPlayer Mini AMD (A07 following BIOS update)
- Add support for, OXP2 6800U and 7840U Eva
- Add support for, Ayaneo Air Plus (Intel)
- Add support for, Ayaneo Air 1S
Support for new languages
- Add support for Portuguese (Brazilian)
- Add support for Spanish
- Add support for Japanese
- Add support for Russian
Support for external controllers, including gyro, gyro calibration, touchpads etc
- Add support for, Steam Controller
- Add support for, Dualshock 4
- Add support for, DualSense
- Add support for, Nintendo Pro Controller
Improvements
- Implemented steam file support, controller_neptune_steamcontroller.vdf
- Implemented AMD Radeon™ Super Resolution, available as a profile toggle.
- Implemented Maximum CPU Count, available as a profile toggle to force targeted application to run on a specific number of cores (experimental).
- Implemented trigger to trigger mapping, using layout mapping.
- Implemented Multi-action mapping, a single gamepad button, mouse click, or keyboard key can now produce as many actions as the user wishes.
- Implemented Extended Compatibility Injection, allowing virtual controller to be properly detected by many more games, including Xbox and Xbox Gamepass library.
- Implemented Automatic sensor swap, Improved the sensor selection swap, it will now automatically select the most logical choice
- Implemented Gyro Mouse, the gyro can now be configured as mouse input for even smoother motion gameplay
- Implemented Layout long press delay, configurable long press delay
- Implemented QuickTools Time, QuickTools now features a clock with the time
- Implemented OSD Option External, set HC OSD level to external to prevent conflicts with externally run OSDs and HC closing RTSS or HWiNFO
- Implemented 3D Overlay position reset, reset the 3D controller overlay position by holding B1 B4 button combination
- Improved DSU server (Cemuhook), now accepting remote connections from external devices
- Improved UI, when RTSS or HWiNFO get stalled**, controls should no-longer be disabled (greyed) but instead returned to default state
- Improved UI, by displaying currently applied profile on quick profiles page
- Improved device support, now supporting Turbo button on AOKZOE A1 and OneXPlayer Mini and OneXPlayer Mini Pro
- Improved localization support, removing a few hardcoded values and error calls
- Improved performance manager, now applying device configurable max TDP when restoring default TDP
- Improved physical controller hide/unhide robustness, we are now capable of capturing all HIDs linked to a USB controller.
- Improved Xbox 360 controller detection, finally addressing issues with undetected controllers on startup/resume.
- Improved Dualshock4 compatibility, with ability to map touchpad.
- Improved Steam platform compatibility, with better controller profile manipulation.
- Improved Quicktools readability, with improved UI.
- Improved overall layout manager, with faster UI drawing.
- Improved Language updates, German, Chinese
- Improved Layout keyboard selection list, Improved naming, much more readable and understandable
- Improved Controller service removal, less UI clutter, less confusion, more stability
Bugfixes
- Fixed an issue preventing performance manager from having the ability to stop cpu and gfx watchdogs on degraded state
- Fixed an issue that would allow performance manager to apply "below specs" TDP values
- Fixed an issue that would cause inputs manager to release incomplete OEM key strokes
- Fixed an issue with the 3D controller overlays, missing pieces and colors of various models
- Fixed an issue with the virtual controller detection feature, this fixes closing from tray menu, text and start order
- Fixed an issue with layout loading overwriting the wrong layout
- Fixed an issue with DSU Server controller, R2 and R1 were swapped
- Fixed an issue showing the right UI glyphs for various (external) controllers
- Fixed an issue with the new ROG Ally firmware update making the back button causing Long (3) detection of all OEM buttons. Be sure to update the BIOS to the latest version!
Known Issues
- External Xbox One controller support no longer works
- New profiles will need to be created. Note, old profiles are not deleted and you settings can still be found in the profiles folder