Commit Graph
278 Commits
Author SHA1 Message Date
Daniel Agar f2b4480e6b GPS driver update to uORB::Subscription 2019-06-05 08:18:02 +02:00
Julian Oes b20feacdb5 drivers: fix -Wstringop-truncation
GCC 9 complained about stringop-truncation which is a cautionary message
to prevent using strncpy with non-null terminated strings.

We can fix this by copying one byte less than the destination size and
then manually adding the null termination, as we already do.
2019-05-16 13:06:25 +02:00
Daniel Agar b35d048566 cmake enable -Wcast-align and disable per module 2019-03-16 11:47:15 -04:00
Matej Frančeškin 9782aecc73 Added GPS reset command 2019-02-19 16:30:42 +01:00
bastien 1990338a3f gps: Support for Emlid Reach
Support Emlid Reach in ERB format,
including autodetect

Reported-by: Bastien Auneau <bastien.auneau@while-true.fr>
2019-02-04 09:10:11 -05:00
Daniel Agar 95eff33263 GPS increase task stack 1530 -> 1600 bytes 2019-01-18 12:07:28 -05:00
Julian Oes e41518a08b platforms: clean up various build/linking issues
This makes sure lockstep is only built for SITL builds and fixes the
existing builds.
2018-12-22 10:32:18 +01:00
Julian Oes 3f695870a4 Replace usleep in GpsDrivers 2018-12-22 10:32:18 +01:00
Julian Oes 5b9dea5604 Replacing usleep with px4_usleep
This is a step towards isolating time from the system.
2018-12-22 10:32:18 +01:00
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