The Sensor Fusion API that the user will receive is indicated by the blue block on this slide. It is being fed data from the three sensors/nine axes, and will compute, filter, and provide the output. One output is quaternions, a complex number based on four elements that will determine orientation and position in space. Another output is the heading, which will be filtered and more reliable than just using a magnetometer alone. For example, when using only a magnetometer to find out where the North Pole is, it will be exposed to noise and external sources of disturbance and will not work accurately. With sensor fusion it will function properly even with a source of interference next to it. The user has access to all of the raw data; yaw, pitch, roll, linear acceleration, and gravity. That may sound obvious, but considering gravity, for instance, a body is exposed to gravity at 1g. When an that body starts moving, that gravity information becomes difficult to process because it is moving with the object. Therefore, when reading the accelerometer, there is a large quantity of data to be processed. It does not directly make sense as it is the motion combined with gravity, which is very difficult to extract. The system will extract that for the user, even though the object is in motion. Everything is dynamic, the gravity be can read at any given time in any given situation. The same is true for linear acceleration, if the user is sitting in a chair and leans back or rocks the chair around, they will be exposed to acceleration. But if the acceleration is read directly, it will be combined with gravity. Removing the gravity portion is not easy, but it can be done by the system can do it so that the acceleration read will be absolute information on the linear acceleration, without gravity. Filtering with the Sensor Fusion API includes magnetic disturbance. For example, with a compass pointing at the North Pole, introducing interference such as a cell phone or a magnet, the North Pole will not change, due to the filtering. It also accommodates dynamic distortion such as hand jitter, making it ideal for remote control solutions, for example a pointer highlighting a screen. At the moment the user attempts to point at something and wants to have the cursor to be steady, their hand is going introduce jitter. To prevent the cursor from moving with the vibration, anti-jittering can be embedded in the pointer. This could also include the gyro to compensate for drift.