ubloxcfg
u-blox 9 configuration helpers
Configuration definition

Data Structures

struct  UBLOXCFG_CONST_s
 Constants for type E1/E2/E4 configuration items. More...
 
struct  UBLOXCFG_ITEM_s
 Configuration item. More...
 
struct  UBLOXCFG_MSGRATE_s
 Configuration items for output message rate configuration. More...
 

Macros

#define UBLOXCFG_ID2SIZE(id)
 Get item size from item ID. More...
 
#define UBLOXCFG_ID2GROUP(id)
 Get item group ID from item ID. More...
 
#define UBLOXCFG_ID2IDGRP(id)
 Get item ID within group from item ID. More...
 

Typedefs

typedef enum UBLOXCFG_SIZE_e UBLOXCFG_SIZE_t
 Configuration item size.
 
typedef enum UBLOXCFG_TYPE_e UBLOXCFG_TYPE_t
 Configuration item storage type (s.a. UBLOXCFG_VALUE_t)
 
typedef struct UBLOXCFG_CONST_s UBLOXCFG_CONST_t
 Constants for type E1/E2/E4 configuration items.
 
typedef struct UBLOXCFG_ITEM_s UBLOXCFG_ITEM_t
 Configuration item.
 
typedef struct UBLOXCFG_MSGRATE_s UBLOXCFG_MSGRATE_t
 Configuration items for output message rate configuration.
 
typedef enum UBLOXCFG_LAYER_e UBLOXCFG_LAYER_t
 Configuration layers.
 

Enumerations

enum  UBLOXCFG_SIZE_e {
  UBLOXCFG_SIZE_BIT = 0x01 , UBLOXCFG_SIZE_ONE = 0x02 , UBLOXCFG_SIZE_TWO = 0x03 , UBLOXCFG_SIZE_FOUR = 0x04 ,
  UBLOXCFG_SIZE_EIGHT = 0x05
}
 Configuration item size. More...
 
enum  UBLOXCFG_TYPE_e {
  UBLOXCFG_TYPE_U1 , UBLOXCFG_TYPE_U2 , UBLOXCFG_TYPE_U4 , UBLOXCFG_TYPE_U8 ,
  UBLOXCFG_TYPE_I1 , UBLOXCFG_TYPE_I2 , UBLOXCFG_TYPE_I4 , UBLOXCFG_TYPE_I8 ,
  UBLOXCFG_TYPE_X1 , UBLOXCFG_TYPE_X2 , UBLOXCFG_TYPE_X4 , UBLOXCFG_TYPE_X8 ,
  UBLOXCFG_TYPE_R4 , UBLOXCFG_TYPE_R8 , UBLOXCFG_TYPE_E1 , UBLOXCFG_TYPE_E2 ,
  UBLOXCFG_TYPE_E4 , UBLOXCFG_TYPE_L
}
 Configuration item storage type (s.a. UBLOXCFG_VALUE_t) More...
 
enum  UBLOXCFG_LAYER_e { UBLOXCFG_LAYER_RAM , UBLOXCFG_LAYER_BBR , UBLOXCFG_LAYER_FLASH , UBLOXCFG_LAYER_DEFAULT }
 Configuration layers. More...
 

Functions

const UBLOXCFG_ITEM_tubloxcfg_getItemByName (const char *name)
 Get configuration item info by name. More...
 
const UBLOXCFG_ITEM_tubloxcfg_getItemById (const uint32_t id)
 Get configuration item info by key ID. More...
 
const UBLOXCFG_ITEM_t ** ubloxcfg_getAllItems (int *num)
 Get list of all items. More...
 
const UBLOXCFG_MSGRATE_tubloxcfg_getMsgRateCfg (const char *msgName)
 Get configuration items for output message rate configuration. More...
 
const UBLOXCFG_MSGRATE_t ** ubloxcfg_getAllMsgRateCfgs (int *num)
 Get list of all output message rate configurations. More...
 
const char * ubloxcfg_layerName (const UBLOXCFG_LAYER_t layer)
 Get name for layer. More...
 
bool ubloxcfg_layerFromName (const char *name, UBLOXCFG_LAYER_t *layer)
 Get layer from name. More...
 

Detailed Description

Macro Definition Documentation

◆ UBLOXCFG_ID2SIZE

#define UBLOXCFG_ID2SIZE (   id)

Get item size from item ID.

Parameters
[in]idThe item ID
Returns
The item size (UBLOXCFG_SIZE_t)
Note
No range checks are performed. Bad input can return a bad UBLOXCFG_SIZE_t.

Definition at line 60 of file ubloxcfg.h.

◆ UBLOXCFG_ID2GROUP

#define UBLOXCFG_ID2GROUP (   id)

Get item group ID from item ID.

Parameters
[in]idThe item ID
Returns
The item group ID

Definition at line 67 of file ubloxcfg.h.

◆ UBLOXCFG_ID2IDGRP

#define UBLOXCFG_ID2IDGRP (   id)

Get item ID within group from item ID.

Parameters
[in]idThe item ID
Returns
The item ID within the group

Definition at line 74 of file ubloxcfg.h.

Enumeration Type Documentation

◆ UBLOXCFG_SIZE_e

Configuration item size.

Enumerator
UBLOXCFG_SIZE_BIT 

One bit.

UBLOXCFG_SIZE_ONE 

One byte.

UBLOXCFG_SIZE_TWO 

Two bytes.

UBLOXCFG_SIZE_FOUR 

Four bytes.

UBLOXCFG_SIZE_EIGHT 

Eight bytes.

Definition at line 44 of file ubloxcfg.h.

◆ UBLOXCFG_TYPE_e

Configuration item storage type (s.a. UBLOXCFG_VALUE_t)

Enumerator
UBLOXCFG_TYPE_U1 

One byte unsigned, little-endian (uint8_t)

UBLOXCFG_TYPE_U2 

Two bytes unsigned, little-endian (uint16_t)

UBLOXCFG_TYPE_U4 

Four bytes unsigned, little-endian (uint32_t)

UBLOXCFG_TYPE_U8 

Eight bytes unsigned, little-endian (uint64_t)

UBLOXCFG_TYPE_I1 

One byte signed, little-endian (int8_t)

UBLOXCFG_TYPE_I2 

Two bytes signed, little-endian (int16_t)

UBLOXCFG_TYPE_I4 

Four bytes signed, little-endian (int32_t)

UBLOXCFG_TYPE_I8 

Eight byte signed, little-endian (int64_t)

UBLOXCFG_TYPE_X1 

One byte unsigned, little-endian (uint8_t)

UBLOXCFG_TYPE_X2 

Two bytes unsigned, little-endian (uint16_t)

UBLOXCFG_TYPE_X4 

Four bytes unsigned, little-endian (uint32_t)

UBLOXCFG_TYPE_X8 

Eight bytes unsigned, little-endian (uint64_t)

UBLOXCFG_TYPE_R4 

Four bytes IEEE754 single precision (float)

UBLOXCFG_TYPE_R8 

Eight bytes IEEE754 double precision (double)

UBLOXCFG_TYPE_E1 

One byte unsigned, little-endian (int8_t)

UBLOXCFG_TYPE_E2 

Two bytes unsigned, little-endian (int16_t)

UBLOXCFG_TYPE_E4 

Four bytes unsigned, little-endian (int32_t)

UBLOXCFG_TYPE_L 

One bit logical (0 = false, 1 = true)

Definition at line 77 of file ubloxcfg.h.

◆ UBLOXCFG_LAYER_e

Configuration layers.

Enumerator
UBLOXCFG_LAYER_RAM 

RAM layer (a.k.a. current configuration)

UBLOXCFG_LAYER_BBR 

BBR layer.

UBLOXCFG_LAYER_FLASH 

Flash layer.

UBLOXCFG_LAYER_DEFAULT 

Default layer.

Definition at line 181 of file ubloxcfg.h.

Function Documentation

◆ ubloxcfg_getItemByName()

const UBLOXCFG_ITEM_t * ubloxcfg_getItemByName ( const char *  name)

Get configuration item info by name.

Parameters
[in]nameName of the configuration item (e.g. "CFG-NAVSPG-FIXMODE") or hexadecimal string of the item ID (e.g. "0x20110011")
Returns
Configuration item if found, NULL otherwise

Definition at line 41 of file ubloxcfg.c.

◆ ubloxcfg_getItemById()

const UBLOXCFG_ITEM_t * ubloxcfg_getItemById ( const uint32_t  id)

Get configuration item info by key ID.

Parameters
[in]idID of the configuration item (e.g. 0x20110011)
Returns
The item if found, NULL otherwise

Definition at line 74 of file ubloxcfg.c.

◆ ubloxcfg_getAllItems()

const UBLOXCFG_ITEM_t ** ubloxcfg_getAllItems ( int *  num)

Get list of all items.

Parameters
[out]numNumber of items returned
Returns
List of items

Definition at line 89 of file ubloxcfg.c.

◆ ubloxcfg_getMsgRateCfg()

const UBLOXCFG_MSGRATE_t * ubloxcfg_getMsgRateCfg ( const char *  msgName)

Get configuration items for output message rate configuration.

Parameters
[in]msgNameThe name of the message (see Output message rates (aliases))
Returns
Configuration items if found, NULL otherwise

Definition at line 95 of file ubloxcfg.c.

◆ ubloxcfg_getAllMsgRateCfgs()

const UBLOXCFG_MSGRATE_t ** ubloxcfg_getAllMsgRateCfgs ( int *  num)

Get list of all output message rate configurations.

Parameters
[out]numNumber of output message rate configurations returned
Returns
List of output message rate configurations

Definition at line 114 of file ubloxcfg.c.

◆ ubloxcfg_layerName()

const char * ubloxcfg_layerName ( const UBLOXCFG_LAYER_t  layer)

Get name for layer.

Definition at line 1126 of file ubloxcfg.c.

◆ ubloxcfg_layerFromName()

bool ubloxcfg_layerFromName ( const char *  name,
UBLOXCFG_LAYER_t layer 
)

Get layer from name.

Parameters
[in]nameLayer name, case insensitive
[out]layerLayer, only valid if return value is true
Returns
true if a valid layer name is given

Definition at line 1138 of file ubloxcfg.c.