Commit Graph

21654 Commits

Author SHA1 Message Date
Peter Barker b9dbfff0d0 GCS_MAVLink: announce capabilities compass-cal and param float for all vehicles 2019-11-05 11:26:23 +11:00
Mark Whitehorn 23ee9eef5f AP_NavEKF2: fail prearm on any core setup failure 2019-11-05 11:23:54 +11:00
Mark Whitehorn 489ae83604 AP_NavEKF2: handle core setup failures 2019-11-05 11:23:54 +11:00
Mark Whitehorn 7c6630e216 AP_NavEKF2: EKF2 prefix for prearm failures and camelCase 2019-11-05 11:23:54 +11:00
Mark Whitehorn 95ea6ad807 AP_NavEKF2: provide reasons for init failures 2019-11-05 11:23:54 +11:00
Peter Barker 561920aad6 AC_AutoTune: cope with change in namespace of LogEvent enum 2019-11-05 08:19:26 +08:00
Peter Barker 8686fb30f8 RC_Channel: remove old comments to do with gripper grab/release 2019-11-05 08:19:26 +08:00
Peter Barker 08d99b96ec AP_Gripper: log event when gripper grabbed or released 2019-11-05 08:19:26 +08:00
Peter Barker daf071f7f6 RC_Channel: cope with change in namespace of LogEvent enum 2019-11-05 08:19:26 +08:00
Peter Barker 04c005a213 AP_Parachute: cope with change in namespace of LogEvent enum 2019-11-05 08:19:26 +08:00
Peter Barker f337d011e7 AP_Logger: make LogEvent an enum class, split off LogDataID
We were mixing the enumeration values across different messages, which
isn't great
2019-11-05 08:19:26 +08:00
Andrew Tridgell 381af923c5 AP_Scripting: re-gen 2019-11-04 13:06:45 +11:00
Andrew Tridgell 8ad2920151 AP_SerialLED: check for valid channel 2019-11-04 13:06:08 +11:00
Andrew Tridgell bc7651cfcb AP_Scripting: fixed chan check in LED bindings 2019-11-04 13:05:52 +11:00
Andrew Tridgell 48ba63ba11 AP_Scripting: added example script for LEDs
show LED values based on roll
2019-11-04 13:01:59 +11:00
Andrew Tridgell 7caac67487 AP_Scripting: re-gen bindings 2019-11-04 13:01:59 +11:00
Andrew Tridgell ea681c7a1e AP_Scripting: added bindings for LEDs 2019-11-04 13:01:59 +11:00
Andrew Tridgell 38ba08e0ce AP_Scripting: increase default heap size
we will need a better fix than this. Adding a couple of bindings costs
us nearly 1k of ram even if unused
2019-11-04 13:01:59 +11:00
Andrew Tridgell e598c69a22 SRV_Channel: added singleton access for Lua 2019-11-04 13:01:59 +11:00
Andrew Tridgell fbfe11f9ed AP_Notify: implement SITL serial LEDs 2019-11-04 13:01:59 +11:00
Andrew Tridgell fc4577dce8 HAL_SITL: support simulated serial LEDs 2019-11-04 13:01:59 +11:00
Andrew Tridgell ae289052e9 SITL: added LED state 2019-11-04 13:01:59 +11:00
Andrew Tridgell 513b279f46 AP_SerialLED: added library API to access WS2812 LEDs
used by Lua scripting
2019-11-04 13:01:59 +11:00
Andrew Tridgell 1db4afb844 HAL_ChibiOS: enable MatekF765 LED pin
- use tonealarm for buzzer
 - add more baro options
2019-11-04 08:14:27 +11:00
Andrew Tridgell 43da68ae59 GCS_MAVLink: added ftp_push_replies() 2019-11-02 22:52:06 +11:00
Andrew Tridgell 10ed848dd7 GCS_MAVLink: fixed comment 2019-11-02 22:52:06 +11:00
Andrew Tridgell 7c35d2d56a AP_Filesystem: make unlink do both directories and files on posix
match FATFS behaviour
2019-11-02 22:52:06 +11:00
Andrew Tridgell 15fc3f3d75 GCS_MAVLink: fixed session handling for ftp 2019-11-02 22:52:06 +11:00
Andrew Tridgell 00549d13fa GCS_MAVLink: rename emit_dir_entry to gen_dir_entry
comment from Sid
2019-11-02 22:52:06 +11:00
Andrew Tridgell e5321b6201 GCS_MAVLink: fixes from my review 2019-11-02 22:52:06 +11:00
Michael du Breuil 6f538dd45a GCS_MAVLink: Initial FTP support 2019-11-02 22:52:06 +11:00
Michael du Breuil dc0e4bea53 AP_Terrain: Don't include all of AP_FS 2019-11-02 22:52:06 +11:00
Michael du Breuil b0e232b30b AP_Filesystem: Split the available define to it's own header 2019-11-02 22:52:06 +11:00
Michael du Breuil 14bf946fe2 AP_Filesystem: Add dir type to fatfs 2019-11-02 22:52:06 +11:00
Andrew Tridgell 236ce28339 AP_InertialSensor: updated for heater changes 2019-11-02 16:31:04 +11:00
Andrew Tridgell a11f2b5cfb AP_IOCMU: added singleton in AP namespace 2019-11-02 16:31:04 +11:00
Andrew Tridgell 64aae4f67e HAL_ChibiOS: removed heater control 2019-11-02 16:31:04 +11:00
Andrew Tridgell f458d58dde AP_BoardConfig: moved heater PI to AP_BoardConfig
and made tunable
2019-11-02 16:31:04 +11:00
Andrew Tridgell ad69f6802f AC_PID: added AC_PI controller
will be used by IMU heater
2019-11-02 16:31:04 +11:00
Michael du Breuil d623da0de6 AP_GPS: Always send GPS2_RAW after we've seen the second GPS
This significantly improves the GCS's ability to correctly display whats
happening with the second GPS.
2019-11-02 10:35:08 +11:00
Peter Barker 4838ee6f58 GCS_MAVLink: check reply channel for space rather than current channel 2019-11-02 10:34:03 +11:00
Andrew Tridgell d8445928d1 HAL_ChibiOS: fixed SPI timeout bug
thanks to CUAV for noticing
2019-11-01 22:11:17 +11:00
Randy Mackay 45ce8e8d79 AP_ToshibaCAN: add get_present_mask for use in pre-arm checks 2019-11-01 16:09:52 +08:00
Randy Mackay ad55b961a4 AP_ToshibaCAN: consume current sent by ESC 2019-11-01 16:09:52 +08:00
Randy Mackay f6b669e3d8 AP_ToshibaCAN: rename millivolts to voltage_mv
also add some comments
2019-11-01 16:09:52 +08:00
Peter Barker 3e4e7bdd18 AC_AutoTune: Log_Write events directly rather than via subclass 2019-11-01 14:47:52 +08:00
Andrew Tridgell 6c0c09e690 Revert "HAL_ChibiOS: lower speed of mpu9250"
This reverts commit a4e51f3942.

This commit led to more errors on the first IMU on a normal
CubeBlack. I don't yet know why this happens, but I'm removing this in
master for now as it affects primary IMU
2019-11-01 11:20:32 +11:00
Andrew Tridgell 22f0e8a065 HAL_ChibiOS: added RM3100 in f303-GPS 2019-11-01 10:53:53 +11:00
Andrew Tridgell 207dffba88 HAL_ChibiOS: moved compass support for f103-GPS
not needed for other builds
2019-11-01 10:53:53 +11:00
Andrew Tridgell 9e9be95943 HAL_Linux: fixed build 2019-11-01 10:53:53 +11:00
Andrew Tridgell 53fe84e88a AP_FlashStorage: fix for F3 MCUs 2019-11-01 10:53:53 +11:00
Andrew Tridgell 1d44718016 HAL_ChibiOS: added f303-periph and f303-GPS firmware 2019-11-01 10:53:53 +11:00
Andrew Tridgell 7df87b5a8b AP_UAVCAN: fix for renamed AP_HAL::CAN 2019-11-01 10:53:53 +11:00
Andrew Tridgell bc1de7a208 HAL_ChibiOS: support STM32F3xx MCUs 2019-11-01 10:53:53 +11:00
Andrew Tridgell 29a2351fd0 AP_HAL: rename AP_HAL::CAN to AP_HAL::CANHal
avoid conflict with ChibiOS STM32F3xx headers
2019-11-01 10:53:53 +11:00
Andrew Tridgell 3750ed2925 AP_BLHeli: fixed critical errors caused by BLHeli code 2019-11-01 08:44:54 +11:00
Leonard Hall 5979c750f9 AP_Motors: yaw headroom fix 2019-10-31 16:12:11 +09:00
Leonard Hall 3ca713fdcb AC_AttitudeControl: limit ATC_MOT_MIX_MAX in case of a fly away 2019-10-31 12:23:48 +08:00
Peter Barker 39863bf0b4 AP_Proximity: remove empty constructors
Well, some of them were only essentially empty
2019-10-31 11:58:15 +08:00
Peter Barker 5b2689a7a8 AP_Proximity: use rangefinder singleton 2019-10-31 11:58:15 +08:00
Peter Barker 34eff6d1c6 GCS_MAVLink: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Peter Barker daba5e26a5 AC_Logger: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Peter Barker 64281eee60 AC_Arming: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Peter Barker 0d624785f3 AC_Avoid: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Peter Barker 8fe16f5627 AP_Proximity: use enum class for status 2019-10-31 11:58:15 +08:00
Peter Barker f5f6eb8231 AP_Proximity: correct checking of valid instance in various getters 2019-10-31 11:58:15 +08:00
Peter Barker 5c3a0926a1 GCS_MAVLink: adjust for proximity rangefinder types changing namespacing 2019-10-31 11:58:15 +08:00
Peter Barker de7e3acc29 AP_Proximity: use enum class for proximity type
Removes verbiage from AP_Proximity.cpp
2019-10-31 11:58:15 +08:00
Peter Barker 4962b7a98e AP_Proximity: stop passing serial manager around, use singleton 2019-10-31 11:58:15 +08:00
Leonard Hall 368a8028ae Heli: Prevent loss of yaw control during large angle recovery 2019-10-31 11:53:27 +08:00
Leonard Hall 5afb5b4956 AC_AttitudeControl: Prevent loss of yaw control during large angle recovery. 2019-10-31 11:53:27 +08:00
Randy Mackay 5b8d7a35e7 AP_BLHeli: minor style fix for get_average_moto_frequency_hz 2019-10-31 12:20:41 +09:00
Andy Piper 6381183aa3 AP_InertialSensor: expose harmonic notch tracking mode 2019-10-31 11:18:40 +08:00
Andy Piper b242c5071b AP_BLHeli: add get_average_motor_frequency_hz() for dynamic filtering
correctly calculate rpm from erpm
2019-10-31 11:18:40 +08:00
Andy Piper 22111f59e8 Filter: add harmonic notch dynamic tracking mode
update harmonic notch REF docs
2019-10-31 11:18:40 +08:00
Leonard Hall a8913d0df5 AP_Motors: Add full yaw range calculation back 2019-10-31 11:04:40 +08:00
Leonard Hall f840f96276 AP_Motors: Freeze motor lost index on enabling thrust boost 2019-10-31 10:49:45 +08:00
Randy Mackay f24afbcf4b AP_NavEKF3: initialise pre-arm failure message 2019-10-31 09:51:27 +08:00
Randy Mackay cc5facf6d2 AP_NavEKF2: initialise pre-arm failure message 2019-10-31 09:51:27 +08:00
Mirko Denecke fe46dc34d4 AP_RCProtocol: remove duplicated definition from protocol_detected 2019-10-31 08:24:30 +11:00
Michael du Breuil 38e17e2068 AP_Scripting: Add Location get_distance_NED and get_distance_NE
Fixes a regression with nil punning which broke Location:offset() and
adds a test script that is suitable for CI to test this sort of thing
2019-10-31 07:10:55 +11:00
Siddharth Purohit 8c413d3c09 HAL_ChibiOS: fix writing into a NULL pointer CANFD interrupt 2019-10-30 22:15:04 +11:00
Randy Mackay 96616343ce GCS_MAVLink: mission item support more mav frames 2019-10-30 18:27:07 +08:00
Andrew Tridgell ecd9e45568 AP_Motors: switched tricopter to use rc_write_angle()
simplies tricopter handling
2019-10-30 16:01:15 +08:00
Andrew Tridgell 1fe146c409 AP_Compass: remove expected error
this happens with AK09916 probing on invensense sensor
2019-10-30 15:21:07 +11:00
Peter Barker a08443ff19 SITL: break out a SIM_SerialDevice base class, use it for SIM_Vicon 2019-10-29 18:41:13 +11:00
Mark Whitehorn 6e73feca5c AP_NavEKF2: add prearm failure message for null core pointer 2019-10-29 11:59:29 +08:00
Mark Whitehorn 3e21ef1389 AP_NavEKF3: add prearm failure message for null core pointer 2019-10-29 11:59:29 +08:00
Andrew Tridgell 8f14ea9e80 HAL_ChibiOS: enable advanced timers if we have any N PWM channels 2019-10-29 13:09:14 +11:00
Andrew Tridgell ff30ba87bc HAL_ChibiOS: fixed build of sparky2
running out of flash
2019-10-29 12:15:12 +11:00
yaapu dddfaa256f Ap_Frsky_Telem: replaced the passthrough scheduler with a WFQ one.
This replaces the default scheduler with a WFQ one
2019-10-29 10:27:17 +11:00
Patrick José Pereira e18883fddf SITL: Add missing shove forces in SIM_Submarine
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-10-29 09:44:24 +11:00
Andrew Tridgell fcf9356e2c HAL_ChibiOS: fixed build of f103 rangefinder 2019-10-29 08:07:29 +11:00
Andrew Tridgell 76dd2f0838 AP_RangeFinder: fixed failover between rangefinders
this fixes the case where we have one rangefinder that can handle
short range and another that is good for long range but no good for
short range (quite common, eg radar and lidar)

If possible we want to use the first rangefinder that is in range for
the right orientation. If none are in range then use the first for the
orientation
2019-10-28 21:13:18 +11:00
vierfuffzig c97f785443 AP_BLHeli: fix eRPM conversion 2019-10-28 21:09:22 +11:00
Andrew Tridgell a4e51f3942 HAL_ChibiOS: lower speed of mpu9250
it isn't handling the full speed well, getting some SPI transfer
errors
2019-10-28 21:06:41 +11:00
Michael du Breuil 5bafd7d72c AP_GPS: Don't defeat the GCS message interval code 2019-10-28 00:26:28 -07:00
Andrew Tridgell 2708c99bfb AP_SerialManager: added set_protocol_and_baud()
used by AP_Periph for rangefinders
2019-10-28 15:53:16 +11:00
Andrew Tridgell 513fd4065b AP_Menu: use strtof() instead of atof() 2019-10-28 15:53:16 +11:00
Andrew Tridgell 34f5b40919 AP_IOMCU: use crc32_small() in AP_IOMCU
the slower speed is not noticible and this saves 1k ram
2019-10-28 15:53:16 +11:00
Andrew Tridgell 1ec921560e AP_WindVane: use strtof instead of atof
we don't need double precision
2019-10-28 15:53:16 +11:00
Andrew Tridgell c7fce7568e AP_Proximity: use strtof instead of atof
we don't need double precision
2019-10-28 15:53:16 +11:00
Andrew Tridgell 31b0663115 AP_Param: use strtof instead of atof
we don't need double precision
2019-10-28 15:53:16 +11:00
Andrew Tridgell ff2cfbaafb AP_Math: added smaller footprint crc32 2019-10-28 15:53:16 +11:00
Andrew Tridgell 5898dc757c AP_RangeFinder: use single precision string to float 2019-10-28 15:53:16 +11:00
Andrew Tridgell b5af1edf0d HAL_ChibiOS: moved app_descriptor to start of flash
this prevents the bootloader from finding it's own image as a false
posititve in searching for the app_descriptor
2019-10-28 15:53:16 +11:00
Andrew Tridgell 3800d7c084 HAL_ChibiOS: added crazyflie2 bootloader 2019-10-28 09:27:31 +11:00
murata 233fb94417 AP_Baro: Add I2C Access 2019-10-27 20:02:27 +11:00
Andrew Tridgell 3e72538f07 AP_TECS: added TECS_LAND_PMIN for min pitch in flare
this is useful to narrow the range of available pitch after flare
2019-10-26 18:05:17 +11:00
Andrew Tridgell d1bc0f236d HAL_ChibiOS: added pragma once for watchdog header 2019-10-26 15:32:10 +11:00
Andrew Tridgell fc8d9e8af5 HAL_ChibiOS: added RTC_BOOT_FWOK value for RTC reboot register
this is used in CAN firmware to know if the main app firmware has run
for long enough to be considered good
2019-10-26 15:32:10 +11:00
Peter Barker 6b92f3dae9 AP_NMEA_Output: add example 2019-10-26 00:38:27 +11:00
Andrew Tridgell 378d5c7a5a HAL_ChibiOS: added expected delay in bootloader flash 2019-10-25 21:36:55 +11:00
Andrew Tridgell 7fb44d1164 AP_ROMFS: fixed return size for uncompressed ROMFS 2019-10-25 21:36:55 +11:00
Andrew Tridgell 4593697634 GCS_MAVLink: use new flash_bootloader() API 2019-10-25 21:36:55 +11:00
Andrew Tridgell 81325ab14d HAL_ChibiOS: fixed multi-page bootloader update
and use new enum
2019-10-25 21:36:55 +11:00
Andrew Tridgell 9a778418a5 AP_HAL: use enum for flash_bootloader() result 2019-10-25 21:36:55 +11:00
Peter Barker f4433773be AP_Arming: adjust for rename of AP_UAVCAN_Server to AP_UAVCAN_DNA_Server 2019-10-25 20:24:54 +11:00
Peter Barker 4ddfe2715b AP_UAVCAN: adjust for rename of AP_UAVCAN_Server to AP_UAVCAN_DNA_Server 2019-10-25 20:24:54 +11:00
Peter Barker 8084e5c264 AP_UAVCAN: rename AP_UAVCAN_Server to AP_UAVCAN_DNA_Server 2019-10-25 20:24:54 +11:00
Andrew Tridgell 15f709e6ab SRV_Channel: added rate output channel docs 2019-10-25 17:11:56 +11:00
Andrew Tridgell 37566d079f AP_Motors: support direct rate outputs for multicopters 2019-10-25 17:11:56 +11:00
Andrew Tridgell 892f2d4256 SRV_Channel: added direct output of rate control on multicopters 2019-10-25 17:11:56 +11:00
Andrew Tridgell 6f9fda5094 HAL_ChibiOS: removed CAN_APP_VERSION_MAJOR from hwdef.dat 2019-10-25 13:52:43 +11:00
Michael du Breuil 0edc8a55a0 AP_Scripting: Add plane failsafe example script 2019-10-25 08:48:22 +08:00
Michael du Breuil 610dff61d8 AP_Scripting: Fix nullable arguments numbering, add location bearing 2019-10-25 08:48:22 +08:00
Michael du Breuil a99f67fd5b AP_Common: Add a radian method for getting location bearings 2019-10-25 08:48:22 +08:00
Michael du Breuil 82a7116142 AP_Scripting: Allow scripts to set the mode 2019-10-25 08:48:22 +08:00
Michael du Breuil c369139be0 AP_Logger: Support new ModeReason 2019-10-25 08:48:22 +08:00
Michael du Breuil cb1b236439 GCS_MAVLink: Use the vehicle singleton to directly set the flight mode 2019-10-25 08:48:22 +08:00
Michael du Breuil a44a7f541b AP_Vehicle: Support set_mode 2019-10-25 08:48:22 +08:00
Peter Barker 0f4337b7b1 AP_HAL_Linux: release mutex lock before calling write(c)
It instantly tries to take it, but we're still holding it, leading to
instant failure.

This mirrors the same code in AP_HAL_ChibiOS.
2019-10-25 11:38:16 +11:00
Andrew Tridgell 2818151a39 AP_RangeFinder: disable some incompatible drivers for AP_Periph 2019-10-25 09:35:27 +11:00
Andrew Tridgell 1bf037297d HAL_ChibiOS: set correct APJ_BOARD_ID for ZubaxGNSS 2019-10-25 09:35:27 +11:00
Andrew Tridgell 83eeca2586 AP_Scripting: fixes for modified AP_ROMFS API
need to use AP_ROMFS::free()
2019-10-24 22:03:43 +11:00
Andrew Tridgell c4d78a7d8c AP_OSD: fixes for modified AP_ROMFS API
need to use AP_ROMFS::free()
2019-10-24 22:03:43 +11:00
Andrew Tridgell ef1aaa6db0 AP_IOMCU: fixes for modified AP_ROMFS API
need to use AP_ROMFS::free()
2019-10-24 22:03:43 +11:00
Andrew Tridgell 1a1d7e0525 AP_ROMFS: support uncompressed romfs data 2019-10-24 22:03:43 +11:00
Andrew Tridgell 49e669aa1f HAL_ChibiOS: support uncompressed bootloader on f103-periph
this allows update with very low memory
2019-10-24 22:03:43 +11:00
Andrew Tridgell cffb434de8 HAL_ChibiOS: tweak stack on f103-periph 2019-10-24 22:03:43 +11:00
Andrew Tridgell a3b61a1b02 HAL_ChibiOS: enable ROMFS for ZubaxGNSS and f103-periph
this allows for bootloader update
2019-10-24 22:03:43 +11:00
Andrew Tridgell 513e483821 AP_Compass: disable HIL for AP_Periph
this saves several k of flash
2019-10-24 22:03:43 +11:00
Andrew Tridgell a224342b18 HAL_ChibiOS: enable ROMFS for CUAV_GPS 2019-10-24 22:03:43 +11:00
Andrew Tridgell 14cdac9202 AP_GPS: fixed GPS to UART mapping
this allows for first GPS as UAVCAN and 2nd as UART. That is not
possible currently unless you waste a uart
2019-10-24 14:37:30 +11:00
Peter Barker f6b6aa68ed AP_Scripting: add a hello world example 2019-10-24 13:50:51 +11:00
Peter Barker 099379713c AP_Scripting: add simple example of a loop 2019-10-24 13:50:51 +11:00
Peter Barker c30873097a AP_Logger: use ahrs singleton to log ATT, POS and AHRS2 2019-10-24 13:15:46 +11:00
Vlad-Andrei Dorobantu d7132928d1 Copter: corrected undefined data member causing linking error 2019-10-24 10:00:35 +11:00
Randy Mackay 01c36fa6aa AP_Compass: LEARN param default to 0 for all vehicles 2019-10-23 17:15:57 +11:00
Peter Hall 43449a4adb AR_WPNav: remove unneeded overshoot methods 2019-10-23 08:28:39 +08:00
Andrew Tridgell f69be70772 HAL_ChibiOS: save some memory in f103-periph build 2019-10-22 17:51:24 +11:00
Randy Mackay b4a8691a9e AP_NavEKF3: remove wheel encoder update limit 2019-10-22 07:15:48 +08:00
Randy Mackay 63309c6925 AP_NavEKF3: suppress ekf fail-to-set-origin if core disabled 2019-10-22 07:15:48 +08:00
Randy Mackay e32a8556b2 AP_NavEKF2: suppress ekf fail-to-set-origin if core disabled 2019-10-22 07:15:48 +08:00
Randy Mackay 353cb648f6 AP_RPM: rename px4-pwm to just pwm 2019-10-22 07:15:48 +08:00
Peter Barker e84082a099 AP_Logger: canonicalize on STANDBY rather than STANDY_BY 2019-10-21 21:22:17 +08:00
Peter Barker 3bec1c7d4f RC_Channel: correct description of standby option
Also canonicalise on STANDBY rather than STANDBY
2019-10-21 21:22:17 +08:00
Andrew Tridgell 0a4576728e HAL_ChibiOS: support a app->bootloader comms region in SRAM
this allows for UAVCAN update without a 2nd BeginFirmwareUpdate call
2019-10-21 19:12:01 +11:00
Andrew Tridgell 5605ad6c59 HAL_ChibiOS: enable MissionPlanner compatible app descriptor 2019-10-21 19:12:01 +11:00
Andrew Tridgell 6b841e781c HAL_ChibiOS: pat watchdog immediately in expect_delay_ms()
this fixes a watchdog issue on AP_Periph if we don't have a timer
thread
2019-10-21 19:12:01 +11:00
Andrew Tridgell 7973a25c40 HAL_ChibiOS: fixed stack on ZubaxGNSS 2019-10-21 19:12:01 +11:00
Andrew Tridgell 910129eafc HAL_ChibiOS: enable watchdog in AP_Periph firmwares 2019-10-21 19:12:01 +11:00
Andrew Tridgell e392416942 AP_BoardConfig: allow enable of watchdog in hwdef.dat
this will be used for AP_Periph
2019-10-21 19:12:01 +11:00
Andrew Tridgell 40431100a9 AP_Flashstorage: fixed init bug on F1
we can't mark available just before we mark in use on F1
2019-10-21 19:12:01 +11:00
Andrew Tridgell 5efaea2d92 HAL_ChibiOS: fixed flash storage in ZubaxGNSS 2019-10-21 19:12:01 +11:00
Andrew Tridgell e376884377 HAL_ChibiOS: fixed Zubax bootloader debug 2019-10-21 19:12:01 +11:00
Andrew Tridgell 1f06aa069e HAL_ChibiOS: fixed uprintf() in bootloader 2019-10-21 19:12:01 +11:00
Andrew Tridgell e6cb35090c HAL_ChibiOS: fixed page size for STM31F105 flash 2019-10-21 19:12:01 +11:00
Andrew Tridgell 0ef2a60682 HAL_ChibiOS: support ZubaxGNSS as a AP_Periph target 2019-10-21 19:12:01 +11:00
Andrew Tridgell 44f895ab16 HAL_ChibiOS: fixed for ZubaxGNSS build 2019-10-21 19:12:01 +11:00
Andrew Tridgell 8c796ecd2c HAL_ChibiOS: support f103-RangeFinder 2019-10-21 19:12:01 +11:00
Andrew Tridgell ca1bd8be3c AP_RangeFinder: disable logging for AP_Periph 2019-10-21 19:12:01 +11:00
Andrew Tridgell 3cd7dd9f12 HAL_ChibiOS: disable GPS and MAG in base f103 build
enable in f103-GPS
2019-10-21 19:12:01 +11:00
Andrew Tridgell 282936eab2 AP_RangeFinder: allow for less rangefinder instances
for AP_Periph
2019-10-21 19:12:01 +11:00
Andrew Tridgell 3ca478747c HAL_ChibiOS: enable airspeed in f103-ADSB 2019-10-21 19:12:01 +11:00
Andrew Tridgell f51378f2e8 AP_Airspeed: enable for use in AP_Periph 2019-10-21 19:12:01 +11:00
Andrew Tridgell fa6b6140e3 HAL_ChibiOS: split out f103-GPS from base f103-periph
this makes it easier to create more peripheral variants
2019-10-21 19:12:01 +11:00
Tom Pittenger bbd6f3aa6c SITL: morse simulator should generate packets from same vehicle sysid 2019-10-21 14:29:30 +09:00
Henry Wurzburg 119f0a95ad RC_Channel: added RC option for new takeoff mode 2019-10-21 08:41:58 +11:00
Mirko Denecke b84dcd483d AP_HAL_ChibiOS: remove unnecessary tabs and whitespaces 2019-10-21 08:01:56 +11:00
Mirko Denecke 12c9e50aef AP_IOMCU: remove unnecessary tabs and whitespaces 2019-10-21 07:57:44 +11:00
Andrew Tridgell e90bd27435 HAL_ChibiOS: fixed I2C on F103
we need to use open-drain, and the sign of the constant matters
2019-10-20 20:31:02 +11:00
Andrew Tridgell 6f11926dbd HAL_ChibiOS: enable NCP5623 LED in f103-GPS 2019-10-20 20:31:02 +11:00
Jaaaky 54f8e1137e AP_NavEKF3: added EK3_MAG_EF_LIM parameter
Adapted from EKF2 implementation as of commits
3835d2613, e9ed3540f and df4fc0fff
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-10-20 07:34:35 +11:00
Vlad-Andrei Dorobantu 83c641c76f AP_Compass: corrected the cause of SIGSEGV signal when running AP_Compass_test 2019-10-19 09:58:42 +11:00
Siddharth Purohit eff316dd6b AP_KDECAN: update prearm method to support snprintf methods 2019-10-19 09:55:38 +11:00
Siddharth Purohit 9b2c060cc5 AP_Arming: add support for reporting UAVCAN Server errors 2019-10-19 09:55:38 +11:00
Siddharth Purohit fb48d8ee1b AP_Math: add method for generating hash 2019-10-19 09:55:38 +11:00
Siddharth Purohit 2b410479af HAL_ChibiOS: remove unused code 2019-10-19 09:55:38 +11:00
Siddharth Purohit 4034af6ef1 StorageManager: add storage aread for CAN Dynamic Node Alloc 2019-10-19 09:55:38 +11:00
Siddharth Purohit 9bd379e236 AP_UAVCAN: setup uavcan server with internal storage 2019-10-19 09:55:38 +11:00
Peter Barker aae524b9d5 AP_Mission: add sanity check that 16-bit commands aren't stored_in_location
This is a rather confusing problem when it happens during development,
so a sanity check is good.  What you see in dev is that your latitude
gets corrupted between when you store and retrieve it, with no warnings
that you're doing something wrong.
2019-10-18 15:16:21 +11:00
Randy Mackay dee4e867e4 AP_Logger: add vibration failsafe error subsystem 2019-10-18 11:15:25 +09:00
Leonard Hall e5f724bc3a AC_PosControl: add high vibration compensation 2019-10-18 11:15:25 +09:00
Randy Mackay 0052dcc8f8 AC_PID: update pid_info when integrator set 2019-10-18 11:15:25 +09:00
Randy Mackay adf4d8fd47 AP_InertialNav: use ekf::get_vert_pos_rate during high vibration 2019-10-18 11:15:25 +09:00
Randy Mackay 5baed38266 AP_NavEKF3: reduce EK3_HRT_FILT max to 30 2019-10-18 11:15:25 +09:00
Paul Riseborough 5b1d9ed868 AP_NavEKF3: Add missing vertical position derivative calculation 2019-10-18 11:15:25 +09:00
Randy Mackay e2d3afaaa7 AP_NavEKF2: reduce EK2_HRT_FILT max to 30 2019-10-18 11:15:25 +09:00
Paul Riseborough c26c6fd078 AP_NavEKF2: Add missing vertical position derivative calculation
Use a third order order complementary filter to estimate the rate of change of vertical position output.
2019-10-18 11:15:25 +09:00
Randy Mackay 4a1247b9f7 AP_AHRS: add get_innovations 2019-10-18 11:15:25 +09:00
Leonard Hall 05f1161e63 RC_Channel: Support for Standby functions 2019-10-17 14:57:18 +09:00
Leonard Hall e8e969af62 AP_Logger: Support for Standby functions 2019-10-17 14:57:18 +09:00
Leonard Hall 5acfc77a3c AC_AttitudeControl: Support for Standby functions 2019-10-17 14:57:18 +09:00
Michael du Breuil 3274398bc2 AP_Scripting: Fix up uint32_t manipulation, fix AP_Notify
This also adds a touched up version of the foxhunt demo that was done at
the 2019 developer unconf
2019-10-16 21:57:41 -07:00
Andrew Tridgell c03796d7de GCS_MAVLink: fixed uninitialised bytes in send_named_float()
this fixes an issue with mavproxy with python3
2019-10-17 13:50:35 +11:00
Peter Barker 49687d4e5d AP_HAL_SITL: ToneAlarm doesn't play tones if disabled via param 2019-10-16 16:00:35 +11:00
Peter Barker 47fbf70e85 SITL: create SITL tonealarm files to hold enable parameter 2019-10-16 16:00:35 +11:00
Peter Barker d6f10a12eb AP_Notify: add a simulated buzzer for SITL 2019-10-16 16:00:35 +11:00
Peter Barker 111c17d0b4 AP_HAL_SITL: add a simulated buzzer 2019-10-16 16:00:35 +11:00
Peter Barker 32ec6d7e9a SITL: add a simulated buzzer 2019-10-16 16:00:35 +11:00
Andrew Tridgell df90cee8a0 AP_ADSB: added handle_adsb_vehicle() API
this allows for UAVCAN ADSB adapters
2019-10-16 13:13:24 +11:00
Andrew Tridgell 8650229ad4 AP_ADSB: added singleton interface 2019-10-16 13:13:24 +11:00
Andrew Tridgell 16bc7f800e AP_UAVCAN: support ADSB over UAVCAN 2019-10-16 13:13:24 +11:00
Andrew Tridgell b9885034b1 HAL_ChibiOS: added a f103-ADSB firmware
for presenting a ping ADSB device as UAVCAN
2019-10-16 13:13:24 +11:00
Andrew Tridgell 85271a8747 HAL_ChibiOS: split out f103-GPS from base f103-periph
this makes it easier to create more peripheral variants
2019-10-16 13:13:24 +11:00
Michael du Breuil e54acb8bde AP_Scripting: Add an example message interval script 2019-10-16 09:48:55 +09:00
Michael du Breuil 076cf0bdc8 AP_Scripting: Add a one arg variant of uint32_t, and expose table unpack 2019-10-16 09:48:55 +09:00
Bill Geyer 63d9b47530 AP_Motors: make init_targets_on_arming global 2019-10-16 08:17:09 +09:00
bnsgeyer d1a0635ec2 AC_AttitudeControl: incorporate SysID into tradheli 2019-10-16 08:17:09 +09:00
Leonard Hall 0834726b48 AC_AttitudeControl: Support System ID tests 2019-10-16 08:17:09 +09:00
Andrew Tridgell b7ae12a9d3 HAL_ChibiOS: reduce max compasses to 1 on AP_Periph 2019-10-16 08:58:52 +11:00
Andrew Tridgell 7ad91fa1c9 AP_Compass: don't show too many params when max compasses 1 2019-10-16 08:58:52 +11:00
Michael du Breuil a80ff80061 AP_Motors: Fix safe disarm 2019-10-16 08:46:49 +11:00
Leonard Hall 6e8413f122 AP_Motors: Use safety timer to enable pwm before spool up 2019-10-16 08:46:49 +11:00
Michael du Breuil df8c9e5825 AP_Scripting: Raise default heap size 2019-10-15 15:35:12 -06:00
Michael du Breuil cf94a02207 AP_Scripting: Stop running scripts if the enable flag ever goes false 2019-10-15 15:35:12 -06:00
Peter Barker 9fee2a9c06 AP_Vehicle: add singleton 2019-10-15 13:24:20 +11:00
Leonard Hall d4b922336b Copter: add voltage compensation to _throttle_thrust_max 2019-10-15 10:45:36 +09:00
Andrew Tridgell 00260db65a AP_GPS: fixed UAVCAN GPS status when disconnected
this fixes the status reported for a UAVCAN GPS when the cable is
unplugged. It should be "NO GPS", but was instead reporting "NO
FIX". The user had no way to distinguish between not finding a CAN GPS
at all and it not getting satellites

thanks to CUAV for reporting
2019-10-14 19:08:37 -06:00
murata 000aa4f515 AP_RangeFinder: Add TF03-180 2019-10-15 10:07:53 +09:00
Randy Mackay 6588c93e44 SRV_Channel: renamed EPM to Gripper in FUNCTION param docs 2019-10-15 09:11:06 +09:00
Andrew Tridgell c2067d5bc2 AP_NavEKF3: set a min yaw accuracy from GPS of 5 degrees
GPS modules tend to be rather optimistic about their yaw accuracy. By
setting a min or 5 degrees we prevent the user constantly getting
warnings about yaw innovations
2019-10-15 11:06:11 +11:00
Andrew Tridgell 37fb028532 AP_GPS: improved checking for valid yaw for moving baseline
and fixed check for carrSolnFixed
2019-10-15 11:06:11 +11:00
Michael du Breuil 2587b13ae7 AP_GPS: UBLOX: Parse RELPOSNED messages
This does not yet:
  - validate the receiver configuration
  - manage timing out stale GPS heading info
  - relPosNormalized usage isn't clear, which may defeat the STRICT_LENGTH_CHECK
2019-10-15 11:06:11 +11:00
Michael du Breuil cb5bba8379 AP_Logger: Log GPS yaw accuracy 2019-10-15 11:06:11 +11:00
Michael du Breuil f0e742caa3 AP_Scripting: Fix generation of uint32_t arguments
This also fixes the message interval description not generating
correctly, it must have been manually edited before
2019-10-14 17:51:54 -06:00
Andrew Tridgell 97dc76732c HAL_ChibiOS: drop mRoControlZeroF7 DPS310 clock to 5MHz 2019-10-15 10:22:15 +11:00
Andrew Tridgell 94418ca70e AP_Baro: added register checking and reset to DPS280 driver
this is to fix an issue found on a mRoControlZeroF7
2019-10-15 10:22:15 +11:00
Randy Mackay 7ce2fb8783 GCS_Mavlink: handle_preflight_reboot made virtual 2019-10-15 07:41:44 +09:00
Henry Wurzburg c515f4b317 AP_HAL_ChibiOS/hwdef: update KakuteF4 readme 2019-10-14 10:04:30 +11:00
Andy Piper 28b866cc8f AP_HAL_ChibiOS: hardware definitions for Kakute F7 Mini 2019-10-12 21:53:55 +11:00
liang 8de44ec319 AP_Airspeed: protect sample timestamp while get data 2019-10-12 18:15:06 +11:00
Michael du Breuil 05d104675e AP_Logger: Fix logging of current on non primary instances 2019-10-11 08:39:28 +11:00
Andy Piper ef7f8531fb Filter: set the harmonic notch filter ref default to zero (disabled)
Modify parameter descriptions for tradheli
2019-10-10 20:26:02 +09:00
Leonard Hall 4a1a5e81ea AP_Motors: Add variable to record the final thrust value
Add Throttle_Out for other frames
2019-10-10 20:26:02 +09:00
Andrew Tridgell d6e17b0c2b AP_InertialSensor: publish an IMU temperature
makes testing of mavlink extension easier
2019-10-10 13:23:03 +11:00
Andrew Tridgell 29e65a7294 GCS_MAVLink: supply IMU temperature in mavlink extensions 2019-10-10 13:23:03 +11:00
Do Carmo Lucas dc4ad26e96 GCS_MAVLink: updates to support the latest stable mavlink changes (IMU temperature extension) 2019-10-10 13:23:03 +11:00
Andrew Tridgell 77bf67e15f HAL_ChibiOS: fixed padding of neopixel bits
lack of padding at start caused occasional glitches in colors
displayed
2019-10-10 10:41:19 +11:00
Peter Barker 25fd04d402 AP_Proximity: declare RangeFinder as a class to avoid circular include issue 2019-10-08 11:26:04 +11:00
Peter Barker 9aaa6c49fa AP_BoardConfig: correct include of AP_Vehicle_Type 2019-10-08 11:26:04 +11:00
Peter Barker 083d4ac3ea DataFlash: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker 405bf0ce7f AP_Mission: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker 8e412d0885 AP_Compass: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker cf201afdf6 AP_AccelCal: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker 8bb51f4b7d AC_AttitudeControl: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker 1ea365d52a AP_Vehicle: move many members up to base class 2019-10-08 11:26:04 +11:00
Peter Barker a6b6bb99f3 AP_NMEA_Output: skip sending sentences if no space on UART
AP_NMEA_Output: clean scope by removing unneeded temps

AP_NMEA_Output: redo last_sent to last_run

AP_NMA_Output: early-exit if no data
2019-10-08 11:07:19 +11:00
Peter Barker 5428d13502 AP_Arming: remove bogus ARMING_CHECK_NONE 'bitmask value'
This looks like a bitmask value, but if you treat it like one (and
people have in the past!) by using logical operations then you get the
incorrect result.

Places which were checking for equivalence to ARMING_CHECK_NONE now
simply check the bitmask to see if it is all-empty.
2019-10-08 10:31:07 +11:00
murata 371f11b7f4 AP_Motors: Change to description(NFC) 2019-10-08 08:26:17 +09:00
Andrew Tridgell 4866fd68b5 AP_BoardConfig: fixed CAN init without SLCAN 2019-10-08 10:02:14 +11:00
Andrew Tridgell 15d98220e0 AP_HAL: enabled SLCAN on fmuv2 and Pixhawk1-1M
this fits for now, and is needed for CAN GPS for now
2019-10-08 10:02:14 +11:00
Andrew Tridgell 08b3bc4506 AP_UAVCAN: cleanup ifdefs for SLCAN enable 2019-10-08 10:02:14 +11:00
Andrew Tridgell 53fab5767f AP_HAL: cleanup ifdefs for SLCAN enable 2019-10-08 10:02:14 +11:00
Andrew Tridgell 15e4641e51 AP_HAL_ChibiOS: cleanup ifdefs for SLCAN enable 2019-10-08 10:02:14 +11:00
Andrew Tridgell 6b3c10f0e7 AP_BoardConfig: cleanup ifdefs for SLCAN enable 2019-10-08 10:02:14 +11:00
Henry Wurzburg 4a42a3a23a Rover: implement steering trim save in armed/manual mode only 2019-10-08 07:41:57 +09:00
vierfuffzig cb054e714b AP_RTC: add local time support 2019-10-07 19:55:42 +11:00
vierfuffzig 1f9b2f712e AP_OSD: add clock panel 2019-10-07 19:55:42 +11:00
Randy Mackay e4336551cd AP_Follow: add clear_offsets_if_required method
this restores the offsets to zero if they were initialised from zero when the lead vehicle was first spotted
2019-10-07 08:30:45 +09:00
Ebin f6c7ac88d0 SITL: Yaw rate calculation uses wheel offset 2019-10-07 07:31:53 +11:00
Peter Barker e32d8ecda1 AP_WheelEncoder: add SITL backend
AP_WheelEncoder: added update function for SITL quadrature encoder
2019-10-07 07:31:51 +11:00
Peter Barker 4d17a7cf89 AP_Logger: tidy MessageWriter stages using enum class 2019-10-05 16:37:43 +10:00
Henry Wurzburg 880285dad4 AP_BLHeli: Change descriptions in SERVO_BLH_PORT param to actual AP port 2019-10-05 16:35:59 +10:00
Michel Pastor dec5b97275 AP_Logger: fix logging on 256Mbit flash chips 2019-10-05 16:25:22 +10:00
Andrew Tridgell 39182e70e4 AP_Motors: enable docs for hover thr learning in plane 2019-10-04 14:01:08 +10:00
Michel Pastor 49bf0a3057 AP_Logger: fix AP_Logger_Block::get_num_logs() 2019-10-04 12:49:16 +10:00
Randy Mackay db7836ad48 AP_SmartRTL: fixup compile error
fix typo introduced by me attempting a minor fixup before merging
2019-10-04 10:01:49 +09:00
Peter Barker fd0a8b72b4 AP_Logger: correct uninitialised value when logging all rally points 2019-10-04 10:39:01 +10:00
Henry Wurzburg 13e66e9f7c AP_SmartRTL: give warning buffer is about to fill-up 2019-10-04 08:57:30 +09:00
Andrew Tridgell 555f56a8af HAL_ChibiOS: removed wait on CAN peripheral in H7
these wait busy loops can take a very long time, and end up causing
interrupts to be lost elsewhere in the system, causing lost bytes on
UARTs

We should not have while loops waiting on peripharals like this. If we
do need to wait for a flag to clear then it needs to be done in a low
priority thread, or we need to check for completion in a timer

CAN still seems to work with this change, but needs flight testing
2019-10-03 15:26:47 +10:00
Henry Wurzburg 9717548cb5 AP_Follow: hide params not used by Rover 2019-10-03 07:18:47 +09:00
Andrew Tridgell 3ebc69320c AP_Logger: fixed LOG_FILE_DSRMROT with delayed log stop
now that we persist logging for 15s after disarm we need to also delay
the log rotation if LOG_FILE_DSRMROT=1. Otherwise we will put the log
data into the next log, which defeats the purpose of the 15s
persistance
2019-10-03 07:17:16 +10:00
vierfuffzig b89c60d5b0 AP_BLHeli: fix watchdog resets with telemetry active from non-multirotor motors 2019-10-02 21:06:22 +10:00
Randy Mackay 8686197c59 GCS_MAVLink: add comment above set-message-interval 2019-10-02 16:17:09 +09:00
Randy Mackay 3a113a31bb GCS_MAVLink: minor fix to set_message_interval 2019-10-02 16:09:44 +09:00
Tatsuya Yamaguchi 5039bdc8ea AP_Scripting: add set_message_interval binding 2019-10-02 16:09:44 +09:00
Tatsuya Yamaguchi 9a99d9bff5 GCS_MAVLink: add set_message_interval functions 2019-10-02 16:09:44 +09:00
Andrew Tridgell ddde512b74 AP_Scheduler: use fill_nanf() on each scheduler function 2019-10-01 17:35:26 +10:00
Andrew Tridgell cbe34320b5 AP_NavEKF2: fixed build
broken by recent common variable change
2019-10-01 17:35:26 +10:00
Andrew Tridgell b9291d95f0 HAL_SITL: pre-fill stack on each loop with NaN
this allows us to catch use of uninitialised stack variables in SITL
without having valgrind running
2019-10-01 17:35:26 +10:00
Andrew Tridgell 66b4e92444 AP_Math: make fill_nanf() use a signalling NaN
we want use of these values to trigger a FPE
2019-10-01 17:35:26 +10:00
Andrew Tridgell f79907bd1e AP_NavEKF: fixed build with vector index checking 2019-10-01 15:39:03 +10:00
Andrew Tridgell 3995db49a4 AP_NavEKF3: use parent class for intermediate static variables
this makes the code faster as well as using less memory when both EK2
and EK3 are enabled
2019-10-01 15:39:03 +10:00
Andrew Tridgell f7e138bddd AP_NavEKF2: use parent class for intermediate static variables
this makes the code faster as well as using less memory when both EK2
and EK3 are enabled
2019-10-01 15:39:03 +10:00
Andrew Tridgell 688b01c6c6 AP_NavEKF: added a common parent class for EKF2 and EKF3 core classes
this provides a common location for static intermediate variables in
EK2 and EK3. This has a few benefits:

 - the compiler can determine the address of the frequently accessed
   variables at compile time, making them faster

 - by sharing between EK2 and EK3 we save a lot of memory if both EK2
   and EK3 are enabled

 - we can fill all these with NaN in SITL on every loop, which allows
   us to catch cases where the variables are ever re-used between
   loops, which guarantees we aren't mixing data between EKF lanes or
   between EK2 and EK3
2019-10-01 15:39:03 +10:00
IamPete1 3b9a35da27 AP_Motors: add reversed tricopter option 2019-10-01 09:39:08 +10:00
vierfuffzig 2af0be3947 AP_AHRS: fix custom orientation ToRad conversion 2019-10-01 09:35:09 +10:00
Andrew Tridgell 0deef76875 GCS_MAVLink: use HAL_MEM_CLASS for status sizes 2019-10-01 09:29:55 +10:00
Andrew Tridgell 889b18022b AP_Logger: use HAL_MEM_CLASS for logging buffer size 2019-10-01 09:29:55 +10:00
Andrew Tridgell 3bf3ebb703 AP_Logger: try harder to use close to user buffer size
this stops us drastically reducing buffer size when low on memory
2019-10-01 09:29:55 +10:00
Andrew Tridgell 2d00298070 AP_HAL: added HAL_MEM_CLASS for amount of memory 2019-10-01 09:29:55 +10:00
Andrew Tridgell 47f2f1764d HAL_ChibiOS: generate HAL_MEMORY_TOTAL_KB for each board 2019-10-01 09:29:55 +10:00
Peter Barker 13352a4ca7 AP_ADSB: move is_valid_octal to is_valid_callsign and add tests for it 2019-10-01 09:18:15 +10:00
Peter Barker 6fe09b6120 AP_Math: move is_valid_octal into adsb
This doesn't ensure the value is octal digits - there's more magic in
it.
2019-10-01 09:18:15 +10:00
Andrew Tridgell 1a34fccc71 AP_Proximity: fixed incorrect use of fabs() 2019-10-01 08:12:07 +09:00
Andrew Tridgell e3a965272c HAL_ChibiOS: added Pixhawk1-1M
this is for 1M versions of the Pixhawk1. It is smaller than fmuv2 as
it only links the specific sensors needed for Pixhawk1
2019-10-01 09:08:25 +10:00
Andrew Tridgell b5217412f9 AP_GPS: fixed a bug in handling corrupt u-blox packets
when we have corrupt input due to loss of bytes on a UART we can end
up with a u-blox packet with zero payload bytes. When that happens we
need to bypass payload reading as otherwise we will end up keeping
reading bytes until the driver resets at 4 seconds, causing a GPS
outage.

This was causing GPS outages every few hours in copters running 3.6.7,
and was also reproduced in SITL using SIM_GPS_BYTELOSS.
2019-09-30 15:20:30 -06:00
Mark Whitehorn 0a6ae60c89 AP_IOMCU: fix IO fast channel mask 2019-10-01 07:13:33 +10:00
Mark Whitehorn d8a07b6c44 HAL_ChibiOS: fix FMU fast_channel_mask
fix IO fast channel mask
use IOMCU chmask to only set right channels
remove unused variable
2019-10-01 07:13:33 +10:00
Andrew Tridgell 748cf39116 HAL_ChibiOS: disable DMA for RCIN on Pixracer
this frees up DMA for USART1_RX, which gives DMA for input over the
SERIAL5 WiFi port, which is important for applications where a
pixracer is being fed vision data over WiFi
2019-09-30 07:58:40 +10:00
mhefny 92d55fa126 SITL: removed unnecessary files of webots 2019-09-30 04:46:38 +10:00
Peter Barker 04ee459e8c AP_Baro: exclude Sub pressure transducers from non-sub builds 2019-09-28 16:41:06 +10:00
Andrew Tridgell c29867ecad AP_Common: removed fcntl overrides
not needed with AP_Filesystem, and fixes lots of warnings with newer
compilers
2019-09-28 14:19:46 +10:00
Andrew Tridgell 81711eb28e AP_HAL: fixed build on g++ 7.3 for stm32
the system maths headers don't like our maths defines, but are happy
if we include math.h first
2019-09-28 14:19:46 +10:00
Henry Wurzburg cf3bd2487b AP_OSD: add current averaging filter to reduce jitter (~5 sample timeconstant) 2019-09-28 14:17:59 +10:00
Randy Mackay 0d032ecd86 AC_Avoidance: add enabled and margin accessors 2019-09-28 11:13:14 +09:00
Randy Mackay 6be4adbe02 RC_Channels: define surface tracking auxiliary function 2019-09-28 11:13:14 +09:00
Randy Mackay 9aeac012d2 AC_Avoid: add support for complex fence types
AP_OABendyRuler: support exclusion polygons

AP_OADijkstra: support exclusion polygons

AC_Avoid: adjust_velocity supports exclusion polygons

AC_Avoidance: handle fence::get_boundary_points returning nullptr instead of setting num_points to zero

AC_Avoidance: Dijkstra's works with only exclusion polygons

AC_Avoidance: Dijkstra: check for fence counts instead of polyfence validity

We really only care whether fences can be returned - and they won't be
returned unless they are valid

AC_Avoidance: BendyRuler: just try to get inclusion fence rather than checking validity

AC_Avoidance: BendyRuler supports exclusion circles

AC_Avoid: Dijkstra support for exclusion circles

AC_Avoid: BendyRuler support for inclusion circles

AC_Avoid: stop an inclusion/exclusion circular fences

AC_Avoid: stop at inclusion/exclusion circular fences

AC_Avoid: fixes to Dijkstra's use of inclusion/exclusion circles and polygons

AP_Avoidance: take semaphores when interacting with AHRS and polyfence

AC_Avoid: Dijkstra's fix for some_fences_enabled inclusion circles
2019-09-28 07:58:48 +09:00
Randy Mackay 3431938bce AP_Logger: add error code to Write_OADijkstra 2019-09-28 07:58:48 +09:00
Peter Barker a0c6ff95e4 AP_Proximity: polyfence valid() has been renamed 2019-09-28 07:58:48 +09:00
Peter Barker 714a3e2462 AC_Fence: support for multiple polygon fences
AC_Fence: add interface for retrieving exclusion polygons

AC_Fence: add interface to get exlusion polygons to polyfence loader

AC_Fence: add suport for inclusion circles

AC_Fence: add option for compiling-out FENCE_POINT protocol support

AC_Fence: get_exclusion_polygon and get_boundary_points set num_points to zero on failure

AC_Fence: use Debug(...) to hide debug messages

AC_PolyFence_loader: add methods to retrieve all inclusion zones

AC_PolyFence_loader: valid simply returns true if a polygon boundary can be returned

AC_Fence: add get_exclusion_circle

AC_Fence: add get_exclusion_circle_update_ms accessor

AC_Fence: PolyFence_loader gets inclusion circle accessors

AC_PolyFence_loader: add and use semaphore to protect loaded fence

AC_Fence: move fence breach check below fence type checks

This allows us to provide more information to the user about why they
are breached.

For example, if the radius is negative you are considered in breach of
it - but we'd tell you you were breached, not that your radius was
invalid

AC_Fence: clear the fence if we discover the user has set the fence count to zero
2019-09-28 07:58:48 +09:00
Peter Barker 6d0c5da84a GCS_MAVLink: allow upload of fence using mission item protocol
GCS_MAVLink: add support for fence inclusion circles

GCS_MAVLink: factor out a transfer_is_complete; start commenting properly
2019-09-28 07:58:48 +09:00
Peter Barker f3b0148719 AP_OADijkstra: cope with polyfence holding boundary points 2019-09-28 07:58:48 +09:00
Peter Barker dfca32a2af AP_OABendyRuler: cope with polyfence holding boundary points 2019-09-28 07:58:48 +09:00
Peter Barker 3a7f1b882e AC_Avoidance: cope with polyfence holding boundary points 2019-09-28 07:58:48 +09:00
Peter Barker 74aed5aef8 GCS_MAVLink: cope with polyfence holding boundary points 2019-09-28 07:58:48 +09:00
Peter Barker 5fe16d5250 AP_Proximity: cope with polyfence holding boundary points 2019-09-28 07:58:48 +09:00
Peter Barker ff37590776 AC_Fence: move polygon points into AC_Fence_Polygon 2019-09-28 07:58:48 +09:00
Peter Barker 189ef5f1e7 AP_Math: define != for Vector2<int> 2019-09-28 07:58:48 +09:00
Peter Barker f1e5c72ee9 StorageManager: add write_uint8 alias for write_byte 2019-09-28 07:58:48 +09:00
Peter Barker f090f35afa AP_InternalError: add a general should-not-be-here bit 2019-09-28 07:58:48 +09:00
Peter Barker bc8e56966f GCS_MAVLink: squelched rally-points-received message 2019-09-28 07:58:48 +09:00
Andrew Tridgell 8dd2119b14 AP_NavEKF2: make it easy to do EK2 timing tests
for future benchmarking
2019-09-28 08:57:26 +10:00
Andrew Tridgell e820219202 HAL_ChibiOS: changed optimisation of higher end boards to -O2
-O3 does not seem to be a win, and takes up a lot more flash
2019-09-28 08:57:26 +10:00
Andrew Tridgell 0e3a27f74f AP_NavEKF3: change optimisation from -O3 to -O2 2019-09-28 08:57:26 +10:00
Andrew Tridgell 163efd0df5 AP_NavEKF2: change optimisation from -O3 to -O2 2019-09-28 08:57:26 +10:00
Andrew Tridgell 5f90afa71e AP_Mount: change optimisation from -O3 to -O2 2019-09-28 08:57:26 +10:00
Andrew Tridgell 13a2367278 AP_Math: change optimisation from -O3 to -O2 2019-09-28 08:57:26 +10:00
Andrew Tridgell 7c3df18ea3 AP_IOMCU: change optimisation from -O3 to -O2 2019-09-28 08:57:26 +10:00
Willian Galvani 0c5753112a AP_TemperatureSensor: Update TSYS01 for Pixhawk2 2019-09-27 13:08:26 -07:00
Peter Barker 06df44c184 AP_Relay: change parameter name from relay to instance 2019-09-27 12:02:38 +10:00
Peter Barker 1c3b2f9699 AP_Relay: tidy, reduce flash usage 2019-09-27 12:02:38 +10:00
Peter Hall b6efcbcf3b AR_WPNav: make get_stopping_location public 2019-09-27 09:09:47 +09:00
Henry Wurzburg 11c633be32 AP_OSD: distance total fix for slow vehicles 2019-09-27 07:19:55 +10:00
Willian Galvani dd97eedde3 APMotors_6DOF: Implement motor_is_enabled(), get_motor_angular_factors() and set_reversed(); 2019-09-26 09:39:50 -07:00
Peter Hall 4c62fe6c72 AP_Windvane: caculate vehicles current tack 2019-09-26 18:23:03 +09:00
Willian Galvani d56c490b18 AP_Motors_6DOF: Add missing 'break' 2019-09-25 20:17:41 -07:00
Henry Wurzburg 59ce3f1007 AP_OSD: scale xtrack, add precision for distances <10 units 2019-09-26 12:56:12 +10:00