Commit Graph

23016 Commits

Author SHA1 Message Date
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
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
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
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
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
04e29d58e3 RC_Channel: avoid invalid misaligned access in example 2020-05-10 15:11:22 +10:00
Andrew Tridgell
5350ea5c58 AP_NavEKF3: avoid build warnings with g++ 9 2020-05-10 15:11:22 +10:00
Andrew Tridgell
3e853344f3 AP_Math: avoid build warnings 2020-05-10 15:11:22 +10:00
Andrew Tridgell
87c2858bde GCS_MAVLink: give banner on param download with ftp
thanks to Peter for noticing
2020-05-10 15:10:21 +10:00
Andrew Tridgell
259cb0aafd HAL_ChibiOS: removed EKF2 define, not needed any more 2020-05-10 15:09:54 +10:00
Andrew Tridgell
8868ac2d6f AP_AHRS: disable EKF2 by default on 1M boards 2020-05-10 15:09:54 +10:00
Andrew Tridgell
61d036acf3 HAL_ChibiOS: added build time check for right system clock
this helps prevent cases where we underclock a chip due to mistake in
headers or hwdef.dat
2020-05-10 15:09:28 +10:00
Andrew Tridgell
69676cd614 HAL_ChibiOS: support 24MHz f3 MCUs 2020-05-10 15:09:28 +10:00
Henry Wurzburg
3f735e7e54 HAL_ChibiOS: Make full UART4 available as bd config option 2020-05-10 08:00:57 +10:00
Henry Wurzburg
225a305cb9 AP_HAL_ChibiOS:Remove alt config since its not useful (no TX available) 2020-05-10 08:00:21 +10:00
Henry Wurzburg
8b3f07416c AP_NAVEKF3: change plane check_scaler value to match EKF2 value 2020-05-10 07:59:27 +10:00
Andrew Tridgell
cd5aae20c1 AP_NavEKF3: fixed scary message for non-compass planes 2020-05-09 12:33:33 +10:00
Andrew Tridgell
4a80313fdd AP_Compass: added get_num_enabled()
used by EKF3
2020-05-09 12:33:33 +10:00
Michael du Breuil
ceb0a9c827 AP_Airspeed: Rearrange state to save memory
Saves 8 bytes per airspeed sensor (2 backends for 8 total), and removes
the unneeded width specifier, which has no impact on used memory, and
saves us 88 bytes of flash because we don't have to do work to shift the
bits around.
2020-05-06 18:15:08 +10:00
Peter Barker
64e300a00c AP_Soaring: add documentation for VAR dataflash log message 2020-05-06 13:23:51 +10:00
Peter Barker
446dc61979 AP_InternalError: add warning on the internal error_t type 2020-05-06 13:23:15 +10:00
Peter Barker
70a9abfaff AP_InternalError: emit stringification of internal errors 2020-05-06 13:23:15 +10:00
Peter Barker
75514dfdfe AP_Arming: emit stringification of internal errors 2020-05-06 13:23:15 +10:00
Peter Barker
69093aa7b1 AP_Soaring: stop taking AHRS as constructor argument
... use singleton instead
2020-05-05 17:35:14 +10:00
Peter Barker
f1f30a2fee AP_UAVCAN: regularise CAN pre-arm failure messages
AP_Arming tacks on the sub-system bit.

Remove PiccoloCAN's silly nullptr check

Require the library to supply the failure message (no default message)

Remove default cases so authors know to think about places they should
add things.
2020-05-05 11:27:53 +10:00
Peter Barker
245b962d92 AP_PiccoloCAN: regularise CAN pre-arm failure messages
AP_Arming tacks on the sub-system bit.

Remove PiccoloCAN's silly nullptr check

Require the library to supply the failure message (no default message)

Remove default cases so authors know to think about places they should
add things.
2020-05-05 11:27:53 +10:00
Peter Barker
a6246a6afa AP_KDECAN: regularise CAN pre-arm failure messages
AP_Arming tacks on the sub-system bit.

Remove PiccoloCAN's silly nullptr check

Require the library to supply the failure message (no default message)

Remove default cases so authors know to think about places they should
add things.
2020-05-05 11:27:53 +10:00
Peter Barker
b38d2c6194 AP_Arming: regularise CAN pre-arm failure messages
AP_Arming tacks on the sub-system bit.

Remove PiccoloCAN's silly nullptr check

Require the library to supply the failure message (no default message)

Remove default cases so authors know to think about places they should
add things.
2020-05-05 11:27:53 +10:00
Andrew Tridgell
8ea433ac21 AP_Terrain: added script for creating terrain *.dat files
useful for pre-populating a microSD card
2020-05-05 11:21:33 +10:00
Andrew Tridgell
7b7bf3ef86 AP_Terrain: fixed bug in disk offset calculation
this fixes a problem where two different locations could both be
mapped to the same disk block in the terrain/*.DAT files. That meant
that pre-filled terrain on the microSD card would sometimes require a
download in flight. It also means that a RTL with loss of GCS could
sometimes fly through a region with no terrain data available

Other changes in this patch:

 - allow for a 2cm discrepancy in the lat/lon of the grid
   corners. This is needed to allow for slightly different floating
   point rounding in tools that pre-generate terrain data to load on
   the microSD

 - added TERRAIN_OPTIONS parameter to allow the user to disable
   attempts to download new terrain data. This is mostly useful for
   testing to validate a terrain generator
2020-05-05 11:21:33 +10:00
Tatsuya Yamaguchi
f23e592057 AP_Camera: move get_channel_pos function to RC_Channels 2020-05-05 10:09:30 +09:00
Tatsuya Yamaguchi
806bd38c7f RC_Channel: add get_channel_pos function 2020-05-05 10:09:30 +09:00
Tatsuya Yamaguchi
de854a2ffe AP_Arming: pre-arm check for disarm aux switch 2020-05-05 10:09:30 +09:00
Tatsuya Yamaguchi
4fdd24ecd3 RC_Channel: add disarm aux switch RCn_OPTION=81 2020-05-05 10:09:30 +09:00
Andy Piper
b7b2d9a6ce AP_Compass: add support for custom compass rotation via COMPASS_CUS_{ROLL,PIT,YAW}
add reboot required for parameters that need it
disable custom rotation on AP_Periph devices
2020-05-05 09:25:18 +10:00
Andy Piper
167e1d12d7 AP_RCProtocol: disable flow-control and buffered-writes for SRXL2 uart
switched spm_srxl.c to C++ compilation
Correctly set budget for half-duplex writes
Tidy PACKED and other externalities
disable SRXL2 on IOMCU and softserial - SRXL2 is a serial half-duplex protocol-only
fixed buffer overrun in SRXL2 parser
fix bugs in decoder sketch and allow output to SITL
2020-05-05 09:23:15 +10:00
Andy Piper
44e5171f2b AP_Frsky_Telem: refactor common code into AP_RCTelemetry
refactor naming
when using external data AP_Frsky_Telem::init() has to call AP_RCTelemetry::init() and exit.
No need to initialize serial ports
2020-05-05 09:23:15 +10:00
Andy Piper
e3a88f686d AP_RCTelemetry: Spektrum telemetry library and telemetry abstraction
add support for temperature, battery voltage, battery current, flight pack
altitiude, airspeed, attitude and compass, GPS, ESC telemetry based on BLHeli
status messages and QOS packets.
refactor into AP_Telemetry
conditionally compile based on HAL_MINIMIZE_FEATURES
don't initialize spektrum telemetry if there is no RC uart
2020-05-05 09:23:15 +10:00
Andy Piper
da166b256d GCS_MAVLink: add messages to Spektrum telemetry if it is enabled 2020-05-05 09:23:15 +10:00
Andy Piper
68c6a3b03d AP_RCProtocol: SRXL2 support 2020-05-05 09:23:15 +10:00
Peter Barker
967f8bf726 AP_HAL_ChibiOS: correct description of where stdout goes 2020-05-05 07:57:57 +10:00
david sastre
f8b6d4b0ac AP_Parachute: Fix singleton panic message 2020-05-05 07:43:02 +10:00
Andrew Tridgell
e126b6d346 HAL_ChibiOS: fixed race condition in storage write
we could mark a line as clean when it should be dirty if we lose a
race condition between storage thread and writer
2020-05-04 17:22:41 +10:00
Andrew Tridgell
0c1ba48212 AP_NavEKF3: fixed external yaw EK3_MAG_CAL=5 or 6
don't use GSF
2020-05-04 15:05:56 +10:00
Peter Barker
f43e48a6f1 AP_Filesystem: correct comparison of signed/unsigned
Closes #14267
2020-05-04 12:06:30 +10:00
Lucas De Marchi
29d8586ea4 AP_HAL_Linux: RCInput_UDP: accept up to 16 channels
This allows more channels to be passed to RCInput_UDP protocol while
also allowing less than 8 channels - this is similar to the approach
used by SITL in which the packet size is used to figure out the number
of channels.
2020-05-03 00:07:52 -07:00
Andrew Tridgell
f0fb64005d AP_Filesystem: document extra restrictions in param.pck 2020-04-30 21:15:28 +10:00
Andrew Tridgell
685d0666e9 AP_Filesystem: added README on VFS interface 2020-04-30 21:04:12 +10:00
Randy Mackay
183ce50138 AP_NavEKF3: check GPS used before resetting pos due to GPS receiver change 2020-04-30 15:55:59 +09:00
Randy Mackay
f79d5d2d2c AP_NavEKF3: handle external nav position reset 2020-04-30 15:55:59 +09:00
Randy Mackay
cbb25311bb AP_NavEKF3: setAidingMode uses lastExtNavPassTime_ms 2020-04-30 15:55:59 +09:00
Randy Mackay
d763597065 AP_NavEKF3: compensate for visual odometry sensor position 2020-04-30 15:55:59 +09:00
priseborough
c5e465aec9 AP_NavEKF3: add external nav system support
includes decoupling height source from use of external nav data
2020-04-30 15:55:59 +09:00
priseborough
471372cc7f AP_AHRS: Write external nav data to EKF3 2020-04-30 15:55:59 +09:00
Peter Barker
81454c7a40 GCS_MAVLink: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
58a8e54d83 AP_Math: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
7befe84f0c AP_Logger: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
f0b38fa11c AP_IOMCU: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
a30cdabb34 AP_InternalError: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
5f8a9d1e15 AP_HAL_SITL: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
141d7fed48 AP_HAL: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
48da4e523c AP_HAL_ChibiOS: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
37cddbeea6 AP_FlashStorage: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
8e82ea2540 AP_Common: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
119eef9954 AP_Arming: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
36fd632a49 AP_AHRS: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
Peter Barker
069bd04bdc AC_Fence: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
pkocmoud
defb7dc43f hwdef: add mRo M10070 Location One CAN GPS 2020-04-30 11:31:43 +10:00
Patrick José Pereira
3268c234d8 AP_HAL_Linux: Add PAGE_SIZE in RCInput_RPI
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-04-29 02:12:58 -07:00
Patrick José Pereira
32c0e37512 AP_HAL_Linux: Organize and document GPIO_RPI class
- Move macros to functions and improve explanation about logic behind it
- Break code in functions to make it more readable
- Add doxygen comments about functions and how they work in a comprehensive manner
- Improve general code maintainability

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-04-29 02:12:58 -07:00
Andrew Tridgell
66655212b1 AP_Compass: fixed compass ordering bug with AP_Periph
when a user swaps compasses on AP_Periph we want to immediately
replace it. The compass ordering code was rejecting the new compass
and calling panic as it was out of slots. This changes the AP_Compass
ordering so that when we only have a single compass we operate in a
very simple manner where we always accept the first compass found
2020-04-29 18:51:16 +10:00
Andrew Tridgell
3ec2ef787d HAL_ChibiOS: fixed build warning 2020-04-29 12:20:19 +10:00
Andrew Tridgell
f00392d567 AP_GPS: don't accept a zero GNSS timestamp from UAVCAN GPS
this is needed for a bug in AP_Periph 1.0 which could briefly send a
zero timestamp on first fix marked as a UTC time
2020-04-29 12:20:19 +10:00
Andrew Tridgell
ce68e0fbb5 HAL_ChibiOS: fixed bootloader build 2020-04-29 07:36:55 +10:00
Andrew Tridgell
0ef66659ce HAL_ChibiOS: log WDOG message once a second
this copes with delayed mounting of the microSD, making it much more
likely we log the critical data
2020-04-29 07:36:55 +10:00
Andrew Tridgell
7d6e5fa8a5 AP_InternalError: implement AP_stack_overflow() C binding
allow low level HAL code to report a stack overflow to
AP_InternalError
2020-04-29 07:36:55 +10:00
Andrew Tridgell
18e88e0ea3 HAL_ChibiOS: implement stack overflow hook
this needs C bindings to allow call from low level RTOS thread
switching code
2020-04-29 07:36:55 +10:00
Andrew Tridgell
77b8f88289 AP_Vehicle: report thread name in watchdog mavlink msg 2020-04-29 07:36:55 +10:00
Andrew Tridgell
c61cecdbc7 HAL_ChibiOS: report thread name in watchdog 2020-04-29 07:36:55 +10:00
Andrew Tridgell
09477b2dfe HAL_ChibiOS: shorted thread names
changes names so threads can be distinguished by first 4 bytes
2020-04-29 07:36:55 +10:00
Andrew Tridgell
a25ea5addc AP_HAL: added thread name to persistent data
this addes the first 4 bytes of the thread name to persistent data. It
also re-arranges the data so that it is more efficiently packed,
allowing us to fit the new field
2020-04-29 07:36:55 +10:00
Andrew Tridgell
b519ebf512 AP_Filesystem: check for valid range for start and count 2020-04-29 07:36:55 +10:00
Andrew Tridgell
7571e616de GCS_MAVLink: handle session timeout due to lost packets
and fixed handling of losing last pkt in a burst
2020-04-29 07:36:55 +10:00
Andrew Tridgell
db0d3c5e89 AP_Param: fixed race in param count handling 2020-04-29 07:36:55 +10:00
Andrew Tridgell
65e790a48c GCS_MAVLink: invalidate param count on set of ENABLE param 2020-04-29 07:36:55 +10:00
Andrew Tridgell
ffe9fa22a1 AP_RangeFinder: invalidate param count when changing param tree structure 2020-04-29 07:36:55 +10:00
Andrew Tridgell
d7555b4b86 AP_BoardConfig: invalidate param count when changing param tree structure 2020-04-29 07:36:55 +10:00
Andrew Tridgell
766fb32292 AP_Param: added set_enable() API
used to set value of an enable parameter, clearing count cache
2020-04-29 07:36:55 +10:00
Andrew Tridgell
7e010ef50a AP_NavEKF3: use set_enable() to set enable flag 2020-04-29 07:36:55 +10:00
Andrew Tridgell
c9ffe8dcea AP_NavEKF2: use set_enable() to set enable flag 2020-04-29 07:36:55 +10:00
Andrew Tridgell
f6d83069d3 AP_Filesystem: guarantee padding and added URI options 2020-04-29 07:36:55 +10:00
Andrew Tridgell
3608bfe272 AP_Filesystem: added magic header for param.pck 2020-04-29 07:36:55 +10:00
Andrew Tridgell
65749706c2 AP_Filesystem: fixed SITL build 2020-04-29 07:36:55 +10:00
Andrew Tridgell
a5965d5a9e HAL_Chibios: removed unnecessary debug defines 2020-04-29 07:36:55 +10:00
Andrew Tridgell
9b14fa7ed9 AP_Filesystem: enable @PARAM, @ROMFS and @SYS with no microSD 2020-04-29 07:36:55 +10:00
Andrew Tridgell
7cd901fa5b GCS_MAVLink: enable ftp without filesystem
allows for @PARAM and @SYS
2020-04-29 07:36:55 +10:00
Andrew Tridgell
2c26807736 HAL_ChibiOS: embed hwdef.dat in ROMFS for all boards 2020-04-29 07:36:55 +10:00
Andrew Tridgell
bd07e8516f Filter: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
3397ea24cc AP_RTC: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
b102fd6b59 AP_RangeFinder: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
9350c78023 AP_HAL_ChibiOS: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
4f591a338f AP_GPS: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
660f65e6b8 AP_Compass: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
40f1b5f9ae AP_Airspeed: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
6811d79b6f GCS_MAVLink: define GCS_SEND_TEXT() globally
used to avoid linking GCS in AP_Periph
2020-04-29 07:36:55 +10:00
Andrew Tridgell
6bacf021c8 HAL_ChibiOS: disable thread_info in AP_Periph and bootloader 2020-04-29 07:36:55 +10:00
Andrew Tridgell
d82cd1363b HAL_ChibiOS: fixed bootloader build 2020-04-29 07:36:55 +10:00
Andrew Tridgell
cd3b4dcc7d AP_Filesystem: added @SYS filesystem backend 2020-04-29 07:36:55 +10:00
Andrew Tridgell
f0c9f4003e HAL_ChibiOS: implement thread_info() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
164022ca12 AP_HAL: added thread_info() API 2020-04-29 07:36:55 +10:00
Andrew Tridgell
67fc23d01b AP_Filesystem: support downloading parameters via ftp
adds @PARAM/param.pck as a packed file of all parameters
2020-04-29 07:36:55 +10:00
Andrew Tridgell
456b685779 AP_Param: make type_size() public 2020-04-29 07:36:55 +10:00
Andrew Tridgell
ea71b72c87 HAL_ChibiOS: fixed issue with I2C4 on H743
when both I2C4 and SPI4 are active on a H743 I found that some BDMA
completion interrupts were lost, which resulted in SPI transfer
timeouts. Close inspection of the ChibiOS BDMA, I2Cv3 and SPIv3
drivers did not reveal any issues, but I found that the issue only
happened when the first 4 BDMA streams were used. This change splits
the 4 streams across the first and 2nd half of the BDMA controller,
and that fixes the problem.

This works as there are only 2 peripherals (I2C4 and SPI6) that want
to use BDMA with our current setup. If we ever wish to enable ADC3
(which also uses BDMA) we will need to revisit this issue
2020-04-28 17:42:15 +10:00
Randy Mackay
d8bc197d35 SITL: add VICON_GLIT_XYZ, FAIL and YAW
glitches are in meters in vicon's frame
fail disables sending of vision-position-estimate messages
yaw is the vicon's heading in degrees.  i.e. if vicon's "forward" is
pointing to the east, yaw should be set to 90
2020-04-28 12:31:14 +09:00
Paul Riseborough
ad5ae1813d AP_NavEKF3: Don't use geomag data when user specifies declination 2020-04-28 11:42:31 +09:00
Paul Riseborough
e1f27054d5 AP_NavEKF2: Don't use geomag data when user specifies declination 2020-04-28 11:42:31 +09:00
Paul Riseborough
8e9dc1c393 AP_Compass: Add accessor function for COMPASS_AUTODEC 2020-04-28 11:42:31 +09:00
Andrew Tridgell
b1977ca43d AP_Scripting: removed old servo output binding 2020-04-28 11:14:26 +10:00
Andrew Tridgell
d214e379a2 AP_Scripting: rebuild bindings 2020-04-28 11:14:26 +10:00
Andrew Tridgell
ea9316c2b5 AP_Scripting: added servo movement example script 2020-04-28 11:14:26 +10:00
Andrew Tridgell
ca584943a5 AP_Scripting: added bindings for servo output 2020-04-28 11:14:26 +10:00
Arash Negahdar
98dfc69887 SITL: Don't start scrimmage from ArduPilot 2020-04-28 11:09:51 +10:00
Mark Whitehorn
570aa929ca AP_Compass: handle ROTATION_CUSTOM in SITL 2020-04-28 10:57:26 +10:00
Mark Whitehorn
db1c7d9bdd SITL: add support for AHRS_ORIENTATION=ROTATION_CUSTOM 2020-04-28 10:57:26 +10:00
Mark Whitehorn
7d3d664ddf AP_Math: generate internalError on call to Vector3<T>::rotate and Quaternion::from_rotation with bad rotation value 2020-04-28 10:52:21 +10:00
Mark Whitehorn
b658a84124 AP_InternalError: add error type bad_rotation 2020-04-28 10:52:21 +10:00
bnsgeyer
ce171107a3 SITL: update tradheli dynamics model for SITL 2020-04-28 10:45:33 +10:00
Kelly Schrock
2cb54bb11d AP_BattMonitor: NeoDesign battery driver
Adds a driver for the NeoDesign BMS, with variable cell count.
2020-04-28 10:39:57 +10:00
Randy Mackay
8caf7d5811 AP_AHRS: add set_alt_measurement_noise
These calls the EKF2 and EKF3's set_baro_alt_noise
2020-04-28 09:38:23 +09:00
Michael du Breuil
9b404669c8 AP_Compass: Skip rotating the mag data when the board orientation is none 2020-04-28 10:37:00 +10:00
Andrew Tridgell
32cdfddf12 HAL_ChibiOS: convert all hwdef from UART_ORDER to SERIAL_ORDER
much easier to understand
2020-04-28 10:32:23 +10:00
Andrew Tridgell
a52070d226 HAL_ChibiOS: use SERIAL_ORDER instead of UART_ORDER
SERIAL_ORDER is much easier for developers to understand as it maps
directly to the SERIALn_ parameters
2020-04-28 10:32:23 +10:00
Andrew Tridgell
0994655f5b HAL_ChibiOS: fixed build warnings for bootloader builds 2020-04-28 10:32:23 +10:00
Andrew Tridgell
9557a5c22c HAL_ChibiOS: added more STM32CubeMX configs 2020-04-28 10:32:23 +10:00
Andrew Tridgell
a9df9fe0c0 HAL_ChibiOS: removed clock tree settings in most hwdef.dat
these are better set automatically in the headers. This simplifies the
task of doing a new port
2020-04-28 10:32:23 +10:00
Andrew Tridgell
a638196334 HAL_ChibiOS: skyviper-f412-rev1 uses a custom clock tree 2020-04-28 10:32:23 +10:00
Andrew Tridgell
e8b2b52bae HAL_ChibiOS: removed STM32_VDD from hwdef.dat
use default
2020-04-28 10:32:23 +10:00
Andrew Tridgell
d9efac2993 HAL_ChibiOS: only allow PLL override in clock selection part of header 2020-04-28 10:32:23 +10:00
Andrew Tridgell
fe765b8845 HAL_ChibiOS: switched CUAV_GPS to use same clocks as other F4 2020-04-28 10:32:23 +10:00
Andrew Tridgell
82c45f6cdb HAL_ChibiOS: default STM32_VDD to 3.3V 2020-04-28 10:32:23 +10:00
Andrew Tridgell
29f538dec9 HAL_ChibiOS: use common header for STM32 clock config
avoid the need for clock config lines in most hwdef.dat files
2020-04-28 10:32:23 +10:00
Andrew Tridgell
3d5475a1d9 HAL_ChibiOS: fixed skyviper-journey build 2020-04-28 10:32:23 +10:00
Andrew Tridgell
bceee69a6c AP_Filesystem: avoid some warnings in AP_Scripting 2020-04-28 10:32:23 +10:00
Andrew Tridgell
6222649e37 AP_Scripting: avoid build warnings 2020-04-28 10:32:23 +10:00