bugobliterator
79c45049e0
AP_GPS: only use PPS time when there is atleast 2D Fix
3 years ago
bugobliterator
244b8ed358
AP_GPS: change _last_itow to _last_itow_ms
3 years ago
bugobliterator
46294c0fba
AP_GPS: sync pps rate with message rate
3 years ago
bugobliterator
49bf4fa27b
AP_GPS: move to using last_corrected_gps_time_us instead of uart_timestamp_us
3 years ago
bugobliterator
9834304525
AP_GPS: make more precise calculation of gps message
...
use PPS signal if available as well
3 years ago
Andrew Tridgell
9d21c0b6c1
AP_GPS: added GPS data logging system
...
for debugging GPS protocols
3 years ago
Peter Barker
6d615a3e16
AP_GPS: move from HAL_NO_GCS to HAL_GCS_ENABLED
3 years ago
bugobliterator
3b58463bfd
AP_GPS: initialise uavcan drv interim_state with state structure at startup
4 years ago
bugobliterator
9fc57e40b4
AP_GPS: add support for dual GPS heading using Periph GPSes
4 years ago
Andrew Tridgell
f8e40eef00
AP_GPS: fixed printf format errors
4 years ago
Andrew Tridgell
e5d878eebd
AP_GPS: change handling of moving baseline yaw
...
this changes yaw handling in a few ways:
- GPS yaw now has a timestamp associated with the yaw separate from
the timestamp associated with the GPS fix
- we no longer force the primary to change to the UBLOX MB rover when
it has a GPS yaw. This means we don't change GPS primary due to GPS
loss, which keeps the GPS more stable. It also increases accuracy
as the rover is always less accurate in position and velocity than
the base
- now we force the primary to be the MB base if the other GPS is a
rover and the base has GPS lock
4 years ago
Peter Barker
a61b6ebda8
AP_GPS: move from HAL_NO_LOGGING to HAL_LOGGING_ENABLED
4 years ago
Andrew Tridgell
dd86e0cc89
AP_GPS: added comment explaining the approach
4 years ago
Andrew Tridgell
8bc31ec5e9
AP_GPS: account for rotation rate in moving baseline Z test
...
this avoids switching GPS on rapid roll/pitch
4 years ago
Michael du Breuil
d9ffd04a96
AP_GPS: Broadcast the detect message on AP_Periph over CAN
4 years ago
Michael du Breuil
4161e2eb28
AP_GPS: Factor out moving base offset helper
4 years ago
Andrew Tridgell
e529d475d4
AP_GPS: use mktime for NMEA and MTK time conversion
...
this fixes NMEA time handling, which was off by 3 days
4 years ago
yaapu
85b61d6bf3
AP_GPS: added support for MSP GPS sensors
5 years ago
Andrew Tridgell
87c7781be2
AP_GPS: show GPS as unhealthy if it is lagged too much
...
this detects GPS data lag, and if 5 samples in a row are lagged by
more than 50ms beyond the expected lag for the GPS then we declare the
GPS as unhealthy.
This is useful to detect users who have asked for more data from the
GPS then it can send at the baudrate that is being used. The case that
led to this path was a F9 GPS with GPS_RAW_DATA=1 at 115200 baud. In
that case the UART data is quickly lagged by over 1s
5 years ago
Andrew Tridgell
291d72601b
AP_GPS: enabled reduced size for AP_Periph support
6 years ago
Peter Barker
678c11f048
AP_GPS: supply format string to send_text
6 years ago
Michael du Breuil
52eb832883
AP_GPS: Remove stuff from headers
6 years ago
Tom Pittenger
12c3446777
AP_GPS: rename dataflash to logger
6 years ago
Peter Barker
6fc76a32af
GLOBAL: use AP::logger() and strip redundant Log_ from methods
6 years ago
Peter Barker
b47733142f
GLOBAL: rename DataFlash_Class to AP_Logger
6 years ago
Andrew Tridgell
7c50aacc92
AP_GPS: moved place we graph uart timestamp
6 years ago
Andrew Tridgell
685771c145
AP_GPS: constrain rate_ms from 5Hz to 20Hz
6 years ago
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.
6 years ago
Andrew Tridgell
df68d6413c
AP_GPS: moved iTow handling to GPS_Backend
6 years ago
Andrew Tridgell
3fe4b9c0f8
AP_GPS: make GPS packet timestamps more accurate
...
this reduces the effect of processing time and uart transmit time
6 years ago
Peter Barker
40daa8e15f
AP_GPS: use mavlink definition to get statustext size
...
Also, add one for null-termination
6 years ago
Patrick José Pereira
10ffd89a0c
AP_GPS: Remove unused operation
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
7 years ago
Peter Barker
643e7e039a
AP_GPS: log received data
...
Also log a set of flag values if a driver is deleted
7 years ago
Dr.-Ing. Amilcar Do Carmo Lucas
bf6778277e
AP_GPS: implement GPS*_RTK mavlink messages
7 years ago
Peter Barker
76847a2487
AP_GPS: eliminate GCS_MAVLINK::send_statustext_all
8 years ago
Peter Barker
7258cfd20b
AP_GPS: check dataflash to see if we should log backend gps messages
8 years ago
Michael du Breuil
1877d09f7c
AP_GPS: Don't track detection time to broadcast baud rate
8 years ago
Andrew Tridgell
3687b6bdf0
AP_GPS: rename macros to avoid conflicts
...
these macros were also defined in NuttX in clock.h
8 years ago
Peter Barker
b7baca8d43
AP_GPS: move GPS type announcements into backend
...
See #4584
8 years ago
Michael du Breuil
6f297deaf7
AP_GPS: Unify inject_data interface for all classes
8 years ago
Randy Mackay
cd379b0e86
AP_GPS: move time_epoch calcs into proper file
...
The frontend implementation was in the backend file
No functional change
8 years ago
Lucas De Marchi
9f09442548
AP_GPS: rename UNIX_OFFSET
...
To keep consistency with other constants and make clear the unit.
8 years ago
murata
30151c8253
Global: Define MSEC_PER_SEC, MSEC_PER_WEEK, SEC_PER_WEEK and UNIX_OFFSET.
8 years ago
Michael du Breuil
c696137a42
AP_GPS: Update the number of leapseconds
8 years ago
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.
8 years ago
Andrew Tridgell
b424c49bc7
AP_GPS: change ground course to be in degrees
...
more accuracy for replay
9 years ago
Andrew Tridgell
c85607b80c
AP_GPS: added time_epoch_convert() function
...
used by replay to get identical timestamps
9 years ago
Lucas De Marchi
ff10d1136c
AP_GPS: reorganize includes
...
Due to the way the headers are organized a single change in a
AP_GPS backend would trigger a rebuild for most of the files in the
project. Time could be saved by using ccache (since most of the things
didn't change) but we can do better, i.e. re-organize
the headers so we don't have to re-build everything.
This makes internal headers internal and then other libraries only
depend on the AP_GPS.h header.
9 years ago
Caio Marcelo de Oliveira Filho
c33b86a783
AP_GPS: use millis/micros/panic functions
9 years ago
Lucas De Marchi
24e5deb906
AP_GPS: remove comments about AVR boards
9 years ago