Commit Graph

21032 Commits

Author SHA1 Message Date
Andrew Tridgell 05bd0cb9f4 APM_Control: added decay_I() function
used by VTOL planes to decay integrator on fixed wing components when
at very low airspeed
2019-07-07 18:16:47 +10:00
Randy Mackay 030eab0f86 AR_WPNav: stop vehicle if OA processing fails 2019-07-07 06:46:26 +09:00
Randy Mackay 951ded1f51 AP_OAPathPlanner: report errors to caller 2019-07-07 06:46:26 +09:00
Michael du Breuil 104164d2e4 AP_Scripting: Tighten range checks on library calls 2019-07-06 09:01:13 -07:00
Peter Barker ce45baa034 AP_NavEKF3: factor out and logging functions, reuse for 2nd core 2019-07-06 19:05:51 +10:00
Peter Barker 6a0a466f42 AP_NavEKF2: factor out and logging functions, reuse for 2nd core 2019-07-06 19:05:51 +10:00
Peter Barker 9732940220 AP_AHRS: navekf: add Log_Write access point 2019-07-06 19:05:51 +10:00
Peter Barker f3f364de26 AP_NavEKF3: move logging in from AP_Logger 2019-07-06 19:05:51 +10:00
Peter Barker 5175d23cc1 AP_NavEKF2: move logging in from AP_Logger 2019-07-06 19:05:51 +10:00
Peter Barker e009b7aee5 AP_Logger: move logging of EKF packets out to EKF 2019-07-06 19:05:51 +10:00
Peter Barker c6533723de GCS_Param: correct sending of parameters of length 16 2019-07-06 18:06:17 +10:00
Andrew Tridgell 5ffb8bb546 AP_HAL: enable GPIO scripting on the Disco 2019-07-06 09:02:54 +10:00
Andrew Tridgell 2bab0efc41 HAL_Linux: implement HAL_GPIO_SCRIPT support
this allows Linux boards to trigger an external script on GPIO
writes. This can be hooked up to relays with either RC options or
mavlink or mission items to trigger actions that can be scripted
2019-07-06 09:02:54 +10:00
Andrew Tridgell 8a49c84d57 AP_Motors: fixed col max and min for dual heli
fixes H_SV_MAN behaviour
2019-07-06 08:57:18 +10:00
Andrew Tridgell 0f4c54aaa6 AP_RCProtocol: fixed a overflow in SRXL decoder
thanks to coverity 343308 and Peter for noticing
2019-07-06 08:53:44 +10:00
Andrew Tridgell 626c632859 SITL: fixed pitch constraint on fixed wing takeoff
fixes issue with jet takeoff
2019-07-05 20:12:22 +10:00
Andrew Tridgell 5bfb6ced84 AP_GPS: fixed u-blox F9 auto configuration 2019-07-05 13:31:40 +10:00
Peter Barker 502f74f0d9 AP_Logger: switch to using stderr for log structure debug
The console output doesn't seem to appear anywhere now.
2019-07-05 12:05:27 +10:00
Peter Barker 288952b5a2 AP_Logger: reserve W for watts as a unit 2019-07-05 12:05:04 +10:00
Peter Barker c515d17a4a AP_ServoRelayEvents: use Relay singleton 2019-07-03 23:59:24 -07:00
Peter Barker 8e5ec84317 AP_Relay: add AP::relay() to get relay singleton 2019-07-03 23:59:24 -07:00
Rajat Singhal 82413a1528 SITL: JSBSim: Fix comments 2019-07-03 23:58:22 -07:00
Peter Barker 39b17e42d0 AP_HAL_SITL: add missing include for AP_BoardConfig.h 2019-07-04 13:57:40 +10:00
Peter Barker ebd8170a15 GCS_MAVLink: add missing include for AP_RTC 2019-07-04 13:57:40 +10:00
Peter Barker 3d91547039 AP_Logger: add missing include for AP_RTC 2019-07-04 13:57:40 +10:00
Peter Barker cee3d8086b AP_InternalError: move include of BoardConfig to cpp
This breaks an include loop when building for skyviper-v2450
2019-07-04 13:57:40 +10:00
Atxheli 7f3cb09da2 correct comment placement for second led 2019-07-04 08:36:33 +10:00
Hwurzburg a9783de61c correct include paths, uncomment alarm pin, fix conflict with rssi 2019-07-04 08:36:33 +10:00
Hwurzburg 3e3d7b8e7f Change to "include" style for new board, fix to allow LED to be used as status indicator 2019-07-04 08:36:33 +10:00
Hwurzburg 10838387c5 Split Omnibus F4 pro and non-pro into two boards to allow pro boards to have 8 pwm outputs 2019-07-04 08:36:33 +10:00
Andrew Tridgell 5151416080 AP_NavEKF3: force first EKF lane when disarmed
this ensures we consistently fly with EKF lane1 if it is healthy at
the point we arm. Otherwise the choice of lane will be a lottery.

This is important as many systems have quite different filtering and
vibration characteristics on their different IMUs. We by default
enable fast sampling only on the first IMU for example, which means
the 2nd and 3rd IMUs are more vulnerable to high freq causing
aliasing.
2019-07-04 06:48:23 +10:00
Andrew Tridgell 567c902e75 AP_NavEKF2: force first EKF lane when disarmed
this ensures we consistently fly with EKF lane1 if it is healthy at
the point we arm. Otherwise the choice of lane will be a lottery.

This is important as many systems have quite different filtering and
vibration characteristics on their different IMUs. We by default
enable fast sampling only on the first IMU for example, which means
the 2nd and 3rd IMUs are more vulnerable to high freq causing
aliasing.
2019-07-04 06:48:23 +10:00
Tom Pittenger bf11746da5 AP_AHRS: allow EKF_TYPE==10 to send a good status report
Some GUIs, including DroneKit, will consider GPS locations invalid if the EKF status is not good
2019-07-03 21:22:09 +10:00
Peter Barker e58eae3c48 AP_Mount: remove unneeded typedefs
Also note that one of these was incorrectly sized.
2019-07-03 16:12:40 +09:00
Peter Barker 08b2676a8f AP_Notify: add comments explaining tonealarm tone format 2019-07-03 17:05:06 +10:00
Andrew Tridgell 2eb09b2910 SITL: simple implementation of a fast jet
just increase the weight and the rest can be done with params
2019-07-03 08:05:09 +10:00
Peter Barker 84eff51539 AP_Arming: remove stray comment on removed parameter
Almost certainly a rebase issue
2019-07-02 10:03:41 +10:00
Peter Barker f31b7b5772 GCS_MAVLink: remove stray undef of undefined macro 2019-07-02 10:02:55 +10:00
Alexey Kozin e5988f7153 AP_HAL_ChibiOS: fix voltage sensor connected to fmu adc 2019-07-02 06:42:11 +10:00
Peter Barker 7b52c41287 AP_Compass: fix example by instantiating serial_manager 2019-07-01 19:11:03 +10:00
Peter Barker ef2589738d AP_NavEKF3: use beacon singleton 2019-07-01 07:20:58 +09:00
Peter Barker 82df167ad4 AP_NavEKF2: use beacon singleton 2019-07-01 07:20:58 +09:00
Peter Barker d9c30f489f AP_Logger: use beacon singleton 2019-07-01 07:20:58 +09:00
Peter Barker 2bcaaf5aaf AP_AHRS: remove handling of beacon 2019-07-01 07:20:58 +09:00
Peter Barker 04ebb9de0b AP_Airspeed: use send_to_active_channels for airspeed_autocal 2019-06-29 16:04:26 +10:00
bugobliterator 7d4a758059 hwdef: fix default battery monitor pins for CubeOrange 2019-06-28 14:18:11 +10:00
bugobliterator 71ee4d573f AP_BattMonitor: add battery pin config for CubeOrange 2019-06-28 14:18:11 +10:00
Michael du Breuil cfa54d4ca4 AP_Module: update example baro include 2019-06-27 14:56:21 +10:00
Michael du Breuil ca65b214af AP_TECS: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 99ff84168c AP_Terrain: Remove unneeded includes 2019-06-27 14:56:21 +10:00
Michael du Breuil e43605cc9b AP_Airspeed: Remove a number of unneeded top level includes 2019-06-27 14:56:21 +10:00
Michael du Breuil a6623bfad3 AP_HAL_SITL: Fix missing include for logger.h 2019-06-27 14:56:21 +10:00
Michael du Breuil b7bca441e5 SITL: Fix a number of includes that were coming in via AP_Airspeed 2019-06-27 14:56:21 +10:00
Michael du Breuil 1226eb825a AP_AHRS: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 1a7502b413 AP_VisualOdom: Remove uneeded include 2019-06-27 14:56:21 +10:00
Michael du Breuil 7a03b8faac AP_InertialNav: Remove undeeded includes 2019-06-27 14:56:21 +10:00
Michael du Breuil 9b162563d6 AP_Advanced_Failsafe: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil b624f6f008 AP_NavEKF3: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil f04e47fc17 AP_NavEKF2: Reduce scope of AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 6385e3ceac AP_TempCalibration: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 9ed3242c06 AP_Tuning: Reduce header scope 2019-06-27 14:56:21 +10:00
Michael du Breuil 18e979fd4f GCS_MAVLink: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 631b4380e1 AP_OSD: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 6480786ab2 AP_Mount: Cleanup SoloGimalEKF headers further 2019-06-27 14:56:21 +10:00
Michael du Breuil eeca59d1ef AP_Arming: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Michael du Breuil 2dcbe5a49b AP_ADSB: Include needed AP_Baro.h 2019-06-27 14:56:21 +10:00
Peter Barker 61e261caf5 AP_Soaring: remove definition of 'N' macro in favour of scoped variable 2019-06-27 14:40:44 +10:00
Peter Barker 54ba686855 AP_InternalError: add bit for asking for a non-existant gcs backend 2019-06-27 07:54:45 +10:00
Michael du Breuil 67898d7320 AP_FrSky_Telem: Don't statically allocate the statustext_queue
This saves 280 bytes of RAM
2019-06-26 11:59:41 +10:00
Michael du Breuil f955a4e4d5 GCS_MAVLink: Don't retain a FrSky instance if we aren't using it
Saves 96 bytes of RAM
2019-06-26 11:59:41 +10:00
Michael du Breuil 59e62ca2fc AP_FrSky_Telem: Make init return false if we failed to init 2019-06-26 11:59:41 +10:00
Peter Barker 278ac5e6ed GCS_MAVLink: correct deferred body timing debug 2019-06-25 19:59:49 +10:00
Peter Barker feddaabc42 GCS_MAVLink: handle out-of-time to send messages in parent class 2019-06-25 10:29:40 +10:00
Andrew Tridgell 88111ef81a AP_BattMonitor: reset failsafe flags when we reset battery remaining 2019-06-25 09:56:25 +10:00
Andrew Tridgell f28df4dff1 GCS_MAVLink: support MAV_CMD_BATTERY_RESET command 2019-06-25 09:56:25 +10:00
Andrew Tridgell 11518857b6 AP_BattMonitor: added reset_remaining() API
used to allow battery swap before takeoff
2019-06-25 09:56:25 +10:00
Peter Barker a55c40949b GCS_MAVLink: remove pointless protocol parameter to setup_uart 2019-06-25 09:47:08 +10:00
Peter Barker ca449cd979 GCS_MAVLink: stop pointlessly passing serial manager around 2019-06-25 09:47:08 +10:00
Peter Barker 45fab82345 GCS_MAVLink: eliminate redundant static pointer to serialmanager 2019-06-25 09:47:08 +10:00
Randy Mackay 0b62641a46 AC_Avoidance: fix Dijkstra's iteration through polygon fence points 2019-06-25 00:32:18 +08:00
Peter Barker afd63c05ec AP_Tuning: ignore tuning selector switch unless valid RC input 2019-06-25 00:31:54 +08:00
Peter Barker 288b13868b AP_Tuning: debounce RC input 2019-06-25 00:31:54 +08:00
Andrew Tridgell b6dbb8f464 GCS_MAVLink: always show AHRS healthy with EKF type 10
this fixes an issue noticed by Marco with xplane
2019-06-25 00:28:45 +08:00
Andrew Tridgell 5ac2aad2f8 AP_Mission: fixed valgrind error on writing mission items 2019-06-24 18:19:14 +08:00
Andrew Tridgell 0ca71ba725 AP_HAL: added get_last_armed_change() Util function 2019-06-21 11:40:53 +10:00
Andrew Tridgell 8fc8bc4d84 AP_Arming: notify logging system of an arming failure 2019-06-21 11:40:53 +10:00
Andrew Tridgell dd3eec2a38 AP_Logger: persist logging for 15s after disarm or arming failure
this will provide useful information in logs on disarms in flight or
reasons for arming failure
2019-06-21 11:40:53 +10:00
Randy Mackay df6c666740 AP_Common: add AP_ExpandingGeneric to reduce code size 2019-06-20 15:09:23 +09:00
Randy Mackay 4ef3005d2c AP_Common: add AP_ExpandingArray delete 2019-06-20 15:09:23 +09:00
Randy Mackay 578023483c AC_Avoidance: Dijkstra's expanding arrays use 32 elements per chunk 2019-06-20 15:09:23 +09:00
Randy Mackay 2cb89d9a02 AP_Common: expanding array uses realloc
also make chunk_size const and recommend factor of 2
also reduce top level array's initial size to 32 elements
2019-06-20 15:09:23 +09:00
Randy Mackay da645c32ff AC_Avoidance: Dijkstra's specifies expanding array chunk sizes
also add check that number of polygon points is less than 255
2019-06-20 15:09:23 +09:00
Randy Mackay 073ce8c3db AP_ExpandingArray: add class description and remove default constructor
also made the following changes:
replaced delete with free
renamed chunk_ptr typedef to chunk_ptr_t
2019-06-20 15:09:23 +09:00
Randy Mackay 48a7f468bf AC_Avoidance: AP_OADijkstra and OAVisGraph use AP_ExpandingArray 2019-06-20 15:09:23 +09:00
Randy Mackay 528e7c60b0 AP_Common: add AP_ExpandingArray class 2019-06-20 15:09:23 +09:00
Peter Barker 1ff3cd442d AP_Mission: fix example by instantiating a GCS object 2019-06-20 13:40:28 +10:00
Peter Barker c11da6a85d GCS_MAVLink: routing example: use GCS_Dummy in place of custom GCS 2019-06-20 11:41:19 +10:00
Jaaaky 061b4b7e70 AP_Airspeed: convert to unix style end-of-line 2019-06-19 16:39:09 +09:00
Andrew Tridgell 767968026a AP_AdvancedFailsafe: added docs for AFS output pins 2019-06-18 17:20:55 +01:00
Michael du Breuil 75c62154b5 AP_HAL_SITL: Add missing override declarations 2019-06-18 00:06:32 -07:00
Michael du Breuil a34ac14ec5 AP_HAL_ChibiOS: Make BOARD_FLASH_SIZE available at configure time 2019-06-18 00:06:32 -07:00
Michael du Breuil 0a7cf77de4 AP_AHRS: Update function descriptions in header 2019-06-18 00:06:32 -07:00
Michael du Breuil 0ed3c547fd AP_Scripting: Disable by default, fix a nullable type, update README 2019-06-18 00:06:32 -07:00
Peter Barker ccbf3234f7 AP_HAL_SITL: return RC protocol being decoded 2019-06-18 11:35:38 +10:00
Peter Barker a9c4f1d0d5 AP_HAL_Linux: return RC protocol being decoded 2019-06-18 11:35:38 +10:00
Peter Barker 1f4de871da AP_HAL_ChibiOS: return RC protocol being decoded 2019-06-18 11:35:38 +10:00
Peter Barker 92111eea61 AP_HAL: require HALs implement rcin.protocol() to return RC protocol 2019-06-18 11:35:38 +10:00
Peter Barker 7bca6d5ec0 AP_Logger: log RC protocol each time a log is opened 2019-06-18 11:35:38 +10:00
Peter Barker 0963957b31 GCS_MAVLink: correct GCS_Dummy firmware version 2019-06-18 10:54:01 +10:00
Peter Barker c39a622653 GCS_MAVLink: take sw_version from AP_FWVersion struct 2019-06-18 10:54:01 +10:00
Peter Barker b48c729bb1 AP_Common: add os_sw_version to AP_FWVersion 2019-06-18 10:54:01 +10:00
Peter Barker 8f8851271a RC_Channel: add mode-changing options to Plane RC channel options 2019-06-18 10:48:47 +10:00
Peter Barker a2c4bfea0c GCS_MAVLink: use send_to_active_channels for parameters 2019-06-18 10:27:56 +10:00
vierfuffzig 7780e8ed00 AP_HAL_ChibiOS: add support for AIO and OSD board types
this allows init on board variant without onboard baro
2019-06-18 10:10:22 +10:00
Michael du Breuil 6e0cceff0d AP_Common: Remove extra comparison from longitude_scale() 2019-06-18 10:09:09 +10:00
Peter Barker 4e5842a150 AP_Common: add initialised() method to Location
Sometimes code paths are crossed when they shouldn't be.  This method
can help in the short term if a codepath is calling methods on a
Location when it is not initialised, but generally a vehicle should be
calling position_ok() and other methods rather than this one.
2019-06-18 09:07:56 +09:00
Michael du Breuil 4aa33bec49 AP_AHRS: Remove AP_GPS.h from AP_AHRS.h 2019-06-18 10:02:05 +10:00
Michael du Breuil 197804412a APM_Control: Fix AP_GPS include 2019-06-18 10:02:05 +10:00
Michael du Breuil a09ead5819 AP_ADSB: Fix AP_GPS include 2019-06-18 10:02:05 +10:00
Michael du Breuil 3194b073ca AP_AdvancedFailsafe: Use AP_GPS singleton 2019-06-18 10:02:05 +10:00
Michael du Breuil 157a3b1e34 AP_Airspeed: Fix AP_GPS.h include and use the singleton 2019-06-18 10:02:05 +10:00
Michael du Breuil c70107cabb AP_Arming: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil 889d9b7348 AP_Frsky: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil f6f432a785 AP_Landing: Fix AP_GPS.h include, use a ref to the singleton 2019-06-18 10:02:05 +10:00
Michael du Breuil f8750a6d18 AP_Logger: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil 459e6704b9 AP_Module: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil fbd19f30e7 AP_Mount: Reduce header includes 2019-06-18 10:02:05 +10:00
Michael du Breuil 892b687c09 AP_NavEKF2: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil be74b631fe AP_NavEKF3: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil 2ab8a2318e AP_OSD: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil cbcd959290 AP_Terrain: Fix AP_GPS.h include 2019-06-18 10:02:05 +10:00
Michael du Breuil be7afe346b GCS_MAVLink: Fix AP_GPS include 2019-06-18 10:02:05 +10:00
Michael du Breuil 6317355390 RC_Channel: Fix AP_GPS include 2019-06-18 10:02:05 +10:00
Michael du Breuil 23439de39a AP_Logger: Don't include AP_BattMonitor which we don't need 2019-06-18 10:02:05 +10:00
Michael du Breuil ba4c589ff2 AP_OSD: Fix depending upon AP_Logger for AP_BattMonitor header 2019-06-18 10:02:05 +10:00
Michael du Breuil f6b8bf49a1 AP_Motors: Simplify the example includes 2019-06-18 10:02:05 +10:00
Michael du Breuil 8c00102259 GCS_MAVLink: Reduce scoping on AP_BattMonitor include 2019-06-18 10:02:05 +10:00
Michael du Breuil eed710db5f AP_GPS: Fix a lot of unneded example includes 2019-06-18 10:02:05 +10:00
Michael du Breuil 9fc954b030 AP_Compass: Reduce scope of BattMonitor include 2019-06-18 10:02:05 +10:00
Michael du Breuil 03a4dda810 AP_Mount: Remove unneeded dependency on AP_Airspeed, and bad example 2019-06-18 10:02:05 +10:00
Peter Barker b902316139 AP_HAL: remove buggy write implementation 2019-06-17 17:20:57 +10:00
Pierre Kancir 209b0300a5 AP_Rangefinder: fix compilation for Bebop 2019-06-14 18:56:05 -07:00
Randy Mackay bba81b2794 AC_Avoidance: Dijkstra's exits early if polygon fence disabled 2019-06-14 08:06:17 +09:00
Peter Barker da5d5c9203 AP_Math: add tests for Vector2 2019-06-13 19:36:49 +10:00
Jaaaky fb311208ab AP_AHRS: Fix DCM gndVelADS on groundspeed_vector() with airspeed_use 2019-06-13 16:31:12 +10:00
Randy Mackay fb284ff26a AP_ServoRelayEvents: minor formatting fix 2019-06-13 09:51:21 +09:00
Tatsuya Yamaguchi 012fcae388 AP_ServoRelayEvents: allow DO_SET_SERVO commands while rc pass-thru 2019-06-13 09:51:21 +09:00
Tatsuya Yamaguchi f9547fa28e SRV_Channel: allow DO_SET_SERVO commands while rc pass-thru 2019-06-13 09:51:21 +09:00
Rishabh ce48b82500 AC_WPNav: remove brake 2019-06-13 09:02:46 +09:00
Peter Barker c59dde78c6 AP_HAL_SITL: dump stack trace as part of panic() 2019-06-13 09:25:42 +10:00
Peter Barker dd68b14f46 AP_HAL_SITL: move dump_strack_trace into HAL 2019-06-13 09:25:42 +10:00
Peter Barker c3a99c8eb0 AP_HAL: move dump_strack_trace into HAL
Use a weak definition to allow subclasses to override
2019-06-13 09:25:42 +10:00
Randy Mackay cceab9c88f AC_Avoidance: fix BendyRuler when outside polygon fence 2019-06-12 14:54:33 +09:00
Peter Barker cc7044b360 AP_Scheduler: include internal error count in PM log message 2019-06-12 10:05:59 +10:00
Peter Barker 733b7b7f1a AP_Logger: include internal error count in log structure 2019-06-12 10:05:59 +10:00
Peter Barker 5f877294c9 AP_Logger: re-add lost validate_structure loop
Lost with bad rebase
2019-06-12 10:05:59 +10:00
Peter Barker cd0265644d AP_Logger: disable float-mult-zero sanity check for the time being 2019-06-12 10:05:59 +10:00
Peter Barker ae85994c59 GCS_MAVLink: include internal error count as errors4 in SYS_STATUS 2019-06-12 10:05:59 +10:00
Peter Barker 256b6703f1 AP_InternalError: keep count of number of errors having occured 2019-06-12 10:05:59 +10:00
Andrew Tridgell 99316a191c AP_AHRS: added check_lane_switch() 2019-06-12 09:52:20 +10:00
Andrew Tridgell 60831c2878 AP_NavEKF3: added checkLaneSwitch()
this allows the vehicle code to ask the EKF to change lanes if it is
about to do an EKF failsafe
2019-06-12 09:52:20 +10:00
Andrew Tridgell 3073c4da7a AP_NavEKF2: added checkLaneSwitch()
this allows the vehicle code to ask the EKF to change lanes if it is
about to do an EKF failsafe
2019-06-12 09:52:20 +10:00
Peter Barker f385a4a329 GCS_Common: fix compiler warnings on missing parentheses 2019-06-11 21:50:53 +10:00
Randy Mackay 6ed09d83f3 GCS_MAVLink: send_home_position uses const Location reference 2019-06-11 13:13:22 +09:00
Randy Mackay 0a86bbdc9a AC_Avoidance: add license to cpp file 2019-06-11 13:13:22 +09:00
Randy Mackay 70e9881880 AR_WPNav: integrate OAPathPlanner 2019-06-11 13:13:22 +09:00
Randy Mackay af80070ed9 AP_OAPathPlanner: path planning around obstacles
implements both bendy ruler and dijkstra's algorithms

includes many changes after peer review including:
removed unused airspeed and turn-rate arguments
renamed constants to start with OA_BENDYRULER_
removed fence_ptr check from update function that could cause bendy ruler to fail when fences were disabled
AC_Fence's fence-margin is not used and instead we always use a hard-coded 2m limit
vehicle's heading is used instead of ground-course when speed is below 0.2m/s
static assert added to ensure OA_BENDYRULER_BERAING_INC constant is defined correctly
replace BAD_MARGIN/GOOD_MARGIN with FLT_MAX/-FLT_MAX
use calc_margin_from_xxx function's return values
calc-margin-from-proximity-sensors fails if copy-locations fails
remove debug
remove unused singletons

and other changes including:
integrate fence rename to get_boundary_points
adapt to fence return point and duplicate final point from not being returned
create bendyrule and dijkstra objects on init
add pre-arm-check to ensure they've been created successfully
Dijkstra's detects polygon fence changes
minor fix to Dijkstra's return path
allow update_visgraph to accept 0,0 as extra point

and these fixes from peer reviews:
remove unused methods
add note about dangers of operator[]
reduce memory consuption of ShortPathNode
remove unused methods including print_all_nodes and print_shortest_path
replace OA_DIJKSTRA_POLYGON_VISGRAPH_INFINITY_CM with FLT_MAX
update method gets check that ekf origin has been set
fix indexing bug in inner fence creation
fix whitespace error
find-node-from-id uses switch statement instead of 3 IF statements
update_visgraph comments added to clarify usage of extra_position argument
find-closest-node-idx always uses node_index instead of int16_t
static assert that OA_DIJKSTRA_POLYGON_FENCE_PTS < 255
some looping style changes
AP_OABendyRuler: fix to ground course calculation
AP_OAPathPlanner: pre_arm_check writes to caller's buffer
remove unnecessary hal and stdio.h includes
rename fence_ptr local variable to fence
add sanity check to OADijkstra's set_fence_margin
add sanity check to OABendyRuler's set_config
BendyRuler's test_bearing local constants changed to be float constants
BendyRuler's ahrs_home made local constant
BendyRuler's proximity margin calcs lose margin_found local variable (use FLT_MAX instead)
BendyRuler's calc-margin-from-circular-fence performance improvement by removing one sqrt
AP_OABendyRuler: fix probe directions to be 5deg offsets from dir to destination
AP_OADijkstra: fixes after peer review
remove unnecesary initialisations
replace safe_sqrt(sq()) with length()
remove unnecessary block
comment fixes
AP_OAPathPlanner: add logging of final an intermediate location
2019-06-11 13:13:22 +09:00
Randy Mackay c7b1ad3443 AP_Logger: add Write_OA 2019-06-11 13:13:22 +09:00
Randy Mackay beb9ecbdcb AC_Fence: add get_boundary_update_ms
this allows callers to detect changes in the underlying polygon fence
2019-06-11 13:13:22 +09:00
Randy Mackay 0f6e61bc33 AC_Fence: add is_polygon_valid accessor 2019-06-11 13:13:22 +09:00
Randy Mackay 9c3812e384 AP_Proximity: move copy_locations to backend
also remove unused get_locations
also fix comment for copy_locations method
2019-06-11 13:13:22 +09:00
Tom Pittenger b792fe4b26 AP_Proximity: add Location* object and accessors 2019-06-11 13:13:22 +09:00
Randy Mackay c2bcc0d5f0 AP_Math: define Vector2f::perpendicular 2019-06-11 13:13:22 +09:00
Randy Mackay 071e340827 AP_Math: Polygon_closest_distance_line returns neg numbers
value is negative distance from intersection to p2
2019-06-11 13:13:22 +09:00
Andrew Tridgell 6eb816fd3b AP_Math: add Polygon_closest_distance_line
Also add optimisations
2019-06-11 13:13:22 +09:00
Andrew Tridgell a5fd7ac5ca AP_Math: add vector2f::closest_distance_between_line_and_point_squared
also add vector2f::closest_distance_between_line_and_point and vector2f::closest_distance_between_lines_squared
2019-06-11 13:13:22 +09:00
Andrew Tridgell 2457bf71d4 AP_Math: add simplified vector2f::closest_point
this simpler version assumes the line segment originates at the origin
2019-06-11 13:13:22 +09:00
Andrew Tridgell c8e49259a0 AP_Math: add vector2f::closest_distance_between_radian_and_point_squared 2019-06-11 13:13:22 +09:00
Andrew Tridgell dbf337e1b3 AP_Math: move closest_point to cpp 2019-06-11 13:13:22 +09:00
Andrew Tridgell bfc28dfde9 AP_Math: move normalize, reflect, project and perpendicular to cpp 2019-06-11 13:13:22 +09:00
Andrew Tridgell 01e541b7d1 AP_Math: minor formatting changes to length method 2019-06-11 13:13:22 +09:00
Andrew Tridgell 4c4de1f021 AP_Math: vector2f::length_squared always returns float 2019-06-11 13:13:22 +09:00
Andrew Tridgell 46617e6c72 AP_Math: remove unused include from Vector2 2019-06-11 13:13:22 +09:00
Andrew Tridgell 69781cda42 AP_Math: add Vector2::angle 2019-06-11 13:13:22 +09:00
Rajat Singhal bc22aeb4da GCS_Mavlink: Correct format specifier in UART panic message 2019-06-11 13:36:03 +10:00
Peter Barker 68d7e0c22f AP_RangeFinder: correct macro being used for parameter definition 2019-06-11 12:47:56 +10:00
Peter Barker 8cd5e3103f AP_RangeFinder: remove use of removed AP_PARAM_FLAG_IGNORE_ENABLE 2019-06-11 11:38:10 +09:00
Michael du Breuil 40753ab14e AP_Param: Remove non functional AP_Param ignore flags 2019-06-11 10:28:45 +10:00
Michael du Breuil cc7d13e9ef AP_BattMonitor: Remove param ignore flags 2019-06-11 10:28:45 +10:00
heitiane 931367a7ea AP_HAL: fix RCOutput, RCOutput2 and RCInputToRCOutput examples to prevent the failure of reading and writing channels. 2019-06-11 10:27:44 +10:00
Peter Barker a025794bae GCS_MAVLink: correct is_streaming check and update of is-streaming mask 2019-06-11 09:26:10 +10:00
Andrew Tridgell 51e187342b HAL_ChibiOS: move the power control changes to be only CubeBlack
This aims to fix #11455. I have been unable to reproduce the issue,
which leaves me thinking it is either a bootloader difference or a hw
difference between pixhawk1 clones and real pixhawk1 boards
2019-06-09 16:56:14 +10:00
Andrew Tridgell df4fc0fff0 AP_NavEKF2: default EK2_MAG_EF_LIM to 50
this was supposed to be part of the original PR (agreed with Paul to
enable by default)
2019-06-08 20:24:58 +10:00
Siddharth Purohit a926effee5 hwdef: iomcu set pin mode to input for autodetecting heater control level 2019-06-08 14:31:01 +10:00
Siddharth Purohit f23746053d AP_IOMCU_FW: autodetect active high/low on heater control pin 2019-06-08 14:31:01 +10:00
Peter Hall aa32a0d143 AP_Windvane: fix NMEA vehicle to earth frame 2019-06-08 09:48:03 +09:00
Randy Mackay 607f996232 AC_Avoid: restructure logic of adjust_velocity_circle_fence 2019-06-08 09:35:36 +09:00
Randy Mackay a96c146758 AR_AttitudeControl: set-throttle-out-stop considered same as running speed controller
update the speed-last-ms time when set-throttle-out-stop runs or else the desired throttle will not be acceleration limited when the desired speed is next increased above zero
2019-06-08 09:35:36 +09:00
Randy Mackay e846840a52 AC_Avoid: fix stopping at circular fence 2019-06-08 09:35:36 +09:00
Peter Barker e061df0f6d AP_HAL_SITL: attempt to dump stack trace as part of segv handler 2019-06-07 22:03:41 +10:00
Andrew Tridgell 02403d9b93 HAL_SITL: added support for exit on panic()
used by autotest server
2019-06-07 20:33:13 +10:00
Peter Barker 35d4555be0 AC_Avoid: improve documentation of AVOID_ENABLE options 2019-06-07 17:37:00 +09:00
Lucas De Marchi e66de36016 HAL_ChibiOS: fix I2C transaction without stop condition
Start using i2cSoftStop() instead of i2cStop() so the peripheral
continues to be enabled and with non-gated clock.  This allows time for
the I2C peripheral to continue the ack or stop.
2019-06-06 09:27:47 -07:00
Andy Piper 31ea3466af AP_InertialSensor: Post-filter logging takes precedence over sensor-rate logging. 2019-06-06 17:09:17 +10:00
Andy Piper 52e4676564 Filter: Allow all filter frequencies to be 16bit. 2019-06-06 17:09:17 +10:00
Andy Piper 36878e9b3c AP_InertialSensor: Allow all filter frequencies to be 16bit. 2019-06-06 17:09:17 +10:00
Andy Piper fff81a2163 AP_InertialSensor: Make sure the LPF output is used by the notch input. 2019-06-06 17:09:17 +10:00
Andy Piper 1a8475cf9f Filter: Decouple notch filter configuration from the filter itself.
Allow multiple notch filters to be instantiated using the same configuration.
2019-06-06 17:09:17 +10:00
Andy Piper 18d403c3ac AP_InertialSensor: Rework notch filter allocation and sampling
https://github.com/ArduPilot/ardupilot/issues/11346

Allocate a notch filter per-IMU.
Update the notch filters in the backend at the sensor sample rate.
Allow raw logging of post-filtered gyro and accel values.
2019-06-06 17:09:17 +10:00
Andrew Tridgell 045bdf3478 AP_InternalError: removed unused internal error 2019-06-06 16:35:22 +10:00
Andrew Tridgell 91f80613dd AP_Logger: removed internal error for logging without sem 2019-06-06 16:35:22 +10:00
Peter Barker dce472745e AP_NavEKF3: take EAS2TAS from AHRS rather than airspeed 2019-06-06 12:44:36 +10:00
Peter Barker 11f31c2851 AP_NavEKF2: take EAS2TAS from AHRS rather than airspeed 2019-06-06 12:44:36 +10:00
Peter Barker 697b8f6b53 AP_AHRS: take EAS2TAS directly from Baro (rather than via airspeed) 2019-06-06 12:44:36 +10:00
Peter Barker 5cfba85095 AP_AirSpeed: take EAS2TAS directory from baro; use for all backends
Plane was only setting EAS2TAS in the primary frontend; calibration
expected it to be set on each instance.
2019-06-06 12:44:36 +10:00
Peter Barker 470e88f8b3 AP_Button: use send_to_active_channels() 2019-06-06 12:41:48 +10:00
Peter Barker 264a757095 GCS_MAVLink: add send_to_active_channels method 2019-06-06 12:41:48 +10:00
Peter Barker 4d46c801f2 GCS_MAVLink: panic in SITL if we fail to write to uart 2019-06-06 12:41:48 +10:00
Andrew Tridgell 73bc277470 HAL_ChibiOS: fixed KakuteF7 build
low on flash
2019-06-06 12:19:13 +10:00
Andrew Tridgell 2acaada884 HAL_ChibiOS: fixed OMNIBUSF7V2 build
ran out of flash for plane
2019-06-06 12:19:13 +10:00
Andrew Tridgell bfdf857b34 HAL_ChibiOS: fixed airbotf4 build 2019-06-06 12:19:13 +10:00
Peter Barker f2163fbc24 AC_WPNav: use singleton for getting AC_Avoid instance 2019-06-06 11:47:22 +10:00
Andrew Tridgell 614a059819 HAL_ChibiOS: convert more boards to using new sensor config system 2019-06-05 18:54:40 +10:00
Andrew Tridgell 4a8c307720 AP_UAVCAN: fixed build error of F4 boards with CAN 2019-06-05 18:54:40 +10:00
Peter Barker 4c88a1e9de AP_RangeFinder: remove dangling update_instance declaration 2019-06-04 19:36:57 +09:00
Peter Barker 503aeba7b7 AP_RPM: remove dangling update_instance declaration 2019-06-04 19:36:57 +09:00
Peter Barker d617904726 AP_Proximity: remove dangling update_instance declaration 2019-06-04 19:36:57 +09:00
Tatsuya Yamaguchi 18a43601cd RangeFinder: Add up to 10 RangeFinder logs 2019-06-04 19:11:11 +10:00
Peter Barker be9df7f600 AP_Logger: add a README.md to help locating units/mults/fieldtypes 2019-06-04 19:00:11 +10:00
Peter Barker b644df14d0 AP_Logger: move documentation for fieldtypes, units and mults to top 2019-06-04 19:00:11 +10:00
1iggy2 7323a5da9d AP_Motors: Added Octo I frame 2019-06-04 09:49:44 +09:00
ChristopherOlson fc84995fb9 AP_Motors:Heli - remove H_LAND_COL_MIN and replace with H_COL_MID 2019-06-04 09:48:03 +09:00
Peter Barker fb3f761fc7 AP_UAVCAN: fix redefinition of UAVCAN_NODE_POOL_BLOCK_SIZE warning 2019-06-04 10:25:15 +10:00
Peter Barker cbf6d44277 AP_RCProtocol: fix missing-declaration warning in example 2019-06-04 10:25:15 +10:00
Peter Barker 73c81519da AP_GPS: fix missing-declaration warning in example 2019-06-04 10:25:15 +10:00
Peter Barker e9160cd9d5 AC_Avoid: correct iteration through edges 2019-06-04 09:06:07 +09:00
Peter Barker cd6e5b48a1 AC_Avoid: move check for zero-desired-velocity into adjust_velocity_polygon
This is the method which divides by the length of this vector; the
check belongs in here.
2019-06-04 09:06:07 +09:00
Vincent 3177d24429 AP_HAL: Make linux hardware define more readable 2019-06-04 10:00:09 +10:00
Peter Barker bb14ec1a2c AP_Arming: make proximity sensor checks common 2019-06-04 08:45:34 +09:00
Peter Barker 99c56c1770 GCS_MAVLink: fix MAV.txp log field
This was being promoted to an unsigned.
2019-06-04 09:05:37 +10:00
Andrew Tridgell e9ed3540f1 AP_NavEKF2: constrain field by table after fusion
this should make for faster convergence
2019-06-03 12:21:29 +10:00
Andrew Tridgell 3835d2613e AP_NavEKF2: added EK2_MAG_EF_LIM parameter
this sets a limit on the difference between the earth field from the
WMM tables and the learned earth field inside the EKF. Setting it to
zero disables the feature. A positive value sets the limit in mGauss.
2019-06-03 12:21:29 +10:00
Andrew Tridgell 7206258587 AP_Compass: use new get_earth_field_ga() API 2019-06-03 12:21:29 +10:00
Andrew Tridgell be62bf32cb AP_Declination: added get_earth_field_ga() interface
this gives a more convenient API for getting the earth field as a
vector
2019-06-03 12:21:29 +10:00
Peter Hall 49003868fe AP_Windvane: add NMEA wind sensor type 2019-06-03 10:48:19 +09:00
Peter Hall fe38413ddc AP_SerialManger: add windvane serial type 2019-06-03 10:48:19 +09:00
Peter Hall ea4ecebfc4 AP_Math: add speed unit converstion defs 2019-06-03 10:48:19 +09:00
ChristopherOlson b6bfc8947f AP_Motors:Heli Governor - change rotor_rpm argument to a float 2019-06-03 07:53:01 +09:00
bnsgeyer f1a32d7872 AP_Motors: Tradheli- modified thrcrv and gov parameter group names 2019-06-03 07:53:01 +09:00
ChristopherOlson b1046c7b80 AP_Motors:Heli_RSC Governor - add method of droop compensation
- improve handling of outliers from speed sensor
 - change governor_tc variable to governor_thrcurve
 - remove equals zero from variable declarations
2019-06-03 07:53:01 +09:00
bnsgeyer 4120e29614 AP_Motors: Tradheli-complete conversion of throttle curve params to percent
add conversion for throttle curve params for upgrade
2019-06-03 07:53:01 +09:00
bnsgeyer 3629541a20 AP_Motors: Tradheli - implement enable params for throttle curve and governor 2019-06-03 07:53:01 +09:00
bnsgeyer 51d4029f03 AP_Motors: Tradheli - maintain consistent variable types as used in calcs
add override to declaration of new functions
2019-06-03 07:53:01 +09:00
ChristopherOlson cca58e393a AP_Motors:Heli_RSC - add support for rotor speed governor with droop speed control 2019-06-03 07:53:01 +09:00
Peter Barker 062ee71135 AC_Fence: simplify fence loading
There's only one caller to this, who didn't force loading - so remove
the unused parameter.

Also remove the _boundary_loaded boolean; it was only set to true in one
place - just before the sole caller called the function!
2019-05-30 16:03:58 +09:00
Andrew Tridgell ff603a1f0b HAL_ChibiOS: convert mini-pix 2019-05-30 15:39:57 +10:00
Andrew Tridgell 4548aa162b HAL_ChibiOS: convert mindpx-v2 2019-05-30 15:39:57 +10:00
Andrew Tridgell 91aa49ba6f HAL_ChibiOS: convert matek boards 2019-05-30 15:39:57 +10:00
Andrew Tridgell fca03bef8d HAL_ChibiOS: convert F4BY 2019-05-30 15:39:57 +10:00
Andrew Tridgell 8605060dfc HAL_ChibiOS: convert F35Lightning 2019-05-30 15:39:57 +10:00
Andrew Tridgell 288d5d6fe6 HAL_ChibiOS: convert DrotekP3Pro 2019-05-30 15:39:57 +10:00
Andrew Tridgell d90b05f685 HAL_ChibiOS: convert all fmuv5 boards to sensor config system 2019-05-30 15:39:57 +10:00
Andrew Tridgell 03bb94599b HAL_ChibiOS: support I2C sensor probes by bus mask 2019-05-30 15:39:57 +10:00
Andrew Tridgell fc1ec8a465 HAL_ChibiOS: convert airbot to new config 2019-05-30 15:39:57 +10:00
Andrew Tridgell 82b171582e HAL_ChibiOS: added sensor config for cube varients 2019-05-30 15:39:57 +10:00
Andrew Tridgell c36d76c213 HAL_ChibiOS: convert Pixhawk1 to new sensor config
saves 26k of flash, making 1M boards work for longer
2019-05-30 15:39:57 +10:00
Andrew Tridgell eae852962e HAL_ChibiOS: fixed case of no IMU, BARO or COMPASS config settings 2019-05-30 15:39:57 +10:00
Andrew Tridgell 068e6ea8d2 HAL_ChibiOS: convert KakuteF4 and KakuteF7 to new sensor config 2019-05-30 15:39:57 +10:00
Andrew Tridgell 1b0bf88c8f HAL_ChibiOS: convert crazyflie2 to new config 2019-05-30 15:39:57 +10:00
Andrew Tridgell b47ab5c8a9 HAL_ChibiOS: support I2C sensor config in hwdef.dat 2019-05-30 15:39:57 +10:00
Andrew Tridgell 4c5b651296 AP_HAL: removed board type for mRoControlZeroF7 2019-05-30 15:39:57 +10:00
Andrew Tridgell 38c775e6df AP_Compass: removed old mRoControlZeroF7 config 2019-05-30 15:39:57 +10:00
Andrew Tridgell aef343bfd0 AP_InertialSensor: removed old mRoControlZeroF7 config 2019-05-30 15:39:57 +10:00
Andrew Tridgell ceb9c3b83e HAL_ChibiOS: convert mRoControlZeroF7 to new sensor config 2019-05-30 15:39:57 +10:00
Andrew Tridgell 039e7366b0 AP_InertialSensor: support new sensor config setup 2019-05-30 15:39:57 +10:00
Andrew Tridgell 481ae22671 AP_Compass: support new sensor config setup 2019-05-30 15:39:57 +10:00
Andrew Tridgell f7b9368b94 AP_Baro: support new sensor config setup 2019-05-30 15:39:57 +10:00
Andrew Tridgell 5eb488303c HAL_ChibiOS: convert Pixracer to use new sensor config 2019-05-30 15:39:57 +10:00
Andrew Tridgell e198d552a8 HAL_ChibiOS: support IMU, COMPASS and BARO lines in hwdef.dat
this allows for main sensors to be set in hwdef.dat, making adding new
boards simpler
2019-05-30 15:39:57 +10:00
Andrew Tridgell 532b82b3a3 AP_Compass: use DRIVER_HMC5843 to match driver name 2019-05-30 15:39:57 +10:00
Tom Pittenger c67a585b68 AP_Proximity: increase angular resoluion to mavlink packet OBSTACLE_DISTANCE 2019-05-29 18:22:53 -07:00
Peter Barker 1c4b5b0d73 AP_Arming: move arm status statustext messages back into vehicles
Not all vehicle maintainers like having these emitted as part of normal
operations.
2019-05-30 07:37:30 +09:00
Peter Barker 61a2be1470 AP_Arming: change arm and disarm to account for Copter now using them 2019-05-30 07:37:30 +09:00
Peter Barker 75ae6b59b0 GCS_MAVLink: allow Copter to disallow mavlink disarm 2019-05-30 07:37:30 +09:00
Peter Barker 84b16ea3dd AP_Arming: move check for ARMING_CHECK_NONE back into relevant vehicles
Plane and Rover allow all prearm and arm checks to be bypassed with
ARMING_CHECK_NONE.  Not all vehicles allow this, so move this bypass
back into Plane and Rover.
2019-05-30 07:37:30 +09:00
Peter Barker e340873d88 GCS_MAVLink: canonicalise on success on commanded-to-arm-when-armed
This means the mavlink return value indicates the current arm status of
the vehicle rather than success/failure of transitioning to the armed or
disarmed state (where trying to arm when armed is considered a failure).

MAVLink is a lossy communication mechanism.  It would not be
unreasonable for a GCS to issue a disarm command multiple times to
increase the chances of the command getting through.
2019-05-30 07:37:30 +09:00
Peter Barker c38e5ba4fc RC_Channel: handle AUX_FUNC::ARMDISARM 2019-05-30 07:37:30 +09:00
Peter Barker b857d2c1af GCS_MAVLink: handle MAV_CMD_COMPONENT_ARM_DISARM 2019-05-30 07:37:30 +09:00
Peter Barker d67e68eb03 AP_Logger: move LOG_ARM_DISARM_MSG in 2019-05-30 07:37:30 +09:00
Peter Barker aff6cb424f AP_Arming: move Log_Write_Arm_Disarm in, make disarm virtual 2019-05-30 07:37:30 +09:00
Peter Barker d384827291 AP_Arming: add singleton 2019-05-30 07:37:30 +09:00
Andrew Tridgell 48ac028cd0 AP_OSD: take ahrs and baro semaphores
this ensures OSD data is self-consistent within each item
2019-05-30 08:33:12 +10:00
Andrew Tridgell 5023b51679 AP_Baro: added semaphore for safe multi-thread use of APIs 2019-05-30 08:33:12 +10:00
Peter Barker e4de5a17d1 AP_Math: add pitch-7 to rotation tests 2019-05-29 17:12:32 +10:00
Andrew Tridgell e2eda63d2c AP_Math: added new rotation for PITCH_7 2019-05-29 17:12:32 +10:00
Peter Barker 977fe09276 AP_Math: add a more complex polygon for Polygon_outside tests 2019-05-29 15:34:02 +10:00
Peter Barker d3971c18fa AP_Math: more tests for closed-vs-open polygons 2019-05-29 15:34:02 +10:00
Peter Barker d74e6db12e AP_Math: add more tests for Polygon_outside 2019-05-29 15:34:02 +10:00
Peter Barker da81c5fe39 AP_Beacon: do not include fence closing/duplicate point in polygon boundary 2019-05-29 15:34:02 +10:00
Peter Barker de9fa4c730 AC_Avoid: call Polygon_outside directly; avoids losing first point 2019-05-29 15:34:02 +10:00
Peter Barker 4be3a48275 AC_Avoid: adjust for renamed get_polygon_points 2019-05-29 15:34:02 +10:00
Peter Barker 2822c635ec AC_Fence: correct get_boundary_points to account for closing point
Also rename from get_polygon_points
2019-05-29 15:34:02 +10:00
Peter Barker 36fe9a18a0 AP_Math: make Polygon_outside cope with being passed unclosed polygons 2019-05-29 15:34:02 +10:00
Randy Mackay 2061621951 AP_Proximity: default YAW_CORR to 0
The default of 22 was good when the Lightware SF40C was our only proximity sensor but not good now that we have numerous options
2019-05-29 11:17:28 +09:00
Randy Mackay ff3d3d256c AP_Proximity: RPLidarA2 supports yaw-correction and orientation params 2019-05-29 11:17:28 +09:00
斯东Stone c0e8a443af AP_OpticalFlow: Correct CX-OF Data Format Sequence
Correct CX-OF (a.k.a. UART Version PMW3901) Data Format Sequence
2019-05-29 10:22:51 +09:00
Randy Mackay ce44d127c0 AR_WPNav: add is_destination_valid accessor 2019-05-29 09:40:05 +09:00
Peter Barker ab7ee4fefb AP_Common: Location.cpp: add sanity checks 2019-05-29 09:04:37 +09:00
Michael Oborne 6031f5b6a9 AP_GPS_UBLOX: add support for TIMEGPS message. used to get gps week 2019-05-29 09:48:17 +10:00
Peter Barker fc71e1ba53 AP_InternalError: add internal error for out-of-range bitmask ops 2019-05-28 09:43:17 +10:00
Peter Barker 9d4bdbf3d5 AP_Common: add sanity check into bitmask get/set
Also return false if we are asked about an out-of-bounds bit
2019-05-28 09:43:17 +10:00
Peter Hall 5839c1ebf6 SITL: Sailboat: write rpm and airspeed for windvane backends 2019-05-28 08:35:58 +09:00
Peter Hall f26e1dc8e8 AP_WindVane: add modern devices rev p cal 2019-05-28 08:35:58 +09:00
Peter Hall 9dba9867c6 AP_WindVane: mini onion 2019-05-28 08:35:58 +09:00
Peter Barker dbbf09d018 AP_Proximity: minor performance enhancements 2019-05-28 09:19:48 +10:00
Peter Barker 1c7a8c1509 AP_Beacon: correct parameter documentation to include SITL 2019-05-28 09:16:47 +10:00
Peter Barker 64aafb2af2 AP_Math: add Polygon_outside tests for long template instantiation 2019-05-28 09:08:07 +10:00
Peter Barker 51a0401383 AP_Math: correct Polygon_outside floating point instatiation
This routine was entemplatificated from the integer version, which was
designed to be perfect across representable ranges of points.  The
floating point version suffered from a rounding problem.
2019-05-28 09:08:07 +10:00
Peter Barker b35b65eed1 AP_Math: add GTEST suite for Polygon_outside 2019-05-28 09:08:07 +10:00
Peter Barker 1ce2424e49 AP_HAL_Linux: add required override keyword on configure_parity
Also remove virtual - doesn't make sense here.
2019-05-27 09:55:18 -07:00
Michael du Breuil a1fda8bc76 AP_BLHeli: Update to support newer targets and protocols 2019-05-25 09:37:56 +10:00
Lucas De Marchi 4f73881c4b AP_RangeFinder: TFMiniPlus: enforce minimum version 1.7.6
On this version of the firmware the command changed - support the new
command and only that one: it's not expected to have devices with the
older versions.
2019-05-24 01:47:04 -07:00
Lucas De Marchi b3a8496613 AP_RangeFinder: add support for Benewake TFMini Plus on I2C
This was tested with firmware 1.7.0 on the sensor.
2019-05-24 01:47:04 -07:00
Peter Barker f09efe0908 AP_Math: correct URL for Polygon_outside algorithm 2019-05-24 13:17:43 +10:00
Phillip Kocmoud 734abe3d7d hwdef: Correct typo for mRo x2.1-777 USB PID
This needed to match the firmware directory which contains the compiled binaries hosted at http://firmware.ardupilot.org so that MissionPlanner can automatically download and update firmware.
2019-05-23 11:05:42 +10:00
Rajat Singhal 8097b0ede3 SITL: Gazebo: Fixed comment, typos 2019-05-23 08:23:37 +09:00
Peter Barker 1b90643751 GCS_MAVLink: report more internal errors in SYS_STATUS 2019-05-23 07:29:29 +10:00
Peter Barker 43152a416c AC_Avoid: stop taking references to ahrs, fence, proximity and beacon 2019-05-22 07:48:02 -06:00
Peter Barker b086b39f89 AP_Proximity: add AP::proximity() singleton getter 2019-05-22 07:48:02 -06:00
Peter Barker 8ce4f73550 AP_Beacon: add singleton 2019-05-22 07:48:02 -06:00
Peter Barker a7c5f5a6c8 AP_Mission: break out a convert_MISSION_ITEM_to_MISSION_ITEM_INT method
AP_Mission: remove unused mission_cmd_to_mavlink

AP_Mission: eliminate mavlink_to_mission_cmd (use mavlink_int_to_mission_cmd)
2019-05-22 08:53:45 +10:00
Peter Barker 8911e67900 AP_Rally: adjust to allow for uploading via the mission item protocol
AP_Rally: add a set_rally_total method

Rally: remove restriction of only setting rally points below the param count

Rally: implement truncate/append interface
2019-05-22 08:53:45 +10:00
Peter Barker d0105c8fa7 GCS_MAVLink: factor mission handling, use for Rally
GCS_MAVLink: allow all mission types to be cleared

GCS_MAVLink: remove unused parameters from handle-mission-count
2019-05-22 08:53:45 +10:00
Peter Barker aaf98f942f AP_InternalError: add internal error for link errors in mission protocol 2019-05-22 08:53:45 +10:00
Peter Barker a5f5b4349c AP_Logger: add a Write_Rally method 2019-05-22 08:53:45 +10:00
alancaro2013 a1557184d5 AP_RangeFinder: Modified uLanding parse to check device version.
US-D1 version ID was changed to 2 from 0. This alteration will prevent
past US-D1s, with version ID 0, from being 3-byte parsed.
2019-05-22 08:20:42 +10:00
Andrew Tridgell 19ace7cace RC_Channel: guarantee logging of RCIN on switch changes 2019-05-22 07:37:56 +10:00
Pierre Kancir 3fa419e132 AP_Baro: fix LPS22H on I2C 2019-05-22 07:37:20 +10:00
Pierre Kancir 2348fa4201 AP_Baro: probe HAL_BARO_LPS22H_I2C 2019-05-22 07:37:20 +10:00
Pierre Kancir a4330f90b1 AP_HAL: add HAL_BARO_LPS22H_I2C 2019-05-22 07:37:20 +10:00
Stone white 8b7b5f0db9 AP_OpticalFlow: Make PX4FLOW work on all external I2C buses 2019-05-21 09:44:26 +10:00
Francisco Ferreira 869a369cc0 AP_AHRS: support NMEA output 2019-05-21 09:41:15 +10:00
Francisco Ferreira e06556a677 AP_SerialManager: support NMEA output 2019-05-21 09:41:15 +10:00
Francisco Ferreira 80093f41b0 AP_NMEA_Output: new library for writing NMEA to serial ports 2019-05-21 09:41:15 +10:00
Francisco Ferreira 0e33907cf7 AP_HAL_SITL: change NMEA output to use new macro 2019-05-21 09:41:15 +10:00
Francisco Ferreira 6e95a144ef AP_Math: add macro for m/s to knots convertion 2019-05-21 09:41:15 +10:00
Peter Barker 32a6f0026a AP_OSD: add mutex against maniplating sf windows from different threads 2019-05-21 09:21:56 +10:00
Peter Barker 02e34c95c9 AP_Notify: add mutex against maniplating sf windows from different threads 2019-05-21 09:21:56 +10:00
Peter Barker 2fa1f041e3 AP_Notify: add SITL RGBLed 2019-05-21 09:21:56 +10:00
murata 9ed38eaf7b AP_OpticalFlow: Change to collected CRC header 2019-05-21 09:19:19 +10:00
murata c6bcb1d54c AP_Math: Collect CRC16 into CRC file
AP_Math: Collect CRC16 into CRC file
2019-05-21 09:19:19 +10:00
Patrick José Pereira dc238946b0 AP_ROMFS: Add missing header guard
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Patrick José Pereira b54399b9a7 AP_ICEngine: Add missing header guard
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Patrick José Pereira fe3d4e2c3b AP_HAL: Utility: Add missing header guard in packetise
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Patrick José Pereira c4825a6d02 AP_Button: Add missing header guard
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-05-20 23:50:23 +01:00
Jaaaky f21e4d833c AP_NavEKF3: Fix GPS < 3D empty PreArm: msg-as EKF2 2019-05-20 16:57:57 +10:00
Andrew Tridgell 4888583e17 AP_Scheduler: use task -3 for wait_for_sample() 2019-05-17 09:00:22 +10:00
Andrew Tridgell e801821f0c AP_Scheduler: log SPI and I2C counters in PM msg 2019-05-17 08:56:06 +10:00
Andrew Tridgell 6b1374e55c AP_Logger: log SPI and I2C counters in PM msg 2019-05-17 08:56:06 +10:00
Andrew Tridgell 59678840a8 HAL_ChibiOS: log SPI and I2C counters 2019-05-17 08:56:06 +10:00
Andrew Tridgell e64c5ef354 AP_HAL: added SPI and I2C counters 2019-05-17 08:56:06 +10:00
Andrew Tridgell e2d863498b GCS_MAVLink: clear last msgs when done
this makes MON and WDOG logs clearer
2019-05-17 08:56:06 +10:00
Peter Barker 0a3fe32209 AP_HAL_SITL: log watchdog reset 2019-05-16 17:21:24 +10:00
Peter Barker f5190d1bcc AP_HAL_ChibiOS: use logger().WriteCritical(...) for WDOG message 2019-05-16 17:21:24 +10:00
Peter Barker 0225b6817a AP_Logger: examples: add test for Write and WriteCritical 2019-05-16 17:21:24 +10:00
Peter Barker 54eff7eafc AP_Logger: add WriteCritical method to AP::logger()
For callers who emphatically want their custom messages to be written out.
2019-05-16 17:21:24 +10:00
Andrew Tridgell 2fc95f88ae AP_Notify: fixed handling of mavlink LED override 2019-05-16 15:17:37 +10:00
Peter Barker 9dc4e17564 AP_LeakDetector: add missing override keywords 2019-05-15 21:05:20 +10:00
Peter Barker 93c33fda1d RangeFinder: correct bad include of old semaphore library 2019-05-15 19:34:31 +09:00
Peter Barker 18999aab72 AP_OpticalFlow: correct bad include of old semaphore library 2019-05-15 19:34:31 +09:00
Siddharth Purohit 479c238177 RangeFinder: add support for rangefinder sensor over can 2019-05-15 16:01:53 +09:00
Siddharth Purohit e866a574dd AP_UAVCAN:add hex flow sensor message 2019-05-15 16:01:53 +09:00
Siddharth Purohit c4360264cf AP_UAVCAN: add support for hereflow and range sensor message over can 2019-05-15 16:01:53 +09:00
Siddharth Purohit 67fcd773a6 OpticalFlow: add support for HereFlow message over can 2019-05-15 16:01:53 +09:00
Andrew Tridgell 0708b65c2d AP_HAL_ChibiOS: added const for PersistentData 2019-05-15 15:33:48 +10:00
Andrew Tridgell 670015b30e AP_AHRS: added const for PersistentData 2019-05-15 15:33:48 +10:00
Andrew Tridgell ba9b92c4af AP_Compass: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 6fa69c2297 AP_Logger: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 3823ba539c AP_InertialSensor: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 48302427c7 HAL_ChibiOS: rename to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 911a99b79e AP_HAL: removed hal argument to EXPECT_DELAY_MS() 2019-05-15 15:33:48 +10:00
Andrew Tridgell f8bcdf9d3a HAL_SITL: fixed cygwin build error 2019-05-15 15:33:48 +10:00
Andrew Tridgell 85ce10adfd AP_Math: fixed test build 2019-05-15 15:33:48 +10:00
Andrew Tridgell c1b201d051 HAL_SITL: fixed comment typo 2019-05-15 15:33:48 +10:00
Andrew Tridgell d2c9db3f1f AP_FlashStorage: fixed build error with -O0 2019-05-15 15:33:48 +10:00
Andrew Tridgell a7eb85e1c5 HAL_ChibiOS: cope with nesting of expected_delay_ms() 2019-05-15 15:33:48 +10:00
Andrew Tridgell 64c723fd31 GCS_MAVLink: record mavlink msg IDs for watchdog 2019-05-15 15:33:48 +10:00
Andrew Tridgell 8d0bca6ba9 HAL_ChibiOS: log mavlink IDs and semaphore lines for watchdog
this gives a better chance of tracking down a hang
2019-05-15 15:33:48 +10:00
Andrew Tridgell c786674442 AP_HAL: record mavlink msg IDs and semaphore line 2019-05-15 15:33:48 +10:00
Andrew Tridgell 4cdfe6bac3 AP_Logger: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell 02326ac52c AP_InertialSensor: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell 1b8cbfc6a4 HAL_ChibiOS: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell ecc6f15dc0 AP_Compass: use EXPECT_DELAY() macro 2019-05-15 15:33:48 +10:00
Andrew Tridgell b1ed77bee9 AP_HAL: added EXPECT_DELAY() macro
this prevents nesting errors in use of EXPECT_DELAY(), ensuring we
always close the expected delay
2019-05-15 15:33:48 +10:00
Andrew Tridgell 3772f58be9 GCS_MAVLink: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 1443f0c3f9 AP_UAVCAN: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 24636aeb45 AP_ToshibaCAN: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 09792d3056 AP_RangeFinder: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 37936a125f AP_RAMTRON: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell b3b59c7298 AP_OSD: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 0de65ca734 AP_Notify: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell a3b283708b AP_IRLock: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 4e769730c9 AP_InertialSensor: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 916b3003e1 AP_HAL_SITL: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell a159b01b26 AP_HAL_Linux: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell d368d95aa7 HAL_ChibiOS: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 9f5a598697 AP_GPS: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 9e7929adf6 AP_Compass: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 71e91c953a AP_BattMonitor: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 097519926d AP_Baro: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell f8741f2e2a AP_Avoidance: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 03fb0b803b AP_Airspeed: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 11ceacfdb6 AP_AHRS: removed unusued AP_Common/Semaphore.h 2019-05-15 15:33:48 +10:00
Andrew Tridgell 75397c1734 AP_Common: removed old Semaphore.h
now moved to AP_HAL/Semaphores.h
2019-05-15 15:33:48 +10:00
Andrew Tridgell 8f973da4b5 AP_HAL: moved the WITH_SEMAPHORE() logic into AP_HAL
this is needed to allow us to record the location of a blocking
semaphore to track down bugs where we have a semaphore deadlock
2019-05-15 15:33:48 +10:00
Andrew Tridgell e3c80bf08f HAL_ChibiOS: fixed bootloader build 2019-05-15 15:33:48 +10:00
Andrew Tridgell d7a0eb42ee HAL_ChibiOS: added logging of watchdog data
log MON msgs in the leadup to a watchdog, and log a WDOG message after
a watchdog reset
2019-05-15 15:33:48 +10:00
Andrew Tridgell b217771dbf AP_InternalError: persist internal error values 2019-05-15 15:33:48 +10:00
Andrew Tridgell 45d5e7f6d2 AP_HAL: added persistance for internal errors 2019-05-15 15:33:48 +10:00
Andrew Tridgell 49061aae67 AP_Scheduler: use persistent_data for current_task 2019-05-15 15:33:48 +10:00
Andrew Tridgell 0873e54cc0 HAL_SITL: fixed build error 2019-05-15 15:33:48 +10:00
Andrew Tridgell 4b298aa80e AP_HAL: add scheduler state to persistent_data 2019-05-15 15:33:48 +10:00
Andrew Tridgell 9173989e63 AP_Mission: save waypoint number for watchdog reset 2019-05-15 15:33:48 +10:00
Andrew Tridgell ebf04e70fe AP_InternalError: don't panic on SITL watchdog_reset 2019-05-15 15:33:48 +10:00
Andrew Tridgell 6897cecea2 HAL_SITL: support watchdog reset in SITL
this only works for speedup 1, and does not initialise the physics
models correctly for internal models
2019-05-15 15:33:48 +10:00
Andrew Tridgell 74e56ab8cc AP_AHRS: use new persistent_data interface 2019-05-15 15:33:48 +10:00
Andrew Tridgell dbfe6b8019 HAL_ChibiOS: implement persistent_data for watchdog
this is a much simpler approach to persistent data
2019-05-15 15:33:48 +10:00
Andrew Tridgell 11c123e4da AP_HAL: added persistent_data structure
this is a much simpler way to save data for a watchdog reset
2019-05-15 15:33:48 +10:00
Tom Pittenger 1f3c3c853f GCS_MAVLink: move heartbeat sending to gcs instead of by vehicles 2019-05-14 10:54:45 -06:00
Peter Barker 0d1b7b90b9 AP_Param: avoid allocating 0 bytes if no defaults
This stopped CUAVv5 from booting.

Also add some protection against having different parsers for the same
file format used for counting parameters and actually using them.
2019-05-14 08:02:54 +10:00
Michael du Breuil 7b7bdd9bf8 AP_BattMonitor: Prevent capacity_remaining_pct from returning a large
value when low
2019-05-13 15:46:38 +10:00
Michael du Breuil 7871040bb6 AP_GPS: Pass an in range value for the param initilizer 2019-05-13 15:46:38 +10:00
Michael du Breuil 1040ca2d5e AP_Landing: Fix shadowing with deepstall
Was breaking clang 8 builds
2019-05-13 15:46:38 +10:00
Peter Barker 77985f509f AP_Follow: correct parameter descriptions 2019-05-13 15:34:01 +10:00
Michael du Breuil 8db8dcd2d2 AP_Scripting: Fix up some warnings
-Remove some non forward declared issues
  -Remove forced min/max values from the enum range check
2019-05-11 18:25:43 -07:00
Michael du Breuil bd256afee4 AP_Scripting: extract a common argument check helper
Allows an easy additional flag for saving flash space
2019-05-11 18:25:43 -07:00
Michael du Breuil 84c2b18e43 AP_Scripting: Support enum types, add millis() remove manual GCS wrapper
This introduces enum types for range checking/returns, adds a millis(() call
(this returns a uint32_t), and moves over to an auto generated version of the GCS binding
2019-05-11 18:25:43 -07:00
Michael du Breuil eddf926433 AP_Scripting: Add support for semaphore protection around singletons
This makes the assumption that the semaphore is available via reference, not pointer
For a singleton object this seems like a reasonable API restriction
2019-05-11 18:25:43 -07:00
Andrew Tridgell 6333494d99 HAL_ChibiOS: disable peripheral power on boot on fmuv3
then enable after 100ms, and let settle for 20ms. This is to fix an
issue with peripheral power on consistency with all fmuv3 boards

Thanks to Philip for the suggestion
2019-05-11 18:45:18 +10:00
Randy Mackay 0a5d6a430a AP_NavEKF3: accept optical flow data at up to 50hz 2019-05-11 16:23:57 +09:00
Randy Mackay e19d638c0f AP_NavEKF2: support higher optical flow updates rates 2019-05-11 16:23:57 +09:00
Randy Mackay 5c99f02c15 AP_LandingGear: minor format fix 2019-05-11 08:49:40 +09:00
Tom Pittenger fc710d8a81 RC_Channel: remove UINT16_MAX check, moved to mavlink handler 2019-05-10 15:30:54 -07:00
Tom Pittenger 4c641c6e2b GCS_MAVLink: comply with mavlink spec to ignore rc_override UINT16_MAX 2019-05-10 15:30:54 -07:00
Andrew Tridgell ce9e9d8670 HAL_ChibiOS: end scheduler boost on expected delay
we want timer thread to be higher priority than main thread while in a
long operation
2019-05-11 05:56:34 +10:00
Rajat Singhal 2c519d5176 SITL: Fix to sync to JSBSim simulation time
SITL: Additional fix to remove time-lag in JSBSim
2019-05-10 17:12:52 +10:00
Rajat Singhal dedb7e108f SITL: Added <time> tag to JSBSim output directive
Instructs JSBSim to transmit current simulation time which is used to sync with Ardupilot
2019-05-10 17:12:52 +10:00
Rajat Singhal 2317e73e0b SITL: JSBSim: Use rate_hz to specify timestep 2019-05-10 17:12:52 +10:00
Rajat Singhal 732f2e7a2e SITL: Change JSBSim mode to Batch mode, specify nice sleeptime
Previously it was run in realtime mode which doesn't support iterate command. Without setting sleeptime, defaults to 0.01s which slows down a lot
2019-05-10 17:12:52 +10:00
Phillip Kocmoud 069d054e5c AP_Baro.cpp: support DPS280 on SPI 2019-05-10 15:05:42 +10:00
Phillip Kocmoud 1f827004be AP_Compass: Enable AK09916 inside the ICM20948 2019-05-10 15:05:42 +10:00
Phillip Kocmoud 6665e4c0a7 AP_InertialSensor: probe IMUs for mRoControlZeroF7 2019-05-10 15:05:42 +10:00
Phillip Kocmoud a24bbe0b13 AP_Baro: support DPS280 on SPI 2019-05-10 15:05:42 +10:00
Phillip Kocmoud db57b6c4f3 AP_HAL: added DPS280 on SPI / added board type for mRoControlZeroF7 2019-05-10 15:05:42 +10:00
Phillip Kocmoud 16f1ec8ce2 HAL_ChibiOS: added missing AF functions for F777 2019-05-10 15:05:42 +10:00
Phillip Kocmoud 9709401595 HAL_ChibiOS: added hwdef for mRoControlZeroF7 2019-05-10 15:05:42 +10:00
Andrew Tridgell 893b49d145 AP_InertialSensor: disable register checking in invensensev2 driver
register checking doesn't work for the banked registers used in the
invensensev2 register layout. It ends up setting the wrong register
value in some cases, which can either cause the sensor to stop working
or in the worst case give bad data
2019-05-10 14:55:39 +10:00
Randy Mackay b0f0b16135 AR_WPNav: remove unnecessary temp variable
also heading-unknown made a const
also minor comment fix
also removed unused include
2019-05-10 06:55:35 +09:00
Peter Barker 6f97f56726 AR_WPNav: add WARN_IF_UNUSED to various methods, fix for same 2019-05-10 06:55:35 +09:00
Randy Mackay 56c344ae94 AR_WPNav: rover navigation library 2019-05-10 06:55:35 +09:00
Randy Mackay 4e68d16526 AR_AttitudeControl: use speed_control_active in get_desired_speed_accel_limited
also minor formatting fixes
this is a non-functional change
2019-05-10 06:55:35 +09:00
Randy Mackay 6d4d1bc20a AR_AttitudeControl: add get_turn_rate_from_heading 2019-05-10 06:55:35 +09:00
Randy Mackay 8907b727f6 AR_AttitudeControl: add get_turn_rate_from_lat_accel 2019-05-10 06:55:35 +09:00
Peter Barker dd62489f5e AC_PrecLand: stop ignoring return values on methods 2019-05-09 13:03:49 +10:00
Peter Barker 71d16557fa AP_Common: Location: add WARN_IF_UNUSED to boolean methods 2019-05-09 13:03:49 +10:00
Randy Mackay b668c6f855 AC_Circle: improve target heading 2019-05-07 13:54:31 +09:00
Peter Barker 0c24810a48 AP_AHRS: fix example 2019-05-07 13:52:40 +09:00
Peter Hall a0d8c04f3e AC_AutoTune: add public reset method 2019-05-07 09:23:50 +10:00
Andrew Tridgell e4f6ffe719 AP_NavEKF3: fixed bug in EKF lane selection
this fixes an issue in selecting the best lane to change to when we
have 3 or more EKF cores. The bug is that if the current lane is
unhealthy it would always choose the last healthy lane instead of
choosing the lane with the lowest score
2019-05-07 06:59:50 +10:00
Andrew Tridgell cc62998d40 AP_NavEKF2: fixed bug in EKF lane selection
this fixes an issue in selecting the best lane to change to when we
have 3 or more EKF cores. The bug is that if the current lane is
unhealthy it would always choose the last healthy lane instead of
choosing the lane with the lowest score
2019-05-07 06:59:50 +10:00
Peter Hall 505e1d8c1d APM_Control: AP_RollContorller: move rate limit 2019-05-06 19:16:26 +10:00
Andrew Tridgell 2b0a30a2c5 HAL_ChibiOS: ensure we don't overflow bootloader area
this modifies the ld script to use the maximum size available for the
bootloader, so we can't accidentially grow the bootloader beyond its
max size
2019-05-06 12:36:41 +10:00
Michael du Breuil 85da4955b6 AP_Rangefinder: Enforce checking I2C status on VL53L1X 2019-05-05 12:12:05 -07:00
Randy Mackay 415042e557 AR_AttitudeControl: minor declaration ordering change 2019-05-04 14:49:32 +09:00
Randy Mackay f6f5967a82 AR_AttitudeControl: minor param desc fix 2019-05-04 14:49:26 +09:00
Tom Pittenger fbe43dba5c RC_Channel: refactor stick_mixing to library 2019-05-03 13:14:11 -07:00
Andrew Tridgell 11021bbaa9 HAL_ChibiOS: fixed LEDs on new CUAVv5 revision 2019-05-03 16:32:00 +10:00
Andrew Tridgell 8d2f016cc8 HAL_ChibiOS: fixed LEDs on CUAVv5Nano
need to be opendrain
2019-05-03 16:32:00 +10:00
Andrew Tridgell 0e28f66761 AP_Notify: don't use pinMode for pixracer LEDs
this is needed for LEDs that are driven by 5V, which means they need
to use OPENDRAIN.
2019-05-03 16:32:00 +10:00
Peter Hall 26a6cccf21 AP_HAL_ChibiOS: KakuteF7 add two PWM pin options 2019-05-03 14:47:00 +10:00
Andrew Tridgell ef5f83d0b5 AP_IOMCU: remove 2s delay on boot and skip crc check on watchdog
thanks to @Jaaaky for the suggestion in #11232
2019-05-03 13:44:56 +10:00
Jaaaky 6ed8b2aad9 AP_Baro: Fix not healthy by watchdog reset 2019-05-03 10:42:43 +10:00
Andrew Tridgell 4deb2c38f6 HAL_ChibiOS: fixed brick2 valid status in POWR flags for fmuv5
and fixed sense of VBUS
2019-05-03 10:32:41 +10:00
Jaaaky 971e3af826 GCS_MAVLink: prgama away address-of-packed-member only for g++ >= 9 2019-05-03 01:57:26 +10:00
Andrew Tridgell 48aacb9462 HAL_Linux: removed use of RCInput_SBUS and RCInput_115200 2019-05-02 17:58:51 +10:00
Andrew Tridgell 1c322d296f HAL_Linux: switch Disco to using AP_RCProtocol library for RCIN
this is the first step to using AP_RCProtocol for most (or all) RC
input on Linux boards. It also fixes a major bug on Disco where the
old SBUS decoder didn't use strict enough timing checks to filter out
bad frames when video capture is running. That led to erratic flight
mode changes and sometimes loss of control.
2019-05-02 17:58:51 +10:00
Lucas De Marchi 5520b397c2 AP_HAL_Linux: allow disco to use RCInput_UDP
This allows to use any device to send RCInput to Disco via network.
Particularly this is useful when paired to additional changes on
SkyController 2 so it can be used to control Ardupilot.

This was tested with https://github.com/lucasdemarchi/dema-rc running
on SkyController 2.
2019-05-02 16:14:17 +10:00
Peter Barker 9273ac3631 GCS_MAVLink: pragma away address-of-packed-member
g++-9 throws a lot of warnings for taking addresses of packed members.
We can have this warning for our ArduPilot code, but there's way too
many issues within MAVLink to put up with.
2019-05-01 19:36:49 -07:00
Peter Barker 900d9f71f6 AP_HAL_SITL: stop taking address of packed members 2019-05-01 19:36:49 -07:00
Pierre Kancir 427a88a1fe AP_Compass: fix AP_Compass_test 2019-05-01 14:17:34 -07:00
Pierre Kancir ff5cedc49f AP_AHRS: add missing include 2019-05-01 14:17:34 -07:00
Pierre Kancir deb6aafcbe AP_GPS: fix GPS_AUTO_test 2019-05-01 14:17:34 -07:00
Jaaaky 464540ab56 AP_HAL_ChibiOS: tune delay for flashing bootloader
As the function can internally loop for 10 seconds
2019-05-01 14:23:20 +10:00
Jaaaky 47c65314fb AP_InertialSensor: fix accelcalsimple watchdog 2019-05-01 14:23:20 +10:00
Peter Barker a0c80a0b3b GCS_MAVLink: make send_text and send_textv const 2019-05-01 10:18:46 +10:00
Andrew Tridgell f48d07ffca HAL_ChibiOS: added WARN_IF_UNUSED based on PR feedback 2019-04-30 10:16:38 +10:00
Andrew Tridgell ce9b75fdf0 HAL_ChibiOS: added timeouts on all SPI transfers
this is never expected to trigger unless we have a severe MCU error as
SPI transfers don't rely on a response from a device.

The only case that we could get a timeout is when a bug leads to use
doing transfers from memory that does not support the DMA
transaction (such as on H7). This change turns that from a immediately
fatal lockup into a bus error and failed sensor
2019-04-30 10:16:38 +10:00
Andrew Tridgell 8e1f100d98 AP_InternalError: added spi timeout error 2019-04-30 10:16:38 +10:00
Vinicius Knabben 040fa3e10a AP_Parachute: Added time check for sink rate to avoid glitches
Signed-off-by: Vinicius Knabben <viniciusknabben@hotmail.com>
2019-04-30 10:04:58 +10:00
Vinicius Knabben c710002bc9 AP_Parachute: Added parachute release at critical sink rate
Signed-off-by: Vinicius Knabben <viniciusknabben@hotmail.com>
2019-04-30 10:04:58 +10:00
Vinicius Knabben 5ab77e0fd0 AP_BattMonitor: Added parachute failsafe action to the parameters list
The user can now set the parachute release as a failsafe action

Signed-off-by: Vinicius Knabben <viniciusknabben@hotmail.com>
2019-04-30 10:04:58 +10:00
Peter Barker 6157aae747 RC_Channel: correct examples with override keyword 2019-04-30 09:29:59 +10:00
Peter Barker e6653f42dd GCS_MAVLink: correct examples with override keyword 2019-04-30 09:29:59 +10:00
Peter Barker 3175a2ce19 AC_PID: correct examples with override keyword 2019-04-30 09:29:59 +10:00
Mark Whitehorn ce1a082956 Plane: limit yaw error in bodyframe roll control 2019-04-30 08:51:24 +10:00
Matt Lawrence f7383179e8 HAL CHIBIOS: Solo stock cube child of fmuv3 instead of CubeBlack
CubeBlack-Solo hardware def to use FMUv3 as its parent rather than CubeBlack.  Since this older cube doesn't have the same hardware as a new CubeBlack, it is causing conflicts.  Nearly everything is the same.
2019-04-29 11:14:46 +10:00
Andrew Tridgell 945ab652cc AP_InternalError: added iomcu_reset as separate code 2019-04-28 07:45:33 +10:00
Andrew Tridgell 6c50feaead AP_IOMCU: improved handling of IOMCU reset
use IOMCU timestamp to detect reset
2019-04-28 07:45:33 +10:00
Andrew Tridgell d4c68da76e AP_IOMCU: added IOMCU time since boot to protocol
and optional watchdog testing using safety switch
(compile time option)
2019-04-28 07:45:33 +10:00
Andrew Tridgell af54e8620e AP_IOMCU: prevent startup sync causing an internal error 2019-04-28 07:45:33 +10:00
Michael du Breuil b1bc4268a9 AP_OpticalFlow: Remove unused device ID tracking 2019-04-26 20:10:56 +09:00
murata d3d6bed584 AP_WPNav: Change the value of the minimum effective radius 2019-04-26 20:10:19 +09:00
Jeremy Feltracco 100f06614c AP_HAL_Linux: Add support for setting uart parity on Linux boards
Pass set_parity down through UART class so that set_parity actually
works for Linux boards.
2019-04-26 00:49:25 -07:00
Guglielmo 9ebe5d7de9 AC_WPNav: lowering waypoint radius minimum to 5cm 2019-04-26 11:15:48 +09:00
Michael du Breuil 17e258d347 AP_Scripting: Reenable file IO 2019-04-26 08:07:19 +10:00
Michael du Breuil a4d9853f1d AP_HAL_ChibiOS: Actually enable the wrapper on remove 2019-04-26 08:07:19 +10:00
Michael du Breuil 066dc9d12b AP_Scripting: Add support for terrain 2019-04-26 08:07:19 +10:00
Michael du Breuil fc9b102b28 AP_Terrain: Add singleton 2019-04-26 08:07:19 +10:00
Michael du Breuil 50b76a27aa AP_Scripting: Add uint32_t support to generator 2019-04-26 08:07:19 +10:00
Michael du Breuil 7690df1d69 AP_Scripting: Add boxed numerics for uint32_t types
Also fixes bad check in send_text that could seg fault in send_text

And fixes the fact that all freshly allocated userdata's need to be
memset
2019-04-26 08:07:19 +10:00
Michael du Breuil 8e50ca9ae4 AP_Scripting: Add stack checking to allocators 2019-04-26 08:07:19 +10:00
Michael du Breuil 56b8741c3e AP_Scripting: Add more bindings 2019-04-26 08:07:19 +10:00
Michael du Breuil 062bca6361 AP_Relay: Add singleton 2019-04-26 08:07:19 +10:00
Michael du Breuil 1b48ce57f0 AP_Scripting: Add operator overloading
Also introduces battmonitor wrappers, and removes an unneeded checkdata
2019-04-26 08:07:19 +10:00
Michael du Breuil e6d97f63a5 AP_GPS: Remove unneeded wrappers 2019-04-26 08:07:19 +10:00
Michael du Breuil e177db7dcd AP_BattMonitor: Remove unused method, make some public functions private 2019-04-26 08:07:19 +10:00
Michael du Breuil 496df47d9d AP_Avoidance: Remove unimplemented declaration 2019-04-26 08:07:19 +10:00
Michael du Breuil 6bcc6d85e7 AP_Scripting: Nullable primitive arguments do not recieve a range check 2019-04-26 08:07:19 +10:00
Michael du Breuil 893779fbcd AP_Scripting: Introduce fixed minimum range type checking on primitives 2019-04-26 08:07:19 +10:00
Michael du Breuil 1895178285 AP_Scripting: Add support for nullable types
This adds nil punning to the generator. It also unifies the emitter for
both singletons and userdata, as they were almost identical to begin
with. This should ease the maintenance burden of adding new types.
2019-04-26 08:07:19 +10:00
Michael du Breuil e4035bd7e8 AP_Scripting: Add alias suppport to the scripting generator 2019-04-26 08:07:19 +10:00
Michael du Breuil 746240ebe3 AP_Scripting: Add more primitive types 2019-04-26 08:07:19 +10:00
Jonathan Challinger 1829fcfd98 AP_BoardConfig: fix build for CubeBlack 2019-04-25 14:15:27 -07:00
Jaaaky dd4f7e53c3 AP_Mission: Send jump tracking info to GCS
Send jump wp index and jump count to GCS to allow user to track it.
Foramtted as other mission item messages
2019-04-25 16:35:21 +09:00
Randy Mackay cb3de81058 AP_OpticalFlow: fix _ENABLE param desc for stable release 2019-04-25 16:34:10 +09:00
Peter Barker 776c111d3c AP_Arming: do not permit arming if any internal errors have occured 2019-04-25 13:05:18 +10:00
Peter Barker 45ebbf2877 AP_Arming: correct check against ARMING_CHECK_NONE
As opposed to all of the other ARMING_CHECK values this one isn't
actually a mask
2019-04-25 13:05:18 +10:00
murata 295c343959 AP_Airspeed: Commonize the CRC4 method 2019-04-24 08:44:11 -07:00
murata 716cc26082 AP_Baro: Commonize the CRC4 method 2019-04-24 08:44:11 -07:00
murata 7f42be5d3e AP_Math: Commonize the CRC4 method 2019-04-24 08:44:11 -07:00
Jonathan Challinger af4611c050 AP_BoardConfig: fix unused function error 2019-04-24 11:45:14 +10:00
Jonathan Challinger 94b8f2e37a AP_BoardConfig: fix build 2019-04-24 11:45:14 +10:00
Jonathan Challinger 40684b95d7 AP_BoardConfig: changes in response to review 2019-04-24 11:45:14 +10:00
Jonathan Challinger 042623cd0d AP_BoardConfig: changes in response to review 2019-04-24 11:45:14 +10:00
Jonathan Challinger c45ca690dc AP_Baro: make crc4 a static member of AP_Baro_MS56xx 2019-04-24 11:45:14 +10:00
Jonathan Challinger faa5a3c453 AP_BoardConfig: add targetted check for cube black internal sensors 2019-04-24 11:45:14 +10:00
Jonathan Challinger 183b55d3df AP_HAL_ChibiOS: add define HAL_CHIBIOS_ARCH_CUBEBLACK to cubeblack hwdef 2019-04-24 11:45:14 +10:00
SergeyBokhantsev cd166ec911 AP_OSD: Switch screens basing on FS state
AP_OSD: Switch screens basing on ARM state
2019-04-23 20:41:07 +10:00
Peter Barker 6939a9fa91 SITL: add capability to twist the aircraft
This makes the EKF very, very unhappy, but is useful for compass
calibration testing
2019-04-23 10:06:17 +10:00
Peter Barker bf23f1df67 AP_Compass: move responsibility for logging into library 2019-04-23 10:06:17 +10:00
Peter Barker 0e8722181f AP_Compass: take responsibility for not running cal if armed 2019-04-23 10:06:17 +10:00
Mark Whitehorn b515431008 AP_Math: add expo and throttle_curve functions 2019-04-23 09:46:38 +10:00
Peter Barker ddfccf1e67 AP_Rally: correct math conversion problems
If the rally point storage size got *large* you'd end up with integer
overflow problems here.
2019-04-23 09:43:26 +10:00
Pierre Kancir e3057b40f3 GCS_MAVLINK: remove mavlink send_buf usage 2019-04-23 09:41:00 +10:00
Pierre Kancir cc14885913 GCS_MAVLINK: remove mavlink send_buf usage 2019-04-23 09:41:00 +10:00
Pierre Kancir 4dbac3de60 GCS_Common: remove mavlink send_buf usage 2019-04-23 09:41:00 +10:00
Peter Barker b22d3a0103 AP_Math: avoid casting floats to int32's for temporary variables
Note the use of 64-bit integer arithmetic further down, however
2019-04-23 09:36:17 +10:00
Pierre Kancir 92822a7f01 SITL: fix header 2019-04-23 09:20:43 +10:00
Pierre Kancir 20928ff8da AP_Beacon: fix header 2019-04-23 09:20:43 +10:00
Pierre Kancir ff4587a33a AP_Math: move location define to Location class 2019-04-23 09:20:43 +10:00
Pierre Kancir 1854681e09 AP_Math: use past_interval_finish_line and line_path_proportion from Location 2019-04-23 09:20:43 +10:00
Pierre Kancir 8168b3c8e4 AP_Landing: use past_interval_finish_line and line_path_proportion from Location 2019-04-23 09:20:43 +10:00
Pierre Kancir 4f31c3dcd5 AP_Math: move line_path_proportion to Location 2019-04-23 09:20:43 +10:00
Pierre Kancir e06d7dbbf7 AP_Math: move location_passed_point to Location and rename 2019-04-23 09:20:43 +10:00
Mark Whitehorn 732ed17f2f AC_AttitudeControl: bodyframe roll log target attitude bugfix 2019-04-23 09:15:55 +10:00
Mark Whitehorn d72f2feeb5 AC_AttitudeControl: constrain input euler roll and pitch in bodyframe roll controls
and limit integrated error in bf_roll_pitch_yaw_3
2019-04-23 09:15:55 +10:00
Andrew Tridgell c7be7d7343 AP_IOMCU: cope with IOMCU reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell dbe9e30edc AP_InternalError: added iomcu_reset critical error 2019-04-22 16:53:35 +10:00
Andrew Tridgell 0461692ea5 HAL_ChibiOS: enable watchdog on IOMCU 2019-04-22 16:53:35 +10:00
Andrew Tridgell 6181c66e5c AP_IOMCU: handle watchdog reset in IO firmware 2019-04-22 16:53:35 +10:00
Andrew Tridgell 9c6c4101c9 AP_Arming: make arm_checks() virtual
# Conflicts:
#	libraries/AP_Arming/AP_Arming.h
2019-04-22 16:53:35 +10:00
Andrew Tridgell 352546c9f0 HAL_ChibiOS: removed unsafe ISR disable for bl update
can't disable interrupts and call a fn that takes a mutex
2019-04-22 16:53:35 +10:00
Andrew Tridgell c63459c237 AP_HAL: added save/restore of attitude in backup registers 2019-04-22 16:53:35 +10:00
Andrew Tridgell 508aae8f2a HAL_ChibiOS: added save/restore of attitude in backup registers 2019-04-22 16:53:35 +10:00
Andrew Tridgell f7026b854e AP_AHRS: added save/restore of attitude in backup registers 2019-04-22 16:53:35 +10:00
Andrew Tridgell 730982b3c4 HAL_ChibiOS: fixed build with older gcc 2019-04-22 16:53:35 +10:00
Andrew Tridgell b8605c9ee6 AP_AHRS: save/restore home to backup registers
restore on watchdog reset

# Conflicts:
#	libraries/AP_AHRS/AP_AHRS_DCM.cpp
2019-04-22 16:53:35 +10:00
Andrew Tridgell 2778a1b01e HAL_ChibiOS: save/restore home position in backup registers
# Conflicts:
#	libraries/AP_HAL_ChibiOS/hwdef/common/stm32_util.c
2019-04-22 16:53:35 +10:00
Andrew Tridgell bd84c0a8df AP_HAL: added save/restore of home to backup registers 2019-04-22 16:53:35 +10:00
Andrew Tridgell 034d476fa5 AP_InertialSensor: prevent watchdog in accelcal 2019-04-22 16:53:35 +10:00
Andrew Tridgell f0f36c6237 HAL_ChibiOS: fixed watchdog timeout setting 2019-04-22 16:53:35 +10:00
Andrew Tridgell 3b5463f061 HAL_ChibiOS: allow for delay in bootloader flash 2019-04-22 16:53:35 +10:00
Andrew Tridgell 2313970eaf GCS_MAVLink: added method to lockup autopilot
used for watchdog testing
2019-04-22 16:53:35 +10:00
Andrew Tridgell 2476927048 HAL_ChibiOS: don't call internalerror for iomcu 2019-04-22 16:53:35 +10:00
Andrew Tridgell 63d21d995a HAL_ChibiOS: setup watchdog_reset internal error 2019-04-22 16:53:35 +10:00
Andrew Tridgell d5c2b77573 AP_InternalError: added bit for watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell 0b20d972cd AP_Logger: prevent log erase from triggering watchdog 2019-04-22 16:53:35 +10:00
Andrew Tridgell 24c5bf42ae AP_Logger: force logging on an armed watchdog reset
and don't clear sdcard space
2019-04-22 16:53:35 +10:00
Andrew Tridgell 9ca67dc811 HAL_ChibiOS: implement was_watchdog_armed() 2019-04-22 16:53:35 +10:00
Andrew Tridgell 4a3687fcf6 AP_HAL: added was_watchdog_armed()
allow decisions to be based on whether this is a watchdog reset and we
were armed
2019-04-22 16:53:35 +10:00
Andrew Tridgell a4ab44a7b3 AP_BoardConfig: auto-restore safety state on watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell 1acb7e977f HAL_ChibiOS: added ability to restore safety state on watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell 8d2f094257 AP_HAL: added was_watchdog_safety_off()
used to restore safety state on watchdog reset
2019-04-22 16:53:35 +10:00
Andrew Tridgell 54cbf8ea9e HAL_ChibiOS: change to 2s timeout on watchdog
a bit more of a safety net against false positives for stable release
2019-04-22 16:53:35 +10:00
Andrew Tridgell 58aca561fd HAL_ChibiOS: fixed watchdog on H7 2019-04-22 16:53:35 +10:00
Andrew Tridgell 21aee52604 AP_Compass: flag compass cal as long expected delay 2019-04-22 16:53:35 +10:00
Andrew Tridgell 19526b5826 HAL_ChibiOS: implement scheduler->expect_delay_ms() 2019-04-22 16:53:35 +10:00
Andrew Tridgell 215c41dbb1 AP_Logger: handle long delays in opening log files 2019-04-22 16:53:35 +10:00
Andrew Tridgell 88352b73bb AP_HAL: added expect_delay_ms() to Scheduler
used to notify scheduler of long expected delay in main thread
2019-04-22 16:53:35 +10:00
Andrew Tridgell 8100c71a96 HAL_ChibiOS: added commented out test code for watchdog 2019-04-22 16:53:35 +10:00
Andrew Tridgell 8d57a6a86a AP_Baro: skip cal on watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell bbe4c92b58 AP_Airspeed: skip cal on watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell 9c48d001ac AP_InertialSensor: skip gyro cal on watchdog reset 2019-04-22 16:53:35 +10:00
Andrew Tridgell 03886f241e HAL_ChibiOS: implement was_watchdog_reset() 2019-04-22 16:53:35 +10:00
Andrew Tridgell 7f96d4ad12 AP_HAL: added was_watchdog_reset() 2019-04-22 16:53:35 +10:00
Andrew Tridgell a5309b3afa HAL_ChibiOS: record reason for reset
allows us to tell if reset was due to watchdog
2019-04-22 16:53:35 +10:00
Andrew Tridgell 272c277056 HAL_ChibiOS: use BRD_OPTIONS to enable watchdog 2019-04-22 16:53:35 +10:00
Andrew Tridgell 288569e156 AP_BoardConfig: added BRD_OPTIONS
used to enable STM32 watchdog
2019-04-22 16:53:35 +10:00
Andrew Tridgell c09df1ea7b HAL_ChibiOS: added IWDG watchdog support
this resets the MCU if the main loop stops for 1 second
2019-04-22 16:53:35 +10:00
Andrew Tridgell c988eb2fd9 AP_InertialSensor: don't set INS_ENABLE_MASK to found IMU mask 2019-04-22 14:56:59 +10:00
Andrew Tridgell c7ed4bfbcc AP_InertialSensor: allow testing of IMU failure 2019-04-22 14:56:42 +10:00
Andrew Tridgell e18f40cc08 SITL: added IMU failure masks 2019-04-22 14:56:30 +10:00
Andrew Tridgell 5e1f9068a1 AP_AHRS: ensure AHRS never uses an unhealthy gyro 2019-04-22 14:56:25 +10:00
Andrew Tridgell 480d33706c AP_IOMCU: fixed safety state on reboot
fixes issue #11031
2019-04-20 14:48:59 +10:00
Michael du Breuil b0f4611ddc AP_HAL_ChibiOS: Fix python3 with F7 builds 2019-04-20 12:33:44 +10:00
Leonard Hall 32cc642b2e AC_AttitudeControl: Formatting Changes 2019-04-20 09:31:56 +09:00
Peter Barker 146b0c69d6 AP_Logger: check return values from get_log_data 2019-04-19 13:34:42 +10:00
Peter Barker 0b44525bda AP_InternalError: correct cast in debug statement 2019-04-19 08:44:41 +09:00
Randy Mackay 6fbbabd333 AC_WPNav: add origin_and_destination_are_terrain_alt accessor 2019-04-19 07:45:52 +09:00
Randy Mackay 5ebaeaf5d2 AC_WPNav: add rangefinder_used accessor
used by zigzag mode to determine if terrain altitudes can be used
2019-04-19 07:45:52 +09:00
Michael du Breuil a2ac0875a7 AP_Airspeed: Fix race condition in SDP3X leading to garbage data 2019-04-18 15:28:46 -07:00
Randy Mackay 54a505dade AC_PID: fix filt_d_hz accessor
this accessor is not actually used
2019-04-18 10:26:56 +09:00
tom pittenger cd920c7609 AP_ICEngine: sanity check param values 2019-04-17 16:48:51 -07:00
IamPete1 3b9125956e AP_ICEngine: add idle throttle percentage 2019-04-17 16:48:51 -07:00
Randy Mackay 69882d9898 AP_HAL_ChibiOS: fix Pixhawk4 readme 2019-04-17 09:08:41 +09:00
Siddharth Purohit 6dc94b0e3d Compass: fix compass orientation for AK09916 on Cube 2019-04-17 06:47:14 +10:00
Peter Barker c6115f4ff3 AP_Mission: add string for spline waypoint 2019-04-16 21:41:58 +10:00
Peter Barker e166286ff5 AP_SmartRTL: Bitmask is now a template 2019-04-16 15:12:07 +10:00
Peter Barker 606614adb9 SRV_Channel: Bitmask is now a template 2019-04-16 15:12:07 +10:00
Peter Barker c143ec47da GCS_MAVLink: Bitmask is now a template 2019-04-16 15:12:07 +10:00
Peter Barker 0dd71e7b3a AP_HAL_SITL: Bitmask is now a template 2019-04-16 15:12:07 +10:00
Peter Barker 3c3b12ba77 AP_HAL_ChibiOS: Bitmask is now a template 2019-04-16 15:12:07 +10:00
Peter Barker e51a0a7a52 AP_Common: make Bitmask a template on number of bits 2019-04-16 15:12:07 +10:00
Randy Mackay 4e494d5a63 AC_PosControl: minor comment fix to pre-arm checks 2019-04-16 11:23:46 +09:00
Randy Mackay 0624f6b8c3 AC_PosControl: minor comment fix 2019-04-16 11:23:46 +09:00
Randy Mackay cae020c307 AC_PID: minor format fix 2019-04-16 11:23:46 +09:00
Michael du Breuil b31cd1adb5 AP_RangeFinder: Remove pre arm distance check 2019-04-16 11:00:32 +09:00
Randy Mackay c2318503db RC_Channel: fix-up OPTION param docs 2019-04-16 10:56:23 +09:00
Arjun Vinod 66bdabfa26 RC_Channel: updated the parameter docs 2019-04-16 10:47:26 +09:00
Arjun Vinod 54302d4943 RC_Channel: added left out copter flight modes as auxiliary switch options 2019-04-16 10:47:25 +09:00
Michael du Breuil 7b7b852c75 AP_HAL_Linux: fix GCC warning in storage 2019-04-15 17:46:44 -07:00
Michael du Breuil 4a01cc1666 AH_HAL_Linux: add heap support to the HAL 2019-04-15 17:46:44 -07:00
Peter Barker 11dcdc58e0 AP_Math: clean up includes a little 2019-04-16 10:00:29 +10:00
Peter Barker 2352dd3f12 AP_Common: clean includes up in Location.h 2019-04-16 10:00:29 +10:00
Peter Barker efb98437e6 GCS_MAVLink: move setting of compass sys_status bits up 2019-04-16 09:48:23 +10:00
Andrew Tridgell 967c6462cb HAL_ChibiOS: rename Pixhawk4Pro to Pixhawk6 2019-04-16 04:33:17 +10:00
Andrew Tridgell ac7e969aae SITL: improve airspeed in FlightAxis for RF8
use 3D wind to get airspeed along X axis of aircraft
2019-04-15 10:07:54 +10:00
Michael du Breuil cc679db55b AP_GPS: Log reciever status to GPS SD card
This improves log analysis of bad GPS health messages when you have a
report of bad GPS health but lost the MAVLink message, or didn't have
access to the autopilot log with the information for some reason.
2019-04-14 13:24:36 -07:00
Michael du Breuil 32c583bd20 AP_GPS: Remove external event from GPS data stream
If the event pin floats, this can lead to UART congestion, causing the
EKF to reject the GPS data, and the vehicle will drift around the sky in
a most disturbing manner
2019-04-14 13:24:36 -07:00
Peter Barker 1e606cdc5b AP_Motors: make desired spool state and spool state enum-classes
This will help avoid getting the enumerations mixed up
2019-04-14 12:18:03 +09:00
Peter Barker 79fa39e13b AC_AutoTune: cope with renamed spool state enums 2019-04-14 12:18:03 +09:00
Randy Mackay 54fe1dad82 AP_Motors: add missing break to Hexa-H 2019-04-13 10:36:36 +09:00
murata df85409a4c AP_Motors: Integrate processing result setting true 2019-04-13 10:29:49 +09:00
Andrew Tridgell 32ebd2080f HAL_ChibiOS: mark SDIO and SDMMC IO as pullup
this is needed for boards such as PixhackV3 which don't have hardware
pullups. Thanks to Hongle for reporting this.
2019-04-12 19:44:00 +10:00
Michael du Breuil 6dd05db3b7 AP_Rangefinder: Fix VL53L1X ignoring return status 2019-04-12 17:23:19 +10:00
Michael du Breuil f1d5269f9e AP_Scritping: remove more libraries from the sandbox 2019-04-11 23:03:20 -07:00
Michael du Breuil d7e71f85b8 AP_Scripting: Add a debug level param 2019-04-11 23:03:20 -07:00
Michael du Breuil 200870e7a0 AP_Notify: Add singleton, expose string message player 2019-04-11 23:03:20 -07:00
Michael du Breuil e7d59514d9 AP_Scripting: Add an initial generator 2019-04-11 23:03:20 -07:00
Randy Mackay a2373ebca2 AP_Motors: add support for Hexa-H frame
same as X frame except that middle motors are closer to center
2019-04-12 09:32:12 +09:00
Leonard Hall c00ee6aac5 AC_AttitudeControl: increase rate I gain to match P gain 2019-04-12 09:28:24 +09:00
Leonard Hall e170beaf8c AC_AttitudeControl: reduce throttle mix for manual modes 2019-04-12 09:28:22 +09:00
Arjun Vinod 77a7c1bdf7 RC_Channel: fixed typo 2019-04-12 09:23:42 +10:00
murata 49b0a00182 AP_RangeFinder: Delete unnecessary judgment 2019-04-11 06:11:47 -07:00
Andrew Tridgell 006583d812 HAL_ChibiOS: fixed iomcu build with flash driver 2019-04-11 13:22:53 +10:00
Andrew Tridgell 7c726b2f42 HAL_ChibiOS: use hal.flash API 2019-04-11 13:22:53 +10:00
Andrew Tridgell 7a70a888b5 HAL_SITL: added empty flash driver 2019-04-11 13:22:53 +10:00
Andrew Tridgell 6bae0960df HAL_Linux: added empty flash driver 2019-04-11 13:22:53 +10:00
Andrew Tridgell 92e509a418 HAL_Empty: added empty flash driver 2019-04-11 13:22:53 +10:00
Andrew Tridgell 36f7116054 HAL_ChibiOS: implement flash driver 2019-04-11 13:22:53 +10:00
Andrew Tridgell 65d051cbc9 AP_HAL: added hal.flash driver
needed for semaphore
2019-04-11 13:22:53 +10:00
Randy Mackay 9fa742e1be AP_InertialSensor: fix compiler warning in BMI088 driver 2019-04-11 10:32:51 +09:00
Peter Barker 9c9ebb908c AC_AttitudeControl: store integrators temps in correct type 2019-04-10 09:37:19 +09:00
Peter Barker 70aed0f29c AC_AttitudeControl: store acro passthrough values as float
The function which sets these has floats, and the function we send them
to uses floats... so store them as floats...
2019-04-10 09:37:19 +09:00
Peter Barker 540d4ae796 AP_Logger: RangeFinder library now does its own logging
Since we were poking the backends directly it should probably be over
there
2019-04-09 22:17:58 +10:00
Peter Barker dd567ad18a AP_RangeFinder: handle RFND logging 2019-04-09 22:17:58 +10:00
Pierre Kancir 36f12e9818 AP_GPS: use get_distance_NED 2019-04-09 20:59:48 +10:00
Pierre Kancir 2adbfed70a AP_Follow: use get_distance_NED 2019-04-09 20:59:48 +10:00
Pierre Kancir 0b16d7576f AP_AHRS: use get_distance_NED 2019-04-09 20:59:48 +10:00
Pierre Kancir 121e5d0abf AP_Math: move location_3d_diff_NED to Location and rename 2019-04-09 20:59:48 +10:00
Michael du Breuil a8a71db258 AP_HAL_SITL: Correct range check on UART ports
Coverity CID 308362
2019-04-09 13:01:33 +10:00
Andrew Tridgell 4b0339d940 RC_Channel: fixed crash in RC_ProtocolTest example test 2019-04-09 12:50:17 +10:00
Andrew Tridgell d57ea43ea6 SITL: fixed crash in example code run 2019-04-09 12:50:17 +10:00
murata dc452d41d2 AP_HAL: Change to shared CRC16 method 2019-04-09 12:50:17 +10:00
murata 987966a6d7 AP_RCProtocol: Change to shared CRC16 method 2019-04-09 12:50:17 +10:00
Adolfo 428d4d4574 AP_RangeFinder: fixed TeraRangerI2C refresh rate and status 2019-04-09 12:22:19 +10:00
Michael du Breuil 334b1622e1 AP_AHRS: Allow checking all EKF cores for health 2019-04-09 10:53:25 +10:00
Michael du Breuil fe3b29a088 AP_NavEKF3: Allow checking all cores for health 2019-04-09 10:53:25 +10:00
Michael du Breuil 7f639c1bb2 AP_NavEKF2: Allow checking all cores for failure 2019-04-09 10:53:25 +10:00
Peter Barker 6364e6d4c1 AC_WPNav: stop casting poscontrol's roll/pitch/yaw to int32_t 2019-04-09 09:21:12 +09:00
Peter Barker 5c6c153467 AP_InternalError: make constraining NaNs an internal error 2019-04-09 10:18:43 +10:00
Peter Barker 381bb41a5e AP_Math: make constraining NaNs an internal error 2019-04-09 10:18:43 +10:00
Andrew Tridgell 0f7281fbb6 AP_Declination: added generator doc 2019-04-09 10:12:14 +10:00
Peter Barker e0fc73776c AP_InertialSensor: return floats from raw-sample-rate getters
The underlying type changed at some stage but the getters did not
2019-04-09 10:02:16 +10:00
Peter Barker 08cbf18958 GCS_MAVLink: header include fixes for RSSI changes 2019-04-09 09:33:13 +10:00
Peter Barker 57c4cbc771 AP_Logger: use RSSI singleton for logging 2019-04-09 09:33:13 +10:00
Peter Barker dcb6e74c3f AP_RSSI: make type enum class, remove default clause in type switch 2019-04-09 09:31:47 +10:00
Peter Barker f0379ff7f0 AP_Airspeed: move logging of ARSP into Airspeed library 2019-04-09 09:29:35 +10:00
Peter Barker d90e554608 AP_Logger: move logging of ARSP into Airspeed library 2019-04-09 09:29:35 +10:00
Peter Barker 59ef486da0 AP_Airspeed: add AP::airspeed() to get airspeed singleton 2019-04-09 09:29:35 +10:00
Peter Barker 4ab13b37ac AP_Airspeed: logger uses the singleton for logging airspeed now 2019-04-09 09:29:35 +10:00
Peter Barker 26d8627d18 AP_Logger: use airspeed singleton for logging
This avoids the header dependency on airspeed
2019-04-09 09:29:35 +10:00
Peter Barker 57b33acb89 AP_Declination: generate tables with float designator 2019-04-08 12:59:17 -07:00
Pierre Kancir 5a7081b457 GCS_MAVLink: move check_latlng to Location 2019-04-08 12:56:01 -07:00
Pierre Kancir e787922ab0 AP_Math: move check_latlng to Location 2019-04-08 12:56:01 -07:00
Pierre Kancir 29b2d7996b AP_Common: move check_latlng to Location 2019-04-08 12:56:01 -07:00
Pierre Kancir 54bc960ca3 AP_AHRS: move check_latlng to Location 2019-04-08 12:56:01 -07:00
Andrew Tridgell a767c15986 HAL_ChibiOS: change CUAVv5Nano default PWM count to 11 2019-04-08 08:21:39 -07:00
Andrew Tridgell c6637fbe38 HAL_ChibiOS: fixed CUAVv5Nano uarts 2019-04-08 08:21:39 -07:00
Andrew Tridgell ce4abf8dcb HAL_ChibiOS: support for CUAVv5Nano board
F765 with no IOMCU
2019-04-08 08:21:39 -07:00
Pierre Kancir ad75b1e56f AP_Scripting: update locations_are_same to same_latlon_as 2019-04-08 08:05:05 -07:00
Pierre Kancir b10e75f4e1 AP_Math: move locations_are_same to Location and rename to same_latlon_as 2019-04-08 08:05:05 -07:00
Pierre Kancir a700b647db AP_HAL_SITL: fix ‘heap’ shadowing 2019-04-08 08:02:40 -07:00
Pierre Kancir ebdcfdf65b SITL: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 6fbcb21ae3 AP_Terrain: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 51437ccc53 AP_Soaring: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir b3a1c9c90c AP_NavEKF3: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 50e99b6e1a AP_NavEKF2: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 058cade92c AP_Math: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 49be270377 AP_Landing: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 25507d4d7b AP_L1_Control: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 4ea10ce5f5 AP_GPS: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir d6277390f4 AP_Beacon: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 78ce60aa95 AP_Avoidance: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 6da820ac7b AP_AHRS: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir e4987f17b9 AC_Fence: use get_distance_NE instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 3f5a6a243c AP_NavEKF2: use get_distance instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 0b50f32c32 AP_Landing: use get_distance instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 6397cb0c0e AP_Arming: use get_distance instead of location_diff 2019-04-08 08:00:52 -07:00
Pierre Kancir 00fa07ef33 AP_Math: move location_diff to Location and rename 2019-04-08 08:00:52 -07:00
Andrew Tridgell fa63243eb0 AP_InertialSensor: added BMI088 accel config retry 2019-04-08 19:58:12 +10:00
Randy Mackay 928d7c7e71 AP_MotorsHeli: add range checking to ext_gyro_gain 2019-04-08 15:24:00 +09:00
Andrew Tridgell fef42c6219 AP_Baro: fixes for LPS2XH driver
use fractional temperature, and check status register to ensure we
have data available
2019-04-08 12:52:19 +10:00
Andrew Tridgell f998a74adf GCS_MAVLink: don't report SCALED_PRESSURE2 with a non-existant airspeed sensor 2019-04-08 12:52:19 +10:00
Randy Mackay d2a2caf3a6 OpticalFlow: replace ENABLE with TYPE 2019-04-08 11:26:59 +09:00
Randy Mackay bbd051b246 GCS_MAVLink: send OPTICAL_FLOW messages to optical flow driver 2019-04-08 11:26:59 +09:00
Randy Mackay 97b5c2b031 OpticalFlow: add MAVLink driver 2019-04-08 11:26:59 +09:00
Randy Mackay 5e9aebd678 AP_RangeFinder: BlueRobotics Ping driver 2019-04-08 09:43:41 +09:00
Randy Mackay 65966ac957 AP_RangeFinder: add LidarLitev3HP and PWM to TYPE param desc 2019-04-08 09:43:41 +09:00
Leonard Hall 6e76dff930 AC_AttitudeControl: remove unused set_throttle_out_unstabilized 2019-04-08 09:42:21 +09:00
Leonard Hall c4e3c4142e AP_AutoTune: replace set_throttle_out_unstabilized 2019-04-08 09:42:21 +09:00
Andrew Tridgell edd793c152 HAL_ChibiOS: fixed fallback to microSD for storage
this is used when FRAM fails on a board with microSD support. The
double init caused the validate() in the FATFS code to fail
2019-04-07 13:37:57 +10:00
Michael du Breuil 27ad9ac3ca AP_GPS: Refactor get_singleton() to return a pointer 2019-04-05 23:09:47 -07:00
Peter Barker ce53ae63ae AP_Math: use /2 in place of *0.5f
MdB says:

dividing by 2 is actually optimal. It's type correct for all usage, and the compiler generates the multiplication if it's float, and sticks with divide for integers

Godbolt indicates on any optimization level (O1-O3, and Os) that the compiler will correctly optimize the / 2 into a float multiplication if using a float, but if using integer types in the template it will stick with the / 2 which is faster then doing the conversions to/from float.
2019-04-05 23:04:17 -07:00
Peter Barker 31daaf9933 GCS_MAVLink: add floating-point-constant designators 2019-04-05 23:04:17 -07:00
Peter Barker 85b737db31 AP_Scheduler: add floating point specifier on constant 2019-04-05 23:04:17 -07:00
Peter Barker 39ae285a7f AP_Math: add floating point constant designators 2019-04-05 23:04:17 -07:00
Peter Barker ef860db558 AP_InertialSensor: add floating point constant designators 2019-04-05 23:04:17 -07:00
Peter Barker 8c68ff2e91 AP_Devo_Telem: add floating point constant designators 2019-04-05 23:04:17 -07:00
Peter Barker 5455d27e84 AP_Compass: specify floating point constants
Probably indicates compiler floating-point-constants directive isn't
working
2019-04-05 23:04:17 -07:00