Andrew Tridgell
077ab22767
AP_GPS: fixed AP_Periph build with gcc 9.x
5 years ago
Andrew Tridgell
4456732911
AP_GPS: fixed rotation of moving baseline GPS
...
we were off by 180 degrees. Thanks to Jaime for noticing this!
5 years ago
Peter Barker
2b08af69bc
AP_GPS: fix dereference-of-nullptr warning from scan-build
...
This is kind-of a false positive as this in practise could never be
nullptr.
5 years ago
Andrew Tridgell
f00314a5d1
AP_GPS: removed dead blending code
5 years ago
Andrew Tridgell
9fa034d1de
AP_GPS: fixed antenna offset for blending
...
we were accessing beyond the end of the antenna_offset array
5 years ago
Randy Mackay
a19634b9d2
AP_GPS: reduce POS param range to 5m and add increment
5 years ago
Andrew Tridgell
7efd5248ee
AP_GPS: added get_type() API
5 years ago
Andrew Tridgell
e59f32074d
AP_GPS: fixed yaw error when one GPS has zero position
...
the M_PI correction was only valid for one zero side. Much simpler to
always calculate difference
5 years ago
Andrew Tridgell
cf8becfa71
AP_GPS: make all semaphores recursive
...
the cost is very similar and this prevents an easy coding error which
can occur on less used code paths
5 years ago
Andrew Tridgell
f0d1d3fa90
AP_GPS: added get_semaphore()
5 years ago
Andrew Tridgell
db777c56b9
AP_GPS: provide yaw feedback in GPS_RAW_INT and GPS2_RAW
...
allow GPS to display status of GPS yaw for moving baseline and NMEA
5 years ago
Andrew Tridgell
e40c570615
AP_GPS: faster config of moving baseline
...
thanks to MdB for suggestion
5 years ago
Andrew Tridgell
e660532f67
AP_GPS: fixes from PR review
5 years ago
Andrew Tridgell
41289fe945
AP_GPS: adjust lag for MB RTK ublox
...
rover will lag by about 40ms
5 years ago
Andrew Tridgell
b86c43aa66
AP_GPS: prefer RTK MB rover when it has yaw available
...
this ensures that yaw data is time aligned with position and velocity
data
5 years ago
Andrew Tridgell
261465ef96
AP_GPS: split out update_primary() from update()
...
this makes the selection of primary GPS a lot clearer, with less
nesting of if statements
5 years ago
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
5 years ago
Andrew Tridgell
71a0f3a1dc
AP_GPS: added RTCMv3 parser
...
will be used for moving baseline support
5 years ago
Andrew Tridgell
6efbc484fd
AP_GPS: cope with UAVCAN GPS that don't provide Aux message
...
thanks to @VadimZ for the suggestion
5 years ago
Michael du Breuil
8ca6535661
AP_GPS: Log SBF commanded disarms
5 years ago
Michael du Breuil
f8808022b8
AP_GPS: Check the driver logging health
5 years ago
Andrew Tridgell
379e3d60a1
AP_GPS: fixed sizes of config items
5 years ago
Michael du Breuil
63a6a1084c
AP_GPS: UBlox: Fix the assumption that all keys are 1 byte keys
5 years ago
Michael du Breuil
150a4edcf2
AP_GPS: UBlox fix not listing the time mode as a configuration reason
5 years ago
Andrew Tridgell
7bec9d87b4
AP_GPS: fixed TMODE config issue on non-F9 GPS
...
thanks to Michel Pastor for reporting this
5 years ago
Andrew Tridgell
8aa781206d
AP_GPS: fixed signed/unsigned comparisons
5 years ago
Andrew Tridgell
b7c9391619
AP_GPS: support Fix2 message for UAVCAN
...
this allows for RTK fix levels
5 years ago
Andrew Tridgell
632114d687
AP_GPS: support RTCMStream for RTCM injection on UAVCAN
5 years ago
Andrew Tridgell
6c31fb1bb6
AP_GPS: added automatic config of TMODE on F9
...
the Drotek F9 GPS ships with TMODE enabled, which means we don't get a
3D fix.
This also adds the VALGET/VALSET msgs we will need for automatic
moving baseline config
5 years ago
Michael du Breuil
d623da0de6
AP_GPS: Always send GPS2_RAW after we've seen the second GPS
...
This significantly improves the GCS's ability to correctly display whats
happening with the second GPS.
5 years ago
Michael du Breuil
5bafd7d72c
AP_GPS: Don't defeat the GCS message interval code
5 years ago
Andrew Tridgell
14cdac9202
AP_GPS: fixed GPS to UART mapping
...
this allows for first GPS as UAVCAN and 2nd as UART. That is not
possible currently unless you waste a uart
5 years ago
Andrew Tridgell
00260db65a
AP_GPS: fixed UAVCAN GPS status when disconnected
...
this fixes the status reported for a UAVCAN GPS when the cable is
unplugged. It should be "NO GPS", but was instead reporting "NO
FIX". The user had no way to distinguish between not finding a CAN GPS
at all and it not getting satellites
thanks to CUAV for reporting
5 years ago
Andrew Tridgell
37fb028532
AP_GPS: improved checking for valid yaw for moving baseline
...
and fixed check for carrSolnFixed
5 years ago
Michael du Breuil
2587b13ae7
AP_GPS: UBLOX: Parse RELPOSNED messages
...
This does not yet:
- validate the receiver configuration
- manage timing out stale GPS heading info
- relPosNormalized usage isn't clear, which may defeat the STRICT_LENGTH_CHECK
5 years ago
Andrew Tridgell
b5217412f9
AP_GPS: fixed a bug in handling corrupt u-blox packets
...
when we have corrupt input due to loss of bytes on a UART we can end
up with a u-blox packet with zero payload bytes. When that happens we
need to bypass payload reading as otherwise we will end up keeping
reading bytes until the driver resets at 4 seconds, causing a GPS
outage.
This was causing GPS outages every few hours in copters running 3.6.7,
and was also reproduced in SITL using SIM_GPS_BYTELOSS.
5 years ago
Andrew Tridgell
9eb6c1be64
AP_GPS: use jitter correction on GPS_INPUT data
...
this allows for more accurate timing when using GPS_INPUT for indoor
positioning systems
5 years ago
Michael du Breuil
f857eb4640
AP_GPS: Take responsibility for logging the GPS if the EKF wants logging
5 years ago
Michael du Breuil
ca0dad9a7f
AP_GPS: Directly include needed headers
6 years ago
Andrew Tridgell
291d72601b
AP_GPS: enabled reduced size for AP_Periph support
6 years ago
Peter Barker
8c21a279ea
AP_GPS: examples: var_info is now in GCS_MAVLINK_Parameters
6 years ago
Andrew Tridgell
8d7262994b
AP_GPS: support yaw in GPS_INPUT mavlink GPS
...
useful for Vicon setups
6 years ago
murata
e4455491aa
AP_GPS: Use common hexadecimal character to number conversion method
6 years ago
Peter Barker
46ad04aab7
AP_GPS: correct format string warnings in SBF driver
6 years ago
Andrew Tridgell
be9c98db12
AP_GPS: ensure we have full timestamp before setting RTC clock
...
thanks to Martin Sollie for this bug report
6 years ago
Michael du Breuil
d33006a2e7
AP_GPS: Refactor first_unconfigured_gps to return bool
6 years ago
Randy Mackay
64637dba8f
AP_GPS: resolve gcs::send_text compiler warning
6 years ago
Peter Barker
678c11f048
AP_GPS: supply format string to send_text
6 years ago
Pierre Kancir
13ac187fd8
AP_GPS: pass mavlink_message_t by const reference
6 years ago
Grant Morphett
64ed76326b
AP_GPS: Adding support for the NMEA GPHDT sentence
...
The NMEA GPHDT sentence can be used to determine the vehicles bearing
instead of a compass even when the vehicle is stationary. This type
of GPS is normally very expensive and does the bearing using some sort
of phase ambituity algorithm.
6 years ago