Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qt/PAD: Enable/Disable Player LED for DualSense Controllers in Enhanced mode #10864

Merged
merged 1 commit into from
Mar 7, 2024

Conversation

dreamsyntax
Copy link
Contributor

@dreamsyntax dreamsyntax commented Feb 27, 2024

Description of Changes

This change adds a toggle to enable/disable the Player LED on DualSense controllers.
Not to be confused with the primary LED. The Player LED is a non-customizable bright white array of white LEDs that indicate the player number. Image of before and after.
image

The UI change is added to the LEDSettingsDialog
image

Rationale behind Changes

  • RAW mode does not have Player LEDs on.
  • Turning on Enhanced Mode turns on the Player LED in addition to the primary LED.
  • There is no option to disable the Player LEDs currently. You can only customize the primary LED.
  • A user may want to completely disable all LEDs on their controller. Currently you can disable the Primary LED but not the Player LED. This is distracting/bright when playing in low lighting conditions.
  • You can already tell which player is which due to the customized primary LED colors.

Suggested Testing Steps

  1. Connect DualSense controller. Note the player LED is off.
  2. Turn on Enhanced DS4/DS5 mode under the PCSX2 Controller Settings.
    -- if on master --
  3. Note the Player LED is ON. You can customize the Main LED but not the Player LED.
    -- if on this branch --
  4. Note the Player LED is still OFF.
  5. Enter the LED Settings Dialog (The lightbulb icon) and utilize the new Checkbox. You should see all connected controllers enable/disable their player indicator LEDs. You can customize the Main LED per-controller as usual.

@stenzek
Copy link
Contributor

stenzek commented Feb 27, 2024

This sounds like a bad idea, since we use the player ID for allocating the identifier in SDL-N.

@dreamsyntax dreamsyntax marked this pull request as draft February 27, 2024 17:55
@dreamsyntax dreamsyntax changed the title Misc: Disable Player LED by default with DS4/DS5 Enhanced mode Misc: Enable/Disable Player LED in DS4/DS5 Enhanced mode (Blocked) Feb 27, 2024
@dreamsyntax dreamsyntax force-pushed the dualsense-player-indicator branch from 33f9030 to 10ec2db Compare February 27, 2024 21:04
@dreamsyntax dreamsyntax changed the title Misc: Enable/Disable Player LED in DS4/DS5 Enhanced mode (Blocked) Qt: Enable/Disable Player LED option for Dual Sense Controllers in Enhanced mode Feb 27, 2024
@dreamsyntax
Copy link
Contributor Author

dreamsyntax commented Feb 27, 2024

This sounds like a bad idea, since we use the player ID for allocating the identifier in SDL-N.

Good call out. I've completely changed this PR to achieve this with the SDL Hint instead now.
I've also updated the UI so it is a toggle.

Ready for review.

@dreamsyntax dreamsyntax marked this pull request as ready for review February 27, 2024 21:14
@dreamsyntax dreamsyntax changed the title Qt: Enable/Disable Player LED option for Dual Sense Controllers in Enhanced mode Qt / PAD: Enable/Disable Player LED option for Dual Sense Controllers in Enhanced mode Feb 27, 2024
@dreamsyntax dreamsyntax changed the title Qt / PAD: Enable/Disable Player LED option for Dual Sense Controllers in Enhanced mode Qt/PAD: Enable/Disable Player LED option for Dual Sense Controllers in Enhanced mode Feb 27, 2024
@dreamsyntax dreamsyntax changed the title Qt/PAD: Enable/Disable Player LED option for Dual Sense Controllers in Enhanced mode Qt/PAD: Enable/Disable Player LED for DualSense Controllers in Enhanced mode Feb 27, 2024
@RedDevilus
Copy link
Contributor

RedDevilus commented Mar 1, 2024

Player LED on and off on my DualSense work fine. Though for expansion have you thought of adding specific things that DS4Windows add like where the player LED is you can show battery percentage or enable the mute button (orange light) which actually reduces battery usage (controller constantly sends audio even when it's not needed). Maybe this might be asking out of scope.

image
image
image

Which looks like this:
image

Only 3 because at 87%:
image

In your PR;
Player LED ON:
image

image

Player LED OFF:
image

image

@WolfKuzunoha
Copy link

yeah this thang works has my seal of approval 10/10

@dreamsyntax
Copy link
Contributor Author

Player LED on and off on my DualSense work fine. Though for expansion have you thought of adding specific things that DS4Windows add like where the player LED is you can show battery percentage or enable the mute button (orange light) which actually reduces battery usage (controller constantly sends audio even when it's not needed). Maybe this might be asking out of scope.

Thanks for testing.
As for your suggestions, those could be done but it would definitely be another PR.

Copy link

@AmyRoxwell AmyRoxwell left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works on arch linux with the appimage!
Didn't test the flatpak

@dreamsyntax dreamsyntax force-pushed the dualsense-player-indicator branch from 10ec2db to 26e02c0 Compare March 4, 2024 02:27
@stenzek stenzek merged commit 162354d into PCSX2:master Mar 7, 2024
12 checks passed
@dreamsyntax dreamsyntax deleted the dualsense-player-indicator branch March 7, 2024 02:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants