Commit Graph

123 Commits

Author SHA1 Message Date
Michael du Breuil
855d91145a AP_GPS: ublox - fix incorrect step ordering 2017-01-25 03:44:57 +00:00
Michael du Breuil
1c1e6e9398 AP_GPS: Support more fix types 2017-01-25 03:44:42 +00:00
Michael Oborne
d05b0d5885 AP_GPS_UBLOX: add pvt message support 2017-01-25 03:34:26 +00:00
Michael du Breuil
d97861d685 AP_GPS: Ublox: Skip SBAS request if we don't want to alter it 2016-11-21 14:15:19 +09:00
murata
c808ee2f49 Global: To nullptr from NULL.
RC_Channel: To nullptr from NULL.

AC_Fence: To nullptr from NULL.

AC_Avoidance: To nullptr from NULL.

AC_PrecLand: To nullptr from NULL.

DataFlash: To nullptr from NULL.

SITL: To nullptr from NULL.

GCS_MAVLink: To nullptr from NULL.

DataFlash: To nullptr from NULL.

AP_Compass: To nullptr from NULL.

Global: To nullptr from NULL.

Global: To nullptr from NULL.
2016-11-02 16:04:47 -02: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
Andrew Tridgell
9caf44b494 AP_GPS: update drivers for changed inject_data() API
need 16 bit length
2016-10-11 11:00:35 +11:00
Michael du Breuil
cf5e79f80e AP_GPS: ublox support user controlled rate updates
Also corrects accepting bad nav rates as configured, and fixes a incorrect
index as to which GPS is being updated
2016-10-11 10:44:51 +11:00
Michael du Breuil
86c2b1d84a AP_GPS: u-blox Remove 5Hz warning
The warnings test case is better covered by the rest of the driver
while it is performing the normal settings audit.
2016-10-11 10:44:51 +11:00
Gustavo Jose de Sousa
174cefa8a5 AP_GPS: use ARRAY_SUBSCRIPT instead of bytes field
That fixed compilation issues and seems more semantically correct. Using array
of length 0 fails compilation because of -Werror=array-bounds in GCC 6.1.
2016-06-23 21:02:05 -03:00
Ricardo de Almeida Gonzaga
4047fb63fc AP_GPS: Fix typos 2016-05-13 19:20:06 -03:00
dgrat
41661f815f AP_Math: Replace the pythagorous* functions with a variadic template
The new function can deal with a variable number of function parameters.
Additionally, I renamed the functions to norm(), because this is the
standard name used in several other projects.
2016-05-10 11:41:26 -03:00
Andrew Tridgell
428923b4b1 AP_GPS: use 3D velocity for uBlox
this makes uBlox use the 3D velocity for ground course and speed,
ensuring we use a consistent value everywhere (so same vector in EKF
as in navigation)
2016-05-07 18:27:23 +10:00
Andrew Tridgell
b424c49bc7 AP_GPS: change ground course to be in degrees
more accuracy for replay
2016-05-07 18:27:21 +10:00
Michael du Breuil
2538c17ee0 AP_GPS: add fetching of gps configuration failure reasons 2016-04-13 11:24:01 -03:00
Michael Oborne
92106a944f AP_GPS_UBLOX: add data injection support 2016-03-18 15:51:32 +11:00
Andrew Tridgell
04bac8a446 AP_GPS: removed duplicate dataflash write of ublox version 2016-02-24 14:26:57 +11:00
Tom Pittenger
18163bd01f AP_GPS_UBLOX: save cfg only when needed
added GPS_SAVE_CFG param option 2
2016-02-12 15:33:18 -08:00
Michael du Breuil
55e64b3622 AP_GPS: u-blox: copy paste typo in a #else 2016-02-12 15:33:08 -08:00
Michael du Breuil
217a06322b AP_GPS: u-blox: don't throw 5hz update warnings if no fix
5hz update warnings are only valid if you have a fix, without a fix it adds load
to the GPS without any benefit. Our _5hz time messages are depenend upon GPS fix
time which isn't available yet
2016-02-12 15:32:41 -08:00
Michael du Breuil
4251ee0e4b AP_GPS: u-blox verify ublox settings
The ublox driver will now continuosly poll for the settings from the GPS and correct any that are found to be in correct.
This status is then reported to the arming library as an additional arming check, allowing the user to be sure that the
gps is correctly configured before using it. If a user has a GPS2 configured that is not present they will fail the arming
checks until after they have disabled the second GPS.

2 new parameters were introduced as well:
  -GPS_AUTO_CONFIG: Will not request any configuration packets to attempt to change them. (If the packet is recieved then
    a update will be sent to it, but in testing this scenario never occured. This is set to 1 or 0 to change the setting.
    (Defaults to 1 enabling auto config)
  -GPS_GNSS_MODE2: Behaves the same way as GPS_GNSS_MODE but only applies to the second GPS.

GPS drivers are now allowed 2 seconds of non responsiveness before being unloaded
2016-02-12 00:37:04 -08:00
Peter Barker
ede7ffedfc AP_GPS: correct #if from UBLOX_DEBUG to UBLOX_DEBUGGING 2016-01-30 12:48:39 -02:00
Aaron Wang Shi
800c142ac0 BH: Support UBLOX GPS M8N 2015-12-21 15:54:30 +11:00
Caio Marcelo de Oliveira Filho
c33b86a783 AP_GPS: use millis/micros/panic functions 2015-11-20 12:30:48 +09:00
Randy Mackay
36c0beb918 GPS_UBlox: reorder init to resolve compiler warning
Also removed duplicate init of noReceivedHdop
2015-11-16 15:09:17 +09:00
Siddharth Bharat Purohit
5e2382ea09 AP_GPS:UBLOX: send save cfg msg once per 5s and 5 times only 2015-11-10 15:16:55 +11:00
Siddharth Bharat Purohit
360c09f9bd AP_GPS_UBLOX: send cfg save msg only once every 1 second 2015-11-10 15:16:55 +11:00
Jonathan Challinger
bc708f9808 AP_GPS: add SAVE_CFG parameter make ublox config saving optional 2015-11-10 15:16:55 +11:00
Jonathan Challinger
e82df48631 AP_GPS: save configuration to non-volatile memory in UBlox GPS 2015-11-10 15:16:55 +11:00
Lucas De Marchi
20c6ffc5e3 Replace use of UARTDriver::printf_P() with UARTDriver::printf()
This also starts to show warnings on places that were already using
wrong printf format strings.
2015-10-30 14:35:25 +09:00
Lucas De Marchi
2c38e31c93 Remove use of PSTR
The PSTR is already define as a NOP for all supported platforms. It's
only needed for AVR so here we remove all the uses throughout the
codebase.

This was automated with a simple python script so it also converts
places which spans to multiple lines, removing the matching parentheses.

AVR-specific places were not changed.
2015-10-30 14:35:04 +09:00
Michael du Breuil
75c0644b9a AP_GPS: Use state.instance instead of trying to track instance numbers inside of the ublox driver 2015-09-23 20:42:42 -07:00
Andy Piper
5adb6d2b89 AP_GPS: Support UBX messages for dual UBLOX GPS setups.
Add extra DOP information to UBX precision messages.
2015-09-23 20:41:50 -07:00
Andrew Tridgell
6fbe88ba3a AP_GPS: improved fake ublox to give enough for EKF health 2015-09-14 11:36:15 +10:00
Andrew Tridgell
d07d2f3a46 AP_GPS: removed UBX3 message
replaced by GPA and GPA2 messages
2015-09-09 15:01:45 +10:00
Michael du Breuil
0e3a188f6f AP_GPS: Read the vdop information from a ublox GPS 2015-09-09 11:38:12 +10:00
Andrew Tridgell
2c7a113790 AP_GPS: ensure all GPS drivers give headings as 0..360 degrees
this prevents inconsistency between interfaces, and fixes a MAVLink
reporting bug with UAVCAN GPS
2015-08-31 08:24:35 +10:00
Tom Pittenger
816d1f0e1b AP_GPS: resolve compiler warning re init order 2015-08-25 13:51:33 +09:00
Michael du Breuil
4f9fbc5aa7 AP_GPS: Fix a bound error when calculating GNSS minimum channels.
This is really just calculating the hamming weight of the GNSS_MODE bitmask, but I don't know if the APM compiler could handle the GCC intrinsic that could calculate it faster, and this is done so rarely there isn't a significant penalty to using the for loop.
2015-08-13 15:15:20 +10:00
Gustavo Jose de Sousa
67db430583 AP_GPS: standardize inclusion of libaries headers
This commit changes the way libraries headers are included in source files:

 - If the header is in the same directory the source belongs to, so the
 notation '#include ""' is used with the path relative to the directory
 containing the source.

 - If the header is outside the directory containing the source, then we use
 the notation '#include <>' with the path relative to libraries folder.

Some of the advantages of such approach:

 - Only one search path for libraries headers.

 - OSs like Windows may have a better lookup time.
2015-08-11 16:28:43 +10:00
Michael du Breuil
c29b19f768 AP_GPS: Fix a typo on spelling received 2015-08-08 13:22:04 +09:00
Michael du Breuil
bc26eaab63 AP_GPS: Ublox: fall back to the DOP if hDOP hasn't come in yet
Provides a stable fallback, and can be considered fairly safe from the perspective that it provides a worse value then the hDOP under almost all scenarios.
2015-08-07 21:21:48 +10:00
Andrew Tridgell
087e729748 AP_GPS: re-enable SBAS config on APM2 for uBlox 2015-07-30 11:04:31 +10:00
Andrew Tridgell
b6beeb6f2f AP_GPS: save some memory and code space on APM2 for ublox
don't include structures we don't need for low end CPUs
2015-07-30 08:46:20 +10:00
Michael du Breuil
5c9d248407 AP_GPS: Fix copy/paste error in ublox (uncovered by coverity) 2015-07-28 18:01:02 +09:00
Michael du Breuil
09fef505e0 AP_GPS: With a ublox driver, accept a packet if it will fit in the buffer 2015-07-22 21:31:10 +10:00
Michael du Breuil
22b16b4532 AP_GPS: Enable selecting what GNSS system to use if the reciever supports it
Ublox 7 and 8 seires use a UBX-CFG-GNSS message to enable satellite constellations. The default value does not enable any additional ones, and any constellations the reciever doesn't report knowing about are not configured.
2015-07-22 21:31:10 +10:00
Michael du Breuil
47592a1953 AP_GPS: Raise the baud rate on a ublox GPS if using RAW logging
the implementation leaves an easy path forward for providing a different startup blob for all the GPS's if raw logging is enabled
2015-07-22 21:31:09 +10:00
Randy Mackay
7d2fe3cc2b AP_GPS_UBlox: remove unused member 2015-07-14 15:02:15 +09:00
Randy Mackay
2c33250bee AP_GPS_UBlox: send_next_rate_update always runs all steps
Moving the if, endif checks within the case statement ensures the state
machine goes through all 10 states
2015-07-14 15:02:13 +09:00