sbgECom  1.11.920-stable
sbgEComCmdMag.h
Go to the documentation of this file.
1 
20 #ifndef __SBG_ECOM_CMD_MAG_H__
21 #define __SBG_ECOM_CMD_MAG_H__
22 
23 #include "sbgEComCmdCommon.h"
24 
25 //----------------------------------------------------------------------//
26 //- Magnetometer definitions -//
27 //----------------------------------------------------------------------//
28 
33 {
40 
41 
46 {
51 
56 {
62 
67 {
74 
78 #define SBG_ECOM_MAG_CALIB_NOT_ENOUGH_POINTS (0x0001u)
79 #define SBG_ECOM_MAG_CALIB_TOO_MUCH_DISTORTIONS (0x0002u)
80 #define SBG_ECOM_MAG_CALIB_X_MOTION_ISSUE (0x0004u)
81 #define SBG_ECOM_MAG_CALIB_Y_MOTION_ISSUE (0x0008u)
82 #define SBG_ECOM_MAG_CALIB_Z_MOTION_ISSUE (0x0010u)
83 #define SBG_ECOM_MAG_CALIB_ALIGNMENT_ISSUE (0x0020u)
88 typedef enum _SbgEComMagModelsStdIds
89 {
93 
94 
95 //----------------------------------------------------------------------//
96 //- Magnetometer configuration -//
97 //----------------------------------------------------------------------//
98 
103 {
106 
111 {
114  uint16_t advancedStatus;
124  float meanAccuracy;
125  float stdAccuracy;
126  float maxAccuracy;
128  uint16_t numPoints;
129  uint16_t maxNumPoints;
130  float offset[3];
131  float matrix[9];
133 
134 //----------------------------------------------------------------------//
135 //- Magnetometer commands -//
136 //----------------------------------------------------------------------//
137 
144 SbgErrorCode sbgEComCmdMagSetModelId(SbgEComHandle *pHandle, uint32_t id);
145 
152 SbgErrorCode sbgEComCmdMagGetModelInfo(SbgEComHandle *pHandle, SbgEComModelInfo *pModelInfo);
153 
160 SbgErrorCode sbgEComCmdMagGetRejection(SbgEComHandle *pHandle, SbgEComMagRejectionConf *pRejectConf);
161 
168 SbgErrorCode sbgEComCmdMagSetRejection(SbgEComHandle *pHandle, const SbgEComMagRejectionConf *pRejectConf);
169 
177 SbgErrorCode sbgEComCmdMagSetCalibData(SbgEComHandle *pHandle, const float offset[3], const float matrix[9]);
178 
179 //----------------------------------------------------------------------//
180 //- Magnetometer onboard calibration commands -//
181 //----------------------------------------------------------------------//
182 
193 
201 SbgErrorCode sbgEComCmdMagComputeCalib(SbgEComHandle *pHandle, SbgEComMagCalibResults *pCalibResults);
202 
203 #endif
Definition: sbgEComCmdMag.h:49
_SbgEComMagCalibConfidence
Definition: sbgEComCmdMag.h:66
float stdAccuracy
Definition: sbgEComCmdMag.h:125
SbgErrorCode sbgEComCmdMagSetRejection(SbgEComHandle *pHandle, const SbgEComMagRejectionConf *pRejectConf)
enum _SbgEComMagCalibBandwidth SbgEComMagCalibBandwidth
float afterStdError
Definition: sbgEComCmdMag.h:121
uint16_t advancedStatus
Definition: sbgEComCmdMag.h:114
Definition: sbgEComCmdMag.h:69
enum _SbgEComRejectionMode SbgEComRejectionMode
float afterMaxError
Definition: sbgEComCmdMag.h:122
Definition: sbgEComCmdMag.h:48
float beforeMaxError
Definition: sbgEComCmdMag.h:118
SbgEComMagCalibQuality quality
Definition: sbgEComCmdMag.h:112
Definition: sbgECom.h:70
float beforeMeanError
Definition: sbgEComCmdMag.h:116
Definition: sbgEComCmdMag.h:91
float meanAccuracy
Definition: sbgEComCmdMag.h:124
SbgErrorCode sbgEComCmdMagGetModelInfo(SbgEComHandle *pHandle, SbgEComModelInfo *pModelInfo)
Definition: sbgEComCmdMag.h:60
float beforeStdError
Definition: sbgEComCmdMag.h:117
SbgEComRejectionMode magneticField
Definition: sbgEComCmdMag.h:104
SbgErrorCode sbgEComCmdMagComputeCalib(SbgEComHandle *pHandle, SbgEComMagCalibResults *pCalibResults)
enum _SbgEComMagCalibConfidence SbgEComMagCalibConfidence
SbgErrorCode sbgEComCmdMagSetCalibData(SbgEComHandle *pHandle, const float offset[3], const float matrix[9])
enum _SbgEComMagModelsStdIds SbgEComMagModelsStdId
Definition: sbgEComCmdMag.h:37
uint16_t maxNumPoints
Definition: sbgEComCmdMag.h:129
SbgErrorCode sbgEComCmdMagStartCalib(SbgEComHandle *pHandle, SbgEComMagCalibMode mode, SbgEComMagCalibBandwidth bandwidth)
Definition: sbgEComCmdCommon.h:58
Definition: sbgEComCmdMag.h:34
struct _SbgEComMagCalibResults SbgEComMagCalibResults
Definition: sbgEComCmdMag.h:90
Definition: sbgEComCmdMag.h:47
_SbgEComMagCalibMode
Definition: sbgEComCmdMag.h:32
Definition: sbgEComCmdMag.h:58
Definition: sbgEComCmdMag.h:102
SbgErrorCode sbgEComCmdMagSetModelId(SbgEComHandle *pHandle, uint32_t id)
float afterMeanError
Definition: sbgEComCmdMag.h:120
Definition: sbgEComCmdMag.h:110
This file groups all common definitions required by all commands.
Definition: sbgEComCmdMag.h:70
_SbgEComMagCalibQuality
Definition: sbgEComCmdMag.h:55
Definition: sbgEComCmdMag.h:59
float maxAccuracy
Definition: sbgEComCmdMag.h:126
_SbgEComMagCalibBandwidth
Definition: sbgEComCmdMag.h:45
SbgEComMagCalibConfidence confidence
Definition: sbgEComCmdMag.h:113
enum _SbgEComMagCalibMode SbgEComMagCalibMode
struct _SbgEComMagRejectionConf SbgEComMagRejectionConf
Definition: sbgEComCmdMag.h:57
uint16_t numPoints
Definition: sbgEComCmdMag.h:128
Definition: sbgEComCmdMag.h:68
SbgErrorCode sbgEComCmdMagGetRejection(SbgEComHandle *pHandle, SbgEComMagRejectionConf *pRejectConf)
enum _SbgEComMagCalibQuality SbgEComMagCalibQuality