program ublox gps update rate

This commit is contained in:
noerw 2016-12-03 11:19:00 +01:00
parent f7f7dda22c
commit e9cbe78ff1
2 changed files with 106 additions and 1 deletions

34
gps.h
View file

@ -9,7 +9,39 @@ class Gps {
public:
void begin() {
// uBlox NEO-7M can't persist settings, so we update them on runtime to get a higher update rate
// commands extracted via u-center (https://www.youtube.com/watch?v=iWd0gCOYsdo)
uint8_t ubloxconfig[216] = {
// enable GPGGA & RMC sentences (only these are evaluated by TinyGPS++)
0xB5, 0x62, 0x06, 0x01, 0x08, 0x00, 0xF0, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x05, 0x38, //GGA
0xB5, 0x62, 0x06, 0x01, 0x08, 0x00, 0xF0, 0x04, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x09, 0x54, //RMC
// disable all other NMEA sentences to save bandwith
0xB5, 0x62, 0x06, 0x01, 0x08, 0x00, 0xF0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x2B, //GLL
0xB5, 0x62, 0x06, 0x01, 0x08, 0x00, 0xF0, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x32, //GSA
0xB5, 0x62, 0x06, 0x01, 0x08, 0x00, 0xF0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x39, //GSV
0xB5, 0x62, 0x06, 0x01, 0x08, 0x00, 0xF0, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x47, //VTG
// setup SBAS search to EGNOS only
0xB5, 0x62, 0x06, 0x16, 0x08, 0x00, 0x01, 0x03, 0x03, 0x00, 0x51, 0x08, 0x00, 0x00, 0x84, 0x15,
// set NAV5 model to automotive, static hold on 0.5m/s, 3m
0xB5, 0x62, 0x06, 0x24, 0x24, 0x00, 0xFF, 0xFF, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x10, 0x27,
0x05, 0x00, 0xFA, 0x00, 0xFA, 0x00, 0x64, 0x00, 0x2C, 0x01, 0x32, 0x3C, 0x00, 0x00,
0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x85, 0x78,
// 150ms update interval
0xB5, 0x62, 0x06, 0x08, 0x06, 0x00, 0x96, 0x00, 0x01, 0x00, 0x01, 0x00, 0xAC, 0x3E,
// 100ms update interval (needs higher baudrate, whose config doesnt work?)
//0xB5, 0x62, 0x06, 0x08, 0x06, 0x00, 0x64, 0x00, 0x01, 0x00, 0x01, 0x00, 0x7A, 0x12,
// uart to baud 115200 and nmea only -> wont work?! TODO :^(
//0xB5, 0x62, 0x06, 0x00, 0x14, 0x00, 0x01, 0x00, 0x00, 0x00, 0xD0, 0x08, 0x00, 0x00, 0x00, 0xC2,
//0x01, 0x00, 0x07, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xBF, 0x78,
// save changes
0xB5, 0x62, 0x06, 0x09, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x03, 0x1D, 0xAB
};
Serial.begin(GPS_BAUD);
Serial.write(ubloxconfig, sizeof(ubloxconfig));
//Serial.end();
//Serial.begin(115200);
}
/**
@ -33,7 +65,7 @@ class Gps {
do {
pollGPS();
if (millis() - start > timeout) return false;
} while (!gps.location.isUpdated() && !gps.location.isValid());
} while (!gps.location.isUpdated() && !gps.location.isValid() && gps.location.age() >= GPS_INTERVAL);
return true;
}

View file

@ -0,0 +1,73 @@
MON-VER - 0A 04 64 00 31 2E 30 30 20 28 35 39 38 34 32 29 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 30 30 30 37 30 30 30 30 00 00 50 52 4F 54 56 45 52 20 31 34 2E 30 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 47 50 53 3B 53 42 41 53 3B 47 4C 4F 3B 51 5A 53 53 00 00 00 00 00 00 00 00 00 00 00 00 00
CFG-ANT - 06 13 04 00 1B 00 F0 B9
CFG-DAT - 06 06 02 00 00 00
CFG-GNSS - 06 3E 24 00 00 16 16 04 00 04 FF 00 01 00 00 00 01 01 03 00 01 00 00 00 05 00 03 00 00 00 00 00 06 08 FF 00 00 00 00 00
CFG-INF - 06 02 0A 00 00 00 00 00 00 00 00 00 00 00
CFG-INF - 06 02 0A 00 01 00 00 00 87 87 87 87 87 87
CFG-INF - 06 02 0A 00 03 00 00 00 00 00 00 00 00 00
CFG-ITFM - 06 39 08 00 F3 AC 62 2D 1E 03 00 00
CFG-LOGFILTER - 06 47 0C 00 01 00 00 00 00 00 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 30 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 32 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 33 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 31 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 01 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0B 00 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 21 08 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0A 0B 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0A 09 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0A 02 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0A 06 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0A 07 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0A 21 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0A 08 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 60 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 22 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 31 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 04 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 01 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 02 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 07 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 32 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 06 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 03 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 30 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 20 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 21 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 11 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 01 12 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 02 20 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0D 03 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0D 01 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 0D 06 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 F0 00 01 01 01 01 01 01
CFG-MSG - 06 01 08 00 F0 01 01 00 01 01 01 01
CFG-MSG - 06 01 08 00 F0 02 01 00 01 01 01 01
CFG-MSG - 06 01 08 00 F0 03 01 00 01 01 01 01
CFG-MSG - 06 01 08 00 F0 04 01 01 01 01 01 01
CFG-MSG - 06 01 08 00 F0 05 01 00 01 01 01 01
CFG-MSG - 06 01 08 00 F0 06 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 F0 07 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 F0 08 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 F0 09 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 F0 0A 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 F0 0D 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 F1 00 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 F1 03 00 00 00 00 00 00
CFG-MSG - 06 01 08 00 F1 04 00 00 00 00 00 00
CFG-NAV5 - 06 24 24 00 FF FF 04 03 00 00 00 00 10 27 00 00 05 00 FA 00 FA 00 64 00 2C 01 64 3C 00 00 00 00 00 00 00 00 00 00 00 00
CFG-NAVX5 - 06 23 28 00 00 00 FF FF 0F 00 00 00 03 02 03 16 07 00 00 01 00 00 9B 06 00 00 00 00 01 01 00 00 00 64 64 00 00 01 10 00 00 00 00 00
CFG-NMEA - 06 17 0C 00 00 23 00 02 00 00 00 00 00 00 00 00
CFG-PM2 - 06 3B 2C 00 01 06 00 00 00 90 02 00 E8 03 00 00 10 27 00 00 00 00 00 00 00 00 00 00 2C 01 00 00 4F C1 03 00 86 02 00 00 FE 00 00 00 64 40 01 00
CFG-PRT - 06 00 14 00 00 00 00 00 84 00 00 00 00 00 00 00 07 00 03 00 00 00 00 00
CFG-PRT - 06 00 14 00 01 00 00 00 C0 08 00 00 00 C2 01 00 07 00 02 00 00 00 00 00
CFG-PRT - 06 00 14 00 02 00 00 00 C0 38 00 00 00 00 00 00 00 00 00 00 00 00 00 00
CFG-PRT - 06 00 14 00 03 00 00 00 00 00 00 00 00 00 00 00 07 00 03 00 00 00 00 00
CFG-PRT - 06 00 14 00 04 00 00 00 00 32 00 00 00 00 00 00 07 00 03 00 00 00 00 00
CFG-RATE - 06 08 06 00 64 00 01 00 01 00
CFG-RINV - 06 34 18 00 00 4E 6F 74 69 63 65 3A 20 6E 6F 20 64 61 74 61 20 73 61 76 65 64 21 00
CFG-RXM - 06 11 02 00 08 00
CFG-SBAS - 06 16 08 00 01 03 03 00 51 08 00 00
CFG-TP5 - 06 31 20 00 00 00 00 00 32 00 00 00 40 42 0F 00 40 42 0F 00 00 00 00 00 A0 86 01 00 00 00 00 00 F7 00 00 00
CFG-TP5 - 06 31 20 00 01 00 00 00 32 00 00 00 04 00 00 00 01 00 00 00 48 E8 01 00 A0 86 01 00 00 00 00 00 FE 00 00 00
CFG-USB - 06 1B 6C 00 46 15 A7 01 00 00 00 00 64 00 02 01 75 2D 62 6C 6F 78 20 41 47 20 2D 20 77 77 77 2E 75 2D 62 6C 6F 78 2E 63 6F 6D 00 00 00 00 00 00 75 2D 62 6C 6F 78 20 37 20 2D 20 47 50 53 2F 47 4E 53 53 20 52 65 63 65 69 76 65 72 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00