Commit Graph

269 Commits

Author SHA1 Message Date
Daniel Agar 76a6cd10b1 delete unnecessary drv_gps.h 2018-11-06 07:43:43 +08:00
Beat Küng 52fc56a61f gps: explicitly set SPI bus speed to 1MHz
Required on RPi, the default seems to be too high.
2018-10-30 20:36:25 -04:00
Paul Riseborough e39afb148d drivers: publish GPS antenna heading offset 2018-10-17 09:48:38 -04:00
Beat Küng fb04a611c5 gps: reduce stack size
A buffer size of the gps drivers got reduced by 100 bytes.
2018-10-02 14:14:10 +02:00
Beat Küng cef6cf96f8 gps: reduce delay by reducing the sleep time
This uses now the same sleep time logic as mavlink, depending on the
baudrate.

CPU usage on a Pixracer for different sleep times:

#num reads/sec    sleep time         CPU usage
17-18             2.8ms              0.233-0.31% (this PR)
12                5ms                0.155-0.3%
9-10              10ms               0.155-0.233%
6                 20ms               0.155-0.233% (previous)
2018-10-02 14:14:10 +02:00
Beat Küng 979e8ad28b gps drivers: update submodule 2018-10-02 14:14:10 +02:00
Beat Küng b5e552924a serial drivers/modules: add yaml config files 2018-09-25 07:53:29 +02:00
Beat Küng 546886259f boards: remove GPS_DEFAULT_UART_PORT
Not required anymore.
2018-09-25 07:53:29 +02:00
PX4 Build Bot dd63a634b2 Update submodule devices to latest Mon Sep 17 00:37:44 UTC 2018
- devices in PX4/Firmware (8158cdfcf4): https://github.com/PX4/GpsDrivers/commit/aef48b04ff9b95350c4e5e507eea72a9e971d6a4
    - devices current upstream: https://github.com/PX4/GpsDrivers/commit/657514b26a0bf1b1ea2bf723b18449b04248822c
    - Changes: https://github.com/PX4/GpsDrivers/compare/aef48b04ff9b95350c4e5e507eea72a9e971d6a4...657514b26a0bf1b1ea2bf723b18449b04248822c

    657514b 2018-08-02 Alexis Paques - Adding UBX_MSG_RTCM3_* for additional messages
f9cf788 2018-08-02 Alexis Paques - Adding RTCM3 class documentation reference
6009a29 2018-08-02 Alexis Paques - Adding RTCM3 available output message IDs
2018-09-17 08:16:20 +02:00
Paul Riseborough ad1c2b31d1 drivers: Always set GPS heading to NAN if not updated 2018-08-28 14:10:36 +02:00
Paul Riseborough b2c7b44935 drivers: Prevent duplicate reporting of GPS heading 2018-08-28 14:10:36 +02:00
Beat Küng 81f0b64ad3 gps: add SER_GPS1_BAUD param to configure the baudrate
The default is auto-detect, but some GPS devices might not like that, such
as the Trimble MB-Two.
2018-08-07 02:07:49 +02:00
Beat Küng db9d25505d gps: update submodule (fix sign of heading offset) 2018-08-07 02:07:49 +02:00
mcsauder ac8f44268b Added remaining two channels of PWM_AUX_DIS disarm parameter set commands, remove trailing whitespace from pwm_params_aux.c and pwm_params_main.c, gps/params.c and added block comment headers to separate sections instead of whitespace. 2018-07-30 09:36:44 +02:00
Beat Küng e1f2360560 gps: remove unused field _baudrate_changed & _mode_changed 2018-07-16 12:18:37 +02:00
Beat Küng 4d71686ac6 gps: add GPS_YAW_OFFSET param & properly initialize _baudrate 2018-07-16 12:18:37 +02:00
Beat Küng a947ad2506 gps: remove unused code & fix _mode_auto initialization 2018-07-16 12:18:37 +02:00
Beat Küng 43c2970fb9 vehicle_gps_position: add heading field 2018-07-16 12:18:37 +02:00
Daniel Agar effeae93cc GPS initialize all class members in definition 2018-07-15 20:34:31 +02:00
Daniel Agar 94dd6abd9f GPS organize status print 2018-07-15 20:34:31 +02:00
Lorenz Meier ff626a19f6 GPS driver: Initialize heading field for all drivers, reduce UBX hold-off time for config reset. 2018-07-15 20:34:31 +02:00
Lorenz Meier e2333d7d5c GPS driver: Keep stack to required size for app boot 2018-07-15 20:34:31 +02:00
Lorenz Meier b3b83afa6a GPS: Update device driver 2018-07-15 20:34:31 +02:00
Lorenz Meier 5dd981a7be GPS driver: Initialize baud rate and improve output 2018-07-15 20:34:31 +02:00
Lorenz Meier 16dd82ab60 Update GPS driver submodule 2018-07-15 20:34:31 +02:00
Lorenz Meier 493a84638d GPS driver: Add RTCM parsing 2018-07-15 20:34:31 +02:00
Lorenz Meier 2931b85f0e GPS: Add support for RTK GPS units
This includes the Trimble MB-TWO and similar devices. Tested including GPX streams.
2018-07-15 20:34:31 +02:00
Daniel Agar 21cc34befb GPS driver increase stack 2018-07-12 08:12:05 +02:00
David Sidrane ae389ed0e3 Revert "gps: reopen the gps port on failed auto-detection"
This reverts commit a62a71f48f.
   The root cause was the camera trigger passing invalid pin
   configuration setting overwriting the UART4 TX pin setting
2018-06-14 15:03:39 -04:00
Daniel Agar d73d20bcce systemlib delete unused systemlib.h 2018-06-12 09:06:30 +02:00
Beat Küng a62a71f48f gps: reopen the gps port on failed auto-detection
work-around for https://github.com/PX4/Firmware/issues/9461
2018-06-07 22:20:47 +02:00
Beat Küng 13ab5ed0d0 px4_main_t: fix method declaration throughout the code base
px4_main_t is defined as:
typedef int (*px4_main_t)(int argc, char *argv[]);
which matches with the definition in NuttX, given to task_create
2018-05-09 07:59:46 +02:00
Daniel Agar ea3acb7121 cmake remove circular linking and reorganize
- px4_add_module now requires MAIN
 - px4_add_library doesn't automatically link
2018-04-29 21:48:54 -04:00
Daniel Agar 5fba1f38b2 drivers start using uORB message print instead of custom 2018-03-28 09:15:41 -04:00
Beat Küng 03b8cd78b3 gps: explicitly disable flow control
If the GPS driver was used on another port (e.g. TELEM2), it would get
stuck in a `write` call and not return anymore. Disabling flow control
fixes that.

CPU usage is unchanged.
2018-03-05 16:43:14 +01:00
Daniel Agar d1a4c2dcd0 cmake handle git submodule depdencies 2017-11-23 00:22:45 -05:00
Lorenz Meier 1947a9a176 Devices: Update submodule to include GPS driver improvements 2017-10-07 16:18:00 +02:00
Lorenz Meier eb2c9fbef1 GPS: Remove unnecessary warning message
This warning message would often be printed during normal configuration and does not represent a good indicator for true GPS lost states. Instead the system flags should be used, which are available through the normal logging system.
2017-10-07 15:01:14 +02:00
Daniel Agar 4070abc132 gps fix sign-compare 2017-09-07 10:27:36 +02:00
Lorenz Meier b07dde78e3 Move scheduling priorities into px4_tasks to simplify header usage 2017-08-02 21:18:35 +02:00
Beat Küng 36c9400de4 gps: use ModuleBase class & add documentation
Note: it changes the interface slightly: instead uf -dualgps, use -e now.

This also fixes 2 bugs:
- nullptr access when doing 'gps status' with fake gps running
- close(fd) was called on an uninitialized fd when gps fake was running
2017-07-14 11:57:11 +02:00
Daniel Agar f45b9048aa GPS driver increase stack (244 bytes left) 2017-07-09 13:09:22 +02:00
Daniel Agar af5256c454 GPS ublox add dynamic model parameter 2017-06-30 08:02:25 +02:00
Julien Lecoeur 7929287f73 Fix -Werror=format-truncation on GCC 7
Fix formatting

Check snprintf return for error AND overflow
2017-06-26 15:50:44 +02:00
Julien Lecoeur 06c6a0cdec Fix -Werror=implicit-fallthrough errors on GCC7 2017-06-26 15:50:44 +02:00
Lorenz Meier 55697e08e2 GPS driver: Add more stack to suit data definition increases 2017-05-13 11:44:49 +02:00
Lorenz Meier be375e25d3 Update GPS driver submodule. Fixes #7173 2017-05-03 08:30:29 +02:00
Lorenz Meier 875a35fcd5 GPS: FIncrease stack by 100 bytes
The app reached the check limit and needed a bit more headroom.
2017-04-30 12:03:14 +02:00
Julian Oes bb168287da gps: just use termios on QURT
QURT has added support for termios calls a while back that we can now
use.
2017-04-14 09:56:42 +02:00
Beat Küng b5bb5cffc8 gps: check for allocation failure & avoid busy loop 2017-04-06 11:49:03 +02:00