This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
sdk:gps-udp-client-gnsstogps [2019/07/12 11:19] – fachet | sdk:gps-udp-client-gnsstogps [2021/10/08 10:22] (current) – [SDK Script gps-udp-client-GNSStoGPS.are] dodenhoeft | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Background ====== | ||
+ | GPS was the first Global Navigation Satellite System (GNSS) and the term GPS is often used as a synonym for GNSS. | ||
+ | |||
+ | Older software often only checks for NMEA 0183 sentences starting with < | ||
+ | |||
+ | Newer GNSS receivers often use multiple GNSS systems and therefore < | ||
+ | |||
+ | It would be better to us instead of < | ||
+ | |||
+ | < | ||
+ | NMEA 0183 sentence " | ||
+ | |||
+ | " | ||
+ | " | ||
+ | BD = Beidu | ||
+ | GA = Galileo | ||
+ | GL = GLONASS | ||
+ | GP = GPS | ||
+ | GN = GNSS position fix from more than one constellation (eg. GPS + GLONASS) | ||
+ | " | ||
+ | RMC = Recommended Minimum Sentence C (used in most cases) | ||
+ | GGA = Global Positioning System Fix Data | ||
+ | GNS = GNSS fixed data | ||
+ | GLL = Geographic Position - Latitude/ | ||
+ | ... | ||
+ | |||
+ | Source: https:// | ||
+ | </ | ||
+ | |||
====== SDK Script gps-udp-client-GNSStoGPS.are ====== | ====== SDK Script gps-udp-client-GNSStoGPS.are ====== | ||
<code c gps-udp-client-gnsstogps.are> | <code c gps-udp-client-gnsstogps.are> | ||
Line 23: | Line 52: | ||
nb_config_set(" | nb_config_set(" | ||
- | sleep(3); | + | do { |
+ | | ||
+ | } while ( nb_config_done() != 0) | ||
+ | |||
nb_config_set(" | nb_config_set(" | ||
- | sleep(5); | + | do { |
+ | | ||
+ | } while ( nb_config_done() != 0) | ||
return 0; | return 0; | ||
} | } | ||
- | |||
int gpsd_connect () | int gpsd_connect () | ||
{ | { | ||
Line 39: | Line 71: | ||
exit(-1); | exit(-1); | ||
} | } | ||
- | for (attempt = 0; attempt <= 5; attempt++) { | + | for (attempt = 0; attempt <= 15; attempt++) { |
- | sleep(3); | + | sleep(15); |
if (connect(gpsd, | if (connect(gpsd, | ||
nb_syslog(" | nb_syslog(" | ||
- | if (attempt == 3) { | + | if (attempt == 12) { |
nb_syslog(" | nb_syslog(" | ||
gpsd_restart(); | gpsd_restart(); |