ndeadly / MissionControl

Use controllers from other consoles natively on your Nintendo Switch via Bluetooth. No dongles or other external hardware neccessary.
GNU General Public License v2.0
2.4k stars 137 forks source link

[Bug Report]: Wrong Dualshock 3 LEDs enabled #630

Closed GnomedDev closed 1 year ago

GnomedDev commented 1 year ago

Switch Firmware Version

16.0.2 (Latest)

Atmosphère Version

1.5.2 (Latest)

Mission Control Version

0.9.2 (Latest)

Boot Method

Fusée

Issue Description

Using a Dualshock 3 (Sixaxis), the controller LED seems to be backwards. Connecting one controller turns on the light labelled 4, connecting another controller then the dualshock enables the 3 and 4 lights.

Error Report

No response

Additional Context

Sysmodules: Tesla Menu, SysDVR, SaltyNX Partition based emummc Chainloading Fusee via Hekate -> payloads

ndeadly commented 1 year ago

This is intentional and designed to mimic the way the Switch LEDs light up. I thought about the idea of reversing them to match up with the labelling, but ultimately I think this ends up being worse once you start lighting up more LEDs. If you prefer the way they light up with the PS3, there's a configuration option to use that instead (see here)

I could however add an additional option to meet in the middle and use the Switch patterns but reversed if the demand was there, I just figured that anyone who cared would probably prefer the PS3 pattern.

GnomedDev commented 1 year ago

The existing behavior (at least by default) seems (to the end user) to be a bug, so should be changed to at least default to reversed switch patterns, but I don't know the difference between switch and ps3 patterns to make a judgement on if ps3 patterns should be default or not.

ndeadly commented 1 year ago

I suppose that depends on your expectations. My goal is for the default to be as close to the official Switch pattern as possible. While I agree with you that the default setting may cause some confusion initially, seeing the usual pattern displayed backwards feels just as wrong to me even if it may line up better with what's printed on the controller. I'll add the additional option though, it's no big deal. I figure someone is going to complain regardless of what the default is.

As for the patterns, here they are. Note that the (official) Switch patterns for p5-p8 are somewhat arbitrary. This influenced my decision to keep the defaults running left to right as they are now, to avoid confusion in that regard. I chose PS3 p5-p8 to be the inverse of p1-p4 as this seemed logical.

Switch pattern:

p1 1 0 0 0
p2 1 1 0 0
p3 1 1 1 0
p4 1 1 1 1
p5 1 0 0 1
p6 0 1 0 1
p7 1 1 0 1
p8 0 1 1 0

PS3 pattern:

p1 0 0 0 1
p2 0 0 1 0
p3 0 1 0 0
p4 1 0 0 0
p5 1 1 1 0
p6 1 1 0 1
p7 1 0 1 1
p8 0 1 1 1
ndeadly commented 1 year ago

@GnomedDev https://github.com/ndeadly/MissionControl/commit/939c2e868dcdcca34f416924b95fb19597a41b52

GnomedDev commented 1 year ago

As a person who uses MissionControl because I don't have a switch pro controller and my joycons are joycons, I'd prefer the PS3 pattern as that is what is printed on the controller and I've never seen whatever the pro controller does, but since the issue is fixed now with a config option I'll close.