Commit Graph

31527 Commits

Author SHA1 Message Date
Iampete1 dd31742463 AP_Param: align param info structures to save flash 2023-01-11 18:41:34 +11:00
Iampete1 5c013552ed AP_OSD: align param info structures to save flash 2023-01-11 18:41:34 +11:00
Iampete1 57e35f39b1 AP_NMEA_Output: align param info structures to save flash 2023-01-11 18:41:34 +11:00
Peter Barker 37b54a7c9c AP_Param: correct compilation when debugging enabled
Correct passing through ov varargs from macro
2023-01-11 13:55:36 +11:00
MAD-CRAZY-MAN 63efa7e480 hwdef: update thepeach hwdef-bl.dat 2023-01-11 10:00:57 +11:00
Peter Barker c71c93e2b0 AP_Vehicle: make check_var_info void
Given all the callers die anyway, make it void
2023-01-10 10:48:15 +11:00
Peter Barker 7f9714d722 AP_Param: make check_var_info void
Given all the callers die anyway, make it void
2023-01-10 10:48:15 +11:00
Iampete1 e2535d1197 AP_OSD: rework param defualting 2023-01-10 10:42:52 +11:00
Peter Barker 551dae8759 AP_AHRS: break out an AP_AHRS_config.h 2023-01-10 10:27:39 +11:00
Andrew Tridgell 10c5ecb46a AP_Scripting: added example for generator throttle control 2023-01-10 10:19:51 +11:00
Henry Wurzburg 787cce4fc3 AP_Scripting: sport_aerobatics trick additions and fixes 2023-01-10 09:41:41 +11:00
Randy Mackay 0d18ee71fa GCS_MAVlink: send_autopilot_state_for_gimbal_device sends ef z-axis rate target 2023-01-09 10:34:34 +09:00
Randy Mackay 78f1b18b64 AP_Vehicle: replace get_rate_bf_targets with get_rate_ef_targets 2023-01-09 10:34:34 +09:00
Randy Mackay 5981e8bbaa AC_AttitudeControl: add get_rate_ef_targets accessor 2023-01-09 10:34:34 +09:00
Andrew Tridgell 3d5ef88c43 AC_AttitudeControl: fixed time wrap bug in is_active_xy()
this failed at 70 minutes
2023-01-08 16:02:42 +11:00
Andrew Tridgell f39f4e35c2 GCS_MAVLink: optimise FTP for available bandwidth
when we don't have hardware flow control don't use more than 1/3 of
available bandwidth for ftp outgoing transfers. This makes parameter
download faster on radios without flow control
2023-01-08 15:11:32 +11:00
Andrew Tridgell a14c5b2955 AP_HAL: check for null buffer in ObjectBuffer get_size() 2023-01-08 15:11:32 +11:00
Andrew Tridgell 41de8286ef GCS_MAVLink: check for alloc failure of ObjectBuffer 2023-01-08 15:11:32 +11:00
Andrew Tridgell db45682b3d AP_Scripting: check for alloc failure of ObjectBuffer 2023-01-08 15:11:32 +11:00
Andrew Tridgell 03f4ab515d AP_HAL_Linux: check for alloc failure of ObjectBuffer 2023-01-08 15:11:32 +11:00
Andrew Tridgell 6bff28d5d5 AP_CANManager: check for alloc failure of ObjectBuffer 2023-01-08 15:11:32 +11:00
Andrew Tridgell e184e78e52 AC_Avoidance: check for alloc failure of ObjectBuffer 2023-01-08 15:11:32 +11:00
Andrew Tridgell 57ee3a4e02 GCS_MAVLink: send FTP replies directly from the FTP thread
this saves over 700 bytes of memory while also making ftp faster
2023-01-08 15:11:32 +11:00
Andrew Tridgell 7a741a0a2d AP_GPS: fixed use of undulation for GPS2_RAW
GPS2_RAW needs to use undulation of 2nd receiver
2023-01-08 13:30:11 +11:00
Andrew Tridgell 17c25780c7 AP_GPS: support UNIHEADINGA message for Unicore NMEA
this allows for good yaw even without a RTK fix, which makes yaw with
dual-antenna Unicore GPS modules much more useful
2023-01-08 13:30:11 +11:00
murata 42a2a51dc7 AP_Landing: Change from division to multiplication 2023-01-06 11:31:09 -08:00
Andrew Tridgell b80dca38ff GCS_MAVLINK: added check_payload_size() method
this saves flash by moving common code to cpp
2023-01-06 22:50:42 +11:00
Peter Barker 54a4b7a98b GCS_MAVLink: use chibios_hwdef.py to disable fence on AP_Periph 2023-01-06 12:39:06 +11:00
Peter Barker 28592269ff AP_HAL_ChibiOS: use chibios_hwdef.py to disable fence on AP_Periph 2023-01-06 12:39:06 +11:00
Iampete1 3299976eae AP_Airspeed: move setting of first backend defualts to constructor to avoid race 2023-01-05 08:27:45 +11:00
Andrew Tridgell 0b7353bb89 AP_Filesystem: detect inconsistent parameter count
on incorrect param count invalidate it so a 2nd param ftp will get the
right count
2023-01-04 21:50:24 +11:00
Andrew Tridgell f0bc31cdc3 AP_Vehicle: invalidate param count at end of vehicle startup 2023-01-04 21:50:24 +11:00
Peter Barker 3854e4a99d AP_AHRS: get_relative_position_D_home: don't use home until set 2023-01-04 18:11:01 +11:00
Peter Barker 341d66800a hwdef: minimize features on VRBrain-v52 and VRCore-v10
these are failing to build on the firmware server
2023-01-04 18:06:18 +11:00
Peter Barker fe4e4b0aff AP_HAL: correct sitl-on-hw compilation for Helicopters 2023-01-04 18:04:28 +11:00
Peter Barker 95527894de AP_InertialSensor: define AP_INERTIALSENSOR_ENABLED in a new AP_InertialSensor_config.h 2023-01-04 18:02:34 +11:00
Peter Barker e8c5296087 AP_HAL: define AP_INERTIALSENSOR_ENABLED in a new AP_InertialSensor_config.h 2023-01-04 18:02:34 +11:00
Peter Barker de54bcbc21 AP_HAL_ChibiOS: define AP_INERTIALSENSOR_ENABLED in a new AP_InertialSensor_config.h 2023-01-04 18:02:34 +11:00
Henry Wurzburg 8de4195ffc AP_Scripting: add readme.md file and completion 2023-01-04 16:20:12 +11:00
Andrew Tridgell ea89f04a56 AP_Scripting: script switching system
Co-authored-by:Henry Wurzburg (hwurzburg@yahoo.com)
2023-01-04 16:20:12 +11:00
Peter Barker c728483a7e AP_HAL_SITL: add option to create uart connection to file 2023-01-04 12:29:49 +11:00
Andy Piper 2c990f9e1c AP_HAL_ChibiOS: MambaH743 v2 with dual ICM42688 2023-01-04 08:12:44 +11:00
murata 0fedd83208 AP_SerialManager: Add 2Mbps for simulator 2023-01-03 12:52:07 +11:00
Kirill Shilov 4e3081cdf8 AIRLink hwdef: added heater parameters 2023-01-03 12:08:57 +11:00
Peter Barker 389eb3ac50 AP_HAL_ChibiOS: minimize Mamba405-2022 2023-01-03 11:39:18 +11:00
Peter Barker 6524bf3729 AP_Logger: create and use AP_Logger_config.h 2023-01-03 11:24:14 +11:00
Henry Wurzburg bd27a8c650 AP_Scripting: Update readmes for aerobatics 2023-01-03 11:22:52 +11:00
Peter Barker 798cc2633f AP_SerialManager: implement parameter CopyFieldsFrom and use it 2023-01-03 11:08:43 +11:00
Peter Barker 7432123e42 AP_Button: implement parameter CopyFieldsFrom and use it 2023-01-03 11:08:43 +11:00
Peter Barker 80c79f1529 AP_Arming: only require AP_RALLY_ENABLED if MIS_ITEM_CHECK_RALLY
It's OK to not have AP_RALLY_ENABLED if the user isn't requiring that a rally point be avaiable.  i.e. if the user is requesting that there be a landing point that doesn't infer rally must be compiled in!
2023-01-03 11:04:44 +11:00
Henry Wurzburg 65547f41c7 AP_Scripting: rename TRIK to TRIKR for sport_aerobatics 2023-01-03 11:03:36 +11:00
Andrew Tridgell d6c258e9d0 AP_Declination: update magnetic field tables
now using igrf13
2023-01-03 11:01:32 +11:00
Peter Barker 84215ff662 AP_Terrain: only include GCS_MAVLink if terrain is enabled 2023-01-03 10:47:28 +11:00
Iampete1 f0c1673b62 AP_Scripting: bindings: logger: support more formats 2023-01-03 10:45:51 +11:00
Iampete1 3d9794a503 AP_ExternalAHRS: VectorNav: remove reset and wait as it causes baro calibration issues 2023-01-03 10:32:20 +11:00
Iampete1 621e01fbcc SITL: VectorNav: update simulated VN-300 for new packet type 2023-01-03 10:32:20 +11:00
Iampete1 759f035636 AP_ExtneralAHRS: add option to use uncompensated IMU values on vector nav 2023-01-03 10:32:20 +11:00
Iampete1 9040eac91b AP_ExtneralAHRS: VectorNav: get uncompensated IMU values 2023-01-03 10:32:20 +11:00
Iampete1 f441640aba AP_ExternalAHRS: VectorNac: VN-300 remove unused data fields 2023-01-03 10:32:20 +11:00
Iampete1 2e465b4c18 AP_InertialSensor: External: report name in output banner 2023-01-03 10:32:20 +11:00
Iampete1 ec1814da34 AP_ExternalAHRS: add get_name function for reporting 2023-01-03 10:32:20 +11:00
Iampete1 33b09ff0cb AP_ExternalAHRS: add enabled method 2023-01-03 10:32:20 +11:00
Iampete1 f933f148ed AP_AHRS: always run external AHRS arming check if enabled 2023-01-03 10:32:20 +11:00
Iampete1 8710a651ce AP_ExternalAHRS: VectorNAV: add support for VN-100 2023-01-03 10:32:20 +11:00
Peter Barker 959b3049c0 GCS_MAVLink: rename HAL_INS_ENABLED to AP_INERTIALSENSOR_ENABLED 2023-01-03 10:28:42 +11:00
Peter Barker ee98d75173 AP_InertialSensor: rename HAL_INS_ENABLED to AP_INERTIALSENSOR_ENABLED 2023-01-03 10:28:42 +11:00
Peter Barker 1725e794ed AP_HAL: rename HAL_INS_ENABLED to AP_INERTIALSENSOR_ENABLED 2023-01-03 10:28:42 +11:00
Peter Barker 5d84fbbedb AP_HAL_ChibiOS: rename HAL_INS_ENABLED to AP_INERTIALSENSOR_ENABLED 2023-01-03 10:28:42 +11:00
Peter Barker 0d64dc5a14 AP_Frsky_Telem: rename HAL_INS_ENABLED to AP_INERTIALSENSOR_ENABLED 2023-01-03 10:28:42 +11:00
Peter Barker c0d9201740 AP_Compass: rename HAL_INS_ENABLED to AP_INERTIALSENSOR_ENABLED 2023-01-03 10:28:42 +11:00
Peter Barker ed642df063 AP_Arming: add required AP_Relay.h include 2023-01-03 10:19:54 +11:00
Peter Barker 4776ae653c AP_Parachute: use relay singleton in Parachute 2023-01-03 10:19:54 +11:00
Iampete1 58ac399aa9 AP_Airspeed: add allocare method for periph 2023-01-03 10:17:56 +11:00
Iampete1 baa642896e SITL: update for new airspeed tube order param name 2023-01-03 10:17:56 +11:00
Iampete1 e39b62a0e6 AP_HAL_ChibiOS: Swan-K1 update airspeed tube order param name 2023-01-03 10:17:56 +11:00
Iampete1 bfab3e8b04 AP_Airspeed: AP_Airspeed_Params: provide dummy var table to save flash 2023-01-03 10:17:56 +11:00
Iampete1 a20c07b745 AP_Airspeed: add global enable parameter 2023-01-03 10:17:56 +11:00
Iampete1 0bb7e8a789 AP_Airspeed: add param conversion to per-instance 2023-01-03 10:17:56 +11:00
Iampete1 e8802d1858 AP_Airspeed: remove old param conversion 2023-01-03 10:17:56 +11:00
Gone4Dirt 0138d0c2cc AP_Airspeed: move params to seperate file 2023-01-03 10:17:56 +11:00
ChriKrawi 5e8cbbd238 AP_HAL_ChibiOS: hwdat-file modified to support bmi270 imu 2023-01-03 09:34:29 +11:00
Andrew Tridgell 49fdc30532 hwdef: remove unnecessary RANGEFINDER_MAX_INSTANCES 2023-01-02 15:42:55 +11:00
Andrew Tridgell 673aa5ceb7 HAL_ChibiOS: default to max 1 rangefinder in periph 2023-01-02 15:42:55 +11:00
Leonard Hall 7857bb2210 AP_Gripper: Add Neutral state after init 2022-12-31 12:29:31 +09:00
Henry Wurzburg 175c2c950e AP_Scripting:fix format error in readme file 2022-12-30 14:39:43 -08:00
Andy Piper 7f7305a6d9 AP_InertialSensor: use correct include for sim-on-hardware 2022-12-31 09:32:32 +11:00
Andy Piper 921f51d08a AP_HAL: correct AP_SIM_FRAME_CLASS name 2022-12-31 09:32:32 +11:00
Leonard Hall aeb25ca20a AP_Math: extend the control.cpp test suite 2022-12-30 20:25:58 +09:00
Andrew Tridgell f0d8a383d1 AP_Math: added a control.cpp test suite 2022-12-30 20:25:58 +09:00
Leonard Hall 140dc61f2a AC_AttitudeControl: AC_PosControl: Simplify and clarify use of vertical controllers 2022-12-30 20:25:58 +09:00
Leonard Hall ac3a3d9576 AP_Math: Target velocity can reduce when limited
AP_Math: Target velocity can reduce when limited
2022-12-30 20:25:58 +09:00
Leonard Hall 05aa879b61 AC_AttitudeControl: AC_PosControl: Comment fix and small efficiency gain 2022-12-30 20:25:58 +09:00
Leonard Hall 114e8e2f52 AP_Math: Control Tools Enhancments
AP_Math: Control Tools Enhancments
2022-12-30 20:25:58 +09:00
Leonard Hall ed24a635c6 AC_WPNav: Add corner acceleration limit parameter 2022-12-30 17:03:32 +09:00
Leonard Hall 638379d3ed AC_WPNav: remove _wp_accel_cmss.set_and_save_ifchanged 2022-12-30 15:16:08 +09:00
Andrew Tridgell cc05de8e57 AP_FETtecOneWire: change comments to not use @param
these comments break the MissionPlanner param parser

see these errors in MissionPlanner.log

```
2022-12-30 08:28:42,641  INFO MissionPlanner.Utilities.ParameterMetaDataParser - using cache https://raw.oborne.me/ardupilot/ardupilot/master/libraries/AP_FETtecOneWire/AP_FETtecOneWire.cpp (D:\a\MissionPlanner\MissionPlanner\ExtLibs\Utilities\ParameterMetaDataParser.cs:503) [65]
2022-12-30 08:28:42,641 ERROR MissionPlanner.Utilities.ParameterMetaDataParser - Invalid MetaFrame Blimp (D:\a\MissionPlanner\MissionPlanner\ExtLibs\Utilities\ParameterMetaDataParser.cs:390) [70]
2022-12-30 08:28:42,641  INFO MissionPlanner.Utilities.ParameterMetaDataParser - using cache https://raw.oborne.me/ardupilot/ardupilot/master/libraries/AP_Proximity/AP_Proximity_Params.cpp (D:\a\MissionPlanner\MissionPlanner\ExtLibs\Utilities\ParameterMetaDataParser.cs:503) [71]
2022-12-30 08:28:42,642 ERROR MissionPlanner.Utilities.ParameterMetaDataParser - Bad Key - Value @param b blue brightness
*/
void AP_FETtecOneWire::led_color(const uint8_t r, const uint8_t g, const uint8_t b)
{
    for (uint8_t i=0; i<_esc_count; i++) {
        auto &esc = _escs[i];
        if (esc.state != ESCState::RUNNING) {
            continue;
        }
        transmit_config_request(PackedMessage<LEDColour>{esc.id, LEDColour{r, g, b}});
    }
}
```
2022-12-30 09:54:09 +11:00
Andrew Tridgell d5a0421bbb AP_Scripting: fixed derry turn in aerobatics 2022-12-29 07:49:15 +11:00
Andrew Tridgell 6edfe7368e AP_Scripting: don't start aerobatics until we have a ahrs estimates
prevents nil derefernce in loading tricks
2022-12-29 07:48:53 +11:00
Peter Barker e43b1dd2eb SITL: tidy simulated proximity sensor constructors 2022-12-28 21:52:27 +11:00
Andy Piper 16ca2e1179 AP_InertialSensor: use 234Hz accel LPF and 532Hz gyro LPF on BMI088 to more closely match Invensense
synchronize fifo reads with backend update on BMI088
2022-12-28 18:18:26 +11:00
Andy Piper d29ccba3f7 AP_Vehicle: constrain FFT notch updates to obey reference frequency 2022-12-28 18:14:56 +11:00
Andy Piper 90cdc1aa52 AP_InertialSensor: allow FFT window to be captured post-filter
selectively apply filters twice to make sure that FFT is not tracking itself
clean-up notch disablement for non-DSP builds
use filter gyro data for FFT when analysing post-filter
always apply LPF after all of the notches
move to a phased application of window information for FFT
tap FFT gyro window at the appropriate place for downsampled FFTs
add accessor for FFT notch
document notch uses cases and flow
2022-12-28 18:14:56 +11:00
Andy Piper 9eb561639b AP_InertialSensor: add support for reading and writing INS data from a file in SITL
allow sketch to be stopped at end of SITL samples
2022-12-28 18:14:56 +11:00
Andy Piper ec7be5c417 SITL: add parameters to control reading and writing IMU data to a file
add exit on stop to reading IMU data from a file
2022-12-28 18:14:56 +11:00
Andy Piper 5ea3415a41 AP_HAL_SITL: allow SITL sketches to run
allow sketchname to be set
2022-12-28 18:14:56 +11:00
Andy Piper 7acdaf2dd0 AP_Vehicle: add vehicle motor noise check 2022-12-28 18:14:56 +11:00
Andy Piper 449d9814ab AP_GyroFFT: add FFT_OPTIONS to allow post-filter sampling of IMUs
provide method to determine noise at a particular frequency
add ability to record per-peak SnR
correct bad array indexing leading to free memory read
track all three axes for health and peaks
remove slewed frequency values, since slewing is now done in the filters
ReplayGyroFFT initial implementation
allow IMU data to be read and written from a file
only build Replay on SITL
correctly calibrate FFT in Replay
better noise simulation in Replay
FTN3 logging
allow FFT peaks to swap indefinitely as long as they both still exist.
Leads to much smoother frequency transitions
increase the energy gap required to switch the tracked peak
use exit on stop for Replay
filter noise tracking more aggressively for post-filter samples
remove message and use appropriate gyro window
when using post-filter do not fallback to throttle-based estimate

AP_GyroFFT: default SnR to 10 when using post-filter samples
2022-12-28 18:14:56 +11:00
Peter Barker b716793a0e AP_NavEKF3: remove duplicated lines in parameter metadata 2022-12-28 13:21:18 +11:00
Leonard Hall 78942911b7 AC_AttitudeControl: AC_PosControl: Include FF in _pid_vel_xy integrator initialisation 2022-12-28 08:25:31 +09:00
Henry Wurzburg d6a5d31625 AP_Scripting:add rate based aerobatics 2022-12-27 18:20:34 +11:00
Mohammad Hefny feece150c6 AP_HAL_Linux: Raspberry 64OS Address fix 2022-12-27 10:03:41 +11:00
Andrew Tridgell 36d2c267fe AP_HAL: allow for a wider range of simulation backends in SIM-on-hw 2022-12-24 07:27:04 +11:00
Andrew Tridgell 057190caa8 SITL: update SITL on hw docs 2022-12-24 07:27:04 +11:00
Andrew Tridgell 0da81f7269 SITL: remove old sitl-on-hw.sh 2022-12-24 07:27:04 +11:00
Andrew Tridgell 87a220991b SITL: new sitl-on-hw.py script
this makes it easier to build SITL on hardware for a wide range of
frames
2022-12-24 07:27:04 +11:00
Andrew Tridgell fdd0d0ae53 SITL: default SIM_RATE_HZ to 400 in SITL-on-hw 2022-12-24 07:27:04 +11:00
Andrew Tridgell 5f8e655f98 AP_HAL: allow override of frame class and string for SITL on hw 2022-12-24 07:27:04 +11:00
Peter Barker fb18adb035 hwdef: fix build for ARK_RTK_GPS 2022-12-23 21:14:15 +11:00
Henry Wurzburg 6348fd5f86 AP_HAL_ChibiOS: free space on ReaperF745 2022-12-23 11:04:35 +11:00
Henry Wurzburg 182326a76f AP_HAL_ChibiOS: rename to ReaperF745 2022-12-23 11:04:35 +11:00
Henry Wurzburg 2c5b85c9c5 AP_HAL_ChibiOS:modify hwdef for V3 of ReaperF745 2022-12-23 11:04:35 +11:00
Tatsuya Yamaguchi dd539f8ec9 AP_DAL: call start_frame for all backends 2022-12-23 09:56:29 +11:00
Andy Piper 96060ef31e AP_HAL_ChibiOS: add UART baudrate accessor 2022-12-22 18:38:31 +00:00
Andy Piper 445aad17c9 AP_HAL: add UART baudrate accessor 2022-12-22 18:38:31 +00:00
Andy Piper aaa6b284bd RC_Channel: add option to support ELRS at 420kbaud 2022-12-22 18:38:31 +00:00
Andy Piper 78c70c74dc AP_RCTelemetry: report CRSF link rate rather than mode.
Encode actual protocol being used
cleanup is_elrs() and version numbers
2022-12-22 18:38:31 +00:00
Andy Piper 425f2b946e AP_RCProtocol: check for 3 good frames for CRSF
Move get_link_rate() and get_protocol_string() to CRSF protocol
allow ELRS at 420kbaud to be configured
allow CRSF to bootstrap at ELRS desired baudrate
2022-12-22 18:38:31 +00:00
Bill Geyer 93b0519ad2 AP_MotorsHeli: improve collective to yaw compensation 2022-12-22 07:07:34 -05:00
Andrew Tridgell f742845552 AP_Scripting: changed airshow rolling circle
make it more achievable
2022-12-22 21:13:30 +11:00
Tatsuya Yamaguchi 43160efba8 AP_Scripting: modify example script of README.md
- avoid to call set_output_pwm before setting origin
- make get_home() once
2022-12-22 13:25:35 +09:00
Andrew Tridgell 441a2ee00d hwdef: added RM3100 compass to C-RTK2-HP 2022-12-21 19:52:31 +11:00
Andrew Tridgell e966e272ac hwdef: fixed build for f103-Trigger 2022-12-21 19:52:31 +11:00
Andrew Tridgell d768c721ee HAL_ChibiOS: make it fatal to have I2C devices without an I2C_ORDER
otherwise it is very confusing when you end up with AP_HAL_Dummy for
I2C manager
2022-12-21 19:52:31 +11:00
Randy Mackay 1a4f51d782 AP_Mount: servo driver loses unnecessary closest_limits method 2022-12-21 18:45:33 +11:00
Tom Pittenger f8ee112e47 AP_TemperatureSensor: fix param count change when loading drivers 2022-12-20 15:19:14 -03:00
Andrew Tridgell 1f100710d2 hwdef: go to minimal GPS for MatekF405-CAN
fixes flash overflow
2022-12-20 12:14:24 +11:00
Iampete1 34d2a5acaa AP_WindVane: add Arduino script and readme to allow conection to Bluetooth wind-vane 2022-12-20 12:13:46 +11:00
Iampete1 e142747d1f AP_Airspeed: Periph: remove useage of hidden params and remove tuber order 2022-12-20 11:12:25 +11:00
Andrew Tridgell 8e93265928 hwdef: added MatekL431-BattMon firmware 2022-12-20 10:44:52 +11:00
Andrew Tridgell 24d4a4cf5e AP_BattMonitor: added support for INA239 SPI battery monitor 2022-12-20 10:44:52 +11:00
Andrew Tridgell 76d0c0f408 AP_BattMonitor: hide unused parameters in peripherals 2022-12-20 10:44:52 +11:00
Andrew Tridgell eb704510d6 HAL_ChibiOS: default to one battery monitor backend in peripherals 2022-12-20 10:44:52 +11:00
Andrew Tridgell 87b4b031bf AP_AHRS: if DCM has no yaw source then don't fallback when hovering
this copes with quadplanes with no compass. With a compass we are
better off using EKF when not in fly-forward as it will give better
height control.

This makes QHOVER for takeoff in quadplanes with no compass a lot more
flyable
2022-12-20 10:34:22 +11:00
Andrew Tridgell 56c8cffc07 AP_AHRS: auto-enable EKF3 for misconfiguration
this fixes a "climb away" in quadplanes when AHRS_EKF_TYPE=2 and
EK2_ENABLE=0. The user has ARMING_CHECK=5390 to disable key arming
checks, and the plane flew on DCM as the configured EKF wasn't
enabled.

This resulted in AHRS::get_origin() returning false as it couldn't ask
EKF2 for the origin (as EKF2 was not enabled or instantiated)

The result was an incorrect calculation for target height during the
descent stage of QRTL, resulting in a climb away until the user took
over
2022-12-20 10:34:22 +11:00
Andrew Tridgell 8bf8d4889a AP_NavEKF3: added get_enable() 2022-12-20 10:34:22 +11:00
Andrew Tridgell fadb9007d0 AP_NavEKF2: added get_enable() 2022-12-20 10:34:22 +11:00
Andrew Tridgell f53c865c7a AP_GPS: only create GPS logs for active GPS backends 2022-12-20 10:23:58 +11:00
Andrew Tridgell fc5ae600ef AP_GPS: fixed handling of empty HDT/THS sentences
fixes #22432
2022-12-20 10:23:58 +11:00
Andrew Tridgell 01cad1c4aa SITL: added SIM_GPS_LOG_NUM
for replaying GPS logs recorded with --enable-gps-logging
2022-12-20 10:23:58 +11:00
Andrew Tridgell 761e4a05e2 AP_GPS: don't consume Heading message if we have RelPosHeading
this avoids 2 conflicting yaw sources
2022-12-20 10:23:58 +11:00