Commit Graph

42688 Commits

Author SHA1 Message Date
Andrew Tridgell
fd32dff45a AP_IOMCU: force safety off on IOMCU reset
if safety was forced off previously and we get an IOMCU reset then
force it off when the reset happens so vehicle can keep flying
2020-05-14 18:28:50 +10:00
mhefny
9f56b656e0 SITL: Revamp Examples to support multiple drones 2020-05-14 18:05:16 +10:00
mhefny
5a64156862 SITL: SITL-Webots timing is received from Webots only 2020-05-14 18:05:16 +10:00
Andrew Tridgell
5437f1e6ee AP_Periph: prepare for 1.1.0 2020-05-14 15:40:03 +10:00
Paul Riseborough
0c9433873c ArduPlane: Modify ekf failsafe checks
Restore velocity check and make the logic closer to what ArduCopter does.
Remove unnecessary initialisation.
2020-05-14 10:40:48 +10:00
Paul Riseborough
85e53d53e1 ArduPlane: Don't use optical flow health when assessing EKF nav health
Plane currently doesn't use optical flow for navigation - it is used fo terrain height estimation.
2020-05-14 10:40:48 +10:00
Paul Riseborough
3a10838c65 ArduPlane: Don't check variances if not available 2020-05-14 10:40:48 +10:00
Paul Riseborough
70a02f31ab ArduPlane: More efficient type use 2020-05-14 10:40:48 +10:00
Paul Riseborough
5b312e9f09 ArduPlane: Fix logic error 2020-05-14 10:40:48 +10:00
Paul Riseborough
cd5714d059 ArduPlane: Allow EKF dead reckoning to continue after loss of GPS 2020-05-14 10:40:48 +10:00
Paul Riseborough
40cc5a5006 ArduPlane: Improve EKF failsafe in VTOL modes
Replicates Copter behaviour with a three step process if the EKF sustains a loss of navigation as detected by high GPS innovation test ratios:

1) Attempts a yaw reset using the GSF estimate if available
2) Attempts a lane switch
3) Falls back to a non-position mode
2020-05-14 10:40:48 +10:00
Paul Riseborough
318811210f AP_NavEKF3: Don't perform emergency yaw reset unless commanded externally
This limits the use of the reset to situations where it is a last ditch resort before a lane switch and failsafe.
This will limit false positives for general deployment, but still provide protection from fly-aways at the cost of some increase in reaction time.
2020-05-14 10:40:48 +10:00
Paul Riseborough
c94de61e29 AP_NavEKF2: Don't perform emergency yaw reset unless commanded externally
This limits the use of the reset to situations where it is a last ditch resort before a lane switch and failsafe.
This will limit false positives for general deployment, but still provide protection from fly-aways at the cost of some increase in reaction time.
2020-05-14 10:40:48 +10:00
Andrew Tridgell
fc28cd4fa2 GCS_MAVLink: fixed a ftp duplicate reply
this fixes a bug in burst replies where the duplicate reply may have
the wrong offset. This causes the "paramftp bad type" error
2020-05-14 09:53:42 +10:00
Randy Mackay
64360f263c Copter: land detector allows larger lean angle request in land mode 2020-05-14 08:24:29 +09:00
chobits
a7aa43f5d5 AP_NavEKF2: ext nav will not reset yaw if compass is used 2020-05-14 08:04:55 +09:00
Randy Mackay
45e6896d95 AP_NavEKF3: ensure extnav angle error is at least 5deg 2020-05-14 08:02:13 +10:00
Andy Piper
e9b939ccb5 AP_Scripting: build fix for macOS 2020-05-13 11:59:03 -07:00
Andrew Tridgell
36869f668b AP_Scripting: fixed build on cygwin with deep directories 2020-05-12 19:55:21 +10:00
Andrew Tridgell
50db7f1648 AP_Scripting: update README.md 2020-05-12 19:55:21 +10:00
Andrew Tridgell
4311385cb9 waf: recurse into AP_Scripting for build 2020-05-12 19:55:21 +10:00
Andrew Tridgell
be812f490f waf: added AP_LIB_EXTRA_SOURCES
used to allow building of dynamically generated library components
2020-05-12 19:55:21 +10:00
Andrew Tridgell
9cf464e570 AP_Scripting: removed the old Makefile 2020-05-12 19:55:21 +10:00
Andrew Tridgell
2c6fd13899 AP_Scripting: auto-build the bindings 2020-05-12 19:55:21 +10:00
Andrew Tridgell
5c8e4a4d7b AP_Scripting: removed old generated bindings 2020-05-12 19:55:21 +10:00
Buzz
9d9fdd1cb0 AP_Scripting: add big demo script for editing and updating mission item/s from lua. 2020-05-12 14:20:26 +10:00
Andrew Tridgell
2ce5f0f566 removed stray file 2020-05-12 09:59:34 +10:00
Buzz
816474b6e8 AP_Scripting: rebuild bindings 2020-05-12 09:58:14 +10:00
Buzz
963b25059d AP_Scripting: allow to get/set/create arbitrary mission items
fetch item/s by their index, and review wp data, etc.  
AP_Mission: ran mission files through approved astyle  as they were non-compliant before this( astyle --options=Tools/CodeStyle/astylerc   )
2020-05-12 09:58:14 +10:00
Randy Mackay
59a2667870 Plane: quadplane's throttle mix uses filtered accelerations 2020-05-12 09:56:09 +10:00
Andrew Tridgell
d16f31711e AP_RangeFinder: fixed mixing UAVCAN and non-UAVCAN rangefinders
UAVCAN rangefinders add themselves to the frontend drivers as the
devices appear. If they turn up before RangeFinder::init() is run then
this prevented init() from scanning for the other rangefinders as
num_instances is non-zero

This also fixes a race condition in updating num_instances in the
UAVCAN backend
2020-05-12 09:45:15 +10:00
dorovl
70f445e7f1 Bone : Faulty PWM output after few flight controller restarts due to wrong IEP Timer configuration
modified:   Makefile
	modified:   RcAioPRU.p
	modified:   RcAioPRUTest.c
	modified:   RcAioPRU_BBBLUE_bin.h
	modified:   RcAioPRU_BBBMINI_bin.h
	modified:   RcAioPRU_POCKET_bin.h
	new file:   start_test
2020-05-11 18:57:55 +10:00
Andrew Tridgell
582de68ea7 AP_Periph: updated release notes 2020-05-11 18:48:18 +10:00
Andrew Tridgell
50d2b51f3d AP_Periph: added release notes 2020-05-11 18:46:07 +10:00
Andrew Tridgell
67b7c21f87 AP_Periph: prepare for 1.1.0 beta release 2020-05-11 18:38:14 +10:00
Andrew Tridgell
4c1418f325 AP_Periph: added LED blinking while waiting for DNA 2020-05-11 18:36:46 +10:00
Andrew Tridgell
d789c618a2 AP_Periph: use rangefinder get_address() 2020-05-11 18:36:46 +10:00
Andrew Tridgell
603e5c4b55 AP_RangeFinder: added get_address()
allows AP_Periph to supply sensor_id for multiple CAN rangefinders
2020-05-11 18:36:46 +10:00
Peter Barker
5100c9fb8c GCS_Common: whitelist AUTOPILOT_VERSION for in_delay_callback sending
GCSs may request this very early on in the boot process, particularly
for SITL.

If we try to send it during a delay callback then we end up dropping it
at the moment - but we'd already sent the ack in response to the
request.
2020-05-11 15:22:38 +10:00
Peter Barker
ca4af94833 AP_Logger: prevent potential infinite recursion in log-open codepath
If anything in start_new_log did logging (for example, by sending a
statustext), we end up infinitely recursing.

With the patch:

diff --git a/libraries/AP_Logger/AP_Logger_File.cpp b/libraries/AP_Logger/AP_Logger_File.cpp
index 69b8ef0431..eb422d10f8 100644
--- a/libraries/AP_Logger/AP_Logger_File.cpp
+++ b/libraries/AP_Logger/AP_Logger_File.cpp
@@ -778,6 +778,7 @@ void AP_Logger_File::PrepForArming()
  */
 void AP_Logger_File::start_new_log(void)
 {
+    gcs().send_text(MAV_SEVERITY_WARNING, "Starting new log");
     stop_logging();

     start_new_log_reset_variables();
pbarker@bluebottle:~/rc/ardupilot(master)$

We see:

    at ../../libraries/AP_Logger/AP_Logger_File.cpp:781
    this=0x555555ad9d30, pBuffer=0x7fffff8209d0, size=75, is_critical=true)
    at ../../libraries/AP_Logger/AP_Logger_Backend.cpp:372
    this=0x555555ad9d30, pBuffer=0x7fffff8209d0, size=75)
    at ../../libraries/AP_Logger/AP_Logger_Backend.h:32
    this=0x555555ad9d30, message=0x7fffff820b10 "Starting new log")
    at ../../libraries/AP_Logger/LogFile.cpp:466
    this=0x555555a6d758 <copter+11384>,
    message=0x7fffff820b10 "Starting new log")
    at ../../libraries/AP_Logger/AP_Logger.cpp:752
    this=0x555555a6e708 <copter+15400>, severity=MAV_SEVERITY_WARNING,
    fmt=0x5555557d64d0 "Starting new log", arg_list=0x7fffff820be0,
    dest_bitmask=1 '\001') at ../../libraries/GCS_MAVLink/GCS_Common.cpp:1847
    this=0x555555a6e708 <copter+15400>, severity=MAV_SEVERITY_WARNING,
    fmt=0x5555557d64d0 "Starting new log", arg_list=0x7fffff820be0)
    at ../../libraries/GCS_MAVLink/GCS.cpp:53
    this=0x555555a6e708 <copter+15400>, severity=MAV_SEVERITY_WARNING,
    fmt=0x5555557d64d0 "Starting new log")
    at ../../libraries/GCS_MAVLink/GCS.cpp:60
    at ../../libraries/AP_Logger/AP_Logger_File.cpp:781
    this=0x555555ad9d30, pBuffer=0x7fffff820dc0, size=75, is_critical=true)
    at ../../libraries/AP_Logger/AP_Logger_Backend.cpp:372

I'm not aware of any instances in the code where this will actually
happen - but it could easily sneak in.
2020-05-11 15:12:36 +10:00
Henry Wurzburg
12d5602926 AP_HAL_ChibiOS: Add ability to use UART3 and UART4 in bd alt config 4 2020-05-11 14:18:35 +10:00
chobits
8ce27afba0 Copter: fix mode and fence gps check fail message 2020-05-11 10:41:06 +09:00
Devansh Chawla
ebd2e15a6e Tools: added name to GIT_Success.txt 2020-05-10 16:18:49 -07:00
Peter Barker
50523ed0fa AP_HAL_ChibiOS: remove pointless initialisations
These are never stack-allocated.

Only saves 16 bytes - but several lines
2020-05-10 18:03:36 +10:00
Randy Mackay
67903a29e2 AP_NavEKF3: fix getLLH when no GPS 2020-05-10 15:35:55 +10:00
Randy Mackay
b95bc9076b AP_NavEKF2: fix getLLH when no GPS 2020-05-10 15:35:55 +10:00
Samuel Tabor
1bfc34f5f9 README: Add soaring maintainer. 2020-05-10 15:35:00 +10:00
Andrew Tridgell
2200dfefdb HAL_ChibiOS: during setup() we expect delays
this may fix occasional internal errors on SPI during startup
2020-05-10 15:12:43 +10:00
Andrew Tridgell
ebc6272865 tests: avoid warning 2020-05-10 15:11:22 +10:00
Andrew Tridgell
04e29d58e3 RC_Channel: avoid invalid misaligned access in example 2020-05-10 15:11:22 +10:00