Commit Graph

30283 Commits

Author SHA1 Message Date
Andrew Tridgell
9ce11159b0 AP_UAVCAN: support OpenDroneID 2022-08-09 14:37:08 +10:00
Joshua Henderson
ed47b10e0c AP_Arming: add OpenDroneID Mandatory Arming Check 2022-08-09 14:37:08 +10:00
Roel Schiphorst
3bd792295c GCS_MAVLINK: add OpenDroneID messages 2022-08-09 14:37:08 +10:00
Joshua Henderson
c52ae2edb4 AP_Vehicle: add OpenDroneID library 2022-08-09 14:37:08 +10:00
Roel Schiphorst
d346633996 AP_OpenDroneID: add OpenDrone ID library 2022-08-09 14:37:08 +10:00
Joshua Henderson
378dff5568 AP_GPS: added get_undulation support 2022-08-09 14:37:08 +10:00
Peter Barker
541cfa022b AP_Terrain: fix bad prearms-pass-when-they-shouldn't issue
The squares surrounding the current location were only checked when we went to send a terrain request.  This means it was possible that:
 - the number of pending requests could go to zero
 - prearm checks would pass
 - vehicle arm is attempted by the user (or a script, or ....)
 - the code would call AP_Terrain::send_requests which would create more pending requests
 - the arming sequence would fail

It's also possible for the arming to succeed, and then we're flying in violation of the intended prearm checks.

Doing things in the update function has the additional advantage of making things more efficient as we can push out terrain requests more often.
2022-08-09 14:31:14 +10:00
Peter Barker
c2d91a3bdb AP_Mission: mark mission as changed upon mission clear 2022-08-09 14:31:14 +10:00
Peter Barker
50fb56a74f AP_Mission: memoise result of contains_terrain_relative
527 items takes ~2200us on CubeOrange which is way too long
2022-08-09 14:31:14 +10:00
Peter Barker
4c674b64fb AP_Terrain: correct wait-for-terrain prearm check
looking at pending is insufficient as we may have more mission items to check to see if they need other pieces of terrain.  That is, terr_pending can go to zero momentarily and then go back to a non-zero number as Terrain's update method checks the mission and rally libraries for more terrain requirements.

Without this patch the prearm checks can momentarily pass, allowing the vehicle to arm.  The vehicle could hit a terrain failsafe later if it doesn't manage to get the data while in flight.
2022-08-09 14:31:14 +10:00
Peter Barker
d688e6068b AP_Terrain: move terrain prearm checks to AP_Terrain 2022-08-09 14:31:14 +10:00
Peter Barker
96ef34acac AP_Arming: move terrain prearm checks to AP_Terrain 2022-08-09 14:31:14 +10:00
Peter Barker
3bcd4fa22a AP_Arming: make terrain checks common between Copter and Plane 2022-08-09 14:31:14 +10:00
Andrew Tridgell
bad0120d3c AP_Mission: added contains_terrain_relative()
used in plane arming check
2022-08-09 14:31:14 +10:00
Iampete1
2d06261be3 AP_Gripper: apply auto close to all backends. 2022-08-09 13:23:35 +10:00
Leonard Hall
4bf622dbaf AP_Gripper: Add feedback when already in state 2022-08-09 13:23:35 +10:00
Leonard Hall
64d69c5977 AP_Gripper: Servo Gipper enhancments 2022-08-09 13:23:35 +10:00
Tamas Nepusz
1ae299b717 RC_Channel: reserve RX aux functions 248-249 for Skybrush 2022-08-09 13:22:07 +10:00
Andy Piper
d6ba508cb9 AP_ESC_Telem: keep RPM updates in the correct order 2022-08-09 11:13:11 +10:00
Andy Piper
2c22bca1a9 AP_Vehicle: make sure that if ESC telemetry is missing notch updates are not misordered 2022-08-09 11:13:11 +10:00
Henry Wurzburg
a5b373e912 AP_AHRS: modify AHRS type check for compass-less setups 2022-08-09 11:02:24 +10:00
Leonard Hall
1e3e5e5577 AP_Math: Control: Add velocity limits to shaping functions 2022-08-08 20:54:37 -04:00
Peter Barker
f5a8561fde AP_Arming: display 'Arm: ' instead of 'PreArm: ' for arming failures
Before this patch we would display PreArm: even if the checks were being performed as part of the arming sequence.

This lets us distinguish betwee checks failing because the user is trying to arm the vehicle and when the prearms are running while disarmed (or triggered via GCS)
2022-08-09 10:18:52 +10:00
Henry Wurzburg
8b02f11c23 AP_Motors: refactor to allow frame type symbols to be created for ELF 2022-08-09 10:06:18 +10:00
Joshua Henderson
e338e4cdb6 AP_TECS: use TECS log bitmask in constructor 2022-08-09 09:44:50 +10:00
Henry Wurzburg
aafc0789f0 SITL: add TeraRange Neo Rangefinder 2022-08-09 09:01:34 +10:00
Henry Wurzburg
a46c774698 AP_RangeFinder: add TeraRange Neo Rangefinder 2022-08-09 09:01:34 +10:00
Henry Wurzburg
e682296b58 AP_HAL_SITL: add TeraRange Neo Rangefinder 2022-08-09 09:01:34 +10:00
Henry Wurzburg
4c24b89dde AP_HAL: add TeraRange Neo Rangefinder 2022-08-09 09:01:34 +10:00
Shiv Tyagi
5167cd1e48 SITL: set z component of precland device pos separately
The position vector passed to update method is relative to home and the precland device origin height is also relative to home. Hence, we
can set the height of precland origin separately in a 3d vec containing its position relative to home
2022-08-05 10:17:19 +10:00
Henry Wurzburg
50591d1adf AP_Landing: change logging to be designated as streaming 2022-08-05 10:16:18 +10:00
Iampete1
4e4bfda05d AP_InertialSensor: vector params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
b025a6d41d AP_Follow: vector params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
90780e52b3 AP_Param: remove AP_ParamV = operator 2022-08-03 13:43:48 +01:00
Iampete1
1a3391ebef AP_OpticalFlow: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
b3f09e5573 SITL: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
d62508b273 AP_Math: tests: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
79b44b2517 SITL: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
8618b085be PID: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
338779d27d Filter: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
67fd8a1e49 AR_Motors: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
5893df9d9e AP_WindVane: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
0ef78c2f8b AP_VideoTX: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
d03f917ef4 AP_Terrain: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
0cb825e64d AP_SmartRTL: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
a0fc8cc46a AP_Scheduler: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
63e58e4fa1 AP_PiccoloCAN: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
59d75813cc AP_Param: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
2241766ed6 AP_Parachute: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
28007bfc1e AP_OSD: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
47105f0b03 AP_Mount: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
c1a9f75034 AP_Motors: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
8352a7b2b3 AP_Logger: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
ea03ea320c AP_InertialSensor: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
3878e64f97 AP_GyroFFT: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
51540359e6 AP_GPS: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
0d32e6cbf3 AP_Follow: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
df470f6a34 AP_Compass: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
f3b2de9c15 AP_Camera: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
7a5ff6b51f AP_BoardConfig: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
cacbd2579d AP_Beacon: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
6e6fcf4880 AP_BattMonitor: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
4fa0bcaa91 AP_Baro: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
2f7f187e18 AP_Avoidance: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
d423f483a6 AP_AHRS: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
cb6e6c82e5 AP_ADSB: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
6875ef17a0 APM_Control: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
ac1b8ab7be AC_WPNav: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
22aa09d125 AC_PrecLand: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
8d216fbce3 AC_PID: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
aa6a908f8e AC_InputManager: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
e141731146 AC_Fence: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
e78d5cd793 AC_Avoidance: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
e3ab7ed234 AC_Autorotation: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
7c4f48887a AC_AutoTune: params always use set method 2022-08-03 13:43:48 +01:00
Iampete1
07d96361ed AC_AttitudeControl: params always use set method 2022-08-03 13:43:48 +01:00
Tamas Nepusz
8959d35b91 AP_NavEKF3: add EK3_GPS_VACC_MAX as a threshold that decides whether to use GPS as altitude source depending on vAcc 2022-08-03 17:57:05 +10:00
Peter Barker
b468c49a39 AP_Arming: use prearm-display-timeout in milliseconds instead of counter 2022-08-03 17:12:51 +10:00
Andy Piper
f666c71676 AP_Motors: add BF/X cinelifter octaquad configuration 2022-08-03 17:06:38 +10:00
Andy Piper
9753f36dd1 AP_BLHeli: make ESC debug easier to see 2022-08-03 17:06:38 +10:00
Andy Piper
3f103f2fe3 AP_HAL_ChibiOS: hwdef for KakuteH7v2 2022-08-03 17:06:38 +10:00
Andy Piper
8855a54720 AP_InertialSensor: use filtered data in BMI270 and implement fifo reset
increase gyro ODR to 3.2Khz to allow higher AAF
use OSR4 on accel filter to achieve nominal 188Hz
2022-08-03 17:06:38 +10:00
Andy Piper
affbd5e278 AP_HAL_ChibiOS: hwdef for KakuteH7Miniv2 (1.3) 2022-08-03 17:06:38 +10:00
Andy Piper
1ff3ee7a12 AP_HAL_ChibiOS: allow undef of SPI devices 2022-08-03 17:06:38 +10:00
Andy Piper
7fc5a7135a AP_HAL_ChibiOS: make sure bootloader reserves space for storage
Fixes bug introduced by #19769
2022-08-03 16:55:51 +10:00
chobits
6ed07bd67e hwdef: KakuteH7 bluetooth switch 2022-08-03 13:59:08 +10:00
mfe-xiao
169b7df614 HAL_ChibiOS: hwdef: add README.md for PixSurveyA1 2022-08-03 09:05:04 +10:00
Andrew Tridgell
a0902e39fe AP_RangeFinder: default orientation to NONE for AP_Periph
this removes a setup step for AP_Periph rangefinders
2022-08-03 09:04:25 +10:00
Andrew Tridgell
2ee111cf7b hwdef: added ADC pin comments for 6X 2022-08-03 09:01:31 +10:00
Andrew Tridgell
f5026f2462 hwdef: setup default power pins for Holybro Pixhawk6C 2022-08-03 09:01:31 +10:00
Andrew Tridgell
4585c9fdc1 AP_EFI: prevent flood of Lutan serial port
send request at max 5Hz
2022-08-03 08:27:12 +10:00
Andrew Tridgell
273fe51a71 hwdef: switched to pixracer LED scheme for Pixhawk6X 2022-08-02 17:26:46 +10:00
Andrew Tridgell
f47585b235 hwdef: disable I2C DMA on Pixhawk6C and enable compass compensation 2022-08-02 17:26:46 +10:00
Andy Piper
155d436807 AP_InertialSensor: support for fast sampling rates on ICM-42xxx series
thoughtfully set anti-aliasing filters on ICM-42xxx series
2022-08-02 17:26:46 +10:00
Andrew Tridgell
696cd1a19b hwdef: added compass compensation for 3 boards
use the new compass heater compensation for 4 compasses across 3
boards
2022-08-02 17:26:46 +10:00
Andrew Tridgell
b6bcd6346d AP_Compass: switch to a general method of heater compensation
this allows any board to easily setup heater compensation for an
internal compass. The offsets are in body frame (previously in sensor
frame) and are sensor specific using bus device IDs
2022-08-02 17:26:46 +10:00
Andrew Tridgell
3ee42f3d20 hwdef: added missing ADC channel on Pixhawk6X 2022-08-02 17:26:46 +10:00
Andrew Tridgell
949ef22ed6 hwdef: disable I2C DMA on Pixhawk6X
this prevents an issue with the BMI088 and external compass on GPS1
2022-08-02 17:26:46 +10:00
Andrew Tridgell
01e6809942 hwdef: fixed rotation of bmi088 on Holybro6X 2022-08-02 17:26:46 +10:00
Andrew Tridgell
2582d5fad5 AP_InertialSensor: re-enable notch filter on 42688
thanks to Andy for pointing out this is for an internal resonance
2022-08-02 17:26:46 +10:00
Andrew Tridgell
8a6b8fc486 AP_InertialSensor: enable 180Hz LPF on ICM42670 2022-08-02 17:26:46 +10:00
Andrew Tridgell
5b579aebce AP_InertialSensor: enable AAF at 488Hz for gyro+accel on ICM42688
this should improve vibration handling
2022-08-02 17:26:46 +10:00
Andrew Tridgell
5bde9b0e7c AP_InertialSensor: added support for ICM42670 IMU 2022-08-02 17:26:46 +10:00
Andrew Tridgell
df9ac156c4 hwdef: fixed orientation of Pixhawk6X ICM42670 2022-08-02 17:26:46 +10:00
Andrew Tridgell
9911fd76f4 AP_BoardConfig: allow for BMI088 for Holybro 6X
and tighten check on CUAV-X6 and Holybro-6X to check all 3 IMUs
2022-08-02 17:26:46 +10:00
Andrew Tridgell
6845f2e24d hwdef: use right name for ICM42670 SPI device 2022-08-02 17:26:46 +10:00
Iampete1
223b005d29 SITL: SIM_Buzzer: hide params if not WITH_SITL_TONEALARM 2022-08-02 10:49:11 +10:00
Iampete1
e511f72294 AP_LandingGear: SITL: only set defualts is SITL pin is set avoiding enable via param conversion 2022-08-02 10:48:19 +10:00
Henry Wurzburg
530d59017a AP_Logger: add increment on file rate limiting to allow <1Hz 2022-08-02 10:22:48 +10:00
Henry Wurzburg
b7f49db1f7 AP_NavEKF3: Add streaming log verbosity level parameter 2022-08-02 10:21:39 +10:00
Henry Wurzburg
022987e4d3 RC_Channel: add AUX switch to pause logging of streamed entries 2022-08-02 10:15:08 +10:00
Henry Wurzburg
a395b3d2a8 AP_Logger: add AUX switch to pause logging of streamed entries 2022-08-02 10:15:08 +10:00
Andrew Tridgell
0ededd7c62 AP_AHRS: use wind from simulation if available with EKF type 10 2022-08-02 07:49:34 +10:00
Andrew Tridgell
8cc5172ff3 SITL: fill in wind from flightaxis 2022-08-02 07:49:34 +10:00
Peter Barker
aeb24d4978 AP_AHRS: remove method casting active EKF type for logging
logging is now done internally
2022-07-29 11:05:19 +10:00
Iampete1
7683b36e3b SITL: set compass vector after loading defualts 2022-07-28 16:51:33 +10:00
Iampete1
fcab0c70a2 AP_Param: allow init of all Vector3f values to single float 2022-07-28 16:51:33 +10:00
Iampete1
98d9f07507 AP_InertialSensor: defualt accel scale vector to 1.0 2022-07-28 16:51:33 +10:00
Iampete1
cdf930effe AP_Compass: defualt diagonals vector to 1.0 2022-07-28 16:51:33 +10:00
Peter Barker
e89f4ea599 AP_Arming: add prearm check that we are using configured AHRS type 2022-07-28 15:53:13 +10:00
Peter Barker
4909866dd9 AP_AHRS: add prearm check that we are using configured AHRS type 2022-07-28 15:53:13 +10:00
Iampete1
2fc9cf97d4 AC_Fence: defualt to AP_FENCE_ENABLED 2, 1 disables dummy methods 2022-07-27 19:04:56 +10:00
Iampete1
bab866268f RC_Channel: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
31bc6d9ec4 GCS_MAVLink: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
a9310c3d18 AP_Vehicle: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
ed330fd026 AP_Proximity: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
94004db13f AP_OSD: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
380d174e32 AP_Landing: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
ad59c62899 AP_Frsky_Telem: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
19ccf53fa6 AP_Filesystem: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
58d244d7a3 AP_Arming: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
4b6a0f0b4f AC_Fence: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
5f31818658 AC_Avoidance: change AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
9dc318f0cc AC_Fence: move to config file and rename from AC_FENCE to AP_FENCE_ENABLED 2022-07-27 19:04:56 +10:00
Iampete1
1342fa4851 AP_Proximity: fix complation without fence 2022-07-27 19:04:56 +10:00
Iampete1
ed356d94cd AC_Avoid: fix complilation with no fence 2022-07-27 19:04:56 +10:00
Iampete1
fa440d532a AC_Fence: add dummy methods 2022-07-27 19:04:56 +10:00
Iampete1
6a6f3ec4e5 AC_Fence: add AC_FENCE define 2022-07-27 19:04:56 +10:00
Iampete1
9e86f4dc43 AP_Vehicle: add AC_Fence 2022-07-27 19:04:56 +10:00
Iampete1
5d5552aa93 RC_Channel: fix complation without fence 2022-07-27 19:04:56 +10:00
Iampete1
5fa29eb01a GCS_MAVLink: fix complation without fence 2022-07-27 19:04:56 +10:00
Iampete1
520fc01739 AP_OSD: fix complation without fence 2022-07-27 19:04:56 +10:00
Iampete1
3942ee0811 AP_Landing: fix complation without fence 2022-07-27 19:04:56 +10:00
Iampete1
df3affc38c AP_Frsky_Telem: fix complation without fence 2022-07-27 19:04:56 +10:00
Iampete1
cababad66b AP_Filesystem: fix complation without fence 2022-07-27 19:04:56 +10:00
Iampete1
b3d0d4f33d AP_Arming: fix complation without fence 2022-07-27 19:04:56 +10:00
bugobliterator
4852ac332d AP_UAVCAN: add option bit for disabling Node Unhealthy check 2022-07-27 18:18:03 +10:00
bugobliterator
3c87062f27 AP_Common: add support for comparing BitMasks 2022-07-27 18:18:03 +10:00
bugobliterator
8e81ee0292 AP_HAL_SITL: add support for starting node in maintenance mode 2022-07-27 18:18:03 +10:00
bugobliterator
48f1e18161 AP_UAVCAN: add node healthy check 2022-07-27 18:18:03 +10:00