Device yaw attitude reported by CMMotionManager drifts
| Originator: | tomas.stenarson | ||
| Number: | rdar://22415685 | Date Originated: | 150825 |
| Status: | Open | Resolved: | |
| Product: | iOS SDK | Product Version: | iOS 9.0 [13A4325c] |
| Classification: | Reproducible: | Sometimes |
Summary: The device's yaw attitude changes at a constant rate even though the device is resting in a fixed position/orientation. This occurs only on some devices, both iOS 8 and iOS 9 Beta. I currently have an iPhone 5 with iOS 9 Beta installed which displays this problem every time, but it has also been seen in the field on various devices with iOS 8. Steps to Reproduce: 1. Download sample code MotionGraphs 2. In file APLDeviceMotionGraphViewController.m: Instead of calling startDeviceMotionUpdatesToQueue:withHandler: on CMMotionManager, call startDeviceMotionUpdatesUsingReferenceFrame:toQueue:withHandler using CMAttitudeReferenceFrameXMagneticNorthZVertical as reference frame. 3. Install and start the application on a device 4. Let the device rest still with x- or z-axis vertical 5. Note the graphs presented as deviceMotion.attitude Expected Results: The graphs should display three curves (yaw, pitch and roll) with constant values (depending on the device's resting orientation). Actual Results: On some devices, the yaw curve keeps increasing/decreasing with a steady pace (and wraps at ±pi). Notes: With the device's x-axis vertical, yaw makes a full rotation in one minute, with the y-axis vertical it's steady as expected though. Any other angle (e.g the z-axis vertical) yields a yaw change rate somewhere between 2*pi and 0 rad/min.
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!