Commit Graph

18756 Commits

Author SHA1 Message Date
Michael du Breuil
922d593f3d AP_Mount: Fix strncpy warning 2018-10-30 16:17:03 -07:00
Michael du Breuil
3d7d23531a AP_OpticalFlow: No need to clear already zerod objects 2018-10-30 16:17:03 -07:00
Michael du Breuil
d6944510da AP_GPS: Suppress clearing non-trival type warning 2018-10-30 16:17:03 -07:00
Michael du Breuil
25ef5fed82 AP_NavEKF3: Suppress clearing non-trival type warning 2018-10-30 16:17:03 -07:00
Michael du Breuil
29db069c75 AP_NavEKF2: Suppress clearing non-trival type warning 2018-10-30 16:17:03 -07:00
Michael du Breuil
dda7c615a8 AP_Mount: Suppress clearing non-trival type warning 2018-10-30 16:17:03 -07:00
Michael du Breuil
4852562ec7 AP_AHRS: Suppress clearing non-trival type warning 2018-10-30 16:17:03 -07:00
Michael du Breuil
a2a8ac15b3 AP_Scripting: Add access to SRV_Channels::set_output_pwm
This also provides a more intresting function, with range checking. We
could choose to ignore this range checking and leave the script author
responsible for managing this, but it's probably better to protect the
author from themselves as much as possible, even if it makes the API
binding harder to automate
2018-10-30 16:17:03 -07:00
Michael du Breuil
ac63e55c8d SRV_Channel: Add scripting outputs 2018-10-30 16:17:03 -07:00
Michael du Breuil
2c3fe0cbcf AP_Scripting: Load a sandbox enviorment 2018-10-30 16:17:03 -07:00
Michael du Breuil
0acb1103b0 AP_ROMFS: make all decompressions null terminated 2018-10-30 16:17:03 -07:00
Michael du Breuil
beaa069082 AP_Scripting: Disable lua coroutines 2018-10-30 16:17:03 -07:00
Peter Barker
f0ca4de313 AC_WPNav: add reached_wp_destination_xy 2018-10-30 17:50:46 +09:00
Peter Barker
1eac03a257 GCS_MAVLink: scale parameter send rate according to link bandwidth 2018-10-30 19:31:37 +11:00
Peter Barker
aed3527fb7 AP_HAL_PX4: return uart link bandwidth 2018-10-30 19:31:37 +11:00
Peter Barker
d2cf065fdf AP_HAL_ChibiOS: return uart link bandwidth 2018-10-30 19:31:37 +11:00
Peter Barker
f8b1203399 AP_HAL: provide method returning approximate link bandwidth 2018-10-30 19:31:37 +11:00
Peter Barker
178d26f8e3 AP_Mount: add general function for handling mavlink messages
AP_Mount: const parameters, add overrides, remove bad virtual declarations

AP_Mount: use AHRS singleton

AP_Mount: make status_msg pure-virtual and add override keyword

AP_Mount: handle deprecated mavlink control and configure msgs

AP_Mount: handle MAV_CMD_DO_MOUNT_CONFIGURE

AP_Mount: rename status_msg method to send_mount_status
2018-10-30 17:19:14 +11:00
Peter Barker
890a62fc51 GCS_MAVLink: move handling of gimbal messages up
GCS_MAVLink: move handling of mav_cmd_do_mount_control up

GCS_MAVLink: move handling of deprecated mount messages up

GCS_MAVLink: move handling of command_do_set_roi up

GCS_MAVLink: move handling of command_do_set_roi up

GCS_MAVLink: handle MAV_CMD_DO_MOUNT_CONFIGURE

GCS_MAVLink: call renamed AP_Mount send_mount_status msg

GCS_MAVLink: add support for MAV_CMD_DO_SET_ROI_LOCATION
2018-10-30 17:19:14 +11:00
Peter Barker
4ae6aeed7e AP_Mount: add singleton 2018-10-30 17:19:14 +11:00
Peter Barker
1e39c17908 AP_Mission: return true if cmd-do was handled, false otherwise 2018-10-30 15:37:18 +11:00
Peter Barker
b1b5a7868d AP_Mission: handle common camera commands 2018-10-30 15:37:18 +11:00
Peter Barker
51d4b2da34 AP_Mission: move servorelayevents handling into AP_Mission 2018-10-30 15:37:18 +11:00
Peter Barker
182d3634aa AP_Mission: handle gripper mission items 2018-10-30 15:37:18 +11:00
Peter Barker
8ebec6a237 AP_Mission: create start_command and verify_command wrappers 2018-10-30 15:37:18 +11:00
Andrew Tridgell
3505314e64 AP_BoardConfig: updated BRD_PWM_COUNT docs
This reflects the use of this parameter under ChibiOS
2018-10-30 13:36:39 +09:00
chobits
ed12c6719d GCS_MAVLink: log vision data pitch/roll/yaw in degree 2018-10-30 11:39:47 +09:00
Andrew Tridgell
7e777d8b28 HAL_ChibiOS: disable loop() delay for iofirmware 2018-10-30 13:00:48 +11:00
Andrew Tridgell
1711b93602 AP_IOMCU: fixed read packet count 2018-10-30 13:00:48 +11:00
Andrew Tridgell
6c761fa864 HAL_ChibiOS: shutdown IOMCU on reboot 2018-10-30 13:00:48 +11:00
Andrew Tridgell
ed48c24600 AP_IOMCU: added shutdown method
this cleans up the reboot process
2018-10-30 13:00:48 +11:00
Andrew Tridgell
f600ebd758 AP_IOMCU: added SBUS output support 2018-10-30 13:00:48 +11:00
Andrew Tridgell
e46a640b2c AP_SbusOut: expose SBUS formatting function 2018-10-30 13:00:48 +11:00
Andrew Tridgell
b3946fc458 HAL_ChibiOS: added uart for sbus out in IOMCU 2018-10-30 13:00:48 +11:00
Andrew Tridgell
af4340d1d1 HAL_ChibiOS: enable analog input on IOMCU 2018-10-30 13:00:48 +11:00
Andrew Tridgell
b45b8ff703 AP_IOMCU: added analog input to iofirmware 2018-10-30 13:00:48 +11:00
Andrew Tridgell
a6b35d6496 HAL_ChibiOS: restore old ODR behaviour for F4 boards
This fixes an issue with ESP8366 on Pixracer
2018-10-30 12:49:16 +11:00
Randy Mackay
2c29f0d45a RC_Channel: handle AC_Avoid enable and disable
Also change Copter's option from Object Avoidance to Proximity Avoidance
due to impending AP_Avoidance stuff

RC_Channel: update aux switch param docs to add object avoidance
2018-10-30 12:10:42 +11:00
Randy Mackay
e6b8607baf RC_Channel: formatting and comment fix 2018-10-30 12:10:42 +11:00
Peter Barker
9c0bb9c47d AC_Fence: do not enable altitude fence on Rover by default 2018-10-30 12:10:42 +11:00
Peter Barker
413ef5a3b4 AC_Avoid: add singleton 2018-10-30 12:10:42 +11:00
Phillip Kocmoud
27a2b8a350 AP_Compass: Increase default MAX compass offset
After discussing the @tridge and @rmackay9 it was suggested that raising the maximum allowable compass offset value would allow users of the LIS3MDL and possibly others with larger compass offsets to fly with the default setting. 

This has been deemed a fairly safe change that still allows for sufficient overhead to prevent saturation.
2018-10-30 09:25:51 +09:00
murata
c8f93a3ddc RangeFinder: Added statement FALLTHROUGH 2018-10-30 09:13:29 +09:00
ChrisBird
d8281f3171 AP_Camera: Adding ability to control the Black Magic Micro Cinema Camera
via SBUS from the flight controller directly.  Handles the flipping of
certain channels.  Relies on change to SRV_Channel to add additional functions.
2018-10-30 11:12:01 +11:00
ChrisBird
a2c7d124cb SRV_Channel: Updated to include additional camera functions 2018-10-30 11:12:01 +11:00
Peter Barker
c73beffe1b AP_Mount: factor out a rate_input_rad, const various functions 2018-10-30 11:07:53 +11:00
Peter Barker
dcd930497a AC_AttitudeControl: AC_PosControl: avoid calling norm()
The result of this won't be used as often as this loop is called
2018-10-30 09:00:23 +09:00
Andrew Tridgell
6dd44a6d35 HAL_ChibiOS: fixed LED mapping for fmuv4 2018-10-29 14:04:32 +11:00
Nghia Nguyen
513eb1f5db AP_Rangefinder: Add support for Garmin LidarLite-V3HP 2018-10-27 11:22:57 +01:00
Randy Mackay
06aa29eb2a AC_Fence: get_polygon_points does not include return point 2018-10-26 14:38:04 +09:00
Randy Mackay
7aae970ae7 AC_Avoid: constify a few local variables 2018-10-26 14:38:04 +09:00
Randy Mackay
b7f3140441 AC_Avoid: stop includes margin for intersection calc
the simpler stop feature (as opposed to slide) was not including the margin when looking for intersections with the boundary meaning it could slow too late
2018-10-26 14:38:04 +09:00
Randy Mackay
7fa592e673 AP_Proximity: increase MAV driver timeout to 500ms
this comes after testing with ROS/mavros and discovering the update rate is only 4hz
2018-10-26 14:38:04 +09:00
Randy Mackay
82a28dc0fc AP_RangeFinder: check I2C dev during detect 2018-10-26 13:33:27 +09:00
Lucas De Marchi
9d95579b2d AP_Compass: update TYPEMASK documentation
Add missing drivers IST8308 and MAG3110.
2018-10-25 20:19:30 -07:00
Lucas De Marchi
34fb98b1e0 AP_Compass: probe for IST8308 on external buses 2018-10-25 20:19:30 -07:00
Lucas De Marchi
c3d87f91fc AP_Compass: add support to IST8308 2018-10-25 20:19:30 -07:00
Michael du Breuil
5846a54c17 AC_AttitudeControl: Fix copy paste param doc error 2018-10-25 09:50:00 +11:00
ebethon
f67a9af339 AP_GPS: fix SBAS mode in the SBP2 driver 2018-10-24 13:12:34 -07:00
chobitsfan
1e56ad4837 AP_NavEKF2: add external nav system to POSNE_M_NSE description 2018-10-24 19:14:54 +09:00
chobits
08b9bf4a89 AP_NavEKF2: fix extNav position noise 2018-10-24 19:14:54 +09:00
JIMWAR
97b5af60f8 AC_Avoid: fix adjust_velocity_polygon
adjust_velocity_polygon function ignoring boundary[0]
2018-10-24 15:37:14 +09:00
vierfuffzig
895cc0713b ChibiOS: fix F35Lightning default BATT_CURR_SCALE 2018-10-24 07:45:10 +10:00
Andrew Tridgell
70246cf954 AP_Compass: added notify events (LEDs and buzzer) for learning 2018-10-24 07:25:42 +10:00
Andrew Tridgell
5fe9334a18 RC_Channel: allow compass learning to be triggered on option
this allows for RCn_OPTION=62 to trigger compass learning, so you can
enable in-flight without using the GCS
2018-10-24 07:25:42 +10:00
Andrew Tridgell
23ddd994ec AP_Compass: allow multiple COMPASS_LEARN runs per boot 2018-10-24 07:25:42 +10:00
Andrew Tridgell
026089747d AP_Compass: use LEARN_NONE on learn completion
master doesn't yet have the statistical EKF learning
2018-10-24 07:25:42 +10:00
Andrew Tridgell
de58fb4637 AP_NavEKF3: support in-flight compass learning 2018-10-24 07:25:42 +10:00
Andrew Tridgell
0a7170774a AP_Compass: allow learning of all compasses
slave secondary compasses to primary
2018-10-24 07:25:42 +10:00
Andrew Tridgell
5ac6309848 AP_Compass: enable in-flight compass learning system
using COMPASS_LEARN=3
2018-10-24 07:25:42 +10:00
Andrew Tridgell
7e790a04d2 HAL_SITL: increase max timer procs
needed for compass learning
2018-10-24 07:25:42 +10:00
Andrew Tridgell
805647df85 AP_NavEKF2: enable use of in-flight compass learning 2018-10-24 07:25:42 +10:00
Peter Barker
c7d052eec8 RC_Channel: add const keyword to many methods 2018-10-23 12:30:35 +11:00
Peter Barker
537a7e0727 SITL: correct comment on sending gimbal messages 2018-10-23 11:58:04 +11:00
Peter Barker
ea426a3d45 RC_Channel: fix erroneous comment on RC relay options 2018-10-23 11:42:47 +11:00
Peter Barker
04e4484d96 AC_AttitudeControl: correct old and misleading comments 2018-10-23 09:40:21 +11:00
Peter Barker
41b6f30450 AP_OSD: add include for WITH_SEMAPHORE 2018-10-22 11:15:47 +11:00
Andrew Tridgell
d644150871 HAL_ChibiOS: fixes for DrotekP3Pro 2018-10-21 09:59:44 +11:00
Kevin Lopez Alvarez
9f97172cce AP_BoardConfig: add ChibiOS FMUv4pro defines 2018-10-21 09:59:44 +11:00
Kevin Lopez Alvarez
ab7c7afd1d AP_HAL: add ChibiOS FMUv4pro 2018-10-21 09:59:44 +11:00
Kevin Lopez Alvarez
6f99c706d6 HAL_ChibiOS: add MCU tables for STM32F469 2018-10-21 09:59:44 +11:00
Kevin Lopez Alvarez
bf745d1960 HAL_ChibiOS: add DrotekP3Pro hardware definitions 2018-10-21 09:59:44 +11:00
Peter Barker
1c1d651979 AP_NavEKF2: add space for null-termination
This is simply to preserve existing behaviour when snprintf starts to
null-terminate strings
2018-10-21 07:54:30 +11:00
Peter Barker
f90dd0c156 AP_HAL: add simple tests for null-termination 2018-10-21 07:54:30 +11:00
Peter Barker
9923bd1fd2 AP_BattMonitor: use sizeof(array) in place of constant 2018-10-21 07:54:30 +11:00
Peter Barker
21eacc5e31 AP_Arming: account for snprintf now null-terminating strings 2018-10-21 07:54:30 +11:00
Peter Barker
96b5be0e7d GCS_MAVLink: account for snprintf now null-terminating strings 2018-10-21 07:54:30 +11:00
Peter Barker
4c794ebba3 DataFlash: account for snprintf now null-terminating strings 2018-10-21 07:54:30 +11:00
Peter Barker
de3244e26c AP_OSD: account for snprintf now null-terminating strings 2018-10-21 07:54:30 +11:00
Peter Barker
33e3d6e254 AP_HAL: Util: make vsnprintf and snprintf always null-terminate
The C++ standard indicates these functions always return a
null-terminated string.  We should rename these functions if we're not
going to conform to the standards.

From https://en.cppreference.com/w/cpp/io/c/vfprintf :

"Writes the results to a character string buffer. At most buf_size-1
characters are written. The resulting character string will be
terminated with a null character"

We are still not standards-compliant in the case a length of 0 is passed
in, returning 0 where we should return the space that would be required
to store the formatted string.
2018-10-21 07:54:30 +11:00
Phillip Kocmoud
44fb61da37 HAL_ChibiOS: mRo X2.1-777 / hwdef.dat
Set proper sensor orientation.
2018-10-21 07:50:44 +11:00
Peter Barker
0142265f67 AP_Mount: make a copy of ID for mavlink_msg_param_set_send
The send function is expecting an array of the full length, so passing i
na null-terminated char* may result in uninitialised data (or
information leak)
2018-10-20 10:17:50 +11:00
vierfuffzig
83f4f5c347 AP_BLHeli: add motor pole parameter 2018-10-20 10:15:34 +11:00
Andrew Tridgell
84d7160128 AP_Compass: use new accumulate functions for UAVCAN 2018-10-19 16:03:45 +11:00
Andrew Tridgell
579a84b53e AP_Compass: use new accumulate functions for AK8963 2018-10-19 16:03:45 +11:00
Andrew Tridgell
55e4b64755 AP_Compass: don't apply offsets twice in SITL 2018-10-19 16:03:45 +11:00
vierfuffzig
5b955333ce AP_OSD: fix BLHAMPS current divisor 2018-10-19 15:05:53 +11:00
Peter Barker
b276034c60 APM_Control: correct use of incorrect abs functions 2018-10-19 08:46:43 +11:00
Peter Barker
560f17a570 AP_NavEKF3: use union to alias array and struct access to states
This avoids creating two pointers of different types to the same memory.

Having two pointers to the same memory can lead to the compiler
optimising code such that a write to one pointer is rearranged to be
either before or after a read from the other pointer depending on
which is deemed faster - not a good outcome.
2018-10-19 08:46:43 +11:00
Peter Barker
3a79ae4eca AP_NavEKF2: use union to alias array and struct access to states
This avoids creating two pointers of different types to the same memory.

Having two pointers to the same memory can lead to the compiler
optimising code such that a write to one pointer is rearranged to be
either before or after a read from the other pointer depending on which
is deemed faster - not a good outcome.
2018-10-19 08:46:43 +11:00
Peter Barker
154d771e6c AP_Math: correct compilation when running MATH_CHECK_INDEXES 2018-10-19 08:46:43 +11:00
Peter Barker
27e3a89158 AP_NavEKF3: correct compilation when running MATH_CHECK_INDEXES 2018-10-19 08:46:43 +11:00
Peter Barker
fb176b544f AP_NavEKF2: correct compilation when running MATH_CHECK_INDEXES 2018-10-19 08:46:43 +11:00
Andrew Tridgell
c622a4c4d6 HAL_ChibiOS: fixed output pins on F100 iomcu 2018-10-17 16:45:37 +11:00
Andrew Tridgell
6ec87528db AP_IOMCU: fixed RCIN failsafe 2018-10-17 15:11:28 +11:00
Andrew Tridgell
7b67146bc4 HAL_ChibiOS: use less memory in SoftSigReader 2018-10-17 15:11:28 +11:00
Andrew Tridgell
d083cd87d6 HAL_ChibiOS: disable debug code by default for iomcu
use --enable-asserts instead
2018-10-17 15:11:28 +11:00
Andrew Tridgell
d7aaaa35bd HAL_ChibiOS: disable RCIN and timer threads for iomcu 2018-10-17 15:11:28 +11:00
Andrew Tridgell
92d8ef0e76 AP_IOMCU: run the rcin timer tick in main loop
we no longer run a separate RCIN thread
2018-10-17 15:11:28 +11:00
Andrew Tridgell
8a4e0bd58c HAL_ChibiOS: fixed RCIN for iomcu
we need to disable/re-enable DMA on each IRQ for the STM32F10x
2018-10-17 15:11:28 +11:00
Andrew Tridgell
15141a6a5a HAL_ChibiOS: allow for no RCIN or TIMER thread
saves memory on iomcu
2018-10-17 15:11:28 +11:00
Andrew Tridgell
4674a1c68d HAL_ChibiOS: fixed system time for clocks other than 1MHz
needed for IOMCU
2018-10-17 15:11:28 +11:00
Andrew Tridgell
298a91ac7c HAL_ChibiOS: allow reduction of memory for SoftSigReader
for IOMCU
2018-10-17 15:11:28 +11:00
Andrew Tridgell
cd9179e733 AP_BoardConfig: fixed for 8 PWM outputs in IOMCU 2018-10-17 15:11:28 +11:00
rain-er
565b370330 UART4 added for BLHeli ESC telemetry 2018-10-17 13:57:19 +11:00
Andrew Tridgell
9b3788c83c AP_RPM: treat RPM_TYPE 1 as type 2 on non-PX4
makes upgrades easier
2018-10-17 13:55:01 +11:00
Andrew Tridgell
925555c995 AP_Compass: move accum fields to frontend
this is needed to ensure they are per-instance. Without this the SITL
backend produces zero for all but the first instance. The same would
be true for any multi-instance backend
2018-10-17 12:54:22 +11:00
Andrew Tridgell
83065d5e88 AP_Compass: convert SITL to new accumulate approach 2018-10-17 12:54:22 +11:00
Andrew Tridgell
6af709e617 SRV_Channel: fixed build warnings 2018-10-17 12:54:22 +11:00
Andrew Tridgell
93dbcf88b8 AP_Volz_Protocol: fixed build warnings 2018-10-17 12:54:22 +11:00
Andrew Tridgell
6f480c98cc AP_SBusOut: fixed build warnings 2018-10-17 12:54:22 +11:00
Andrew Tridgell
672b4be3d2 AP_RSSI: fixed build warnings 2018-10-17 12:54:22 +11:00
Andrew Tridgell
9e17275488 AP_BattMonitor: fixed build warnings 2018-10-17 12:54:22 +11:00
Andrew Tridgell
b1928d959b AP_Arming: fixed build warnings 2018-10-17 12:54:22 +11:00
Andrew Tridgell
feea73ee1a SITL: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
1d6b58f9ca DataFlash: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
f662cf55e5 AP_UAVCAN: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
046bcfa0a9 AP_SmartRTL: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
b1e4434332 AP_RangeFinder: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
530138ded4 AP_RAMTRON: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
68f463b29d AP_Radio: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
17049ff5f5 AP_OSD: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
a1f1e7e435 AP_OpticalFlow: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
bf829cd792 AP_Notify: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
dedfa54d5a AP_IRLock: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
755dc8dc5d AP_InertialSensor: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
249291eac0 AP_GPS: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
a260792e9e AP_Compass: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
e4e793b295 AP_Baro: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
fe064a2d4e AP_Airspeed: use WITH_SEMAPHORE()
and removed usage of hal.util->new_semaphore()
2018-10-17 12:54:22 +11:00
Andrew Tridgell
725899080e HAL_VRBRAIN: removed hal.util->new_semaphore()
replaced with HAL_Semaphore
2018-10-17 12:54:22 +11:00
Andrew Tridgell
44009c5459 HAL_SITL: removed hal.util->new_semaphore()
replaced with HAL_Semaphore
2018-10-17 12:54:22 +11:00
Andrew Tridgell
a9fbe106c9 HAL_PX4: removed hal.util->new_semaphore()
replaced with HAL_Semaphore
2018-10-17 12:54:22 +11:00
Andrew Tridgell
63556b9804 HAL_Linux: removed hal.util->new_semaphore()
replaced with HAL_Semaphore
2018-10-17 12:54:22 +11:00
Andrew Tridgell
5924816bbe AP_HAL: removed hal.util->new_semaphore()
replaced with HAL_Semaphore
2018-10-17 12:54:22 +11:00
Andrew Tridgell
9ac7f8333b HAL_F4Light: removed hal.util->new_semaphore()
replaced with HAL_Semaphore
2018-10-17 12:54:22 +11:00
Andrew Tridgell
4416404137 HAL_ChibiOS: removed hal.util->new_semaphore()
replaced with HAL_Semaphore
2018-10-17 12:54:22 +11:00
vierfuffzig
b455c7a769 AP_Compass: add rotation option for AK8963_MPU9250
allows using non-neutrally rotated AK8963 compass on MPU9250 as internal
reference: https://github.com/ArduPilot/ardupilot/pull/9459
2018-10-17 09:35:49 +11:00
Andrew Tridgell
0b9d0a4559 AP_Compass: removed incorrect semaphore take() in QMC5883L driver 2018-10-16 10:47:26 -07:00
Peter Barker
e29dbbf158 AP_AHRS: notify and log home changes 2018-10-16 10:55:13 +11:00
Peter Barker
dc14d7bce4 AP_Math: add another test for wrap_360_cd 2018-10-16 10:29:24 +11:00
Peter Barker
e0f63ca7f1 AP_Gripper: stop cheating on simulated servo state 2018-10-16 10:17:12 +11:00
Peter Barker
a8d8e5c0ef AP_RPM: remove unused variable 2018-10-16 10:17:12 +11:00
Peter Barker
1b6ec1d5ad AP_AccelCal: use mavlink define for field length
Also remove special-case handling for carriage return; no user of this
function has this problem.
2018-10-16 10:11:28 +11:00
Peter Barker
902bd7dda6 AP_Frsky_Telem: use mavlink definition to get statustext size
Also, add one for null-termination
2018-10-16 10:11:28 +11:00
Peter Barker
40daa8e15f AP_GPS: use mavlink definition to get statustext size
Also, add one for null-termination
2018-10-16 10:11:28 +11:00
Peter Barker
c0e03522c6 DataFlash: change unit ID of PWM to Y to remove conflict with deglongitude
Closes #9554 (thanks @wbrueg)
2018-10-16 10:02:19 +11:00
Peter Barker
b177554f61 DataFlash: add sanity check for duplicate units/multipliers 2018-10-16 10:02:19 +11:00
Phillip Kocmoud
f1d223a32a HAL_ChibiOS: Add support for the mRo X2.1-777
a new flight controller from Mayan Robotics based on the x2.1 upgraded to a STM32F777 MCU
2018-10-16 09:37:39 +11:00
Lucas De Marchi
1a9c386df2 AP_Compass: MMC3416: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
e83b345cbb AP_Compass: MAG3110: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
ac2771b311 AP_Compass: LSM9DS1: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
2324a28e39 AP_Compass: LSM303D: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
38d1f8705f AP_Compass: LIS3MDL: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
b05b3b9932 AP_Compass: IST8310: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
8d54276263 AP_Compass: BMM150: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
565df5ec94 AP_Compass: AK09916: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
e769c6932f AP_Compass: QMC5883L: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
c0bccdaed6 AP_Compass: HMC5843: use common method to accumulate samples 2018-10-15 14:41:09 -07:00
Lucas De Marchi
329516373c AP_Compass: add common method to accumulate and drain samples
Instead of repeating on each driver the same sequence of steps,
let's move them to the common parent class. This only implements
it, but no driver was ported yet.
2018-10-15 14:41:09 -07:00
Lucas De Marchi
5521fce676 AP_Math: add non-uniform Vector3f scaling 2018-10-15 14:41:09 -07:00
Leonard Hall
2f87d8808f AP_Motors: handle boost in spool up and down the same way 2018-10-16 00:44:50 +09:00
Randy Mackay
853a56dc9b AP_MotorsMatrix: formatting fixes 2018-10-16 00:44:50 +09:00
Leonard Hall
4774cb8daf AP_Motors: improved motor loss redundancy
This detects a failed motor on copters with at least 6 motors
and recalculates the mixer to compensate
2018-10-16 00:44:50 +09:00
Leonard Hall
96a8bcf641 AC_AttitudeControl: limit gyro correction to 45 degrees error 2018-10-16 00:44:50 +09:00
Leonard Hall
acaefe9316 AC_AttitudeControl: remove output limits 2018-10-16 00:44:50 +09:00
Peter Barker
e503df48ff AP_Baro: emit calibrated messages for each connected baro
Thanks to OlliW for pointing this out
2018-10-15 08:13:50 +11:00
chobits
7fa7c8f403 AC_WPNav: add set_speed_z 2018-10-13 13:16:26 +09:00
Eugene Shamaev
95ea3d8726 AP_Baro: fix temperature 2018-10-12 21:53:08 +01:00
vierfuffzig
2243c524db Chibios: Add board FuriousFPV F35Lightning 2018-10-12 20:28:50 +11:00
murata
2d4dd1643d AP_Baro: Delete the total temperature process.
AP_Baro: Delete the total temperature process.
2018-10-12 12:05:17 +11:00
mirkix
0c9fd0ae93 AC_WPNav: fix typo 2018-10-12 00:53:42 +01:00
murata
820f9bd260 AP_RTC: Delete unused variables
AP_RTC: Delete unused variables
2018-10-11 13:23:29 +11:00
Peter Barker
d05ab1b983 AP_Baro: notify GCS of all barometer ground pressures 2018-10-11 08:05:05 +11:00
Andrew Tridgell
38616e6bee AP_Notify: ensure we can't skip a step in RGBLed timing 2018-10-09 20:25:49 +09:00
Andrew Tridgell
6489166996 AP_Notify: fixed PixracerLED on NuttX
led_dim must be a positive number, and is not related to the led off
value
2018-10-09 20:25:49 +09:00
Andrew Tridgell
ed71790945 AP_HAL: fixed PX4 LED polarity 2018-10-09 20:25:49 +09:00
Andrew Tridgell
927105cd25 AP_Notify: init gpio state for LEDs 2018-10-09 20:25:49 +09:00
Andrew Tridgell
36aa666786 AP_Notify: fixed px4-v4 to use pixracer LED driver 2018-10-09 20:25:49 +09:00
IamPete1
67d698fda3 AP_Windvane: add wind direction note 2018-10-09 16:27:10 +09:00
IamPete1
e31f98157b SITL: sailboat add matlab VPP tool 2018-10-09 16:27:10 +09:00
IamPete1
1792438660 SITL: sailboat sim small changes 2018-10-09 16:27:10 +09:00
Peter Barker
3be9f35264 AP_RangeFinder: remove rangefinder prearm requirements for SITL
Getting the virtual rangefinder to move in prearm would be better, much
much more involved.
2018-10-09 10:47:38 +11:00
Peter Barker
281fad53c2 AP_NavEKF3: always set EKF control limits, even with no cores 2018-10-09 10:47:38 +11:00
Peter Barker
889190d46e AP_NavEKF2: always set EKF control limits, even with no cores 2018-10-09 10:47:38 +11:00
Peter Barker
3faf7824c0 AC_WPNav: allow position control to get ekf navigation scalars directly 2018-10-09 10:47:38 +11:00
Peter Barker
dabe8a13f7 AC_AttitudeControl: use EKF singleton to get ekfNavVelGainScaler 2018-10-09 10:47:38 +11:00
Michael du Breuil
9b82bcc901 DataFlash: Spin up more battery messages
This is crazy, because it just burned 5.5% of all possible message ID's
2018-10-09 00:44:46 +01:00
Michael du Breuil
8b3d993b1e AP_BattMonitor: Enable 9 battery monitors 2018-10-09 00:44:46 +01:00
Michael du Breuil
a8741f62f9 AP_Arming: Use AP_BattMonitor's arming checks for the battery 2018-10-09 00:44:46 +01:00
Michael du Breuil
0137d6543f AP_BattMonitor: Allow AP_BattMonitor to run arming checks 2018-10-09 00:44:46 +01:00
Michael du Breuil
deaa5046cb AP_BattMonitor: Split the failsafe conditions from their timers 2018-10-09 00:44:46 +01:00
Michael du Breuil
1bb4f07365 AP_BattMonitor: Move failsafe checks to the backend 2018-10-09 00:44:46 +01:00
Andrew Tridgell
bcc1bd9752 HAL_ChibiOS: added realloc implementation
needed for AP_Scripting
2018-10-09 10:08:52 +11:00
Michael du Breuil
68576eff32 AP_Scripting: Initial test script 2018-10-09 10:08:52 +11:00
Michael du Breuil
8382d377bd AP_HAL_ChibiOS: Add a BUFSIZ value 2018-10-09 10:08:52 +11:00
Michael du Breuil
e421599e4f AP_Scripting: Hide lua IO for now 2018-10-09 10:08:52 +11:00
Michael du Breuil
513e5946bb AP_Scripting: Add Lua 5.3.5 source 2018-10-09 10:08:52 +11:00
Michael du Breuil
8049c64a5b AP_Scripting: Create a thread and spin 2018-10-09 10:08:52 +11:00
Michael du Breuil
a7d94ff6c7 AP_HAL_PX4: Handle scripting priority 2018-10-09 10:08:52 +11:00
Michael du Breuil
f506a96b7f AP_HAL_Linux: Handle scripting priority 2018-10-09 10:08:52 +11:00
Michael du Breuil
11ab6c59e1 AP_HAL_ChibiOS: Handle scripting priority 2018-10-09 10:08:52 +11:00
Michael du Breuil
73901274b0 AP_HAL: Define a scripting base priority 2018-10-09 10:08:52 +11:00
Michael du Breuil
f2a31866aa AP_Scripting: Initial scripting framework 2018-10-09 10:08:52 +11:00
Randy Mackay
cb03a35737 AP_WindVane: fix typo on record_home_heading 2018-10-07 15:46:48 +09:00
Randy Mackay
f0181be9c9 AC_Loiter: init_target only inits pos controller if inactive
this reduces a twitch found during the development of zig-zag mode
2018-10-05 10:05:45 +09:00
CAO MUQING
09030b1b13 RC_Channel: add aux switch options for ZigZag mode and ZigZag SaveWP 2018-10-05 10:05:45 +09:00
Randy Mackay
c1ab3afb6c AP_HAL_ChibiOS: fix safety switch option handling 2018-10-04 16:13:24 +10:00
Peter Barker
b68a91d171 AP_NavEKF3: remove default clause in setAidingMode
All aiding modes should be covered in the switch statement; adding the
default clause squelches a potentially useful compiler warning
2018-10-03 17:49:43 +01:00
Peter Barker
3774aa6619 AP_NavEKF2: remove default clause in setAidingMode
All values from the enumeration should be handled in this switch; adding
a default will hide a compiler warning which may be useful.
2018-10-03 17:49:43 +01:00
Andrew Tridgell
8c391291a3 HAL_ChibiOS: fixed a race in DShot code
this fixes a problem found by Daniel Met with the copter 3.6 beta
release
2018-10-03 15:28:07 +10:00
Michael du Breuil
9a48a0835e AP_HAL_ChibiOS: Don't redefine errno 2018-10-03 08:01:13 +10:00
Jochen Anglett
1c60417d03 AP_Frsky_Telem: add IMU temperature reporting 2018-10-02 12:02:04 +01:00
Raouf
8bfb1d2445 AP_Proximity: add support for OBSTACLE_DISTANCE message 2018-10-02 10:37:13 +09:00
Michael du Breuil
f51d757844 AP_InertialSensor: Remove unused (and conflicting in some builds) include 2018-10-02 07:09:41 +10:00
Michael du Breuil
88aa20d691 AP_Airspeed: Make user facing messages clearer, improve handling of bad tube order 2018-10-02 06:28:47 +10:00
Michael du Breuil
f810b7b9f6 AP_HAL_ChibiOS: Make getcwd() take size_t as per the standard 2018-10-02 06:04:40 +10:00
Andrew Tridgell
2f2be6afda AP_Compass: use rotation_equal() from AP_Compass 2018-10-01 14:26:56 +09:00
Andrew Tridgell
d4eaf09baf AP_Math: added rotation_equal() 2018-10-01 14:26:56 +09:00
Andrew Tridgell
803f255c73 AP_Compass: fixed handling of duplication rotations
we have some rotations that are duplicated, such as ROLL_180_YAW_90
and PITCH_180_YAW_270. This copes with those in the auto-orientation
code
2018-10-01 14:26:56 +09:00
Peter Barker
ac0e126099 Copter: correct AFS terminate-via-land for Copter
In the case we're terminating via land it's a good idea to continue to
constantly adjust our motor outputs for stabilization and the like....
2018-10-01 11:23:46 +09:00
Peter Barker
254ef4f0ae AP_WheelEncder: remove dead code 2018-10-01 09:34:52 +09:00
Randy Mackay
8d3b093bbf AP_OSD: resolve compiler warning 2018-09-28 15:17:40 +09:00
Randy Mackay
7519a28e8c AP_WindVane: remove destructor 2018-09-28 10:40:12 +09:00
Randy Mackay
743ef9dfe6 AP_WindVane: correct parameter descriptions 2018-09-28 10:40:12 +09:00
Randy Mackay
30f20827ec AP_WindVane: add calibration voltage check
also support starting calibration via mavlink message
2018-09-28 10:40:12 +09:00
Randy Mackay
31e2d5d2ad AP_WindVane: updates after peer review
rename get_instance to get_singleton
update expected to be called at 20hz
filters moved into AP_WindVane scope and dt fixed
apparent wind direction stored locally in earth-frame and read_ functions renamed to reflect this
panic only called for SITL
analog pin init changed and assume voltage is radiometric
some renames of "bearing" to "distance"
some redundant constraints removed
2018-09-28 10:40:12 +09:00
IamPete1
e443b864c6 AR_AttitudeControl: add sail heel PID 2018-09-28 10:40:12 +09:00
Randy Mackay
ce397161bf AP_WindVane: add SITL driver 2018-09-28 10:40:12 +09:00
IamPete1
b54e3df57c AP_WindVane: library to read wind direction from sensor 2018-09-28 10:40:12 +09:00
IamPete1
7a8e7449fa SRV_Channel: add mailsail to servo function enum 2018-09-28 10:40:12 +09:00
Randy Mackay
b7c88da67c SITL: sailboat fixes from peer review 2018-09-26 12:00:13 +09:00
Randy Mackay
ada073fbdc AP_HAL_SITL: add sailboat to SITL_cmdline.cpp 2018-09-26 12:00:13 +09:00
Randy Mackay
804305aa2b SITL: add simple sailboat simulator 2018-09-26 12:00:13 +09:00
bnsgeyer
833bc4e77d AP_Motors: Tradheli - fixes slew speed of swashplate during collective servo test 2018-09-24 19:55:11 +01:00
Randy Mackay
d271dda8c5 AC_PrecLand: init accepts update rate 2018-09-21 16:38:35 +09:00
Randy Mackay
7fbdaa3c65 AC_PrecLand: LAG to float and use main loop rate
also includes other changes from peer review:

- check_inertia_buffer renamed to init_inertial_buffer and nullptr checks removed to make it more clear this should only be called once
- init_inertial_buffer made private
- add check that inertial_buffer_size is never less than 1
- fixup comments
2018-09-21 16:38:35 +09:00
Randy Mackay
40d4bcb84a AC_PrecLand: rename BUFFER to LAG and add alloc failure check
avoids issue where LAG parameter is set too large which would lead to trying to access unallocated memory
inertial buffer is only allocated at startup to avoid memory leak
2018-09-21 16:38:35 +09:00
fnoop
02da34a246 AC_PrecLand: Add PLND_BUFFER parameter and move to AP_HAL::utility::RingBuffer, #6297
AC_PrecLand: Add PLND_BUFFER parameter and move to AP_HAL::utility::RingBuffer, ##6297

AC_PrecLand: Fixup int type, #8892

AC_PrecLand: Add PLND_BUFFER parameter and move to AP_HAL::utility::RingBuffer, ##6297

Update screwed up submodules from rebase
2018-09-21 16:38:35 +09:00
Michael du Breuil
c02863e001 AP_AHRS: Internalize EKF getLLH altitude management 2018-09-21 00:18:49 +01:00
Michael du Breuil
1991f223ac AP_NavEKF3: Fix roundoff, and missing offset handling of getLLH 2018-09-21 00:18:49 +01:00
Michael du Breuil
66e9286cf6 AP_NavEKF2: Fix roundoff, and missing offset handling of getLLH 2018-09-21 00:18:49 +01:00
Michael du Breuil
65641c3cb7 AC_Circle: Cope with AC_PosControl renaming 2018-09-20 15:15:45 -07:00
Michael du Breuil
d3bee76f0b AC_WPNav: Cope with AC_PosControl renaming 2018-09-20 15:15:45 -07:00
Michael du Breuil
1d13aff711 AC_AttitudeControl: Rename several set_speed and set_accel functions 2018-09-20 15:15:45 -07:00
Lucas De Marchi
0990fc4400 AP_HAL_Linux: send warning to stderr 2018-09-19 23:21:13 -07:00
Peter Barker
5ae3c60e8b AP_Notify: fix nullptr in ToshibaLED example 2018-09-19 22:40:20 -07:00
Peter Barker
71c9c91c2d AP_Motors: fix example 2018-09-19 22:40:20 -07:00
Peter Barker
2ed8118cda AP_FlashStorage: adjust example so it does not exit 2018-09-19 22:40:20 -07:00
Peter Barker
220a3d19bf AP_HAL_Linux: do not attempt to run examples realtime unless root 2018-09-19 22:40:20 -07:00
Peter Barker
43c07259f3 AP_HAL_Linux: break out init_realtime 2018-09-19 22:40:20 -07:00
Michael du Breuil
7fda309d3c AP_HAL_ChibiOS: Remap unused pins to ADC 2018-09-20 01:07:47 +01:00
Michael du Breuil
6544f16339 AP_HAL: Make BBBlue use AP_BoardLED2 2018-09-19 22:58:46 +01:00
Michael du Breuil
e41b2de5ea AP_Notify: Catch bad board LED combos 2018-09-19 22:58:46 +01:00
Michael du Breuil
6f7ced73d6 AP_HAL: Remove bad GPIO LED pins on NavIO2 2018-09-19 22:58:46 +01:00
Michael du Breuil
9cd1be1d6f AP_Math: Speed up location calculations slightly 2018-09-19 14:40:48 +10:00
Siddharth Purohit
8ac38d73f7 HAL_ChibiOS: add option for NO_FASTBOOT build and enable it for iomcu 2018-09-19 12:14:15 +10:00
Siddharth Purohit
6622c9b8fd HAL_ChibiOS: wrap sscanf and snprintf methods 2018-09-19 12:14:15 +10:00
Siddharth Purohit
05539cd93b HAL_ChibiOS:remove print statement left over from previous changes 2018-09-19 12:14:15 +10:00
Siddharth Purohit
2d1153081c HAL_ChibiOS: do not build float support for bootloader builds 2018-09-19 12:14:15 +10:00
Siddharth Purohit
f9149f45b2 HAL_ChibiOS: explicitly mention if RTC not available 2018-09-19 12:14:15 +10:00
Siddharth Purohit
22f74b0827 HAL_ChibiOS: add option to set iomcu firmware environment var 2018-09-19 12:14:15 +10:00
Andrew Tridgell
3641dcee44 AP_IOMCU: only build iofirmware for ChibiOS 2018-09-19 12:14:15 +10:00
Andrew Tridgell
17112c8988 waf: allow build with "./waf iofirmware" 2018-09-19 12:14:15 +10:00
Andrew Tridgell
848dd87d58 AP_IOMCU: fixed code style issues 2018-09-19 12:14:15 +10:00
Andrew Tridgell
ba87856deb AP_IOMCU: fixed build warning 2018-09-19 12:14:15 +10:00
Siddharth Purohit
605e0de03c AP_IOMCU: conform to new time conversion API 2018-09-19 12:14:15 +10:00
Siddharth Purohit
42b4730d88 HAL_ChibiOS: add changes to hwdef to support STM32F1 based controller 2018-09-19 12:14:15 +10:00
Siddharth Purohit
bc601c1ff6 AP_IOMCU: add Boardconfig to list of required libraries 2018-09-19 12:14:15 +10:00
Siddharth Purohit
1a20fb4ea9 HAL_ChibiOS: disable flash methods where there is no Flash API support 2018-09-19 12:14:15 +10:00
Siddharth Purohit
847aca3c30 HAL_ChibiOS: reduce signal transitions count to save RAM 2018-09-19 12:14:15 +10:00
Siddharth Purohit
b9319cae56 HAL_ChibiOS: disable segments relating to unused features 2018-09-19 12:14:15 +10:00
Siddharth Purohit
87a2dea9d4 HAL_ChibiOS: disable features that require advanced dma 2018-09-19 12:14:15 +10:00
Siddharth Purohit
0f07480faf HAL_ChibiOS: continue main_loop branching from main instead of allocating a separate thread 2018-09-19 12:14:15 +10:00
Siddharth Purohit
e824a9c360 HAL_ChibiOS: add hwdef files to support IOMCU 2018-09-19 12:14:15 +10:00
Andrew Tridgell
f0b27c9b92 AP_IOMCU: support brushed output 2018-09-19 12:14:15 +10:00
Andrew Tridgell
cfb10fbb2f AP_IOMCU: fixed oneshot support in IO firmware 2018-09-19 12:14:15 +10:00
Andrew Tridgell
2c7e27374f AP_IOMCU: use ioevents for oneshot in iofirmware 2018-09-19 12:14:15 +10:00
Andrew Tridgell
ecfe06b9e4 AP_IOMCU: implement safety LED and switch in iofirmware 2018-09-19 12:14:15 +10:00
Andrew Tridgell
037a455784 AP_IOMCU: moved protocol structures to a common header 2018-09-19 12:14:15 +10:00
Andrew Tridgell
89bfd7e850 AP_IOMCU: added blue LED support on PH1 2018-09-19 12:14:15 +10:00
Siddharth Purohit
19c002baaf AP_IOMCU: add support for iofirmware update 2018-09-19 12:14:15 +10:00
Siddharth Purohit
fe3dda74bd AP_IOMCU: remove optimize override from iofirmware 2018-09-19 12:14:15 +10:00
Siddharth Purohit
78ce5a3f70 HAL_Empty: fix ambiguity of UARTDriver with the one defined in ChibiOS 2018-09-19 12:14:15 +10:00
Siddharth Purohit
2341719929 AP_HAL_Empty: do not use ch as its used by ChibiOS globally 2018-09-19 12:14:15 +10:00
Siddharth Purohit
9a2eea9769 AP_HAL: disable float print methods for non FPU controllers 2018-09-19 12:14:15 +10:00
Siddharth Purohit
5e4f76886a AP_HAL: add chibios hal header to use uC specific defines 2018-09-19 12:14:15 +10:00
Siddharth Purohit
c546bec999 AP_HAL: do not use ch for channel, its used as a global var under ChibiOS 2018-09-19 12:14:15 +10:00
Siddharth Purohit
4608e90913 IOMCU: add application for ioboard firmware 2018-09-19 12:14:15 +10:00
Andrew Tridgell
340f1b43e6 HAL_ChibiOS: fixed RSSI voltage from IOMCU 2018-09-15 16:08:32 +10:00
Leonard Hall
34c0656675 AC_AttitudeControl: Add missing variable initalisations 2018-09-15 11:00:29 +10:00
Leonard Hall
8c6a24450a AC_PID: Fix D term initialisation 2018-09-15 11:00:29 +10:00
Andrew Tridgell
de02cb9c8b AP_AHRS: fixed synthetic airspeed to be along +ve X axis
this prevents us from thinking we have +ve airspeed when flying
backwards with no pitot tube
2018-09-14 19:28:29 +10:00
Michael du Breuil
eb1f3b205f AC_AttitudeControl: Use reset_rate_controller_I_terms() helper 2018-09-14 12:16:58 +09:00
Andrew Tridgell
3ab7fe348a APM_Control: halve the default pitch D term for planes
this is based on feedback from the 3.9.1 release
2018-09-14 07:32:13 +10:00
Andrew Tridgell
8c33b4b97d HAL_ChibiOS: implement set_failsafe_pwm() 2018-09-13 08:15:02 +10:00
Andrew Tridgell
4314d0ea12 SRV_Channel: handle reversed channels in limit PWMs 2018-09-13 08:15:02 +10:00
Andrew Tridgell
f22d5f0d40 AP_IOMCU: implement failsafe PWM 2018-09-13 08:15:02 +10:00
Leonard Hall
b15b5516cb AC_PosControl: Fix divide by zero check in limit_vector_length 2018-09-12 15:51:30 +09:00
Leonard Hall
706ff85be7 AC_AttitudeControl: Add minimum angle limit for get_althold_lean_angle_max 2018-09-12 15:51:30 +09:00
Andrew Tridgell
490d6eea20 HAL_ChibiOS: fixed ADC bug
this caused bad analog readings when the number of channels being read
was more than the number of hw channels

thanks to @vierfuffzig for reporting!
2018-09-12 07:10:04 +10:00
Andrew Tridgell
1e0ca409d1 AP_OSD: check we have an airspeed object 2018-09-11 22:23:53 +10:00
vierfuffzig
2936f24814 AP_OSD: battery support improvements
adds airpseed temperatur item
adds secondary batt instance items
switches used capacities to Ah above 9999 mAh
volt / amp / distance symbols reworked and realigned to specific font styles
2018-09-11 22:23:53 +10:00
Andrew Tridgell
d98110084d AP_OSD: updated fonts for new OSD items 2018-09-11 22:23:53 +10:00
Randy Mackay
7a7533724a AP_Arming: rename rudder_arming to get_rudder_arming_type 2018-09-11 19:34:39 +10:00
Randy Mackay
f039c6d5f4 AP_Arming: minor format fix 2018-09-11 19:34:39 +10:00
Randy Mackay
ba2b9f3d47 AP_Arming: add RUDDER parameter 2018-09-11 19:34:39 +10:00
Ammarf
2beb3a278a RC_Channel: add simple mode to aux functions 2018-09-11 16:43:17 +09:00
vierfuffzig
395820096a AP_OSD add external baro temperature item 2018-09-11 17:17:59 +10:00
Randy Mackay
d7d6c6ab04 AR_AttitudeControl: clarify units of get_steering_out_heading argument
also update comments
2018-09-11 14:39:50 +09:00
Michael du Breuil
20c56f3e06 RC_Channel: Add an accessor for a channels range and type 2018-09-11 09:07:00 +10:00
Peter Barker
be9235a581 AP_NavEKF3: fix writeOptFlowMeas signature
const some of the vectors, stop taking references to scalars that aren't
being changed
2018-09-11 09:03:22 +10:00
Peter Barker
d8aa8d2b71 AP_NavEKF2: fix writeOptFlowMeas signature
const some of the vectors, stop taking references to scalars that aren't
being changed
2018-09-11 09:03:22 +10:00
Peter Barker
306a40bb77 AP_AHRS: fix writeOptFlowMeas signature
const some of the vectors, stop taking references to scalars that aren't
being changed
2018-09-11 09:03:22 +10:00
Michael du Breuil
7db5daadad AP_Mission: If a command fails to start immediately cycle to the next 2018-09-11 06:42:00 +10:00
Lucas De Marchi
ad8ab97725 AP_HAL_Linux: SPIDevice: compile out debug stuff
This should at most be behind a flag. If the device is being used by
other process/drivers, it's a problem with that specific user/distro:
don't penalize everybody else. Besides, changing the mode is not atomic
and nothing guarantees the other side doesn't get scheduled and change
it back before we get to run.
2018-09-08 09:47:33 -07:00
Lucas De Marchi
2c6dd64c67 AP_HAL_Linux: create one thread per spi bus rather than device
Do not create one thread per chardev (i.e. bus + kernel's chip select).
Since the shared resources are actually the bus controller and the bus
lines, it makes sense to have 1 thread per bus, otherwise it will just
get locked again on the mutex in the kernel side.
2018-09-08 09:47:33 -07:00
Lucas De Marchi
cf4fb09881 AP_HAL_Linux: Remove hole from SPIBus
Also handle a few coding style bikesheds.
2018-09-08 09:47:33 -07:00
Lucas De Marchi
4152b555fd AP_HAL_Linux: replace kernel_cs with subdev
They are the same thing. Using both names however is confusing.
2018-09-08 09:47:33 -07:00
cclauss
7291aa0d00 AP_OSD: Simplify with the code enumerate()
* Avoid hardcoding the path to the python executable on the shebang line
* Using __with open() as__ automates file close().
2018-09-08 20:24:42 +10:00
Pierre Kancir
5b0ae42725 SITL: limit on_ground() check to militer accuracy to prevent bouncing 2018-09-07 10:22:34 +10:00
Peter Barker
0cf12ad47e RC_Channel: add aux option to fly inverted for Plane 2018-09-07 09:07:40 +10:00
Andrew Tridgell
d79386d574 AP_Baro: use GND_EXT_BUS to allow a specific bus to be probed 2018-09-07 08:36:02 +10:00
Andrew Tridgell
dda8e7c35a AP_Baro: probe both i2c buses on CubeBlack for barometers 2018-09-07 08:36:02 +10:00
Andrew Tridgell
eec3a2ab31 AP_HAL: added FOREACH_I2C_MASK() macro 2018-09-07 08:36:02 +10:00
Randy Mackay
af6e2d2c8c AP_Baro: add PROBE_EXT param values
this makes it easier for users to select the external baro they want to use on GCSs that do not display the bitmasks
2018-09-07 08:36:02 +10:00
Randy Mackay
758331612f AP_Baro: probe for MS5611 on I2C addr 0x76 2018-09-07 08:36:02 +10:00
s0up
066cf90111 HAL_ChibiOS: Add speedybee hardware definition 2018-09-07 08:33:35 +10:00
Francisco Ferreira
5b383bae16
AP_HAL_Linux: force Thread stack to have minimum size
Check that Thread stack size is the minimum allowed

Also add 256k to HAL-independent request stack size
2018-09-06 19:07:13 +01:00
Paul Atkin
bb99165221 HAL_ChibiOS: updates for KakuteF7
fixed PWM and added full tonealarm support
2018-09-06 10:11:34 +10:00
Peter Barker
bd5cdf9e64 RC_Channel: update aux options for planes to include arm/disarm 2018-09-06 08:26:50 +10:00
Lucas De Marchi
93d99dacd1 AP_Compass: UAVCAN: remove additional semaphore
We already inherit from AP_Compass_Backend, so use the semaphore from
there to synchronize with the main thread, like the other backends.
2018-09-06 08:23:02 +10:00
Lucas De Marchi
cb10d1d27b AP_Common: allow more than one WITH_SEMAPHORE per context
Let the variable have a random name since we are not going to reference
it. This allows more than one WITH_SEMAPHORE() per context and also to
avoid shadowing if we open inner contexts.
2018-09-06 08:23:02 +10:00
Lucas De Marchi
1715714488 AP_Common: make WithSemaphore use an AP_HAL::Semaphore reference
We don't need the specialized one inside WithSemaphore, so use the
abstract one which allows us to more easily convert between current API
and the HAL_Semaphore one.

While at it also remove additional pragma and allow constructor to
receive a pointer for convenience (we will just dereference it).
2018-09-06 08:23:02 +10:00
Lucas De Marchi
cd9b08dbae AP_Compass: rename variable for more buses
"all_external" reflects better the fact that we can have more than 2
buses (and now we are using the foreach macro).
2018-09-06 08:23:02 +10:00
Lucas De Marchi
de535dc573 AP_Compass: remove unused external and name arguments
Aka "fix copy and pasta".
2018-09-06 08:23:02 +10:00
Lucas De Marchi
4039b51810 AP_Compass: stop passing frontend pointer
Let AP_Compass_Backend call AP::compass() *once* instead of passing
the frontend pointer over and over.
2018-09-06 08:23:02 +10:00
Lucas De Marchi
585b6dce0d AP_Compass: support more external compasses on aerofc
Let it probe on external bus. Aerofc has an HMC5883 on internal bus, but
we don't want it enabled as it interferes with the internal baro. Also
the rotation for the compass that comes with Aero RTF is different from
the other that got added later. That means people would need to orient a
third party IST8310-based compass differently on Aero RTF than on other
boards... that's a problem of having orientation based on the chip that
can't be solved on this commit.
2018-09-06 08:23:02 +10:00
Andrew Tridgell
5de199bc01 AP_Baro: allow for external i2c baro on most boards
only disable on those with HAL_MINIMIZE_FEATURES enabled
2018-09-06 07:21:30 +10:00
Andrew Tridgell
a9e29f7556 HAL_ChibiOS: added pullup/pulldown support on GPIO
using the convention of write() on an input pin to set pullup/pulldown
2018-09-06 07:20:46 +10:00
liang.tang
7885b267f0 AP_GPS: fix UAVCAN gps message handlers 2018-09-05 17:23:14 +10:00
liang.tang
2c0b9a16a5 AP_Compass: fix UAVCAN mag message handlers 2018-09-05 17:22:34 +10:00
liang.tang
bcaa4901ed AP_UAVCAN: subscribe airspeed message 2018-09-05 17:22:08 +10:00
liang.tang
653766c4cc AP_Airspeed: uavcan airspeed supported 2018-09-05 17:22:08 +10:00
Peter Barker
10d7cc6bf4 RC_Channel: add Plane support for channel options 2018-09-05 13:47:19 +10:00
Peter Barker
9650846497 RC_Channel: treat UINT16_MAX as a value of 0 in set_override
This shouldn't really in in RC_Channels - when we move the mavlink
packet handling up to the GCS_MAVLink base class we should move this
into there.
2018-09-05 11:54:32 +10:00
Peter Barker
1c527df084 RC_Channel: note that Rover now has disable-gcs-overrides channel option 2018-09-05 11:54:32 +10:00
Peter Barker
047689981b RC_Channel: honour gcs_overrides_enabled as part of set_override
This will stop situations like we currently have where the
MANUAL_CONTROL GCS mavlink packets can still affect the vehicle

Also resolves an issue where has_new_overrides may not be set
appropriately
2018-09-05 11:54:32 +10:00
Peter Barker
7bdd9b1aea RC_Channel: move handling of disable-gcs-rc-overrides-channel-option 2018-09-05 11:54:32 +10:00
Andrew Tridgell
b4ecc347d7 AP_HAL: always define HAL_WITH_UAVCAN on px4 2018-09-05 08:52:47 +10:00
Randy Mackay
96097586c3 AR_AttitudeControl: reset I if speed controller not called recently 2018-09-04 15:00:41 +09:00
Andrew Tridgell
135e37e1f4 AP_IOMCU: cope with IOMCU reset in flight
this copes with IOMCU reset when we have safety forced off
2018-09-04 15:24:12 +10:00
Leonard Hall
31d93f5914 AC_Loiter: reduce twitch on init 2018-09-04 13:37:28 +09:00
Leonard Hall
5863b84c35 AC_PosControl: reduce glitch on init 2018-09-04 13:37:28 +09:00
Leonard Hall
4ceabe4838 AC_PID_2D: add reset for filter and D term 2018-09-04 13:37:28 +09:00
Peter Barker
71bff63bff AP_Mission: remove erroneous comment about clear() 2018-09-04 10:32:26 +10:00
Peter Barker
3c8738b4d8 RC_Channel: add clear-waypoints option 2018-09-04 10:32:26 +10:00
Peter Barker
16b49399db AP_Mission: add singleton 2018-09-04 10:32:26 +10:00
Michael du Breuil
f6cb196d53 AP_HAL_ChibiOS: Remove unimplemented force_safety_no_wait()
ChibiOS doesn't implement the method, so there is nothing to be gained
by calling the function.
2018-09-04 10:23:18 +10:00
Peter Barker
d6fe9d47e0 AP_HAL_SITL: check return value from posix_memalign
Avoids return-value-must-be-checked compiler warning
2018-09-04 09:22:18 +10:00
Michael du Breuil
f06b27e4a3 AP_Declination: Fixes ups for pyigrf 2018-09-04 09:02:25 +10:00
scivision
67a503d5d8 AP_Declination: 2to3, IGRF API update
use built-in IGRF total, incl, decl computations
2018-09-04 09:02:25 +10:00
Andrew Tridgell
ebcdf4c9c6 AP_Notify: fixed oled probe on first bus
Thanks to Erwin Quilloy for helping to track this down
2018-09-03 18:15:05 +01:00
Peter Barker
a7acc92663 RC_Channel: move rc-channel option for lost-vehicle sound up to base class 2018-09-03 16:57:25 +09:00
liang.tang
f4a8006333 AP_Airspeed: fix spd3x correct pressure issue 2018-09-02 16:38:51 -07:00
Peter Barker
774b091611 AC_PID: get example working again 2018-08-31 21:08:11 +09:00
Peter Barker
c54c2a2930 RC_Channel: fix and tidy example 2018-08-31 21:08:11 +09:00
Peter Barker
15ae453205 AP_HAL: fix RCInput example 2018-08-31 21:08:11 +09:00
Peter Barker
26e7abe6c4 GCS_MAVLink: use camera singleton to get camera rather than callback 2018-08-31 15:48:56 +10:00
Peter Barker
d5f6911db7 GCS_MAVLink: use compass singleton instead of subclass callback 2018-08-31 15:48:56 +10:00
Michael du Breuil
70e587b572 AP_GPS: Fix accidental quantization to float on SBF logging 2018-08-31 01:16:31 +01:00
Hannes Verschore
fefde53d58 AP_HAL_ChibiOS: Fix comment in Device.cpp
This was decreased to 100 in b07c599bf2 . I assume it would be best to also update the comment.
2018-08-31 08:36:47 +09:00
Peter Barker
822fab0f5a AP_RSSI: let HAL's attach_interrupt implementation handle board stuff 2018-08-31 08:32:08 +10:00
Peter Barker
9569abe57a AP_HAL_VRBRAIN: remove pointless attach_interrupt override 2018-08-31 08:32:08 +10:00
Peter Barker
e7e2a78d35 AP_HAL_SITL: remove pointless attach_interrupt override 2018-08-31 08:32:08 +10:00
Peter Barker
42c711a5b2 AP_HAL_Linux: remove pointless attach_interrupt override 2018-08-31 08:32:08 +10:00
Peter Barker
d868aab26a AP_HAL_Empty: remove pointless attach_interrupt override 2018-08-31 08:32:08 +10:00
Peter Barker
fcacdb42bb AP_HAL: define base-class attach_interrupt to return false 2018-08-31 08:32:08 +10:00
Randy Mackay
305d927dd8 AP_OSD: resolve compiler warnings 2018-08-30 20:23:00 +09:00
Raouf
90a27520e9 AP_Rally: rover includes home by default 2018-08-30 09:55:06 +09:00
Siddharth Purohit
ca54123b7d AP_GPS: move UAVCAN GPS related code to AP_GPS_UAVCAN backend 2018-08-29 22:54:59 +01:00
Siddharth Purohit
6e85003b56 AP_BattMonitor: move BattInfo message subscription and handling to AP_BattMonitor 2018-08-29 22:54:59 +01:00
Siddharth Purohit
14b701cff8 AP_Compass: move UAVCAN mag subscribers and handlers to Compass Backend 2018-08-29 22:54:59 +01:00
Siddharth Purohit
5ef5537371 AP_Baro: move Baro UAVCAN subscribers and handlers to AP_Baro_UAVCAN 2018-08-29 22:54:59 +01:00
Andrew Tridgell
62fbe13690 AP_UAVCAN: send ESCs when disarmed
we should only be checking the safety state
2018-08-29 22:54:59 +01:00
Siddharth Purohit
0125b2cdd2 AP_UAVCAN: remove UAVCAN sensors related code 2018-08-29 22:54:59 +01:00
Siddharth Purohit
f01cc254d3 AP_UAVCAN: add Callback API to link UAVCAN backend callbacks 2018-08-29 22:54:59 +01:00
Andrew Tridgell
c79650a8d8 AP_Notify: fixed remote play tune 2018-08-29 13:47:20 +10:00
Michael du Breuil
80597d5cba RC_Channel: Fix accidental quantization of override_timeout to 1 second 2018-08-28 14:18:54 +10:00
Randy Mackay
3e8d9f4131 RangeFinder: shorten comment 2018-08-28 09:23:38 +09:00
Randy Mackay
1b0f0a7559 AP_RangeFinder: support last_reading_ms
Benewake, LeddarOne, LightWareSerial, MAVLink, MaxsonarI2CXL, MaxsonarSerialLV, NMEA, PX4_PWM, uLanding and Wasp already stored the last read time so for these drivers, this change just moves that storage to the state structure
analog, BBB_PRU, Bebop, LightWareI2C, PulsedLightLRF, TeraRangerI2C, VL53L0X did not store the last read time so this was added
2018-08-28 09:23:38 +09:00
Randy Mackay
9e27b93538 AP_RangeFinder: move some backend implementations to cpp file 2018-08-28 09:23:38 +09:00
Randy Mackay
9a7b378ddd AP_RangeFinder: minor format change
lines up with parameter variables below
2018-08-28 09:23:38 +09:00
Michael du Breuil
e878558d41 AP_Mission: Reduce the number of places _set_cmd is called from 2018-08-28 10:01:36 +10:00
Peter Barker
43f3d611b2 AP_Math: pragma away the float-equal test for the maths tests
There are legitimate reasons for doing direct equivalence in these files
2018-08-28 09:54:47 +10:00
Peter Barker
3e9294a2ae SITL: eliminate float-equals issues 2018-08-28 09:54:47 +10:00
Peter Barker
8fee27937a AP_Math: eliminate SITL float-equals issues 2018-08-28 09:54:47 +10:00
Peter Barker
04c36efdbf AP_InertialSensor: eliminate SITL float-equals issues 2018-08-28 09:54:47 +10:00
Peter Barker
d968e27b45 AP_HAL_SITL: eliminate float-equals issues 2018-08-28 09:54:47 +10:00
Andrew Tridgell
8c962e6f0f HAL_ChibiOS: use a larger TX buffer on USB
this is needed for fast log download on vehicles with 50Hz main loop
2018-08-28 08:50:50 +10:00
Patrick José Pereira
0f42702910 AP_Mount: Remove unused check
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-08-27 23:35:34 +01:00
Patrick José Pereira
fb7c46bda0 AP_HAL_SITL: Remove unused check
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-08-27 23:35:34 +01:00
Patrick José Pereira
10ffd89a0c AP_GPS: Remove unused operation
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-08-27 23:35:34 +01:00
Pierre Kancir
7d9c947b9b AP_HAL_SITL: update parameter with using command line speedup option 2018-08-28 07:26:26 +10:00
Randy Mackay
106b8abab7 AR_AttitudeControl: get_throttle_out_from_pitch accepts vehicle speed 2018-08-27 16:44:33 +09:00
Randy Mackay
785da8add9 AP_WheelRateControl: lib to control wheel rate with encoders 2018-08-27 16:44:33 +09:00
Randy Mackay
912dd0c4cc AP_WheelEncoder: update parameter descriptions 2018-08-27 16:44:33 +09:00
Randy Mackay
6b89c24cc6 AP_WheelEncoder: calculate rate from last iteration 2018-08-27 16:44:33 +09:00
Randy Mackay
b381ae7bf3 AC_PID: support storing actual 2018-08-27 16:44:33 +09:00
Randy Mackay
397e035cf7 DataFlash: replace unused AFF with actual in PID_Info 2018-08-27 16:44:33 +09:00
Randy Mackay
d5ef3c2e0f AR_AttitudeControl: get_throttle_out_from_pitch uses motor limits
This allows removing I-term build up from throttle hitting 100%
2018-08-27 16:44:33 +09:00
Randy Mackay
65b020eac3 AR_AttitudeControl: re-order pitch control to match other similar methods 2018-08-27 16:44:33 +09:00
Pierre Kancir
2661ad2ed3 GCS_Common: remove status text for gripper 2018-08-27 14:39:49 +10:00
Pierre Kancir
3ab635f100 AP_Gripper: use gripper_sim feedback 2018-08-27 14:39:49 +10:00
Pierre Kancir
a5e2f96a59 SITL: Better gripper sim options 2018-08-27 14:39:49 +10:00
Peter Barker
f258a25138 AP_Arming: remove double PreArm: in battery prearm report
Also use check_failed throughout
2018-08-27 11:12:52 +09:00
Randy Mackay
a5c59ce36e AP_Motors: include boost_throttle in get_motor_mask 2018-08-27 10:35:02 +09:00
Randy Mackay
f85e84cc89 AP_Motors: add override keyword to get_motor_mask 2018-08-27 10:35:02 +09:00
pierre-louis.k
e62ed19759 AP_RangeFinder: Remove range enforcement on out of range 2018-08-27 10:25:51 +09:00
pierre-louis.k
5577b8b33c AP_RangeFinder: Rework function structure in TeraRanger driver 2018-08-27 10:25:49 +09:00
pierre-louis.k
b6f1647c31 AP_RangeFinder: Rename function in TeraRanger driver 2018-08-27 10:25:47 +09:00
pierre-louis.k
1b990c116d AP_RangeFinder: Give back semaphore on whoami error 2018-08-27 10:25:45 +09:00
pierre-louis.k
4d45b68fa3 AP_RangeFinder: Clean TeraRanger driver 2018-08-27 10:25:43 +09:00
pierre-louis.k
d162afb790 AP_RangeFinder: Add error codes rejection for TeraRanger sensors 2018-08-27 10:25:41 +09:00
Dr.-Ing. Amilcar do Carmo Lucas
c9bbc2773d AP_ADSB: Add valid parameter range to squawk codes 2018-08-26 09:13:10 -07:00
Andrew Tridgell
33076be585 HAL_ChibiOS: fixed handling of 16 bit timers
when we have a 16 bit timer then systime_t is 16 bit, and we need to
handle wrap of get_systime_us32()
2018-08-26 18:34:26 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
b9df513705 GCS_MAVLink: remove redundant ret = true statements (NFC) 2018-08-26 18:21:45 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
9c97f35b19 AP_GPS: Use GPS_AUTO_SWITCH parameter to choose exacly which GPS to use 2018-08-26 01:05:09 -07:00
Andrew Tridgell
1762a2708c AP_Notify: removed unused hal variable 2018-08-26 07:57:05 +10:00
Andrew Tridgell
0289ad03df AP_Mission: added semaphore for thread access 2018-08-25 15:44:36 +10:00
Andrew Tridgell
935c9167ab AP_Avoidance: added semaphore 2018-08-25 15:44:36 +10:00
Andrew Tridgell
9897bf6127 AP_AHRS: support locked access to AHRS data 2018-08-25 15:44:36 +10:00
Andrew Tridgell
0aeceb22d9 AP_Common: added #pragma once to Semaphores.h 2018-08-25 15:44:36 +10:00
Andrew Tridgell
dc20e2baed HAL_ChibiOS: support recursive semaphores 2018-08-25 15:44:36 +10:00
Andrew Tridgell
edeab9d152 HAL_SITL: support HAL_Semaphore_Recursive 2018-08-25 15:44:36 +10:00
Andrew Tridgell
1397c85f8e HAL_PX4: added Semaphore_Recursive 2018-08-25 15:44:36 +10:00
Andrew Tridgell
b347027e13 HAL_Linux: added Semaphore_Recursive 2018-08-25 15:44:36 +10:00
Andrew Tridgell
55dfefb2d6 AP_HAL: added HAL_Semaphore_Recursive 2018-08-25 15:44:36 +10:00
Patrick José Pereira
ab31fcb8f4 AP_HAL_SITL: Makes scheduler compile under Mac OS
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-08-25 11:25:17 +10:00
pierre-louis.k
bf274cd9db AP_Proximity: Change min and max range to support both 60m and 600Hz 2018-08-25 10:22:11 +09:00
Mateusz Sadowski
08332102fe AP_Proximity: Fix sensor order on TeraRanger Tower Evo 2018-08-25 10:22:11 +09:00
Mateusz Sadowski
4b8b8347f2 AP_Proximity: Correctly handle TeraRanger Tower Evo initialization 2018-08-25 10:22:11 +09:00
Mateusz Sadowski
f1b550647d AP_Proximity: Change TeraRanger Tower Evo sequence mode to Tower 2018-08-25 10:22:11 +09:00
Mateusz Sadowski
2ca567f409 AP_Proximity: Add support for TeraRanger Tower Evo 2018-08-25 10:22:11 +09:00
Andrew Tridgell
db9a8f16ed HAL_ChibiOS: enable terrain on Pixracer, minpx-v2 and mini-pix 2018-08-24 19:43:27 +10:00
Andrew Tridgell
3fd25ad548 AP_Baro: added HAL_BARO_ALLOW_INIT_NO_BARO 2018-08-23 13:29:59 +10:00
Andrew Tridgell
5526dac4fc HAL_ChibiOS: probe all i2c baros for revo-mini
this ensures we build this functionality in CI
2018-08-23 13:29:59 +10:00
Andrew Tridgell
1439b1a730 AP_Baro: added option to probe any i2c baro using GND_PROBE_EXT
This adds a hwdef.dat define HAL_PROBE_EXTERNAL_I2C_BAROS. When set,
we get a new parameter GND_PROBE_EXT that is a bitmask of i2c
barometers to look for.

This allows boards that have no builtin baro to work without
rebuilding
2018-08-23 13:29:59 +10:00
Andrew Tridgell
f937589810 AP_Baro: fixed BMP085 probe 2018-08-23 13:29:59 +10:00
Michael du Breuil
8850e4b9a1 SRV_Channel: Remove the trim_all interface, constrain failsafes to non motor outputs 2018-08-23 13:19:08 +10:00
Andrew Tridgell
912e4f16ec AP_Common: added #pragma once 2018-08-23 08:21:48 +10:00
Andrew Tridgell
b2cc992e0c AP_Baro: convert to use WITH_SEMAPHORE() 2018-08-23 08:21:48 +10:00
Peter Barker
3251e43f03 AP_Radio: adjust for namespacing of interrupt names 2018-08-21 20:34:01 +09:00
Peter Barker
d9f393f42e AP_RSSI: convert to HAL attach_interrupt
AP_RSSI: add error reporting for attaching of interrupts

AP_RSSI: use detach_interrupt method
2018-08-21 20:34:01 +09:00
Peter Barker
f2b8c9e501 RC_Channel: improve debug when failing to initialise RC channel 2018-08-21 20:34:01 +09:00
Peter Barker
2209e4a697 AP_HAL_ChibiOS: new HAL functor-based methods
AP_HAL_ChibiOS: adjust for irq-type enumeration change

AP_HAL_ChibiOS: implement attach-AP_HAL::Proc to interrupt interface
2018-08-21 20:34:01 +09:00
Peter Barker
d366842d15 AP_WheelEncoder: move to using HAL's attach_interrupt methods
AP_WheelEncoder: add error reporting for attaching of interrupts

AP_WheelEncoder: use detach_interrupt method

AP_WheelEncoder: correct initialisation of wheelencoder instances

AP_WheelEncoder: make update_phase_and_error_count non-static

AP_WheelEncoder: use (uint8_t)-1 in place of 255
2018-08-21 20:34:01 +09:00
Peter Barker
20027bad17 AP_RPM: attach_interrupt now takes a functor
AP_RPM: move PX4 IRQ handling into AP_HAL_PX4

AP_RPM: correct RPM sensor initialisation

The initialisation code used the type from the wrong configuration
parameters (if the first rpm sensor wasn't configured then the sensing
for the second sensor would use the type from the first).

The packing of drivers[...] was done in a non-sparse manner - i.e. if a
sensor wasn't detected then it would not take up space in the array.
The PX4 PWM backend relies on the instance number (offset in the drivers
array) corresponding to the parameters, so making this sparse is
required.

The main detection block fills in drivers based on the number of
instances detected so far, but the nullptr check checks based on the
number of detected backends.  If the second instance wasn't configured we
wouldn't attempt to configure a third.

AP_RPM: add error reporting for attaching of interrupts

AP_RPM: use detach_interrupt method

AP_RPM: use (uint8_t)-1 in place of 255
2018-08-21 20:34:01 +09:00
Peter Barker
9b9ec4db40 AP_HAL_Empty: attach_interrupt now takes a functor
AP_HAL_Empty: add type-safety for interrupt types
2018-08-21 20:34:01 +09:00
Peter Barker
5180e025bb AP_HAL_SITL: attach_interrupt now takes a functor
AP_HAL_SITL: add type-safety for interrupt types
2018-08-21 20:34:01 +09:00
Peter Barker
a7b79f7693 AP_HAL_VRBrain: attach_interrupt now takes a functor
AP_HAL_VRBRAIN: add type-safety for interrupt types
2018-08-21 20:34:01 +09:00
Peter Barker
8d5a9ead48 AP_HAL_Linux: attach_interrupt now takes a functor
AP_HAL_Linux: add type-safety for interrupt types
2018-08-21 20:34:01 +09:00
Peter Barker
4767666a2d AP_HAL_PX4: implement attach_interrupt 2018-08-21 20:34:01 +09:00
Peter Barker
74263f8412 AP_HAL: add attach_interrupt that takes a functor, not a AP_HAL::Proc
AP_HAL: add type-safety for interrupt types

AP_HAL: remove interrupt-low and interrupt-high, and interrupt-none

It is possible that the radio needs very tight timings - do not force
the use of the functor interface

AP_HAL: add detach_interrupt method
2018-08-21 20:34:01 +09:00
Peter Barker
c846a13d12 AP_HAL: functor: add != override 2018-08-21 20:34:01 +09:00
Peter Barker
a09154c45b AP_WheelEncoder: correct check for wheelencoder-max-instances 2018-08-21 20:34:01 +09:00
Peter Barker
21201b8816 AP_WheelEncoder: do not permit copies 2018-08-21 20:34:01 +09:00
Peter Barker
45ac3e6bb2 AP_BoardConfig: correct grammar in @DisplayName 2018-08-21 20:34:01 +09:00
Randy Mackay
f536c53fa6 AP_MotorsMatrix: minor format fix 2018-08-21 13:34:07 +09:00
Michael du Breuil
588d1898cd AP_ServoRelayEvents: More robust check if a channel is available 2018-08-20 21:31:06 -07:00
Peter Barker
df836ec70c AP_Notify: tidy and remove code duplications
Saves 60 bytes, too
2018-08-21 10:59:33 +10:00
Peter Barker
6daa241235 DataFlash: add sanity check for WritePrioritisedBlock size 2018-08-21 10:57:43 +10:00
Peter Barker
32bc1860de AP_Mission: starts_with_takeoff_cmd skips past mav_cmd_nav_delay 2018-08-20 14:15:40 +09:00
Peter Barker
9af11d79d1 AP_Mission: remove pointless else clauses 2018-08-20 14:15:40 +09:00
Andrew Tridgell
83f293305f AP_OSD: raise thread stack size to 1024
based on testing in SITL
2018-08-20 13:49:14 +10:00
Andrew Tridgell
836176297d HAL_SITL: added stack checking to SITL 2018-08-20 13:49:14 +10:00
Peter Barker
0a7399ae7d AC_PrecLand: use AHRS singleton, remove pointless initialisations 2018-08-17 21:14:57 +09:00
Peter Barker
898a46fe0e AP_Winch: undefine PASS_TO_BACKEND convenience function 2018-08-17 21:14:57 +09:00
Andrew Tridgell
60ec695f55 AP_TECS: set default pitch max to 15 2018-08-17 20:42:29 +10:00
Andrew Tridgell
7c57fb0c31 AP_L1_Control: lower default L1 period 2018-08-17 20:42:27 +10:00
Andrew Tridgell
9e2933df89 APM_Control: raised default PID gains for roll/pitch 2018-08-17 20:42:25 +10:00
Hwurzburg
53a28cdf18 AP_OSD: Adding efficiency and climb efficiency
and new font characters
2018-08-17 16:33:53 +10:00
Peter Barker
e4d3ed7e39 RC_Channel: move handling of sprayer and gripper in from Copter 2018-08-17 15:33:35 +09:00
Peter Barker
4223d933d2 AC_Sprayer: add singleton 2018-08-17 15:33:35 +09:00
Andrew Tridgell
5988c3258f GCS_MAVLink: use Semaphore.h 2018-08-16 12:40:10 +10:00
Andrew Tridgell
5ac15714fd AP_Common: moved WITH_SEMAPHORE to Semaphore.h 2018-08-16 12:40:10 +10:00
Andrew Tridgell
d3af854949 HAL_ChibiOS: fixed bootloader build 2018-08-16 12:40:10 +10:00
Andrew Tridgell
a26e534654 GCS_MAVLink: use WITH_SEMAPHORE()
this is a suggestion from Peter, will need some discussion
2018-08-16 12:40:10 +10:00
Andrew Tridgell
6f058e8c0d AP_Common: added WithSemaphore class 2018-08-16 12:40:10 +10:00
Andrew Tridgell
048a52ebc0 GCS_MAVLink: make mavlink send from multiple threads safe
this takes a lock to prevent interleaving of mavlink msgs from
multiple threads
2018-08-16 12:40:10 +10:00
Andrew Tridgell
5de49aa5aa GCS_MAVLink: flush parameters on reboot 2018-08-16 12:40:10 +10:00
Andrew Tridgell
f1e10b0a8f HAL_Linux: make uart writes thread safe 2018-08-16 12:40:10 +10:00
Andrew Tridgell
b2b56c3e46 HAL_VRBRAIN: added support for HAL_Semaphore type 2018-08-16 12:40:10 +10:00
Andrew Tridgell
5d3b17db6b HAL_SITL: added support for HAL_Semaphore type 2018-08-16 12:40:10 +10:00
Andrew Tridgell
fe93113240 HAL_PX4: added support for HAL_Semaphore type 2018-08-16 12:40:10 +10:00
Andrew Tridgell
f005e60066 HAL_Linux: added support for HAL_Semaphore type 2018-08-16 12:40:10 +10:00
Andrew Tridgell
dabdb969f6 HAL_ChibiOS: added support for HAL_Semaphore type 2018-08-16 12:40:10 +10:00
Andrew Tridgell
0a73c3492d AP_HAL: support HAL_Semaphore type 2018-08-16 12:40:10 +10:00
Andrew Tridgell
4d662a913a AP_Param: use background parameter save
this moves both the storage scan and the save code out of the main
thread and into the IO thread. It means that if we have more than 30
parameters saves in very rapid succession while armed that we can lose
parameter changes, but that is extremely unlikely.

This fixes an issue where parameter saves in flight can cause
considerable scheduling problems, sometimes several milliseconds
2018-08-16 12:40:10 +10:00
Hwurzburg
7c79175309 AP_OSD: add flytime item 2018-08-16 12:00:50 +10:00
Andrew Tridgell
a0ce604721 AP_Stats: make singleton and add flighttime accessor 2018-08-16 12:00:50 +10:00
Hwurzburg
5f72c9040e AP_OSD: Adding flight distance and summary panels for OSD 2018-08-16 12:00:50 +10:00
Alexander Malishev
eec34fc47d AP_OSD: add waypoint and xtrack_error items 2018-08-16 10:26:34 +10:00
vierfuffzig
aae1054a94 AP_OSD: add hdop display 2018-08-16 09:39:02 +10:00
Peter Barker
fa7ba7ddbc DataFlash: force messagewriters to completion
Setting a dataflash-file buffer size of less than or equal to 2kiB would
cause the startup-messagewriter to never push any messages other than
FMT out to the logs.

This is a combination of the return values of
critical_message_reserved_space and
non_messagewriter_message_reserved_space

This patch forces the startup messages out to the logs by ignoring the
space constraints every 100ms
2018-08-15 12:40:33 +10:00
Peter Barker
fa5757f618 AP_Math: fix float-equals warnings 2018-08-15 12:16:49 +10:00
Alexander Malishev
05099b8b8b HAL_ChibiOS: restore default dataflash buffer size
This fix log corruption in copter
2018-08-15 10:15:09 +10:00
Andrew Tridgell
71988b49a4 AP_RSSI: allow override of RSSI pin 2018-08-15 09:51:30 +10:00
Andrew Tridgell
c3cf8f5435 AP_Math: fixed a bug in segment_intersection()
we could get an intercept point beyond the end of the segment
2018-08-14 19:41:45 +10:00
Peter Barker
626467db14 AP_Math: add tests for line intersection 2018-08-14 19:41:45 +10:00
Francisco Ferreira
1b46104a98 AP_HAL_ChibiOS: fix warning when STDOUT is defined
../../libraries/AP_HAL_ChibiOS/UARTDriver.cpp:118:12: warning: 'int hal_console_vprintf(const char*, va_list)' defined but not used [-Wunused-function]
 static int hal_console_vprintf(const char *fmt, va_list arg)
            ^
2018-08-14 10:17:38 +10:00
Francisco Ferreira
62a4f08e12 AP_Arming: fix system check 2018-08-14 10:17:38 +10:00
mirkix
c33b692f53 AP_HAL_ChibiOS: fix CubeYellow build 2018-08-14 06:26:22 +10:00
Lucas De Marchi
5068f2e8fd AP_HAL_Linux: fix log after tonealarm thread removal
../../libraries/AP_HAL_Linux/Scheduler.cpp: In member function ‘void Linux::Scheduler::_debug_stack()’:
../../libraries/AP_HAL_Linux/Scheduler.cpp:127:47: warning: format ‘%zu’ expects a matching ‘size_t’ argument [-Wformat=]
                 _uart_thread.get_stack_usage());
                                               ^
2018-08-12 20:29:35 -07:00
Francisco Ferreira
f69638f24f
AP_UAVCAN: add configuration of hardware filters 2018-08-12 13:35:04 +01:00
Francisco Ferreira
3cb8421aa6
AP_UAVCAN: reorganize header and code
Also a bit more cleanup
2018-08-12 13:35:04 +01:00
Francisco Ferreira
ee8e2923ae
AP_UAVCAN: cleanup code 2018-08-12 13:35:04 +01:00
Francisco Ferreira
8c382b6904
AP_UAVCAN: adapt to new CANProtocol interface
This includes creating own thread

Also adapts example
2018-08-12 13:35:03 +01:00
Francisco Ferreira
126f1379d3
AP_UAVCAN: fix bug introduced in #7863 2018-08-12 13:35:03 +01:00
Francisco Ferreira
7e8abc92fe
AP_UAVCAN: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:03 +01:00
Francisco Ferreira
861e1a0a54
SRV_Channel: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:03 +01:00
Francisco Ferreira
3b61a31bb4
AP_Notify: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:03 +01:00
Francisco Ferreira
f468602baf
AP_Notify: revert wrong commit 228058e089
Also change the order of logical OR so that led_write in UAVCAN_RGB_LED is called for all UAVCAN instances and not only first one
2018-08-12 13:35:03 +01:00
Francisco Ferreira
b29369eb82
AP_GPS: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:03 +01:00
Francisco Ferreira
317e8e0296
AP_Compass: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:03 +01:00
Francisco Ferreira
31b8a051cc
AP_BattMonitor: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:02 +01:00
Francisco Ferreira
8e6692744f
AP_BattMonitor: fix warning in UAVCAN driver
../../libraries/AP_BattMonitor/AP_BattMonitor_UAVCAN.cpp: In member function ‘virtual void AP_BattMonitor_UAVCAN::init()’:
../../libraries/AP_BattMonitor/AP_BattMonitor_UAVCAN.cpp:15:123: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘AP_Int32 {aka AP_ParamT<int, (ap_var_type)3u>}’ [-Wformat=]
 #define debug_bm_uavcan(level, fmt, args...) do { if ((level) <= AP_BoardConfig_CAN::get_can_debug()) { printf(fmt, ##args); }} while (0)
                                                                                                                           ^
../../libraries/AP_BattMonitor/AP_BattMonitor_UAVCAN.cpp:36:33: note: in expansion of macro ‘debug_bm_uavcan’
                                 debug_bm_uavcan(2, "UAVCAN BattMonitor BatteryInfo registered id: %d\n\r", _params._serial_number);
2018-08-12 13:35:02 +01:00
Francisco Ferreira
9489ec9e7c
AP_Baro: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:02 +01:00
Francisco Ferreira
5efde5fa8b
AP_HAL_VRBRAIN: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:02 +01:00
Francisco Ferreira
9766ca44d4
AP_HAL_PX4: adapt to changes in AP_BoardConfig_CAN 2018-08-12 13:35:02 +01:00
Francisco Ferreira
b7a3e1ae77
AP_BoardConfig_CAN: put debug code behind compile-time flag
And disable it by default
2018-08-12 13:35:02 +01:00
Francisco Ferreira
4b4ba66987
AP_BoardConfig_CAN: add singleton and do naming cleanup
Also added more getter methods
2018-08-12 13:35:02 +01:00
Francisco Ferreira
1cfb38b4ee
AP_BoardConfig_CAN: adapt to new CANProtocol interface 2018-08-12 13:35:02 +01:00
Francisco Ferreira
350d03800f
AP_HAL_SITL: remove unused CAN header 2018-08-12 13:35:01 +01:00
Francisco Ferreira
9204ca898b
AP_HAL_VRBRAIN: remove CAN thread management 2018-08-12 13:35:01 +01:00
Francisco Ferreira
68ada13f28
AP_HAL_PX4: remove CAN thread management 2018-08-12 13:35:01 +01:00
Francisco Ferreira
1d7f3e48a4
AP_HAL_Linux: remove CAN thread management
Also fix comment
2018-08-12 13:35:01 +01:00
Francisco Ferreira
7278af05e0
AP_HAL_ChibiOS: remove CAN thread management 2018-08-12 13:35:01 +01:00
Francisco Ferreira
0645a5b11a
AP_HAL: introduce a CANProtocol interface and remove HAL CAN thread management 2018-08-12 13:35:01 +01:00
Francisco Ferreira
e1bf89f32d
AP_HAL_ChibiOS: fix CAN manager initialization 2018-08-12 13:35:01 +01:00
Peter Barker
5ad1dee284 AP_Notify: make LED blink at constant rate in Rover 2018-08-09 11:57:05 +10:00
Michael du Breuil
83d01c8b7d GCS_MAVLink: Use ARRAY_SIZE to avoid a magic value 2018-08-09 11:53:05 +10:00
Michael du Breuil
6469a985d7 DataFlash: Fix allocating extra values for RC logging 2018-08-09 11:53:05 +10:00
Michael du Breuil
e7ebea55d2 RC_Channel: Fix possible user induced out of bounds write
CID 308348
2018-08-09 10:27:10 +10:00
Andrew Tridgell
385f735799 HAL_ChibiOS: avoid 64 bit maths in AP_HAL::micros()
this saves a few cycles
2018-08-08 21:24:49 +10:00
fnoop
bfceb5dd32 AC_PrecLand: Improve logging
Add unit/multiplier of new fields to log structure
Fix new log structure
2018-08-08 10:23:26 +09:00
Michael du Breuil
f2b4e06a1a AP_Airspeed: Add 5"H2O DLVR differential sensor driver 2018-08-08 09:07:17 +10:00
Michael du Breuil
d568767164 AP_Math: Add conversion between inches of water to pascals 2018-08-08 09:07:17 +10:00
Andrew Tridgell
c9a830bf3f AP_Notify: support both NCP5623 addresses 2018-08-08 07:11:50 +10:00
Andrew Tridgell
935165a8f8 AP_Notify: tidy up NCP5623 driver 2018-08-08 07:11:50 +10:00
caijie
a98d892dec AP_Notify: Add RGB LED driver for NCP5623 2018-08-08 07:11:50 +10:00
Andrew Tridgell
301884f7a6 AP_RCProtocol: fixed coverity error in SUMD
CID308356
2018-08-07 13:22:08 +10:00
Andrew Tridgell
d1334fab73 AP_ROMFS: fixed error handling in tinflate
coverity CID308327
2018-08-07 13:22:08 +10:00
Michael du Breuil
4aff747b28 AP_RCProtocol: Fix out of bounds write, CID 308323 and 308333 2018-08-07 12:11:49 +10:00
Andrew Tridgell
3ed7c060df AP_Compass: address review comments 2018-08-07 10:00:10 +10:00
Jonathan Challinger
cefd998177 AP_Compass: add expected DEV_ID parameters 2018-08-07 10:00:10 +10:00
Jonathan Challinger
878e84a015 AP_Compass: correct edge case where checks pass when saved dev_id != detected dev_id 2018-08-07 10:00:10 +10:00
Michael du Breuil
ee9cc28fda AP_NavEKF2: Utilize the GPS drivers estimate for lag 2018-08-07 09:55:26 +10:00
Michael du Breuil
1a406dacfc AP_GPS: Ensure a lag value is always provided
The value may not be the optimal value for the driver, but we should
always try to provide a value for the caller
2018-08-07 09:55:26 +10:00
Michael du Breuil
21dfe02c6e GCS_MAVLink: always send an idea of battery voltage as part of
BATTERY_STATUS
2018-08-07 09:52:45 +10:00
Peter Barker
e4ff937c96 RC_Channel: remove min-max-configured pre-arm checks
These are really, really expensive to run while your RC isn't
configured.

We now have a split between inputs (RC) and servos (SRV), so these
aren't as critical as they were.  We also have range checks to ensure
they're roughly good enough to fly with.
2018-08-07 09:45:09 +10:00
Peter Barker
eaefdcfac2 AP_Arming: remove min-max-configured pre-arm checks 2018-08-07 09:45:09 +10:00
Peter Barker
87e7cc7ef0 RC_Channels: zero all channels before populating
Fix for CID 308365
2018-08-07 09:12:43 +10:00
vierfuffzig
bc52d430f9 Chibios add bootloader for mini-pix 2018-08-07 07:09:39 +10:00
Andrew Tridgell
f0fba01138 AP_Stats: use set_and_save_ifchanged()
if the board has no GPS then the values usually don't change
2018-08-06 21:46:06 +10:00
Randy Mackay
1c18d06aa3 AR_AttitudeControl: move unnecessary else 2018-08-06 11:30:22 +09:00
Randy Mackay
9b60e0844b AR_AttitudeControl: add get_desired_pitch accessor 2018-08-06 11:30:22 +09:00
Andrew Tridgell
846418e5e9 HAL_ChibiOS: raise timer thread priority
needs to be above main for guaranteed DShot and oneshot output periods
2018-08-06 11:41:42 +10:00
Randy Mackay
c88926f227 Compass: remove accumulate from example sketch 2018-08-06 11:05:34 +10:00
Randy Mackay
99b54935db Compass: remove accumulate
this method is a noop on all backends
2018-08-06 11:05:34 +10:00
Peter Barker
f2b1387c1c RC_Channel: add AUTOTUNE to init_aux_function routine
Also, cark it in SITL if we fail to initialise an aux function
2018-08-05 07:52:28 +10:00
Andrew Tridgell
53fbdc3750 AP_BLHeli: pass motor mask to serial_setup_output() 2018-08-04 19:29:13 +10:00
Andrew Tridgell
3df2a1c228 HAL_ChibiOS: fixed dshot bad frames
adding a pre-bit on the DMAR, and ensuring that all groups are setup
for DMA together fixes the remaining bad frames reports in BLHeli32
2018-08-04 19:29:13 +10:00
Andrew Tridgell
1fe6c7b497 AP_HAL: added chanmask to serial_setup_output() 2018-08-04 19:29:13 +10:00
Andrew Tridgell
946b4db0e6 HAL_ChibiOS: set min dshot separation to 100usec
this fixes a problem with BLHeli32 not recognising dshot
2018-08-04 19:29:13 +10:00
Andrew Tridgell
476a40c906 AP_BLHeli: improved reliability of pass-thru support
this uses a connection cache to prevent re-connecting to an ESC when
not needed, and allows for pass-thru comms on any port, using
SERVO_BLH_PORT parameter
2018-08-04 19:29:13 +10:00
Andrew Tridgell
22ba9a0aea HAL_ChibiOS: fixed timeout of serial read bytes
this allows for fast timeout of serial read bytes in BLHeli pass-thru
2018-08-04 19:29:13 +10:00
Andrew Tridgell
df643d8499 GCS_MAVLink: allow uninstall of alt protocol handler 2018-08-04 19:29:13 +10:00
Andrew Tridgell
769c99d4d7 AP_Baro: added register checking on BMP280
this follows a log which seems to show an in-flight register
corruption on a MatekF405
2018-08-04 16:44:08 +10:00
Lucas De Marchi
88df4d127e AP_Common: remove ARRAY_SIZE_SIMPLE
Now this is basically ARRAY_SIZE, so remove it.
2018-08-04 15:31:55 +10:00
Lucas De Marchi
668c941717 Global: use new version of ARRAY_SIZE 2018-08-04 15:31:55 +10:00
Lucas De Marchi
57ee0e29f6 AP_Common: simplify ARRAY_SIZE
This rolls back to the simpler version of ARRAY_SIZE. The more complex
one helps catching bugs when we use pointers when we are expecting an
array, but can't stand arrays with 0 elements.  I'm not aware of bugs it
actually caught on ArduPilot, although it did for me in other projects.

I think this is better than having a separate "_SIMPLE" version of the
macro and spread its usage... the trend is just to use the simpler
version anyway.
2018-08-04 15:31:55 +10:00
Peter Barker
049f61c943 AP_Camera: populate camera singleton 2018-08-04 11:34:41 +10:00
utkinpol
2912e732b4 HAL_ChibiOS: updated for KakuteF7 2018-08-04 08:24:49 +10:00
Andrew Tridgell
64c8ca514c HAL_ChibiOS: fixed attach_interrupt check
we can't have two handlers on the same pad
2018-08-03 13:44:59 +10:00
Andrew Tridgell
4e6ac85057 HAL_ChibiOS: use 32 bit time intervals
this makes for smaller and faster code. We really don't need 64 bit
intervals as long sleeps are done with a loop.
2018-08-03 13:44:59 +10:00
Andrew Tridgell
1bd0ea079b HAL_ChibiOS: fixed build on older compilers
allow build with gcc 4.9.x
2018-08-03 13:44:59 +10:00
Andrew Tridgell
7aba99e229 HAL_ChibiOS: fixes for ChibiOS version update 2018-08-03 13:44:59 +10:00
Andrew Tridgell
f8e2edbc7f HAL_ChibiOS: fixed cache flush for updated ChibiOS version 2018-08-03 13:44:59 +10:00
Siddharth Purohit
2604b00b43 HAL_ChibiOS: use ch.h header for oslib api 2018-08-03 13:44:59 +10:00
Siddharth Purohit
ea709b9316 AP_Radio: move to using updated time conv API 2018-08-03 13:44:59 +10:00
Siddharth Purohit
9f5dbb74e7 AP_IOMCU: move to using updated time conv API 2018-08-03 13:44:59 +10:00
Siddharth Purohit
ff65487ab3 HAL_ChibiOS: follow updated gpio pin setup procedure 2018-08-03 13:44:59 +10:00
Siddharth Purohit
5f88163e17 HAL_ChibiOS: update configuration and rtlib headers for ChibiOS 18.x.x 2018-08-03 13:44:59 +10:00
Siddharth Purohit
395c48933c HAL_ChibiOS: move tto using updated time conversion API 2018-08-03 13:44:59 +10:00
Siddharth Purohit
4e8d072d6d HAL_ChibiOS: move to using recent pal driver api for GPIO IRQ events 2018-08-03 13:44:59 +10:00
Mark Whitehorn
86b7adf68f AP_HAL_Chibios: fix fmuv3/hwdef.dat printf/STDOUT description and clean up 2018-08-03 13:08:37 +10:00
Peter Barker
aa4cf5b40e SRV_Channel: use method to get rc channels 2018-08-03 13:07:50 +10:00
Peter Barker
ff36eb3aca RC_Channel: remove old members objects 2018-08-03 13:07:50 +10:00
Matt
15823d9e97 AP_LANDING_GEAR: Remove deploy lock
Since the RC switches only respond to changes, there is no longer a need
for this lock state. The gear can be retracted or deployed by RC switch,
flight mode, or mavlink command freely without convoluted unlocking
methods.  Also removed use of this in the associated Copter code.
2018-08-03 10:59:15 +09:00
Lucas De Marchi
73f8dd98f2 AP_BoardConfig: kill AP_FEATURE_SAFETY_BUTTON
This is redundant and can be just HAL_HAVE_SAFETY_SWITCH.
2018-08-02 13:15:02 -07:00
Lucas De Marchi
259195a7c7 AP_BoardConfig: fix handling of AP_FEATURE_SAFETY_BUTTON
Not all PX4-based board have a safety button. Rely on
HAL_HAVE_SAFETY_SWITCH instead of ifdef'ing each of them.

This allows to build for aerofc-v1 without safety button.
2018-08-02 13:15:02 -07:00
Lucas De Marchi
000ae3cb85 AP_BoardConfig: add default for BOARD_SAFETY_ENABLE
If HAL supports safety button but the board didn't declare a default,
define one to match what is done with BOARD_SAFETY_OPTION_DEFAULT.
2018-08-02 13:15:02 -07:00
Lucas De Marchi
099eefee87 AP_HAL: Chibios: HAL_GPIO_PIN_SAFETY_IN implies HAL_HAVE_SAFETY_SWITCH 2018-08-02 13:15:02 -07:00
Lucas De Marchi
20778f73f1 AP_HAL_ChibiOS: define HAL_HAVE_SAFETY_SWITCH accordingly 2018-08-02 13:15:02 -07:00
Lucas De Marchi
8e3777a163 AP_HAL_PX4: RCOutput: honour HAL_HAVE_SAFETY_SWITCH 2018-08-02 13:15:02 -07:00
Lucas De Marchi
7f984f2700 AP_HAL: linux: disable safety switch
Linux boards don't really handle the safety switch.
2018-08-02 13:15:02 -07:00
Lucas De Marchi
2336d2214b AP_HAL: sitl: disable safety switch
sitl doesn't really handle the safety switch and it's actually disabled
by AP_FEATURE_SAFETY_BUTTON.
2018-08-02 13:15:02 -07:00
Andrew Tridgell
13f96bcb00 HAL_ChibiOS: fixed an i2c dma callback bug
many thanks to Kelly-Foster for chasing me on this one!
2018-08-02 12:29:02 +10:00
Andrew Tridgell
b0badf8caf HAL_ChibiOS: fixes for F745 builds 2018-08-02 11:56:33 +10:00
Lucas De Marchi
0606b00f15 AP_BoardConfig: don't try to set pwm mode for aerofc-v1
We don't have that in aerofc, so don't try to initialize it and fail
with following error messages:

    RCOutput: unable to setup AUX PWM with BRD_PWM_COUNT 0
2018-08-01 16:49:08 -07:00
Randy Mackay
9799567416 AP_Follow: fixup offset initialisation 2018-08-01 20:18:23 +09:00
hoangthien94
f4255712c1 AP_Follow: Initialize offsets based on offset type 2018-08-01 20:18:23 +09:00
Peter Barker
5df70cf93a RC_Channel: update examples for new rc() method 2018-08-01 12:11:30 +09:00
Peter Barker
e2b31a535c AC_PID: update example for new rc() method 2018-08-01 12:11:30 +09:00
Peter Barker
0f084ed5bf RC_Channel: add compatability static functions
Just to avoid churn in Sub, Plane and Tracker
2018-08-01 12:11:30 +09:00
Peter Barker
c1a1f4f970 SRV_Channel: use rc() method to get rc singleton 2018-08-01 12:11:30 +09:00
Peter Barker
dbccd6a399 GCS_MAVLink: use rc() method to get rc singleton 2018-08-01 12:11:30 +09:00
Peter Barker
f4c93dc697 DataFlash: use rc() method to get rc singleton 2018-08-01 12:11:30 +09:00
Peter Barker
c209152d13 AP_Tuning: use rc() method to get rc singleton 2018-08-01 12:11:30 +09:00
Peter Barker
497746c3d0 AP_RSSI: use rc() method to get rc singleton 2018-08-01 12:11:30 +09:00
Peter Barker
2489234fcf AP_Mount: use rc() method to get rc singleton 2018-08-01 12:11:30 +09:00
Peter Barker
80a4083fc7 AP_ICEngine: use rc() method to get rc singleton 2018-08-01 12:11:30 +09:00
Peter Barker
1eacd685e3 AP_Arming: use rc() method to get rc singleton 2018-08-01 12:11:30 +09:00
Peter Barker
747fc3814d RC_Channel: rename in_rc_failsafe to has_valid_input 2018-08-01 12:11:30 +09:00
Peter Barker
61c34ea98c RC_Channel: move handling of auxillary switches into RC_Channel
RC_Channel: move handling of Rover's functions into RC_Channel

RC_Channel: move auxsw handling for camera to base RC_Channel

RC_Channel: add responsibility for servorelay events

RC_Channel: move mode switch handling to base class
2018-08-01 12:11:30 +09:00
Peter Barker
007434cdac AC_Sprayer: move Copter CHn_OPT to RC_Channel RCn_OPTION 2018-08-01 12:11:30 +09:00
Peter Barker
fb786b8d56 AP_Camera: add singleton 2018-08-01 12:11:30 +09:00
Andrew Tridgell
44fd85ff29 HAL_ChibiOS: reduce memory used by serial buffers
this does not appear to affect log download speed. It saves about 27k
of memory
2018-08-01 13:11:16 +10:00
Peter Barker
ce62b2303a DataFlash: add ability to log-disarmed 2018-08-01 11:28:52 +09:00
Michael du Breuil
1e699a53f6 AP_Landing: Fix misspelling in deepstall docs 2018-08-01 09:24:26 +10:00
Michael du Breuil
8357b31e57 AP_Relay: Remove APM doc references 2018-08-01 09:24:26 +10:00
Michael du Breuil
f0a4059d73 AP_Rangefinder: Remove APM doc references 2018-08-01 09:24:26 +10:00
Michael du Breuil
2134373646 AP_RSSI: Remove APM doc references 2018-08-01 09:24:26 +10:00
Michael du Breuil
e82663baf2 AP_BattMonitor: Remove APM doc references 2018-08-01 09:24:26 +10:00
Michael du Breuil
6225f51815 AP_Airspeed: Remove APM doc references 2018-08-01 09:24:26 +10:00
Michael du Breuil
fd9f9cdfe0 AP_BattMonitor: Removed the need to set the battery_voltage flag 2018-08-01 09:22:09 +10:00
Michael du Breuil
a5e974c227 AP_Notify: Reduce flash consumption, fix some drivers, always allow
buzzer
2018-08-01 09:22:09 +10:00
Michael du Breuil
cca6b54921 AP_GPS: Remove unneeded field limitations
Saves ~1100 bytes of flash
2018-08-01 09:19:20 +10:00
Michael du Breuil
80313abf31 SRV_Channel: Remove useless read from manual passthrough 2018-08-01 09:19:20 +10:00
Michael du Breuil
60f19bbf02 RC_Channel: Allow an input to be ignored 2018-08-01 09:19:20 +10:00
Pierre Kancir
37f7cc4bcf SITL: rearrange Grippers and Sprayers in SITL 2018-07-31 23:34:43 +10:00
Pierre Kancir
96c54550e5 AP_HAL_SITL: rearrange Grippers and Sprayers in SITL
Adds parameters to configure and disable
2018-07-31 23:34:43 +10:00
Andrew Tridgell
8b4b38bcb2 DataFlash: removed "no io thread heartbeat" msg 2018-07-31 19:37:17 +10:00
Hwurzburg
19f44f80ad HAL_ChibiOS: Added Omnibus F4 NanoV6 (only V6)
bench tested all ports
2018-07-30 19:32:29 +10:00
Andrew Tridgell
4026b9f49d HAL_ChibiOS: probe all external compasses on mini-pix 2018-07-30 17:26:19 +10:00
Andrew Tridgell
2ded88e611 AP_Compass: allow override of QMC5883L orientation 2018-07-30 17:26:19 +10:00
Andrew Tridgell
397ba488db AP_Notify: use NTF_BUZZ_ENABLE to disable tonealarm 2018-07-30 15:42:58 +10:00
Randy Mackay
cb3731e08e Compass: fix compile warning in calibrator output 2018-07-30 14:57:01 +10:00
Andrew Tridgell
1eb010fbf1 AP_Notify: reduced tone buffer size
100 is plenty
2018-07-30 14:02:12 +10:00
Andrew Tridgell
bdca329012 HAL_PX4: fixes for new tone_alarm system
we need to start the driver
2018-07-30 14:02:12 +10:00
Andrew Tridgell
b11bd33b0e AP_Notify: removed extra call to play_string 2018-07-30 14:02:12 +10:00
Andrew Tridgell
d28c8f0214 AP_Notify: added duration to toneAlarm_set_buzzer_tone 2018-07-30 14:02:12 +10:00
Andrew Tridgell
22d588146e HAL_PX4: added duration to toneAlarm_set_buzzer_tone 2018-07-30 14:02:12 +10:00
Andrew Tridgell
03b7c08be6 HAL_Linux: added duration to toneAlarm_set_buzzer_tone
required for disco
2018-07-30 14:02:12 +10:00
Andrew Tridgell
c83567dcba HAL_ChibiOS: added duration to toneAlarm_set_buzzer_tone 2018-07-30 14:02:12 +10:00
Andrew Tridgell
949324ff2b AP_HAL: added duration to toneAlarm_set_buzzer_tone 2018-07-30 14:02:12 +10:00
Jonathan Challinger
ddf0333a24 AP_HAL_Linux: reflect changes to tonealarm interface 2018-07-30 14:02:12 +10:00
Jonathan Challinger
0dd151c0f3 AP_Notify: changes needed for PX4 tonealarm 2018-07-30 14:02:12 +10:00
Jonathan Challinger
4e48923c64 AP_HAL_PX4: implement new tonealarm interface 2018-07-30 14:02:12 +10:00
Jonathan Challinger
f4fc9249f7 AP_Notify: support extended PLAY_TUNE message 2018-07-30 14:02:12 +10:00
Jonathan Challinger
cba85eee7b AP_Notify: MMLPlayer constrain note frequency 2018-07-30 14:02:12 +10:00
Jonathan Challinger
98d962ffa2 AP_Notify: MMLPlayer note_tab static const 2018-07-30 14:02:12 +10:00
Jonathan Challinger
720676b28c AP_Notify: run astyle on ToneAlarm and MMLPlayer 2018-07-30 14:02:12 +10:00
Jonathan Challinger
b31ddedfef AP_Notify: merge ToneAlarm files, use new AP_HAL tonealarm interface 2018-07-30 14:02:12 +10:00
Jonathan Challinger
f5f6220283 AP_HAL_ChibiOS: reflect changes to AP_HAL tonealarm interface 2018-07-30 14:02:12 +10:00
Jonathan Challinger
f936b1dbc2 AP_HAL: change tonealarm interface 2018-07-30 14:02:12 +10:00
murata
396517fe58 DataFlash: Delete unused arguments. 2018-07-30 12:14:49 +09:00
Andrew Tridgell
b1d9f4cc39 AP_SpdHgtControl: update API for TECS change 2018-07-30 13:09:15 +10:00
Andrew Tridgell
f3336fdb60 AP_TECS: removed dependency on soaring controller 2018-07-30 13:09:15 +10:00
Andrew Tridgell
e39d070b78 AP_Compass: clear DEV_ID for undetected compasses
this prevents user confusion with the number of compasses detected
2018-07-30 13:07:55 +10:00
Randy Mackay
5cf119cd2f AP_RSSI: const get_gpio and fix includes 2018-07-30 10:14:04 +09:00
Randy Mackay
eb026eef98 AP_RSSI: support pwm input on gpio pin 2018-07-30 10:14:04 +09:00
Randy Mackay
4f6c50b79e AP_RSSI: minor format fix 2018-07-30 10:14:04 +09:00
Randy Mackay
06d26aaaa7 AP_RSSI: clarify PIN_LOW/HIGH parameter description 2018-07-30 10:14:04 +09:00
Andrew Tridgell
72ee20c590 HAL_ChibiOS: added RC input for OMNIBUSF7V2 2018-07-30 10:45:55 +10:00
Timothy Knab
d4c19ebc3c HAL_ChibiOS: Updated OMNIBUSF7V2
Compasses on the I2C bus are now detected properly and GPS on UART3 works.
2018-07-30 10:45:55 +10:00
Andrew Tridgell
95aaa01014 HAL_ChibiOS: override COMPASS_AUTO_ROT on several boards 2018-07-28 18:05:12 +10:00
Andrew Tridgell
b181340fd9 AP_Compass: allow override of COMPASS_AUTO_ROT 2018-07-28 18:05:12 +10:00
Andrew Tridgell
8c9f2bc79e AP_IOMCU: fixed setting of rate masks
this affects layouts which set a subset of channels on a timer
2018-07-28 15:25:57 +10:00
Andrew Tridgell
1eef29e525 HAL_ChibiOS: only set freq on valid IO channels 2018-07-28 15:25:57 +10:00
Andrew Tridgell
2174c53eb6 HAL_ChibiOS: added Pixhawk1 build target
this is more obvious to users than fmuv3
2018-07-27 10:02:31 +10:00
Andrew Tridgell
a8647f834e AP_RangeFinder: fixed VL53L0X semaphore usage 2018-07-27 09:15:32 +10:00
Randy Mackay
8bf6e8e0cf AP_OSD: fix compiler warnings 2018-07-26 10:25:56 -07:00
Alexander Malishev
1377943eb3 HAL_ChibiOS: fix DTCM size in stm32f745 mcu 2018-07-26 17:52:37 +10:00
Michael du Breuil
46355e3de9 AP_Math: Add a warning to rotations to indicate that it is expected to
match the MAVLink definitions
2018-07-26 12:58:14 +09:00
liang.tang
8664ed006a AC_Circle: use stopping point to get closest point on circle 2018-07-26 12:12:07 +09:00
Raouf
e55369b1c8 AC_Fence: add always land option 2018-07-26 10:08:45 +09:00
Aaron Wang Shi
1304d37699 AP_HAL_Linux: fix bhat GPS SPI conflict 2018-07-24 11:28:22 -07:00
Andrew Tridgell
b130036798 HAL_SITL: use SIM_RC_CHANCOUNT 2018-07-24 19:44:03 +10:00