Andrew Tridgell
36dabc0985
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-11-07 11:17:04 +11:00
Alexander Keller
94a3f2aff2
AP_GPS:Comform to ardupilot undulation definition
2023-07-04 10:53:57 +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
4812b67ad6
AP_GPS: added logging to more serial GPS backends
2022-10-15 17:20:42 +11:00
Joshua Henderson
378dff5568
AP_GPS: added get_undulation support
2022-08-09 14:37:08 +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
Hwurzburg
3d4f6cc2c4
AP_GPS: add build options for GPS backends
2022-01-12 16:17:21 +11:00
Peter Barker
6d615a3e16
AP_GPS: move from HAL_NO_GCS to HAL_GCS_ENABLED
2021-09-22 21:37:00 +10:00
Michael du Breuil
1288f4c81b
AP_GPS: Support GPS_SBAS_MODE on SBF GPS units
...
Also swaps to using an AP_Enum for the SBAS type, and fixes up the fact
that the prearm/failure reasons should be using the config step, rather
then the init blob index
2021-05-18 09:52:07 +10: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
Michael du Breuil
4c4e613f6a
AP_GPS: Don't send SBF config unless there is free space in the port
2021-02-15 16:31:45 -07:00
Michael du Breuil
4d42996068
AP_GPS: Force the buadrate on SBF units
2021-02-15 16:31:45 -07:00
Michael du Breuil
5f3b1b92a4
AP_GPS: SBF don't send configuration until we've recieved a prompt
...
This fixes a configuration problem with SBF unit's where sometimes we
fail to detect the GPS unit continously, until it's been manually
configured. This was tested by doing a hard reset to the GPS unit.
This also now accepts a set of defines from the hwdef, or build
environment, which allows us to specify extra config options.
2021-02-05 11:52:29 -07:00
Michael du Breuil
b30c55b3f3
AP_GPS: Support yaw from moving base station on SBF drivers
2020-11-03 11:12:20 +11:00
Andrew Tridgell
56b743dfca
AP_GPS: build SBF driver with double precision
2020-09-03 09:56:29 +10:00
Michael du Breuil
6a8680d31d
AP_GPS: Send RTK baseline data from SBF
2020-09-03 09:56:29 +10:00
Michael du Breuil
08d4e1c062
AP_GPS: Support configuring the SBF com port
2020-08-13 15:04:38 +10:00
Andrew Tridgell
4f591a338f
AP_GPS: use GCS_SEND_TEXT()
2020-04-29 07:36:55 +10:00
Michael du Breuil
8ca6535661
AP_GPS: Log SBF commanded disarms
2019-11-20 11:06:16 -07:00
Michael du Breuil
f8808022b8
AP_GPS: Check the driver logging health
2019-11-20 11:06:16 -07:00
Peter Barker
46ad04aab7
AP_GPS: correct format string warnings in SBF driver
2019-08-05 11:20:35 +10:00
Randy Mackay
64637dba8f
AP_GPS: resolve gcs::send_text compiler warning
2019-07-30 09:02:39 +09:00
Michael du Breuil
32c583bd20
AP_GPS: Remove external event from GPS data stream
...
If the event pin floats, this can lead to UART congestion, causing the
EKF to reject the GPS data, and the vehicle will drift around the sky in
a most disturbing manner
2019-04-14 13:24:36 -07:00
Tom Pittenger
12c3446777
AP_GPS: rename dataflash to logger
2019-03-28 16:40:57 +11:00
Peter Barker
6fc76a32af
GLOBAL: use AP::logger() and strip redundant Log_ from methods
2019-01-18 18:08:20 +11:00
Peter Barker
b47733142f
GLOBAL: rename DataFlash_Class to AP_Logger
2019-01-18 18:08:20 +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
Michael du Breuil
70e587b572
AP_GPS: Fix accidental quantization to float on SBF logging
2018-08-31 01:16:31 +01:00
Andrew Tridgell
53d36c02ae
AP_GPS: enable double precision maths where needed
2018-05-07 11:43:23 +10:00
Michael du Breuil
88ea7ac5fa
AP_GPS: Remove software check from SBF driver
2018-05-06 14:52:04 -06:00
Michael du Breuil
b1a3e0a537
AP_GPS: Report when SBF errors change
2018-04-24 12:32:35 -07:00
Dr.-Ing. Amilcar Do Carmo Lucas
9b2e48ce10
AP_GPS: Improve comments (NFC)
2017-12-05 10:44:58 +09: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
Michael du Breuil
561acb372e
AP_GPS: SBF send port enable string on start
...
Also prohibts SBF, GSOF, NOVA drivers from getting config strings not
meant for them
2017-09-27 19:29:32 +01:00
Michael du Breuil
bfbec02736
AP_GPS: SBF track the GPS error bits
2017-09-27 19:29:32 +01:00
Michael du Breuil
80b71b9ced
AP_GPS: SBF: Validate that configuration was accepted
...
Note: The config string of "spm, Rover, StandAlone+SBAS+DGPS+RTK\n" is
incompatible with AsteRx-M FW 3.6.3 and will result in refusing to
arm/pass configuration checks
2017-09-27 19:29:32 +01:00
Michael du Breuil
20988b9f05
AP_GPS: SBF respect GPS_AUTO_CONFIG
2017-09-27 19:29:32 +01:00
Michael du Breuil
be371e09f9
AP_GPS: SBF: Reject short packets early, allow 256 byte long messages to be decoded
2017-09-06 10:41:36 +10:00
Andrew Tridgell
048dfee68a
AP_GPS: make SBF driver more robust
...
this fixes a crash bug in the SBF GPS driver where a badly formed packet
could cause crc16_ccitt to reference invalid memory
2017-09-06 10:41:33 +10:00
Dr.-Ing. Amilcar Do Carmo Lucas
b791fef7cb
AP_GPS: Publish the number of satellites in the RTK correction messages, and the age of the RTK correction messages
2017-07-19 20:42:23 +09:00
Peter Barker
76847a2487
AP_GPS: eliminate GCS_MAVLINK::send_statustext_all
2017-07-11 23:53:53 +01:00
Michael du Breuil
cb1b9b6674
AP_GPS: Fix SBF race condition on start
...
Unsure what the underlying problem is, but the length of the first string in
the initilisation_blob increasing resulted in a race condition, waiting
longer before retrying the message resolves it, but we still need to identify
the underlying problem. This patch just results in the GPS working with current
configurations. Tested against AsteRx-M firmware 3.6.3
2017-07-11 09:40:02 +09: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
3da3ad05bf
AP_GPS: SBF report velocity accuracy
2017-05-26 17:42:15 +01:00
Michael du Breuil
397ae00526
AP_GPS: SBF report VDOP
2017-05-24 20:03:29 +01:00
Michael du Breuil
12f83ecf75
AP_GPS: SBF if RAW_DATA is enabled check that the GPS is succeeding at logging
2017-05-01 13:04:52 +01:00
Michael du Breuil
6f297deaf7
AP_GPS: Unify inject_data interface for all classes
2017-04-19 02:05:51 +01:00
Michael du Breuil
44bcd74a57
AP_GPS: Remove dead SBF code
...
CID 125035
2017-03-06 15:24:22 +00:00
Lucas De Marchi
747f15b514
AP_GPS: add casts to consider literals as doubles
...
Since we pass -fsingle-precision-constant to the compiler, add casts to
make literals real doubles.
2017-02-06 09:27:22 -08:00