ubxcfg.h 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. /*
  2. * ubxproto
  3. * Copyright (c) 2014, Alexey Edelev aka semlanik, All rights reserved.
  4. *
  5. * This library is free software; you can redistribute it and/or
  6. * modify it under the terms of the GNU Lesser General Public
  7. * License as published by the Free Software Foundation; either
  8. * version 3.0 of the License, or (at your option) any later version.
  9. *
  10. * This library is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  13. * Lesser General Public License for more details.
  14. *
  15. * You should have received a copy of the GNU Lesser General Public
  16. * License along with this library.
  17. *
  18. * Additionally to GNU Lesser General Public License you MUST NOT
  19. * static link this library and MUST add link to author
  20. * and source of this library in your application.
  21. *
  22. * Actual LGPL text https://www.gnu.org/licenses/lgpl.html
  23. *
  24. * File: ubxcfg.h
  25. */
  26. /*! \file */
  27. #ifndef UBLOXCFG_H
  28. #define UBLOXCFG_H
  29. #include "ubxmessage.h"
  30. #ifdef __cplusplus
  31. extern "C"
  32. {
  33. #endif
  34. extern UBXMsgBuffer getCFG_ANT(UBXX2_t flags, //See UBXANTFlags to fill this field
  35. UBXANTPins pins);
  36. extern UBXMsgBuffer getCFG_ANT_POLL();
  37. extern UBXMsgBuffer getCFG_BATCH(UBXU1_t version,
  38. UBXX1_t flags, //See UNXCFGBATCHFlags to fill this field
  39. UBXU2_t bufSize,
  40. UBXU2_t notifThrs,
  41. UBXU1_t pioId);
  42. extern UBXMsgBuffer getCFG_BATCH_POLL();
  43. extern UBXMsgBuffer getCFG_CFG(UBXX4_t clearMask, //See UBXCFGMask to fill this field
  44. UBXX4_t saveMask, //See UBXCFGMask to fill this field
  45. UBXX4_t loadMask //See UBXCFGMask to fill this field
  46. );
  47. extern UBXMsgBuffer getCFG_CFG_OPT(UBXX4_t clearMask, //See UBXCFGMask to fill this field
  48. UBXX4_t saveMask, //See UBXCFGMask to fill this field
  49. UBXX4_t loadMask, //See UBXCFGMask to fill this field
  50. UBXX1_t deviceMask //See UBXCFGDeviceMask to fill this field
  51. );
  52. extern UBXMsgBuffer getCFG_DAT_IN(UBXR8_t majA,
  53. UBXR8_t flat,
  54. UBXR4_t dX,
  55. UBXR4_t dY,
  56. UBXR4_t dZ,
  57. UBXR4_t rotX,
  58. UBXR4_t rotY,
  59. UBXR4_t rotZ,
  60. UBXR4_t scale);
  61. extern UBXMsgBuffer getCFG_DAT_POLL();
  62. extern UBXMsgBuffer getCFG_DGNSS_POLL();
  63. extern UBXMsgBuffer getCFG_DGNSS(UBXU1_t dgnssMode);
  64. extern UBXMsgBuffer getCFG_DOSC_POLL();
  65. extern UBXMsgBuffer getCFG_DOSC(UBXU1_t version,
  66. UBXU1_t numOsc,
  67. UBXCFG_DOSC_CFG* oscCfg);
  68. extern UBXMsgBuffer getCFG_ESRC_POLL();
  69. extern UBXMsgBuffer getCFG_ESRC(UBXU1_t version,
  70. UBXU1_t numSources,
  71. UBXCFG_ESRC_CFG* esrcCfg);
  72. extern UBXMsgBuffer getCFG_GEOFENCE_POLL();
  73. extern UBXMsgBuffer getCFG_GEOFENCE(UBXU1_t version,
  74. UBXU1_t numFences,
  75. UBXCFGGEOFENCEConfidenceLevel confLvl,
  76. UBXCFGGEOFENCEPIOState pioEnabled,
  77. UBXCFGGEOFENCEPinPolarity pinPolarity,
  78. UBXU1_t pin,
  79. UBXCFG_GEOFENCE_PART* fences);
  80. extern UBXMsgBuffer getCFG_HNR_POLL();
  81. extern UBXMsgBuffer getCFG_HNR(UBXU1_t highNavRate);
  82. extern UBXMsgBuffer getCFG_GNSS_POLL();
  83. extern UBXMsgBuffer getCFG_GNSS(UBXU1_t msgVer,
  84. UBXU1_t numTrkChHw,
  85. UBXU1_t numTrkChUse,
  86. UBXU1_t numConfigBlocks,
  87. UBXCFG_GNSS_PART* gnssPart);
  88. extern UBXMsgBuffer getCFG_INF_POLL(UBXU1_t protocolId);
  89. extern UBXMsgBuffer getCFG_INF(UBXCFG_INF_PART *infPart, int infPartCount);
  90. extern UBXMsgBuffer getCFG_ITFM_POLL();
  91. extern UBXMsgBuffer getCFG_ITFM(UBXITFMConfig config, UBXITFMConfig2 config2);
  92. extern UBXMsgBuffer getCFG_LOGFILTER_POLL();
  93. extern UBXMsgBuffer getCFG_LOGFILTER(UBXU1_t version,
  94. UBXX1_t flags, //See UBXLOGFILTERFlags to fill this field
  95. UBXU2_t minIterval,
  96. UBXU2_t timeThreshold,
  97. UBXU2_t speedThreshold,
  98. UBXU4_t positionThreshold);
  99. extern UBXMsgBuffer getCFG_MSG_POLL(UBXMessageClass msgClass, UBXMessageId msgId);
  100. extern UBXMsgBuffer getCFG_MSG_RATE(UBXMessageClass msgClass, UBXMessageId msgId, UBXU1_t rate);
  101. extern UBXMsgBuffer getCFG_MSG_RATES(UBXMessageClass msgClass, UBXMessageId msgId, UBXU1_t rate[6]);
  102. extern UBXMsgBuffer getCFG_NAV5_POLL();
  103. extern UBXMsgBuffer getCFG_NAV5(UBXX2_t mask, //See UBXNAV5Mask to fill this field
  104. UBXNAV5Model dynModel,
  105. UBXNAV5FixMode fixMode,
  106. UBXI4_t fixedAlt,
  107. UBXU4_t fixedAltVar,
  108. UBXI1_t minElev,
  109. UBXU2_t pDop,
  110. UBXU2_t tDop,
  111. UBXU2_t pAcc,
  112. UBXU2_t tAcc,
  113. UBXU1_t staticHoldThresh,
  114. UBXU1_t dgpsTimeOut,
  115. UBXU1_t cnoThreshNumSVs,
  116. UBXU1_t cnoThresh);
  117. extern UBXMsgBuffer getCFG_NAVX5_POLL();
  118. extern UBXMsgBuffer getCFG_NAVX5(UBXU2_t version,
  119. UBXX2_t mask1,//See UBXNAVX5Mask to fill this field
  120. UBXU1_t minSVs,
  121. UBXU1_t maxSVs,
  122. UBXU1_t minCNO,
  123. UBXU1_t iniFix3D,
  124. UBXU2_t wknRollover,
  125. UBXU1_t usePPP,
  126. UBXU1_t aopCFG,// 0-disabled, 1 - enabled
  127. UBXU1_t aopOrbMaxErr);
  128. extern UBXMsgBuffer getCFG_NMEA_POLL();
  129. extern UBXMsgBuffer getCFG_NMEA(UBXX1_t filter, //See UBXNMEAFilter to fill this field
  130. UBXU1_t nmeaVersion,
  131. UBXU1_t numSV,
  132. UBXX1_t flags, //See UBXNMEAFlags to fill this field
  133. UBXX4_t gnssToFilter, //See UBXNMEAGNSSToFilter to fill this field
  134. UBXNMEASVNumbering svNumbering,
  135. UBXNMEATalkerIds mainTalkerId,
  136. UBXNMEAGSVTalkerIds gsvTalkerId);
  137. extern UBXMsgBuffer getCFG_NVS(UBXX4_t clearMask, //See UBXCFGMask CFG_NVS section to fill this field
  138. UBXX4_t saveMask, //See UBXCFGMask CFG_NVS section to fill this field
  139. UBXX4_t loadMask, //See UBXCFGMask CFG_NVS section to fill this field
  140. UBXX1_t deviceMask //See UBXCFGDeviceMask to fill this field
  141. );
  142. extern UBXMsgBuffer getCFG_PM2_POLL();
  143. extern UBXMsgBuffer getCFG_PM2(UBXCFG_PM2Flags flags,
  144. UBXU4_t updatePeriod,
  145. UBXU4_t searchPeriod,
  146. UBXU4_t gridOffset,
  147. UBXU2_t onTime,
  148. UBXU2_t minAcqTime);
  149. extern UBXMsgBuffer getCFG_PMS_POLL();
  150. extern UBXMsgBuffer getCFG_PMS(UBXU1_t version,
  151. UBXPMSValue powerSetupValue,
  152. UBXU2_t period,
  153. UBXU2_t onTime);
  154. extern UBXMsgBuffer getCFG_PRT_POLL();
  155. extern UBXMsgBuffer getCFG_PRT_POLL_OPT(UBXU1_t portId);
  156. extern UBXMsgBuffer getCFG_PRT_UART();
  157. extern UBXMsgBuffer getCFG_PRT_USB();
  158. extern UBXMsgBuffer getCFG_PRT_SPI();
  159. extern UBXMsgBuffer getCFG_PRT_DDC();
  160. extern UBXMsgBuffer getCFG_RATE_POLL();
  161. extern UBXMsgBuffer getCFG_RATE(UBXU2_t measRate, UBXU2_t navRate, UBXU2_t timeRef);
  162. extern UBXMsgBuffer getCFG_RINV(UBXX1_t flags, UBXU1_t *data, int dataSize);
  163. extern UBXMsgBuffer getCFG_RINV_POLL();
  164. extern UBXMsgBuffer getCFG_RST(int mode, UBXU2_t mask);
  165. extern UBXMsgBuffer getCFG_RST_OPT(int mode, UBXBBRSpecialSets special);
  166. extern UBXMsgBuffer getCFG_RXM(UBXU1_t lpMode //See UBXRXMLowPowerModes to fill this field
  167. );
  168. extern UBXMsgBuffer getCFG_RXM_POLL();
  169. extern UBXMsgBuffer getCFG_SBAS_POLL();
  170. extern UBXMsgBuffer getCFG_SBAS(UBXX1_t mode, //See UBXSBASModes to fill this field
  171. UBXX1_t usage, //See UBXSBASUsage to fill this field
  172. UBXU1_t maxSBAS,
  173. UBXX1_t scanmode2, //See UBXSBASScanModes2 to fill this field
  174. UBXX4_t scanmode1 //See UBXSBASScanModes1 to fill this fields
  175. );
  176. extern UBXMsgBuffer getCFG_TP5_POLL();
  177. extern UBXMsgBuffer getCFG_TP5_POLL_OPT(UBXCFGTimepulses tpIdx);
  178. extern UBXMsgBuffer getCFG_TP5(UBXCFGTimepulses tpIdx, UBXI2_t antCableDelay, UBXI2_t rfGroupDelay,
  179. UBXU4_t freqPeriod, UBXU4_t freqPeriodLock, UBXU4_t pulseLenRatio,
  180. UBXU4_t pulseLenRatioLock, UBXI4_t userConfigDelay, UBXU4_t flags);
  181. extern UBXMsgBuffer getCFG_USB_POLL();
  182. extern UBXMsgBuffer getCFG_USB(UBXU2_t vendorId,
  183. UBXU2_t productId,
  184. UBXU2_t powerConsumption,
  185. UBXX2_t flags, //See UBXUSBFlags to fill this field
  186. UBXCH_t* vendorString,
  187. UBXCH_t* productString,
  188. UBXCH_t* serialNumber);
  189. #ifdef __cplusplus
  190. }
  191. #endif
  192. #endif // UBLOXCFG_H