GPS Driver Interface API
Header File
Source: include/gpsdriver.h
#include <gpsdriver.h>
Functions
-
int gps_set_driver_casic(void)
Set GPS driver for chipset with CASIC GNSS recevier protocol e.g. AT6558.
This driver is used in following GNSS modules or as integrated GNSS
Neoway N58 LTE Cat.1
Neoway G2
Neoway G7A
AT6558
- Returns:
0 on success
-
int gps_set_driver_l89ha(void)
Set GPS driver to Quectel L89HA R2.0 GNSS/IRNSS Module.
- Returns:
0 on success
-
int gps_set_driver_mt333x(void)
Set GPS driver to module using MT3333 or MT3339 chipset.
This driver can be used for following GNSS/GSM Modules
Quectel L86
Quectel MC60
Quectel MC20
- Returns:
0 on success
-
int gps_set_driver_sirf3(void)
GPS driver for SIRF III chipset.
- Returns:
0 on success
-
int gps_set_driver_stirnss(void)
GPS driver for STA8090 chipset.
This driver can be used for Quectel L89 IRNSS module.
Note
Please do not confuse with L89 and L89R2, check datasheet before using correct driver.
- Returns:
int
-
int gps_set_driver_uc622x(void)
GPS Driver for uc6226 uc6228 chipset.
This driver can be used for following modules:
Quectel L76C
Quectel L26C
Quectel BC20 (NB-IoT)
Quectel EC200UCN-AA LTE Cat.1 Module
- Returns:
0 on success
-
int gps_set_driver(const struct gpsdriver_t *driver)
Set custom defined GPS driver.
- Parameters:
driver – GPS module driver structure
- Returns:
0 on success, negative on failure
Structures
-
struct gpsdriver_t
GPS Driver Structure.
Public Members
-
const char *name
Driver Name
-
int command_checksum
Command require checksum? 1 - yes, 0 - no
-
const char **const response_ident
callback function for module specific reponse identifiers NULL if not implemented
List of module specific response identifier
- Param msg:
response (without checksum)
- Return:
status, 0 for success
-
int response_ident_count
count of response_ident
-
int (*restart)(int type)
Perform software reset, NULL if not implemented.
- Param type:
reset type gnssreset_e
- Return:
status, 0 for success
-
int (*config)(unsigned int msg_type, unsigned int rate_ms, int op_mode)
Configure GNSS module, NULL if not implemented.
- Param msg_type:
bitwise ORed value of gnssmsg_e, for messages to be enabled
- Param rate_ms:
output datarate in ms, currently unused (1000ms default)
- Param op_mode:
Operation mode to configure GNSS module for Normal or slow motion operation
- Return:
status, 0 for success
-
int (*setup_baud)(unsigned int baud)
Setup/change baudrate, called from gpsbaud command handler, NULL if not implemented.
- Param baud:
baudrate to set
- Return:
status, 0 for success
-
const char *name
Enumerations
-
enum gnssmsg_e
GNSS message to enable.
Values:
-
enumerator NMEA_GGA
-
enumerator NMEA_GLL
-
enumerator NMEA_GSA
-
enumerator NMEA_GSV
-
enumerator NMEA_RMC
-
enumerator NMEA_VTG
-
enumerator NMEA_GGA
