GuidanceTerminologyWorld Reference Frame solves this issue by providing a reference upon which to measure“leftness”.To account for this, navX-MXP’s motion processing adjusts each linear acceleration value byrotating it in the opposition direction of the current yaw angle. The result is an acceleration valuethat represents acceleration with respect to the area in which navX-MXP operates, which isknown as “World Reference Frame”. This world-frame linear acceleration value is much simplerto use for tracking motion of an object, like a robot, which might rotate while it moves.Important Note: navX-MXP Linear Acceleration values are in World Reference Frame.AdvancedAdvanced users may require knowledge of the following terminology.QuaternionsA quaternion is a four-element vector that can be used to encode any rotation in a 3Dcoordinate system. This single 4-element vector value can describe not only rotation about areference frame’s origin (Pitch, Roll and Yaw) but also the rotation of that entire referenceframe with respect to another. Furthermore, when Pitch, Roll and Yaw measures to performcertain calculations, it is not possible to clearly ascertain orientation when two axes are alignedwith each other; this condition is referred to as “Gimbal Lock”. For robotics applications, Pitch,Roll and Yaw are sufficient, however for certain aerospace applications, Quaternions may berequired to handle all possible orientations.navX-MXP uses Quaternions internally, and also provides the 4 quaternion values for use bythose who might need them.Selecting an InterfaceThe navX-MXP provides several methods for communicating with robotics control applications:MXP I2CMXP SPIUSB 2.0Streaming vs. Register-based CommunicationThe navX-MXP interfaces fall into two types: Streaming and Register-based.Streaming: data is sent at regular intervals by the navX-MXP, and the host is notified when newdata arrives. To support the low bitrate of the TTL UART interface, the streaming data is sent in67