Following is the list of supported fusion types:

Identifier Type
0x00 6 axis online calibration
0x01 9 axis online calibration
0x02 9 axis lock heading
0x03 6 axis manual calibration
0x04 9 axis manual calibration
0x05 9 axis lock heading manual calibration

The 6-axis mode uses acceleroemters and gyroscopes, while the 9-axis mode also involves the 3-axis magnetometers for heading correction.

The online calibration procedure is automatic and the user is not required to set any commands in advance.

The 9-axis online calibration mode uses magnetometers and an efficient covariance computation technique to track the magnetic north vector and perform heading corrections accordingly. The device is required to be moved around in yaw for a couple of seconds, until it finds the magnetic north vector. This could result in a one-time quick jump in the heading angle. The famous zig-zag move is one way to make sure that the North vector is found quickly. After the initial quick jump, a continuous smooth heading correction procedure will follow.

The lock heading mode is used to lock magnetometer readings to several reference heading angles. This mode works best when the device is used in a single location, which constitutes a unique magnetic disturbance signature. When the command is issued, Neblina will wait until the device is positioned on either a horizontal or vertical plane and then the current magnetometer readings will be locked to the zero degrees heading. Therefore, whenever the device points back to the same direction, Neblina will provide correction for the heading angle to reach the reference 0 degrees. The correction is adaptive meaning that if the deviation of the heading angle caused by the Gyroscopes' drift is high enough at the reference heading angle, the correction will be aggressive. However, if the heading info is close to the zero degrees (<15 degrees), the correction will apply smoothly. After setting the 0 degree reference, Neblina will pick up more reference heading angles using the gyroscope integration as the device moves, and will keep those additional points for further heading corrections. Currently, Neblina locks to a maximum of 32 reference heading angles. In this 9-axis mode of operation the magnetic North is not tracked, and thus, we cannot use this mode as a compass.

The 6-axis manual calibration requires accelerometers to have been manually calibrated in advance using the AccelerometerCalibrationSet command. The calibrated accelerometers will then be used in the fusion engine instead of raw accelerometer data to track the pitch and roll angles with a higher accuracy.

The 9-axis manual calibration is similar to the 9-axis online calibration, except for the fact that manually calibrated accelerometers are used instead of raw data to track the device's 3D orientation. It is therefore required to manually calibrate accelerometers in advance using the AccelerometerCalibrationSet command.