New issue
Advanced search Search tips

Issue 846806 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Chrome , Mac
Pri: 3
Type: Bug



Sign in to add a comment

XBox One controller guide button does not release

Project Member Reported by ftsui@google.com, May 25 2018

Issue description

Chrome Version: 66.0.3359.181 
OS: MacOS, Linux

What steps will reproduce the problem?
(1) Plug in gamepad
(2) goto hmtl5gamepad.com
(3) Press and release guide button
(4) B16 has value 1.00

What is the expected result?
B16 should have value 0.00 when guide button is released.

What happens instead?
B16 value is latched to 1.00 until unplug


Please use labels and text to provide additional information.
Game control id: 045e:02ea

If this is a regression (i.e., worked before), please consider using the
bisect tool (https://www.chromium.org/developers/bisect-builds-py) to help
us identify the root cause and more rapidly triage the issue.

For graphics-related bugs, please copy/paste the contents of the about:gpu
page at the end of this report.


 
Owner: mattreynolds@chromium.org
Status: Started (was: Untriaged)
I suspect this happens because we don't ACK the guide button report. Here's the relevant commit:

https://github.com/torvalds/linux/commit/57b8443d3e5bd046a519ff714ca31c64c7f04309

"The Xbox One S requires an ack to its mode button report, otherwise it continuously retransmits the report. This makes the mode button appear to be stuck down after it is pressed for the first time."

This should already be fixed in recent Linux kernels (>=4.11), unfortunately there isn't anything we can do to fix this from Chrome.

On OSX Chrome uses an internal driver for Xbox One gamepads; I'll add code to ACK the Guide report.
Project Member

Comment 2 by bugdroid1@chromium.org, Jun 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/16c0e6d72988e978738e4e77be8de022263a11da

commit 16c0e6d72988e978738e4e77be8de022263a11da
Author: Matt Reynolds <mattreynolds@google.com>
Date: Thu Jun 07 01:56:51 2018

Ack Xbox One reports for the Xbox button on Mac

Xbox One gamepads send the state of the Xbox button in a separate
report from the rest of the button and axis state. On some devices,
this report will be sent repeatedly until it is acked, and further
presses and releases of the button are not reported. This causes the
button to appear "stuck" when observed from within Chrome.

This CL makes Chrome ack the Xbox report when it is received,
preventing the button from becoming stuck. This fix only affects OSX,
where Chrome uses an internal driver for Xbox devices.

BUG=846806

Change-Id: I8e44a78c56b146dcf20c530cbc397451fce9e84c
Reviewed-on: https://chromium-review.googlesource.com/1086409
Commit-Queue: Matt Reynolds <mattreynolds@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565141}
[modify] https://crrev.com/16c0e6d72988e978738e4e77be8de022263a11da/device/gamepad/xbox_controller_mac.h
[modify] https://crrev.com/16c0e6d72988e978738e4e77be8de022263a11da/device/gamepad/xbox_controller_mac.mm

Sign in to add a comment