New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 786252 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Email to this user bounced
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug

Blocking:
issue 695937



Sign in to add a comment

Surface Pro orientation event quaternions inconsistent with Android

Project Member Reported by offenwanger@chromium.org, Nov 17 2017

Issue description

Chrome Version: 64.0.3269.3 canary
OS: Win10 surface pro, Android N Pixel Phone

What steps will reproduce the problem?
(1) turn on the Generic Sensor, Generic Sensor Extra Classes, and Experimental Web Platform features flags on both devices
(2) Go to http://genericsensors.appspot.com
(3) add an Absolute orientation sensor
(4) rotate the devices around

What is the expected result?
When the devices are in the same orientation, the quaternion values should be the same

What happens instead?
The x, y, and z (but not w) components are negated. 
 
Blocking: 695937
Cc: bajones@chromium.org billorr@chromium.org
Labels: -OS-Android
This can also be seen visually and with the old device orientation API at http://googlesamples.github.io/web-fundamentals/fundamentals/native-hardware/device-orientation/dev-orientation.html.

This is blocking us from addressing  issue 695937  on Windows.
For http://googlesamples.github.io/web-fundamentals/fundamentals/native-hardware/device-orientation/dev-orientation.html, I found that it behaves similarly on Android, so I don't think it's a good sample of broken functionality.
Cc: alexande...@intel.com
I don't know enough about quaternions to know which device is producing the wrong value. CCing alexander.shalamov@intel.com who wrote the original Windows code.
Owner: alexande...@intel.com
Status: Started (was: Untriaged)
I will take a look.
Project Member

Comment 6 by bugdroid1@chromium.org, Dec 7 2017

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

commit cf13abba80471edc4ad83ea3455684f691df3a3f
Author: Alexander Shalamov <alexander.shalamov@intel.com>
Date: Thu Dec 07 08:23:30 2017

[sensors][win] Reverse axis signs for motion sensors

This CL reverses axis signs for gyroscope, magnetometer and absolute
orientation sensors. Before the change, wrong coordinate system was
used based on the accelerometer's data. Integrating Motion and Orientation
Sensors [1] document, explains what coordinate system must be used and why
accelerometer's measurements differ from other platforms.

[1] https://msdn.microsoft.com/en-us/library/windows/hardware/dn642102(v=vs.85).aspx

Bug:  786252 
Change-Id: I4afbc1a1d5fb03c3e2e0538a8ea7424c40020eca
Reviewed-on: https://chromium-review.googlesource.com/804624
Reviewed-by: Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Reviewed-by: Jun Cai <juncai@chromium.org>
Commit-Queue: Alexander Shalamov <alexander.shalamov@intel.com>
Cr-Commit-Position: refs/heads/master@{#522380}
[modify] https://crrev.com/cf13abba80471edc4ad83ea3455684f691df3a3f/services/device/generic_sensor/platform_sensor_and_provider_unittest_win.cc
[modify] https://crrev.com/cf13abba80471edc4ad83ea3455684f691df3a3f/services/device/generic_sensor/platform_sensor_reader_win.cc

Labels: Merge-Request-64
Status: Fixed (was: Started)
Project Member

Comment 8 by sheriffbot@chromium.org, Dec 8 2017

Labels: -Merge-Request-64 Hotlist-Merge-Approved Merge-Approved-64
Your change meets the bar and is auto-approved for M64. Please go ahead and merge the CL to branch 3282 manually. Please contact milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), kbleicher@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 9 by bugdroid1@chromium.org, Dec 8 2017

Labels: -merge-approved-64 merge-merged-3282
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e3285126bdc58be5b45fadc70aeb0ac784595cce

commit e3285126bdc58be5b45fadc70aeb0ac784595cce
Author: Alexander Shalamov <alexander.shalamov@intel.com>
Date: Fri Dec 08 16:51:21 2017

[M-64][sensors][win] Reverse axis signs for motion sensors

This CL reverses axis signs for gyroscope, magnetometer and absolute
orientation sensors. Before the change, wrong coordinate system was
used based on the accelerometer's data. Integrating Motion and Orientation
Sensors [1] document, explains what coordinate system must be used and why
accelerometer's measurements differ from other platforms.

[1] https://msdn.microsoft.com/en-us/library/windows/hardware/dn642102(v=vs.85).aspx

Bug:  786252 
Change-Id: I4afbc1a1d5fb03c3e2e0538a8ea7424c40020eca
Reviewed-on: https://chromium-review.googlesource.com/804624
Reviewed-by: Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Reviewed-by: Jun Cai <juncai@chromium.org>
Commit-Queue: Alexander Shalamov <alexander.shalamov@intel.com>
Cr-Original-Commit-Position: refs/heads/master@{#522380}(cherry picked from commit cf13abba80471edc4ad83ea3455684f691df3a3f)
Reviewed-on: https://chromium-review.googlesource.com/817814
Cr-Commit-Position: refs/branch-heads/3282@{#97}
Cr-Branched-From: 5fdc0fab22ce7efd32532ee989b223fa12f8171e-refs/heads/master@{#520840}
[modify] https://crrev.com/e3285126bdc58be5b45fadc70aeb0ac784595cce/services/device/generic_sensor/platform_sensor_and_provider_unittest_win.cc
[modify] https://crrev.com/e3285126bdc58be5b45fadc70aeb0ac784595cce/services/device/generic_sensor/platform_sensor_reader_win.cc

Cc: hdodda@chromium.org ligim...@chromium.org
Labels: TE-NeedsTriageFromMTV
@MTVTeam--Could someone from MTV team , please look into this as In-House team doesn't ahve the surface pro to verify the issue.

Thanks!

Sign in to add a comment