Commit Graph

62 Commits

Author SHA1 Message Date
Peter Barker
0824eca776 AP_GPS: use AP_GPS_ENABLED to exclude more code when GPS not compiled in 2023-09-27 16:38:15 +10:00
Andrew Tridgell
89bd6ab218 AP_GPS: implement the GPS_DRV_OPTION for ellisoid height in mode drivers
this allows a lot more drivers to use the GPS_DRV_OPTION but to use
ellisoid height. Particularly useful for DroneCAN GPS modules

using ellisoid height instead of AMSL is useful in some specialised
application
2023-09-21 19:36:26 +10:00
Peter Barker
a391b14a6d AP_GPS: replace utility functions with compiler builtins 2023-09-12 09:48:53 +10:00
Peter Barker
6ee9f01ffb AP_GPS: avoid use of mavlink constructs when GCS not compiled in 2023-08-08 11:33:54 +10:00
Andrew Tridgell
9cebe3b880 AP_GPS: added a common velocity_to_speed_course()
this saves flash using common code
2022-12-20 10:23:58 +11:00
Andrew Tridgell
6c9cbe1a58 AP_GPS: fixed NMEA time reporting
basic NMEA does not have an itow, so we need to use time_week_ms

this caused us to always display the time as the start of the GPS week
on NMEA
2022-12-20 10:23:58 +11:00
Andrew Tridgell
5cd1aeaf38 AP_GPS: improve GPS debug logging
use timestamped data allowing for much more precise playback
2022-10-15 17:20:42 +11:00
Iampete1
71b00e0f75 AP_GPS: use config.h pattern and only include log structures if enabled 2022-07-13 18:14:12 +10:00
Andrew Tridgell
509f03f946 AP_GPS: cleanup driver option access
use option_set() to make code clearer
2022-06-15 17:30:28 +10:00
bugobliterator
244b8ed358 AP_GPS: change _last_itow to _last_itow_ms 2022-02-03 06:45:35 +11:00
bugobliterator
d3d3c826f7 AP_GPS: set _last_itow alongside state.last_corrected_gps_time_us 2022-02-03 06:45:35 +11:00
Peter Barker
60b8277e1b AP_GPS: create and use AP_GPS_BACKEND_DEFAULT_ENABLED
Allows for all backends to be set to off by default.
2022-02-01 11:22:02 +11:00
bugobliterator
46294c0fba AP_GPS: sync pps rate with message rate 2022-01-20 17:26:35 +11:00
bugobliterator
49b767b24e AP_GPS: add support for correcting GPS times while using DroneCAN GPS 2022-01-20 17:26:35 +11:00
bugobliterator
9834304525 AP_GPS: make more precise calculation of gps message
use PPS signal if available as well
2022-01-20 17:26:35 +11:00
Andrew Tridgell
9d21c0b6c1 AP_GPS: added GPS data logging system
for debugging GPS protocols
2022-01-11 10:34:11 +11:00
bugobliterator
ddc50a8420 AP_GPS: add option to set a dedicated line for Moving Baseline Data 2021-08-19 14:20:58 +10:00
bugobliterator
9fc57e40b4 AP_GPS: add support for dual GPS heading using Periph GPSes 2021-08-19 14:20:58 +10:00
Andrew Tridgell
1479566921 AP_GPS: added GPS_DRV_OPTIONS bit for forcing ublox GPS to 115200
this may help with some GPS modules
2021-08-10 10:54:14 +10:00
Andrew Tridgell
02feaaffcd AP_GPS: setup ublox moving baseline at 230400 when using uart2
this avoids issues with needing DMA on the UARTs when using UART2 to
transport RTCMv3 data
2021-05-21 08:49:25 +09:00
Michael du Breuil
a3ddf5264d AP_GPS: Support uavcan ardupilot.gnss.Status
Also makes the drive by change to make GPS_Backend::is_configured const
2021-03-12 09:39:55 +11:00
Andrew Tridgell
bf51478dd1 AP_GPS: added ExternalAHRS backend 2021-01-05 21:13:12 +11:00
Andrew Tridgell
862ae59e28 AP_GPS: support $PHD message for AllyStay NMEA GPS
this adds vertical velocity support
2020-12-01 09:04:43 +11:00
Michael du Breuil
b30c55b3f3 AP_GPS: Support yaw from moving base station on SBF drivers 2020-11-03 11:12:20 +11:00
Michael du Breuil
4161e2eb28 AP_GPS: Factor out moving base offset helper 2020-11-03 11:12:20 +11:00
yaapu
85b61d6bf3 AP_GPS: added support for MSP GPS sensors 2020-09-09 06:35:50 +10:00
Andrew Tridgell
5647aadbcf AP_GPS: added API for getting last iTOW 2020-09-09 06:35:50 +10:00
Michael du Breuil
6a8680d31d AP_GPS: Send RTK baseline data from SBF 2020-09-03 09:56:29 +10:00
Andrew Tridgell
7027eecd34 AP_GPS: added GPS_DRV_OPTIONS
this allows for configuration of moving baseline with either uart1 or
uart2 for the RTCM data. Using uart2 requires an extra cable between
the two modules, but requires less uart bandwidth which is good when
DMA channels are low. Using uart2 also avoids the rtcmv3 parser, which
saves memory
2020-04-21 15:30:54 +10:00
Andrew Tridgell
93aaf98672 AP_GPS: added automatic u-blox moving baseline configuration
this uses GPS_TYPE and GPS_TYPE2 to setup two u-blox F9 receivers in a
RTK moving baseline configuration
2020-01-07 12:37:35 +11:00
Michael du Breuil
f8808022b8 AP_GPS: Check the driver logging health 2019-11-20 11:06:16 -07:00
Pierre Kancir
13ac187fd8 AP_GPS: pass mavlink_message_t by const reference 2019-07-16 20:51:42 +10:00
Tom Pittenger
12c3446777 AP_GPS: rename dataflash to logger 2019-03-28 16:40:57 +11:00
Peter Barker
b47733142f GLOBAL: rename DataFlash_Class to AP_Logger 2019-01-18 18:08:20 +11:00
Andrew Tridgell
7a4b8d76c1 AP_GPS: added jitter correction to timestamp calculation
this allows for much more accurate (and consistent) timestamping of GPS
messages where the protocol has a ITOW field.
2018-12-04 11:37:38 +11:00
Andrew Tridgell
df68d6413c AP_GPS: moved iTow handling to GPS_Backend 2018-12-04 11:37:38 +11:00
Andrew Tridgell
3fe4b9c0f8 AP_GPS: make GPS packet timestamps more accurate
this reduces the effect of processing time and uart transmit time
2018-12-04 11:37:38 +11:00
Siddharth Purohit
ca54123b7d AP_GPS: move UAVCAN GPS related code to AP_GPS_UAVCAN backend 2018-08-29 22:54:59 +01:00
Michael du Breuil
c856cc6f33 AP_GPS: Allow GPS's to run functions on arming (used by SBF)
Supports starting/stopping GPS logging
2017-11-06 01:33:57 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
68828511cd AP_GPS: Only send GPS*_RTK mavlink messages if the backend supports them 2017-10-30 18:28:20 +00:00
Dr.-Ing. Amilcar Do Carmo Lucas
430b863f42 AP_GPS: Replace hardcoded duplicated end_mavlink_gps*_rtk() function with a flexible one 2017-10-30 18:28:20 +00:00
Michael du Breuil
bfbec02736 AP_GPS: SBF track the GPS error bits 2017-09-27 19:29:32 +01:00
Peter Barker
7258cfd20b AP_GPS: check dataflash to see if we should log backend gps messages 2017-06-29 15:43:38 +01:00
Michael du Breuil
5f8633e322 AP_GPS: Allow backends to report their lag confidences 2017-06-21 11:44:45 +01:00
Peter Barker
b7baca8d43 AP_GPS: move GPS type announcements into backend
See #4584
2017-04-23 21:04:17 +01:00
Peter Barker
2354a0ec5a AP_GPS: ability to log GPS detection state to dataflash 2017-04-23 21:03:23 +01:00
Michael du Breuil
6f297deaf7 AP_GPS: Unify inject_data interface for all classes 2017-04-19 02:05:51 +01:00
Eugene Shamaev
dfe9b0e6fc AP_GPS: support for UAVCAN connected GNSS receivers 2017-04-10 22:38:12 +01:00
Andrew Tridgell
5d18f3a453 AP_GPS: added backend specific get_lag() function
the ublox7 and 8 seem to produce lower lag, around 120ms. Separately
we should also look at running these at 10Hz and see if that helps.
2017-01-27 16:57:42 +09:00
Mathieu OTHACEHE
152edf7189 Global: remove mode line from headers
Using a global .dir-locals.el file is a better alternative than
reincluding the same emacs header in every file of the project.
2016-10-24 09:42:01 -02:00