Commit Graph

30497 Commits

Author SHA1 Message Date
Andrew Tridgell 864353aa4d AP_Scripting: example script for lidar control
enable lidar for only landing in quadplanes by changing RNGFND_LANDING
2022-06-26 08:46:44 +10:00
Andrew Tridgell a941e4cd41 AP_NavEKF: re-implemented EKF ring buffer
this fixes a bug where elemnts being pushed into the buffer more
slowly than we recall can be lost

for example, if you push a single element in then try a recall it will
fail
2022-06-24 20:25:39 +10:00
Andrew Tridgell 19da623077 AP_NavEKF: added test suite for EKF ring buffer 2022-06-24 20:25:39 +10:00
Andrew Tridgell ba10c0ae42 AP_BattMonitor: make healthy() check all configured monitors
GCS reporting for SYS_STATUS should check all healthy, not just first
backend
2022-06-24 11:13:16 +10:00
Andrew Tridgell 93ee9a4ac1 AP_BattMonitor: allow INA2xx battery monitors to be powered after boot
the device doesn't show up till main battery is connected, so we need
this change to allow for separate avionics battery and main battery
with avionics battery powered on first
2022-06-24 11:13:16 +10:00
Andrew Tridgell 9a6fb19208 AP_BattMonitor: report arming unhealthy if backend unhealthy
important for i2c based battery backends
2022-06-24 11:13:16 +10:00
Peter Barker 1f4ebb49b5 AP_Mount: document point-at-home default mode option 2022-06-23 16:37:54 +10:00
Andrew Tridgell 5f8ea596a5 hwdef: changed Pixhawk6C board type to 56
production bootloader uses 56
2022-06-23 13:43:38 +10:00
Peter Barker 2d3092407f AP_HAL_Empty: move implementations of functions to header
Makes it much clearer what's implemented and what's dangling
2022-06-23 12:38:41 +10:00
Andrew Tridgell 881d9764d4 hwdef: added Pixhawk6C support 2022-06-23 12:37:24 +10:00
Andrew Tridgell 4d031a0c9e AP_Compass: HAL_COMPASS_DISABLE_IST8310_INTERNAL_PROBE for Pixhawk6C 2022-06-23 12:37:24 +10:00
Andrew Tridgell e48f405c08 AP_Compass: removed "AK09916 Wrong id" message
we don't need this on every board that doesn't have an I2C AK09916
2022-06-23 12:37:24 +10:00
Andrew Tridgell b1e3b9414b hwdef: fixed Pixhawk6X ALT_RAM_MAP check 2022-06-23 12:37:24 +10:00
Peter Barker f4df4298a0 AP_RangeFinder: make LeddarOne calculations more efficient 2022-06-22 21:15:18 +10:00
Peter Barker 90362a4849 AP_RangeFinder: tighten scope of stack variable definition 2022-06-22 21:15:18 +10:00
Peter Barker 6923f20ce6 AP_RangeFinder: stop persisting detections in LeddarOne driver
We don't use these readings except immediately after where we store them - so don't store them persistently.
2022-06-22 21:15:18 +10:00
Andy Piper 1287fc4fff AC_AttitudeControl: reset throttle mix to used mix when scaling mix down 2022-06-22 16:17:26 +09:00
Dr.-Ing. Amilcar do Carmo Lucas f7d21b63a7 AP_FETTecOneWire: Fix the recent change of NUM_SERVO_CHANNELS > 24 2022-06-22 11:51:23 +10:00
Randy Mackay 45cd158b1c AP_Mount: gremsy searches for gimbal while disarmed 2022-06-21 13:37:11 +09:00
Randy Mackay a47ac7430b AP_Arming: add mount pre-arm check 2022-06-21 13:37:11 +09:00
Randy Mackay 8ba8c67452 AP_Mount: gremsy implements healthy 2022-06-21 13:37:11 +09:00
Randy Mackay 822ee75e20 AP_Mount: add healthy and pre_arm_checks
Co-authored-by: olliw42 <waldmanns@gmx.de>
2022-06-21 13:37:11 +09:00
Randy Mackay 10da8a42bd AP_Mount: replace JSTICK_SPD with RC_RATE 2022-06-21 13:37:11 +09:00
Isaac A 94064175af AP_HAL_ChibiOS: Allow KakuteF7 initialization without baro 2022-06-21 10:03:08 +10:00
Iampete1 dc0491a8ff AP_AHRS_view: add rotate method to move from AHRS to AHRS view referance frames 2022-06-21 10:01:30 +10:00
TunaLobster 0027660f3f AP_RCMapper: Increase parameter metadata range to match NUM_RC_CHANNELS 2022-06-21 09:57:44 +10:00
Peter Barker deba0b712b AP_RangeFinder: correct creation/use of TFMINI_ADDR_DEFAULT
Named incorrectly and defined in wrong file...
2022-06-21 09:15:20 +10:00
Peter Barker 05131853d8 AP_UAVCAN: allow rangefinder backends to be individually compiled in 2022-06-21 09:15:20 +10:00
Peter Barker 3a347d32ca AP_RangeFinder: allow rangefinder backends to be individually compiled in 2022-06-21 09:15:20 +10:00
Peter Barker ce1bb906b7 AP_HAL_ChibiOS: allow rangefinder backends to be individually compiled in 2022-06-21 09:15:20 +10:00
Peter Barker 4e438464d7 AP_Baro: tidy probing of external i2c baros 2022-06-21 09:09:55 +10:00
Bill Geyer 4bb3b08a4a AC_AutoTune: fix tradheli bug with load gain set 2022-06-20 13:00:53 +09:00
TunaLobster afaca4b5f6 AP_RCMapper: Remove APM 2.x reference in parameter description 2022-06-18 08:26:40 +09:00
Andrew Tridgell 2e1af59057 AP_Rangefinder: fixed scaling on PWM driver and enable SCALING parameter
this fixes a bug introduced here:

  https://github.com/ArduPilot/ardupilot/pull/18829

and allows the scaling of PWM rangefinders to be adjusted
2022-06-17 08:21:44 +10:00
Andrew Tridgell 7e4fb803a2 AC_AttitudeControl: reduced default quadplane VTOL pos XY gains 2022-06-16 21:26:49 +10:00
Shiv Tyagi c339b1d374 SIM_Precland: add option to set orientation of precland device in sitl 2022-06-16 12:43:55 +10:00
Randy Mackay 1400eba400 AP_Mount: minor include and definition re-order and fixup 2022-06-15 18:08:58 +10:00
Randy Mackay d24d3c0af8 AP_Mount: add HAL_MOUNT_STORMSERIAL_ENABLED build option 2022-06-15 18:08:58 +10:00
Randy Mackay 59916d0327 AP_Mount: add HAL_MOUNT_STORM32MAVLINK_ENABLED build option 2022-06-15 18:08:58 +10:00
Randy Mackay 4f0ee1276b AP_Mount: add HAL_MOUNT_SERVO_ENABLED build option 2022-06-15 18:08:58 +10:00
Randy Mackay e2106e63bf AP_Mount: add HAL_MOUNT_ALEXMOS_ENABLED build option 2022-06-15 18:08:58 +10:00
Randy Mackay 8f51e28242 AP_RobotisServo: disable with minmimize features and 1mb flash 2022-06-15 18:05:44 +10:00
Randy Mackay 91d33c885e AP_Volz: disable with minmimize features 2022-06-15 18:05:44 +10:00
Andrew Tridgell 06a9a1521c AP_GPS: added GPS_DRV_OPTIONS bit for ellipsoid height 2022-06-15 17:30:28 +10:00
Andrew Tridgell 509f03f946 AP_GPS: cleanup driver option access
use option_set() to make code clearer
2022-06-15 17:30:28 +10:00
Andrew Tridgell 8f3405d308 hwdef: added Pixhawk6X support
a new H753 based board similar to the Pixhawk5X
2022-06-15 17:28:40 +10:00
Andrew Tridgell 9efcad3adf HAL_ChibiOS: added support for ALT_RAM_MAP on H7
for compatibility with the px4 H7 bootloader
2022-06-15 17:28:40 +10:00
Andrew Tridgell 308717d5eb HAL_ChibiOS: enable ITCM and DTCM on H7 at startup
these may have been disabled by the px4 H7 bootloader
2022-06-15 17:28:40 +10:00
Andy Piper 25785e12d9 AP_RCTelemetry: don't spam mode changes on CRSF startup
rewrite device ping bootstrap to avoid ping flood
enable device pings on CRSF in the event of TX loss.
only send pings if not negotiating the version
2022-06-15 17:20:36 +10:00
Andy Piper 9b8ea8475d AP_RCProtocol: reset UART on RX failure for CRSF
update CRSF timestamps to use microseconds
implement RX liveness protocol and implement for CRSF
2022-06-15 17:20:36 +10:00
Andy Piper ed6f7fb9e9 AP_HAL_ChibiOS: add support for MambaF405 2022 MK4
mark DMA on MambaF405US-I2C UARTs
correct RSSI pin on MambaF405US-I2C
2022-06-15 17:05:41 +10:00
Randy Mackay 34f327404a AP_Mount: Gremsy only enabled on >1MB boards 2022-06-15 09:07:14 +09:00
Randy Mackay 1fca72a831 GCS_MAVLink: add comment re sending locations to mounts 2022-06-15 09:07:14 +09:00
Randy Mackay e595da41e6 AP_Mount: gremsy uses gimb-dev-att-send to retract gimbal
this replaces the MAV_CMD_USER_1 method
2022-06-15 09:07:14 +09:00
Randy Mackay 14c81099db AP_Mount: add Gremsy driver
Co-authored-by: bugobliterator <siddharthbharatpurohit@gmail.com>

this drivers special features include
sends ATTITUDE and AUTOPILOT_STATE_FOR_GIMBAL
support of RC rate targets
captures and re-forwards gimbal_device_attitude_status
2022-06-15 09:07:14 +09:00
Randy Mackay 6723a0fc55 AP_Mount: handle gimbal_device_attitude_status 2022-06-15 09:07:14 +09:00
Randy Mackay 247697ccc4 AP_Mount: add support for DO_GIMBAL_MANAGER_PITCHYAW mavlink command 2022-06-15 09:07:14 +09:00
Randy Mackay 8092697c1a AP_Mount: backend record RC rate targets 2022-06-15 09:07:14 +09:00
Randy Mackay f157e5a073 AP_Mount: add set_yaw_lock 2022-06-15 09:07:14 +09:00
Randy Mackay 589102b7d7 AP_Mission: add DO_GIMBAL_MANAGER_PITCHYAW support 2022-06-15 09:07:14 +09:00
Randy Mackay 640a4b1a5f RC_Channel: add mount lock aux function 2022-06-15 09:07:14 +09:00
Randy Mackay f83b4cdb40 GCS_MAVLink: support sending AUTOPILOT_STATE_FOR_GIMBAL_DEVICE 2022-06-15 09:07:14 +09:00
bugobliterator 4dd66fed4b GCS_MAVLink: forward gimbal-device-information to AP_Mount
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>

also forward gimbal_device_attitude_status
2022-06-15 09:07:14 +09:00
Randy Mackay c19d5391d9 AP_Vehicle: add get_rate_bf_targets method 2022-06-15 09:07:14 +09:00
Randy Mackay 0975da6068 AP_Mount: remove virtual distructor from backend 2022-06-15 09:07:14 +09:00
Randy Mackay b6d7601a55 AP_Mount: SToRM32 minor comment fix
also move definitions to cpp file
2022-06-15 09:07:14 +09:00
Tom Pittenger c28db6d91c AP_HAL_ChibiOS: Durandal hwdef to enable Sagetech MXS driver by default for CI to test against 2022-06-14 07:10:17 -07:00
Tom Pittenger 7b681d55a8 AP_ADSB: fix sagetech MXS SDK linking error 2022-06-14 07:10:17 -07:00
Chuck Faber c0b2b679a1 AP_ADSB: Added Sagtetech MXS Driver and it's SDK 2022-06-14 07:10:17 -07:00
Tom Pittenger 0645aee865 AP_ADSB: Driver cleanup and refactor 2022-06-14 07:10:17 -07:00
Tom Pittenger 07be987073 AP_HAL_ChibiOS: enable SagetechMXS driver by default only for CUAV-X7 and CubeOrange 2022-06-14 07:10:17 -07:00
mateksys 71b9e80c04 hwdef: added more PWM options in MatekL431-Dshot 2022-06-14 18:59:52 +10:00
Andy Piper 4068337971 AP_HAL_ChibiOS: correct UART RX stats 2022-06-14 10:25:17 +10:00
Andrew Tridgell 064b6c8a9d AP_ESC_Telem: use send_struct mavlink function
saves some flash, cpu and stack, but means we need a cast
2022-06-14 10:11:03 +10:00
Andy Piper 619fa021e7 AP_GyroFFT: make sure the parameters are updated at least once on startup 2022-06-14 10:09:18 +10:00
Andy Piper 24e47ea08d AP_Arming: make sure FFT gets initialized when arming checks are off 2022-06-14 10:09:18 +10:00
James Harton b963be7ee8 AP_HAL_ChibiOS: Add on-board baro support to iFlight BeastH7 V2 target.
iFlight's own website says that there is no barometer on this device,
however on my one there is a DPS310 connected on I2C.  This PR adds
support for the on-board baro but leaves it as optional.
2022-06-14 09:46:46 +10:00
Peter Barker 5a1d4f3bf5 AP_AHRS: update rotation based on board_orient parameter 2022-06-12 17:32:11 +10:00
Andrew Tridgell 7928fa6e69 Filter: added a NotchFilter test suite 2022-06-12 15:39:44 +10:00
Andrew Tridgell 7c782dda88 Filter: fixed ordering of samples in notch reset 2022-06-12 15:39:44 +10:00
Andrew Tridgell d653499efc AP_InertialSensor: count filters to match notch options
this allows for much more complex filter setups as long as not
filtering on all IMUs
2022-06-12 15:39:44 +10:00
Andrew Tridgell d07761cfd9 Filter: fixed reset of notch filters
when we reset a notch we need to init the stored values to the current
value, rather than assuming that zero is the right value

this matters when switching IMUs in flight when we are only running
notch filters on the active gyro
2022-06-12 15:39:44 +10:00
Andrew Tridgell a37f268dc6 Ap_Inertialsensor: by default only run harmonic notch on the active gyro
this should save quite a lot of CPU. Only the active gyro impacts
vehicle flight
2022-06-12 15:39:44 +10:00
Andrew Tridgell 9e3a29bf86 Filter: added EnableOnAllIMUs option to harmonic notch filter 2022-06-12 15:39:44 +10:00
Peter Barker 39b7f63140 AP_Beacon: stop passing serialmanager into beacon constructor 2022-06-11 16:02:37 +10:00
Dr.-Ing. Amilcar do Carmo Lucas d3eae308da Filter: NFC spell corrections in comments 2022-06-11 08:43:03 +09:00
Andrew Tridgell c01e21dcb3 AP_FETtecOneWire: cleanup mask handling
use unsigned masks
2022-06-10 13:46:43 +10:00
Andrew Tridgell 3a1fc0f338 AP_ESC_Telem: disable ESC telem with zero channels
this prevents a build error and saves flash
2022-06-10 13:46:43 +10:00
Andrew Tridgell cd8ff2b37a AP_ESC_Telem: added ESC_TLM_MAV_OFS parameter
this allows for the ESC telemetry to be remapped to a lower range for
GCS displays. Users often want their quadplane ESCs to show up as ESCs
1 to 8 instead of the high numbers used internally
2022-06-10 13:46:43 +10:00
Andrew Tridgell 42624bdbeb AP_Vehicle: added parameter table for ESC telemetry 2022-06-10 13:46:43 +10:00
Andrew Tridgell aedf465049 AP_ESC_Telem: support ESC telem for ESCs 13 to 32
also fix a mavlink buffer starvation issue
2022-06-10 13:46:43 +10:00
Randy Mackay a358357951 AP_Scripting: remove ToshibaCAN support 2022-06-10 12:08:05 +09:00
Randy Mackay 2a264b0331 SRV_Channel: remove ToshibaCAN support 2022-06-10 12:08:05 +09:00
Randy Mackay 85b9e6e57c GCS_MAVLink: remove ToshibaCAN support 2022-06-10 12:08:05 +09:00
Randy Mackay 533a16287e AP_CANManager: remove ToshibaCAN support 2022-06-10 12:08:05 +09:00
Randy Mackay d503246be2 AP_Arming: remove ToshibaCAN support 2022-06-10 12:08:05 +09:00
Randy Mackay 02faacf448 AP_ToshibaCAN: remove support 2022-06-10 12:08:05 +09:00
Andrew Tridgell d85fe81537 AP_EFI: fixed bug in Lutan driver
we need to send an initial request pkt if no data from Lutan
2022-06-09 21:10:37 +10:00
Andrew Tridgell 9ddd1afb34 AP_EFI: added DroneCAN EFI driver 2022-06-09 21:10:37 +10:00
Andrew Tridgell 465dbd89f4 AP_UAVCAN: support DroneCAN EFI 2022-06-09 21:10:37 +10:00
Andrew Tridgell 085413865a hwdef: added MatekL431-EFI 2022-06-09 21:10:37 +10:00
Andrew Tridgell 0fad35112f AP_EFI: allow EFI to be used in AP_Periph 2022-06-09 21:10:37 +10:00
Andrew Tridgell 998072f600 AP_Scripting: setup axis filters when starting an axis 2022-06-09 13:15:13 +10:00
Andrew Tridgell 4bc697dfa2 AP_Scripting: added QUIK_AUTO_SAVE option
allows tuning with 2 position switch
2022-06-09 13:15:13 +10:00
Andy Piper fafa4158dd AP_HAL_ChibiOS: hwdef for MambaH743v4
support BMI270 on MambaH743v4 and increase flash SPI clock
add bi-directional dshot to MambaH743
add README and pinout for MambaH743
2022-06-08 21:44:21 +10:00
Andy Piper 11f5d1974a AP_InertialSensor: don't print error when probing non-existant BMI270
fix device locking at startup on BMI270
2022-06-08 21:44:21 +10:00
Andy Piper f666ed8ec7 AP_Logger: support W25N01GV flash chips
add separate driver for W25N01GV triggered via HAL_LOGGING_DATAFLASH_DRIVER
move flash_test() into AP_Logger_Block.
cleanup use of 4k sector commands to account for chips that only have block commands
2022-06-08 21:44:21 +10:00
Andy Piper 6cacdd1b34 AP_InertialSensor: properly reset MPU6000 signal path at startup
failure to reset the signal path as per the register spec leads to
very poor temperature response early on in startup.
2022-06-08 17:44:17 +10:00
Andy Piper fe29324828 AP_RCProtocol: check for bad frames in CRSF decoding. 2022-06-08 17:35:03 +10:00
Iampete1 702245f89e AP_Math: calc_lowpass_alpha_dt: remove unused constrain 2022-06-08 17:11:08 +10:00
Andrew Tridgell eed14b3688 AP_Airspeed: fixed autotest for copter param parse
This command was failing:

  Tools/autotest/param_metadata/param_parse.py --vehicle Copter

I don't understand why it starts to fail now, but this is the fix
2022-06-08 09:23:04 +10:00
Pierre Kancir 83dd5be637 AP_NavEKF: fix line ending 2022-06-08 08:16:42 +09:00
Pierre Kancir 0c9060753e AP_MSP: fix line ending 2022-06-08 08:16:42 +09:00
Pierre Kancir 22dae61c80 AP_ADSB: fix line ending 2022-06-08 08:16:42 +09:00
Pierre Kancir b43dd7ba27 SITL: fix python files exec permissions 2022-06-08 08:16:42 +09:00
Pierre Kancir 21890000f7 AP_NavEKF3: fix python files exec permissions 2022-06-08 08:16:42 +09:00
Pierre Kancir 58ceecc4bf AP_HAL: fix python files exec permissions 2022-06-08 08:16:42 +09:00
Pierre Kancir b835395cf9 SITL: fix executable permission and trailing whitespace 2022-06-08 08:16:42 +09:00
Pierre Kancir 231c15a3f9 AP_ONVIF: fix executable permission and trailing whitespace 2022-06-08 08:16:42 +09:00
Pierre Kancir b909a110cd AP_HAL_ChibiOS: fix executable permission and trailing whitespace 2022-06-08 08:16:42 +09:00
Peter Barker ea7f71a1a7 AP_EFI: emit ignition voltage as unknown in EFI_STATUS 2022-06-08 08:15:15 +09:00
Henry Wurzburg 0853acd7e2 AP_Scripting: update QUIKTUNE readme file 2022-06-08 08:55:02 +10:00
Henry Wurzburg d55fd76443 AP_Scripting: modify QUIKTUNE for audio monitorin in TX 2022-06-08 08:55:02 +10:00
murata c65425e3ac AP_Scripting: Changed NULL to nullptr 2022-06-07 11:59:23 +09:00
murata 0b357faf7e AP_Motors: Resolve Issue 20894 2022-06-07 10:02:11 +10:00
Michał 6f7abab036 AP_WheelEncoder: fix WheelEncoder_Quadrature timestamp.
Convert timestamp to ms from us.
2022-06-07 09:59:27 +10:00
Peter Barker 38bbb2361e AP_HAL: set AP_STATS_ENABLED default value 2022-06-07 09:57:32 +10:00
Pradeep 183352cdfe AP_Periph: choose node stats - build files
Added - AP_Stat library and AP_STATS_ENABLED build options
2022-06-07 09:57:32 +10:00
Pradeep 03f7df39dd hwdefs: choose node stats - CarbonixF405 and CarbonixL496
Added definition to enable node statistics
AP_Periph: choose node stats - CarbonixF405 and CarbonixL496

Added definition to enable node statistics
2022-06-07 09:57:32 +10:00
Randy Mackay 5651d8761d AP_Mount: remove unimplemented send_gimbal_report 2022-06-07 09:27:47 +10:00
Randy Mackay 3ac5ad8e33 GCS_MAVLink: remove unused send_gimbal_report 2022-06-07 09:27:47 +10:00
Randy Mackay 8c19af72e0 GCS_MAVLink: learn routes even on private channels
Co-authored-by: Peter Barker <pbarker@barker.dropbear.id.au>
2022-06-06 15:50:13 +10:00
Andrew Tridgell 19063a46a0 AP_InertialSensor: fixed build with logging disabled
fixes CubeOrange-periph build
2022-06-06 14:50:40 +10:00
Andrew Tridgell 180c516b53 AP_BoardConfig: fixed build with logging disabled
fixes CubeOrange-periph build
2022-06-06 14:50:40 +10:00
Andrew Tridgell 6832eab8a5 AP_GPS: fixed build without logging 2022-06-06 14:50:40 +10:00
Andrew Tridgell 2c962e46c1 AP_Logger: don't compiler AP_Logger.cpp if logging not enabled
for some reason this fixes f103-GPS build, even though the code wasn't
referenced
2022-06-06 14:50:40 +10:00
Andrew Tridgell a15cf3192d AP_Logger: save crash_dump.bin to sdcard on boot
on each boot write crash_dump.bin to the microSD if it is available
this makes it easier for users to send in their crash dumps, and less
likely they will overwrite it with a fw update
2022-06-06 14:50:40 +10:00
Andrew Tridgell 45c016ea13 AP_Param: make configured_in_storage() private
prevent future bugs using the wrong method
2022-06-06 13:11:50 +10:00
Andrew Tridgell d512dc0b00 RC_Channel: fixed use of configured() vs configured_in_storage() 2022-06-06 13:11:50 +10:00
Andrew Tridgell be33f77725 AP_VideoTX: fixed use of configured() vs configured_in_storage() 2022-06-06 13:11:50 +10:00
Andrew Tridgell 943b262eef AP_RPM: fixed use of configured() vs configured_in_storage() 2022-06-06 13:11:50 +10:00
Andrew Tridgell 5413893c91 AP_RangeFinder: fixed use of configured() vs configured_in_storage() 2022-06-06 13:11:50 +10:00
Andrew Tridgell 72470e290c AP_NavEKF: fixed use of configured() vs configured_in_storage() 2022-06-06 13:11:50 +10:00
Andrew Tridgell d5670ace3b AP_NavEKF3: fixed use of configured() vs configured_in_storage() 2022-06-06 13:11:50 +10:00
Andrew Tridgell aafec1fbe7 APM_Control: fixed use of configured() vs configured_in_storage() 2022-06-06 13:11:50 +10:00
Andrew Tridgell e807a74976 AP_HAL_ChibiOS: fixed use of configured() vs configured_in_storage() 2022-06-06 13:11:50 +10:00
Andrew Tridgell b2e43d1dee AP_Motors: fixed override of MOT_PWM_MIN/MAX in defaults.parm
need to check configured() not configured_in_storage()
2022-06-06 13:11:50 +10:00
Andrew Tridgell 540dcc554f AP_UAVCAN: added a check for memory corruption in the pool 2022-06-05 16:03:35 +10:00
Andrew Tridgell 541de85354 AP_UAVCAN: added dynamically allocated pool size param
allow for smaller pool size to save memory
2022-06-05 16:03:35 +10:00
Randy Mackay 29a1aed1e3 AP_Mount: backend gets minor comment fix 2022-06-03 19:43:54 +09:00
Randy Mackay 6303a7d958 AP_Mount: Alexmos minor comment fix 2022-06-03 19:43:51 +09:00
bugobliterator 68f0863fb6 AP_HAL_ChibiOS: remove peripheral power down in bootloader 2022-06-03 16:41:22 +10:00
bugobliterator 2726de9b7a AP_HAL_ChibiOS: split the CubeOrange hwdef into inc and dat so the inc can be properly reused 2022-06-03 16:41:22 +10:00
bugobliterator 026ca4adae AP_HAL_ChibiOS: update to using H757 chipset in cubeorange+ 2022-06-03 16:41:22 +10:00
Randy Mackay b4e5e16d56 RC_Channel: minor spelling fix 2022-06-03 11:56:18 +09:00
Randy Mackay 9e8f000ac2 AP_Mount: minor spelling fix 2022-06-03 11:56:18 +09:00
Andy Piper 7b733da2ea AP_HAL: correct assert 2022-06-01 15:49:32 +01:00
Andy Piper d3e57be6e5 AP_HAL: save a sliding window array of frequency bins
calculate frequency average from sliding window
2022-06-01 15:49:32 +01:00
Andy Piper 044aaf3004 AP_HAL_Empty: save a sliding window array of frequency bins 2022-06-01 15:49:32 +01:00
Andy Piper 061ddf7a3f AP_HAL_SITL: save a sliding window of frequency bins 2022-06-01 15:49:32 +01:00
Andy Piper 58b04db242 AP_HAL_ChibiOS: save a sliding window of frequency bins 2022-06-01 15:49:32 +01:00
Andy Piper 684cf996e1 AP_GyroFFT: save a sliding window of output frequency bins
allow configuration of DSP averaging frames via FFT_NUM_FRAMES
2022-06-01 15:49:32 +01:00
Andrew Tridgell c02aef8a50 AP_Logger: allow for new log msgs in Replay
this makes replay tuning and code testing much easier as up to 10 new
log messages can be added in the replay code
2022-06-01 17:07:41 +10:00
Maxim Buzdalov e71ced7984 AP_Scripting: Fix parameter name in find_serial, add description
The argument to find_serial is not the protocol name, but the number of instance that can run the Scripting protocol (28).
The matching doc update is in https://github.com/ArduPilot/ardupilot_wiki/pull/4346.
2022-05-31 15:00:57 +01:00
Andrew Tridgell 6f3b760d0b AP_Filesystem: fixed gets() posix compat function
it needs to stop at end of line
2022-05-31 09:26:43 +10:00
Andrew Tridgell 74c4f3c9a9 AP_NavEKF3: log set source events 2022-05-31 09:17:37 +10:00
Andrew Tridgell 8430fc1002 AP_DAL: added set source events for EKF3 2022-05-31 09:17:37 +10:00
Mark Whitehorn 6f789ead55 AP_Math: add unit test for rc_input_to_roll_pitch 2022-05-31 08:08:17 +09:00
Leonard Hall 1a21c6da1e AP_Math: Move rc_input_to_roll_pitch conversion 2022-05-31 08:08:17 +09:00
Randy Mackay 6ac864ec2f AP_Mission: support NAV_ATTITUDE_TIME command 2022-05-31 07:50:16 +09:00
Andy Piper 1899962175 AP_OSD: update parameter menu flightmodes for plane and copter. 2022-05-30 11:16:39 +09:00
Iampete1 ecc86b6a4b AC_AttitudeControl: reduce alt hold min lean angle to 5deg on plane 2022-05-27 08:17:14 +10:00
TunaLobster 53a5043ac4 AP_ICEngine: Change throttle_override to pass in current throttle value 2022-05-26 11:30:41 -07:00
TunaLobster 9e26556408 AP_ICEngine: Add redline governor and RPM filter
Adds a top end governor to protect the engine from exceeding design limits. Similar to idle governor.
Adds a LPF at 0.5 Hz for RPM.
2022-05-26 11:30:41 -07:00
Peter Barker db9228ea3e AP_DAL: correct error path in max_distance_cm_orient 2022-05-26 20:26:50 +10:00
Ryan Beall eb790c6c0b AP_Baro.cpp: Add in notes for standard day model accuracy 2022-05-26 11:32:45 +10:00
Ryan Beall 5dda9ac9d0 AP_Baro.cpp: no need to set and save FIELD_ELV
parameter gets reset on boot
2022-05-26 11:32:45 +10:00
Ryan Beall cfa0690ab1 AP_Baro.cpp: Move parameter to end of list 2022-05-26 11:32:45 +10:00
Ryan Beall 9f1620f346 AP_Baro.cpp: if not define out AP Periph 2022-05-26 11:32:45 +10:00
Ryan Beall f9840386bc AP_Baro.cpp: fix fabsf and use non-fixed temperature for calibration 2022-05-26 11:32:45 +10:00
Ryan Beall 16f0df04dc AP_Baro.cpp: Atmospheric Model Correction 2022-05-26 11:32:45 +10:00
Randy Mackay 27b66443b2 AP_Vehicle: mode reason added for dead reckon failsafe 2022-05-25 20:05:21 +09:00
Randy Mackay 86eea9468a AP_Arming: add DEADRECKON_FAILSAFE disarm reason 2022-05-25 20:05:21 +09:00
Randy Mackay 5b40808ee8 AP_Logger: error subsystem added for dead reckon failsafe 2022-05-25 20:05:21 +09:00
Randy Mackay eafb118b47 AP_NavEKF3: set filter status dead_reckoning bit 2022-05-25 20:05:21 +09:00
Randy Mackay 6553b9145a AP_NavEKF: filter status gets dead_reckoning bit 2022-05-25 20:05:21 +09:00
Randy Mackay e37bf9ad53 AP_NavEKF3: drag fusion for att and velAiding
also add dragTimeout
2022-05-25 20:05:21 +09:00
Randy Mackay 61c4643aed AP_NavEKF3: minor comment fix 2022-05-25 20:05:21 +09:00
Peter Barker e9426b2ff3 AP_ExternalAHRS: correct compilation if AP_Baro_ExternalAHRS isn't available 2022-05-25 18:19:00 +10:00
Peter Barker c5f1d1db28 AP_Generator: inhibit maintenance warning based on GEN_OPTIONS bit 2022-05-25 18:17:05 +10:00
Peter Barker bc0befc737 AP_Generator: mask MaintenanceRequired out from error bits in prearm
Turns out the generator sets this bit when it reaches the
maintenance-required state.

Mask it out from the error bits so the user can still fly.

Add some periodically-run code to complain about maintenance-required,
separate from the prearm checks.
2022-05-25 18:17:05 +10:00
Peter Barker c496985e37 SITL: SIM_RichenPower sets MaintenanceRequired error flag
Turns out the generator does set this flag when the generator reaches
its maintenance required state.
2022-05-25 18:17:05 +10:00
bugobliterator 1934b4a738 AP_HAL: move function definitions to cpp to save flash 2022-05-25 18:14:46 +10:00
bugobliterator 76d6170ec9 AP_HAL_ChibiOS: add mechanism to set register rw register using device name for SPI 2022-05-25 18:14:46 +10:00
bugobliterator e26ffc4ec5 AP_HAL: add mechanism to set register rw register using device name for SPI 2022-05-25 18:14:46 +10:00
Peter Barker 4272b2c264 AP_AccelCal: limit COMMAND_ACKs accepted for vehicle pose confirmation 2022-05-25 17:55:55 +10:00
Peter Barker be21091619 GCS_MAVLink: pass mavlink_command_ack_t to accelcal library
The library needs to look at the content of the packet.  Given that GCS_MAVLink is already within handle_command_ack, decoding it there makes sense.
2022-05-25 17:55:55 +10:00
Peter Barker dcc1818ee2 AP_AccelCal: pass mavlink_command_ack_t to accelcal library
The library needs to look at the content of the packet.  Given that GCS_MAVLink is already within handle_command_ack, decoding it there makes sense.
2022-05-25 17:55:55 +10:00
Peter Barker dd2283d73b AP_Airspeed: add SITL backend 2022-05-25 17:52:44 +10:00
Andy Piper 0cd3636dfb AR_Motors: make sure ESC type is initialized early 2022-05-25 17:06:08 +10:00
Andy Piper 3d9639181e AP_Motors: make sure ESC type is initialized early 2022-05-25 17:06:08 +10:00
Andy Piper e95d116979 SRV_Channel: add BLHeli_S ESC type 2022-05-25 17:06:08 +10:00
Andy Piper cabaef6173 AP_HAL_ChibiOS: add BLHeli_S ESC type and use it to control bitwidths 2022-05-25 17:06:08 +10:00
Andy Piper 35a37cb84b AP_HAL: add BLHeli_S ESC type and use it to control bitwidths
adjust BLHeli_S bitwidth and ticks to support more ESC variants.
2022-05-25 17:06:08 +10:00
Ruffalo-sunghwan 988eb67298 AP_Common : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan e4a4fbe17a AP_ADSB : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 499c5dfc96 AP_Compass : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 746e85740f AP_FETtecOneWire : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 001643eb4f AP_Airspeed : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 3f1779a5a1 AP_Landing : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 7fb9d21cbf AC_AttitudeControl : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 40071aacc6 AP_Torqeedo : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 286e0f261e AP_TECS : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 86cd266010 AP_RangeFinder : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 51451d29e1 GCS_MAVLink : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan 5a4d61e3a4 AP_NavEKF3 : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan dc07747199 SITL : correct comment spelling 2022-05-24 20:27:45 +09:00
Ruffalo-sunghwan e0d14d900a SRV_Channel : correct comment spelling 2022-05-24 20:27:45 +09:00
Peter Barker e6e45eda97 SITL: populate rangefinder ranges for inbuilt sims
These values are returned for the SITL rangefinder backend, type=100
2022-05-24 10:38:57 +10:00
Peter Barker 51246fda45 AP_RangeFinder: enable SITL rangefinder for sim-on-hardware 2022-05-24 10:38:57 +10:00
Peter Barker 73190d075a SITL: add support for SIM_OH_MASK (sim-on-hardware output enable mask 2022-05-24 10:35:32 +10:00
Peter Barker 2913c8d9e9 AP_HAL_ChibiOS: add support for SIM_OH_MASK (sim-on-hardware output enable mask 2022-05-24 10:35:32 +10:00
Peter Barker 488509353a SITL: add support for Plane SITL-on-hw 2022-05-24 10:35:32 +10:00
Peter Barker 16883565e2 AP_HAL: add support for Plane SITL-on-hw 2022-05-24 10:35:32 +10:00
Peter Barker 0f48557ec2 AP_HAL: fix compilation for sitl-on-hw 2022-05-24 10:35:32 +10:00
Andy Piper ccbe62589e AP_Logger: add W25Q128 variant 2022-05-24 10:32:34 +10:00
Andrew Tridgell cf4768454f AP_BoardConfig: expose BRD_SAFETYENABLE on all boards
default BRD_SAFETYENABLE to 0 on boards with no safety switch, which
gives us the same behaviour as before, but users can choose to enable
the safety

this fixes two problems:

  - CAN servos and ESCs work on boards with no safety switch
    (eg. MatekH743 with CAN)

  - during startup we could get spurious outputs before out aircraft
    type is setup
2022-05-22 14:58:12 +10:00
Andrew Tridgell c8b328c3a1 HAL_ChibiOS: always start with safety enabled
we want it enabled during early boot to prevent incorrect ESC and
servo output
2022-05-22 14:58:12 +10:00
Peter Barker c8f1d2f023 AP_MSP: allow baro backends to be individually compiled out
filtering by define name is the most useful bit
2022-05-22 12:11:45 +10:00
Peter Barker e2f5443a1e hwdef: skyviper-v2450: compile in only ICM20789 2022-05-22 12:11:45 +10:00
Peter Barker 8cd0922f01 AP_UAVCAN: allow baro backends to be individually compiled out 2022-05-22 12:11:45 +10:00
Peter Barker b863f8a331 AP_Baro: allow baro backends to be individually compiled out 2022-05-22 12:11:45 +10:00
Andrew Tridgell 11a06aa6cb SRV_Channel: re-fixed typo 2022-05-22 12:07:37 +10:00
Andrew Tridgell cc06327526 AP_UAVCAN: allow CAN output for function==0 and allow for 32 CAN servos 2022-05-22 12:07:37 +10:00
Andrew Tridgell aa9083e94c SRV_Channel: only support 32 channels on 2M flash boards
save flash on smaller boards
2022-05-22 12:07:37 +10:00
Andrew Tridgell e185e1252b SRV_Channel: added a SERVO_32_ENABLE parameter
save on param count for most users
2022-05-22 12:07:37 +10:00
Andrew Tridgell ed01d33ef8 SRV_Channel: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 4557c8ad04 AP_ToshibaCAN: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 7f6196b550 AP_RobotisServo: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell f00a227b33 AP_Motors: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell bb8ebeebe2 AP_KDECAN: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell f530761174 AP_HAL_Linux: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 113b4cec38 AP_HAL: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 7aea559bdb AP_HAL_ESP32: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 1d9abefbb1 AP_HAL_ChibiOS: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell d33734ee85 AP_ESC_Telem: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell 7ed8e8d3b6 AP_BoardConfig: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Andrew Tridgell f3ce44ef2c AP_BLHeli: more changes for 32 bit servo mask 2022-05-22 12:07:37 +10:00
Iampete1 32f8062b3e SITL: move to 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 a5928b752e SRV_Channels: set channels above 16 to GPIO by defualt 2022-05-22 12:07:37 +10:00
Iampete1 48b3549158 AP_Logger: RCOUT only log if there is a valid output channel 2022-05-22 12:07:37 +10:00
Iampete1 d1e02e4fdd SRV_Channel: add invalid mask for GPIO outputs 2022-05-22 12:07:37 +10:00
Iampete1 a36848cba5 SITL: JSON Master: only copy the first 16 servos 2022-05-22 12:07:37 +10:00
Iampete1 e03aed3aa7 AP_BLHeli: support upto 32 servo outputs 2022-05-22 12:07:37 +10:00
Iampete1 117b67c9e2 AR_MotorsUGV: convert to 32 bit motor mask 2022-05-22 12:07:37 +10:00
Iampete1 43832649ec AP_Motors: convert to 32 bit motor mask 2022-05-22 12:07:37 +10:00
Iampete1 7d3368fa33 GCS_MAVLink: send servo raw 17-32 using port 1 2022-05-22 12:07:37 +10:00
Iampete1 077401df69 SRV_Channel: add upto 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 c4df741af9 AP_SerialLED: enable 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 031115577a AP_HAL_SITL: enable 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 7fc691d8d5 AP_HAL_ChibiOS: enable 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 cabdd82e71 AP_HAL: enable 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 572ebf29da SITL: move to 32 servo outs 2022-05-22 12:07:37 +10:00
Iampete1 6921763b02 AP_Voltz: update MASK Bitmask 2022-05-22 12:07:37 +10:00
Iampete1 d1e45c93d6 AP_UAVCAN: update ESC_BM and SRV_BM Bitmask 2022-05-22 12:07:37 +10:00
Iampete1 51a631b523 AP_PiccoloCAN: update ESC_BM Bitmask 2022-05-22 12:07:37 +10:00
Iampete1 8110b9ac2d AP_Logger: add loging of servo out 15 to 32 2022-05-22 12:07:37 +10:00
Andrew Tridgell bda280bcf1 AP_Scripting: cope better with high P gains in quicktune
if we lower the D gain, then lower P and I by the same ratio before we
start on the P gain

Also added parameters to disable filter changes and control PI ratios
2022-05-21 13:20:27 +10:00
Tom Pittenger 798f985ee5 AP_InertialSensor: relax is_still() threshold for SITL.. which is pretty darn still all the time for Plane 2022-05-20 10:52:47 -07:00
Randy Mackay 2382e58f04 AP_InertialSensor: extend ENABLE_MASK param desc IMUs 4 to 7 2022-05-19 07:54:24 +10:00
Clyde McQueen 25fd69b947 AP_HAL_SITL: init ArduSub pwm_output to [1500, ...]
Signed-off-by: Clyde McQueen <clyde@mcqueen.net>
2022-05-19 07:53:52 +10:00
Andrew Tridgell 8106291bfe AP_UAVCAN: added CAN_Dx_UC_ESC_OF parameter
this allows for an offset in ESC numbering for much more efficient CAN
bandwidth usage.

For example, on a coaxial OctoQuad quadplane the ESCs are typically
setup as outputs 5 to 12. An ideal setup is to split these over 2 CAN
buses, with one CAN bus for the top layer and the one bus for the
bottom layer (allowing for VTOL flight with one bus failed).

Without this offset parameter you would be sending RawCommand messages
like this:

bus1: [ 0, 0, 0, 0, ESC1, ESC2, ESC3, ESC4 ]
bus2: [ 0, 0, 0, 0, 0, 0, 0, 0, ESC1, ESC2, ESC3, ESC4 ]

this is very wasteful of bus bandwidth, with bus1 using 3x the
bandwidth it should and bus2 using 4x the bandwidth it should (the
above will take 3 can frames for bus1, and 4 can frames for bus 2)

With this patch you can set:

CAN_D1_UC_ESC_OF = 4
CAN_D2_UC_ESC_OF = 8

and you will get this on the bus:

bus1: [ ESC1, ESC2, ESC3, ESC4 ]
bus2: [ ESC1, ESC2, ESC3, ESC4 ]

that takes just 1 can frame per send on each bus
2022-05-18 21:23:30 +10:00
Randy Mackay e0023a99bc AP_NavEKF3: replace AP_HAL::millis() with dal.millis() 2022-05-18 17:59:57 +10:00
Peter Barker 434f49e6b6 AP_Motors: correct initialised_ok state for HeliDual+Quad
initialised_ok was being set to false when frame/class was set as the
method was not overridden and thus Heli's set_frame_and_class was
setting initialised_ok to false.  When the init_output method was called
it would be unconditionally reset to true.
2022-05-18 12:25:26 +09:00
Peter Barker 8402149572 AP_Vehicle: run prearm checks on all vehicles @1Hz, displaying @0.0333Hz 2022-05-18 12:25:26 +09:00
Peter Barker 53e8ab6af8 AP_Arming: run prearm checks on all vehicles @1Hz, displaying @0.0333Hz 2022-05-18 12:25:26 +09:00
Iampete1 af58ca52c1 AP_HAL_ChibiOS: allocate_heap_memory use single malloc 2022-05-18 08:20:32 +10:00
Iampete1 66cdfb015b AP_Scripting: always free the heap and remove scripts 2022-05-18 08:20:32 +10:00
Andrew Tridgell f683461e8c AP_Mission: allow NAV_VTOL_TAKEOFF in is_takoff_next() 2022-05-18 06:43:16 +10:00
Andrew Tridgell f39ffee3f9 AP_Vehicle: added QLAND_INSTEAD_OF_RTL mode reason 2022-05-18 06:43:16 +10:00
Andrew Tridgell 457568d3c5 SITL: removed SIM_WIND_DELAY 2022-05-17 19:34:32 +10:00
Andrew Tridgell 962d92acf5 AP_HAL: use array for airspeed pin value 2022-05-17 19:34:32 +10:00
Andrew Tridgell 7dc5da1247 HAL_SITL: cleanup SITL airspeed handling
fixed handling of EAS2TAS, and fixed ratio per sensor.

Removed the wind delay code (which was never being used). We should
add a generic delay filter if we need this again
2022-05-17 19:34:32 +10:00
Andrew Tridgell 2dea725d80 SITL: fixed up airspeed parameters
use a separate airspeed structure and separate ratio per sensor
2022-05-17 19:34:32 +10:00
Andrew Tridgell 61a27698da AP_Airspeed: fixed airspeed cal on 2nd airspeed sensor
we need to use the pressure from the sensor we are calibrating
2022-05-17 19:34:32 +10:00
Andrew Tridgell 234abece59 AP_EFI: added fuel usage integration for Lutan EFI
allows for EFI_COEF1 and EFI_COEF2 to be set to get fuel consumption
on GCS
2022-05-17 10:35:24 +10:00
Peter Barker 3cb104f537 AP_Logger: log airspeed primary changes 2022-05-17 10:27:57 +10:00
Peter Barker 19190fb134 AP_Airspeed: log airspeed primary changes 2022-05-17 10:27:57 +10:00
Peter Barker 016c9d8239 AP_OSD: correct compilation without OSD_ENABLED
The max7456 header file is guarded by his macro
2022-05-17 10:26:50 +10:00
Joshua Henderson d002fde67e AP_Param: eedump_apparam fix accessing uninit var 2022-05-17 10:26:18 +10:00
murata d2053d4449 AP_Vehicle: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 0245d0bae1 AP_SerialManager: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 6e91b364e0 AP_Scripting: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 16d7f69949 AP_Scheduler: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 46f75e7e53 AP_RobotisServo: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 272230793d AP_RAMTRON: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata cc75b931f9 AP_Radio: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 261d97062c AP_Param: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata cd9b4b48ae AP_OSD: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata c143fb0a5a AP_NavEKF2: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 70f0636c90 AP_IOMCU: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 2d8a81986f AP_Hott_Telem: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 15a39c1649 AL_HAL: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 234bb5409d AP_BoardConfig: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 8d1b1a2caf AP_BLHeli: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata a78dceb5a0 AP_Baro: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata f14f08a6ee AP_Avoidance: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 7eda7d757a AP_ADC: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 970af16251 GCS_MAVLink: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata d478a40edc AP_Mount: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 6102e094be AP_Logger: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 9d2ffdc028 AP_HAL_ESP32: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 1e485c20fc AP_CANManager: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 5728d2fd7c AP_RangeFinder: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata 324f5e3ac9 AP_InertialSensor: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata e007b21f9e AP_HAL_ChibiOS: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata a19d4b65fc AP_Compass: Console output can be disabled 2022-05-17 09:53:06 +10:00
murata c6ea688d52 AP_BoardConfig: Increase the number of digits in the board serial number
Co-authored-by: Joshua Henderson <hendjoshsr71@gmail.com>
2022-05-17 09:08:43 +10:00
Iampete1 069b81819d RC_Channel: notify Airmode switch 2022-05-16 16:13:53 +09:00
Peter Barker b0ceee2c42 RC_Channel: use reference while iterating to find string for aux func 2022-05-16 13:34:36 +10:00
murata 59dcf18558 AC_AttitudeControl: Shorten survival time of automatic variables 2022-05-16 09:08:02 +09:00
Peter Barker dd4ec47aa2 SITL: SIM_MS5525: add simulated airspeed offset to raw pressure 2022-05-16 09:50:52 +10:00
Leonard Hall 0d863aa736 AC_AttitudeControl: Allow diabling of slew limit 2022-05-14 22:31:43 +09:00
khanasif786 53f931c98d AP_Scripting: changed MAV_SEVERITY_EMERGENCY to INFO for origin set 2022-05-13 09:12:37 +09:00
Lokesh Ramina adfb2f9cad AP_HAL_Chibios: add_12Mhz_Clock_stm32F405
There was no option for 12Mhz for STM32F405
2022-05-12 17:40:21 +10:00
Peter Barker ad4c29748e AP_NavEKF: getYawData also provides number of clipping models
In the case of the compass calibrator we do not want to use the GSF
result if any model is degenerate.  We've had a compass calibrate in
flight 180-degrees out from what it should have.
2022-05-11 17:45:47 +10:00
Peter Barker 437b313544 AP_Compass: do not use GSF if any model has been clipped 2022-05-11 17:45:47 +10:00
Peter Barker 087d5ec6c7 AP_Mission: support *10 multipler when storing/retrieving radius in NAV_LOITER_TURNS 2022-05-11 17:40:35 +10:00
Mirko Denecke e52ca87cbc AP_Proximity: fix misleading variable name for TerraRangerTower 2022-05-11 15:53:47 +09:00
Tamas Nepusz f91ea8a0dd AP_Logger: make LogStructure non-packed to fix compilation of SITL on Apple M1 2022-05-11 07:54:06 +10:00
Andrew Tridgell fb63ad6b72 AP_Mission: improved handling of large LOITER_TURNS
instead of wrapping we should use MIN with 255, which is closer to
what was requested
2022-05-11 07:51:22 +10:00
Peter Barker 3ec0e27e4f AP_Compass: move logging of compass ERR flags into AP_Compass 2022-05-10 19:46:40 +10:00
Peter Barker 82f4faec31 AP_ESC_Telem: remove misleading comment 2022-05-10 19:43:49 +10:00
Peter Barker d23ddc4116 AP_Vehicle: increase rate at which we can log ESC telem
Some ESCs can give us >10Hz logging; we already check the data has
changed before logging, so let's log at the higher rate if we can.
2022-05-10 19:43:49 +10:00
Joshua Henderson 5087eabbca AP_Airspeed: remove negative pressure set unhealthy 2022-05-10 16:58:51 +10:00
Iampete1 7850aea186 AP_Scripting: load uint32_t bindings via generator 2022-05-10 09:42:57 +10:00
Iampete1 5bfb295fdd AP_Scripting: generator: support manual and manual operators on userdata 2022-05-10 09:42:57 +10:00
Iampete1 934b56e597 AP_Scripting: generator: support manual creation functions for userdata 2022-05-10 09:42:57 +10:00
Iampete1 3319140133 AP_Scripting: generator: remove unused function 2022-05-10 09:42:57 +10:00
Tatsuya Yamaguchi cb6c1a1c80 AC_Fence: Move {Plane} mark from Value to Param 2022-05-10 09:35:11 +10:00
Tatsuya Yamaguchi dbae31fb15 AP_Motors: Add Tricopter only to the description of YAW_SV_ANGLE 2022-05-10 09:35:11 +10:00
Tatsuya Yamaguchi 1e15787dab AP_RCMapper: Remove RCMAP_FORWARD and LATERAL from rover docs 2022-05-10 09:35:11 +10:00
Tatsuya Yamaguchi 1638e3c778 AP_Baro: mark BARO_SPEC_GRAV as sub only 2022-05-10 09:35:11 +10:00
Tatsuya Yamaguchi e18d95f704 AP_Arming: mark ARMING_OPTIONS as copter only 2022-05-10 09:35:11 +10:00
Tatsuya Yamaguchi 78699e39d5 AP_L1_Control: use AP_GROUPINFO instead of AP_GROUPINFO_FRAME 2022-05-10 09:35:11 +10:00
Peter Barker 7da0b3aaf2 AP_HAL_ChibiOS: allow airspeed backends to be compiled out 2022-05-10 09:02:51 +10:00
Peter Barker 7799d8bff5 AP_UAVCAN: allow backends to be compiled out 2022-05-10 09:02:51 +10:00
Peter Barker 10ce2c7fff AP_MSP: allow backends to be compiled out 2022-05-10 09:02:51 +10:00
Peter Barker f934854a0c AP_HAL: allow backends to be compiled out 2022-05-10 09:02:51 +10:00
Peter Barker 4b95ad12bf AP_Airspeed: allow backends to be compiled out 2022-05-10 09:02:51 +10:00
Andrew Tridgell 946a6ac4d0 HAL_ChibiOS: fixed RSSI from IOMCU analog pin 103
need to check new pin not old pin
2022-05-09 07:25:40 +10:00
Andrew Tridgell bf9b803265 hwdef: added FlyingMoonF427 support 2022-05-08 18:41:39 +10:00
Andrew Tridgell b9b5f055ef hwdef: added FlyingMoonF407 board support 2022-05-08 18:41:39 +10:00
Andrew Tridgell 43a947f390 AP_Logger: fixed a bug in wrapped log count
fixes #20687
2022-05-06 06:56:33 +10:00
Andrew Tridgell a6cd7ffd20 HAL_SITL: fixed warning 2022-05-06 06:55:16 +10:00
Andrew Tridgell e6540681f2 AP_Filesystem: fixed warning with tmpnam 2022-05-06 06:55:16 +10:00
Gone4Dirt 2ff83bea53 AP_Airspeed: Add enabled check to get functions 2022-05-05 17:44:16 +10:00
Gone4Dirt e82ba228ce AP_Airspeed: Add nullptr check to healthy function 2022-05-05 17:44:16 +10:00
Gone4Dirt edb25340d1 AP_Airspeed: Move multi-line functions out of header 2022-05-05 17:44:16 +10:00
Iampete1 9da80b45e9 AP_Scripting: load manual bindings via generator 2022-05-04 17:49:14 +10:00
Iampete1 03476711f2 AP_Scripting: binding gen: support globals 2022-05-04 17:49:14 +10:00
Iampete1 59fb78fea8 AP_Scripting: binding gen: support manaul bindings 2022-05-04 17:49:14 +10:00
Iampete1 5c2b0ebb0f AP_Scripting: binding gen: don't emit dependancy if there are no fields 2022-05-04 17:49:14 +10:00
Andrew Tridgell ab4772c9b7 GCS_MAVLink: support symlinks as files
this allows for use of symlinks with ftp and scripts
2022-05-04 17:48:45 +10:00
Andrew Tridgell fa87019339 AP_Filesystem: added DT_LNK for symlinks 2022-05-04 17:48:45 +10:00
Andrew Tridgell 53c711954e AP_Scripting: added parameters to VTOL failsafe example 2022-05-04 17:30:04 +10:00
Andy Piper e0b7e5f2a5 AP_InertialSensor: add throttle-based notch setup function
allocate harmonic notch filter if FFT is enabled
2022-05-04 17:05:51 +10:00
Andy Piper 39d928aa49 Filter: add mutators for notch filter parameters 2022-05-04 17:05:51 +10:00
Andy Piper 02e5a7f463 AP_HAL_Empty: add placeholder vector addition 2022-05-04 17:05:51 +10:00
Andy Piper aaad4ace08 AP_GyroFFT: add notch tuning functions
calculate averaged FFT frequency and enable notch
scale notch frequency down to FFT_MINHZ
calculate harmonics for averaging correctly
expose enable flag
2022-05-04 17:05:51 +10:00
Andy Piper bfc3a5a749 RC_Channel: add in-flight FFT notch tuning function
initialize FFT tune
2022-05-04 17:05:51 +10:00
Andy Piper 3199412bff AP_HAL_SITL: add vector addition function 2022-05-04 17:05:51 +10:00
Andy Piper 884454cd88 AP_HAL_ChibiOS: add vector addition function 2022-05-04 17:05:51 +10:00
Andy Piper f57ac4787d AP_HAL: add Jain's estimator
notch tuning using FFT averaging
allocate scratch space for peak finding
return all detected peaks to caller
2022-05-04 17:05:51 +10:00
Andrew Tridgell a7b3a5713d AP_Scripting: fixed non-oscillating yaw limit 2022-05-04 13:56:43 +10:00
Andrew Tridgell c2af9a9154 AP_Scripting: pause quicktune during pilot input
thanks to Marco for the suggestion
2022-05-04 13:56:43 +10:00
Andrew Tridgell 8320b90a01 AP_Scripting: added norm_input_dz binding 2022-05-04 13:56:43 +10:00
MallikarjunSE bf9c0fffa7 hwdef: sierra-l431 hwdef update 2022-05-04 07:17:41 +10:00
Andrew Tridgell 5a1a87cc60 AP_AHRS: fixed bug in blended EKF bias
The bug fix in #20431 was incomplete, and ended up with the wrong
blended accel bias. This fixes it
2022-05-04 06:49:34 +10:00
Peter Barker d9f605ed36 AP_Baro: move error logging of sensor health into AP_Baro 2022-05-03 17:38:09 +10:00
Iampete1 f61d96dd5c SITL: SIM_Frame: add number of motors to json spec 2022-05-03 10:03:07 +10:00
Iampete1 f864d93140 SITL: Frame and Motor changes to allow motor example 2022-05-03 10:03:07 +10:00
Iampete1 6a8fff67f7 SITL: SIM_Frame: remove motor evaluation debug code 2022-05-03 10:03:07 +10:00
Iampete1 a095415702 SITL: examples: evaluate battery: add readme 2022-05-03 10:03:07 +10:00
Iampete1 53f7ad24a8 SITL: add motor + prop evaluation model 2022-05-03 10:03:07 +10:00
Andrew Tridgell 617213bef0 AP_Scripting: added quicktune.lua script
rapid tuning for VTOL control
2022-05-03 10:01:19 +10:00
Andrew Tridgell 77a985182c AP_Scripting: added get_rpy_srate binding
and remove dmod binding
2022-05-03 10:01:19 +10:00
Andrew Tridgell 99a6cb69f8 AC_AttitudeControl: added get_rpy_srate()
and remove dmod binding, as slew rate turned out to be more useful
2022-05-03 10:01:19 +10:00
Peter Barker cef436b272 AP_RangeFinder: implement distance_cm_orient in terms of distance_orient 2022-05-03 09:23:37 +10:00
Andy Piper 2209576c90 AP_Scheduler: refactor task info into TaskInfo
break fast_loop down into FastTasks to aid profiling
run fast tasks before scheduled tasks
fix scheduler example
introduce fast task priorities
remove fast loop
2022-05-03 08:20:13 +09:00
Andy Piper cc2acc35a6 AP_Vehicle: add task info for fast loop
move fast loop tasks into scheduler table
remove fast loop
2022-05-03 08:20:13 +09:00
Peter Barker 66a9677f79 SITL: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker c3cd733f26 Filter: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 3592132774 AP_WindVane: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 80c3415419 AP_WheelEncoder: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 678d51f47e AP_VisualOdom: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 2ffc16d1c5 AP_VideoTX: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker e490a5b5cd AP_UAVCAN: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker a6eec9f063 AP_Terrain: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker be15dfff29 AP_SerialLED: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 27b34f8b5f AP_Scheduler: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 5ddd50fefb AP_RPM: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 5bc20af9d6 AP_ROMFS: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 0e8ac68af4 AP_RCTelemetry: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 50fc43b2d2 AP_RangeFinder: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 6fafd04b2f AP_Rally: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 489f68f68e AP_Proximity: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 97ccf77941 AP_OSD: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker fa2c78f057 AP_OpticalFlow: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 4178c685a3 AP_ONVIF: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 3e75359aef AP_OLC: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker db590f65f1 AP_Notify: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 92b44c118f AP_MSP: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 7ce739aeef AP_Mount: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 8930b5f6f5 AP_Motors: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 4c7f4514cd AP_Module: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 445b10d8b3 AP_Mission: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker a08025125b AP_Math: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 750fd2c820 AP_Logger: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 94dc0e78cd AP_InertialSensor: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 0ea46a93a1 AP_ICEngine: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker b158e15ed4 AP_Hott_Telem: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker c456172821 AP_HAL_Linux: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 9857954529 AP_GPS: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 6fa9fd1768 AP_EFI: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker f1069023ee AP_Common: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 24f7369760 AP_Beacon: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 6c377b2dcd AP_BattMonitor: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 8dcc2e969f AP_Arming: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 9b14760dc9 AP_Airspeed: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 34a7503c1e AP_AHRS: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker d3563e72c8 AP_ADSB: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 666ac39e31 AC_Avoidance: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 73c6eabde2 APM_Control: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 6f2fd9c4a4 AC_AutoTune: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker d62e6e3228 AC_Autorotation: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 0fb5be7f2b AC_AttitudeControl: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 7c00b525a3 AP_Tuning: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 17ad710866 GCS_MAVLink: tidy includes 2022-05-03 09:14:58 +10:00
Peter Barker 6eaf2c545a AP_Filesystem: correct run-length encoding in param download
If a parameter's name was a prefix of the previous name we would
suffer an integer-wrap problem and incorrectly encode the parameter name
2022-05-03 07:49:36 +10:00
Iampete1 20a2e6aaf0 AP_Scripting: allow deprecation warnings 2022-05-03 07:48:39 +10:00
Peter Barker 2c0f52a8b7 AP_BattMonitor: zero-terminate strings in caller rather than read_block
It was noted that we did not increment the return value bufflen when
adding zero.  This is an ambiguity in the function declaration; if we
are told to add a zero should the return value be like strnlen (does not
include terminating null character) or read (includes all bytes used in
return buffer).

This PR makes it a non-issue by ensuring string null termination in the
caller and removing the append_zero parameter.
2022-05-03 07:11:45 +10:00
Josh Henderson 51eb398277 SITL: SIM_BattMonitor_SMBus add registers to smartbatts 2022-05-02 10:56:39 +10:00
Kirill Shilov c414a021ae AirLink-HWDEF: external peripherals enabled with logical high 2022-05-02 10:56:09 +10:00
Mirko Denecke e60520160f SRV_Channel: fix auxiliary typo 2022-05-02 10:55:08 +10:00
Mirko Denecke 60b0be4a97 RC_Channel: fix auxiliary typo 2022-05-02 10:55:08 +10:00
Mirko Denecke 11a74cf28c AP_HAL_ChibiOS: fix auxiliary typo 2022-05-02 10:55:08 +10:00
Mirko Denecke 853fd7f8c1 AP_HAL: fix auxiliary typo 2022-05-02 10:55:08 +10:00
Mirko Denecke d6843c4ca1 AP_Airspeed: fix auxiliary typo 2022-05-02 10:55:08 +10:00
Henry Wurzburg c6fbdc0cb8 AP_Relay:Prevent operation for sim-on-hardware,add logs
Co-authored-by: Iampete1 <iampete@hotmail.co.uk>
2022-05-02 10:54:02 +10:00
Iampete1 6eea4d12ee SITL: apply momentum drag per-motor 2022-05-01 09:17:23 +10:00
Iampete1 f9050c3040 SITL: Frame: take drag from thrust not accel 2022-05-01 09:17:23 +10:00
Iampete1 92135400f8 SITL: Frame: stop adding random physics noise 2022-05-01 09:17:23 +10:00
Iampete1 f869506b0a SITL: Motor: acount for airflow due to vehicle rotation 2022-05-01 09:17:23 +10:00
Iampete1 bead0ac0f8 SITL: JSON allow to set motor rotation direciton 2022-05-01 09:17:23 +10:00
m dbf00bae10 AP_Scripting: Add pre_arm_checks LUA binding 2022-04-30 10:23:28 +09:00
Andrew Tridgell ed89acea66 AP_Scripting: added PDmod binding for quick tuning 2022-04-29 11:54:12 +10:00
Andrew Tridgell f8fe74f5fe AC_AttitudeControl: added get_rpy_PDmod method
used for lua scripts to do VTOL tuning
2022-04-29 11:54:12 +10:00
bugobliterator 46f9ae54af AP_HAL_ChibiOS: fix CubeOrangePlus IMU rotation 2022-04-29 08:26:34 +10:00
Andrew Tridgell 8c3d2205cb hwdef: added DShot peripheral for MatekL431 2022-04-28 13:56:16 +10:00
Peter Barker a5dee06afb SRV_Channel: add PARAMETER CONVERSION comments 2022-04-28 10:17:11 +10:00
Peter Barker 414d3d27db AP_RangeFinder: add PARAMETER CONVERSION comments 2022-04-28 10:17:11 +10:00
Peter Barker c2bf79d3f3 AP_BattMonitor: add PARAMETER CONVERSION comments 2022-04-28 10:17:11 +10:00
Andy Piper 742c2b034f AC_AutoTune: allow high ANGLE_P gains 2022-04-28 08:51:54 +09:00
Leonardo Garcia 0eb6ae365a AP_InertialSensor: Added BMI085 support
Fixed styling for 61125e2

Remove whitespace l202

Removed else
2022-04-27 18:37:39 +10:00
Andy Piper 7c4d0ad9f4 AP_HAL_ChibiOS: catch and handle STM32_DMA_ISR_DMEIF in bdshot. 2022-04-27 18:19:24 +10:00
Andrew Tridgell 12f348398a Revert "AP_Notify: fixed DroneCAN LEDs on AP_Periph"
This reverts commit 1858969697.

This was an incorrect change that actually broke LEDs on CAN GPS modules
2022-04-27 17:13:40 +10:00
Andrew Tridgell 06b9b804a1 hwdef: uncompress bootloader for HolybroG4_GPS
not enough ram to uncompress at runtime
2022-04-27 17:12:08 +10:00
Tatsuya Yamaguchi 073683cc69 AP_Arming: remove ARMING_CHECK_ALL bit check from disarm_switch_checks 2022-04-27 09:36:36 +09:00
Tatsuya Yamaguchi 02f966a35d AP_Arming: add ARMING_OPTIONS param 2022-04-27 09:36:36 +09:00
Mohammad Hefny ce8405b7a4 AP_Rangefinder: preserve new address 2022-04-27 10:16:40 +10:00
Randy Mackay 599cd15c7b AP_Scripting: add copter-deadreckon-home example 2022-04-26 18:37:54 +09:00
Randy Mackay 7b6ad412fe AP_Scripting: add ahrs get_relative_position_D_home binding 2022-04-26 18:37:54 +09:00
Randy Mackay f0623fa8c9 AP_Scripting: add has_ekf_failsafed binding 2022-04-26 18:37:54 +09:00
Randy Mackay 21ee06d362 AP_Vehicle: implement has_ekf_failsafed for use by lua 2022-04-26 18:37:54 +09:00
Randy Mackay 23ad8b23ac AP_Common: clarify Location::get_distance is horizontal only 2022-04-26 18:37:54 +09:00
Randy Mackay da961948db AP_RPM: pre-arm displays gpio vs servo_ch conflict 2022-04-26 15:19:28 +09:00
Randy Mackay d8219c2200 AP_Relay: pre-arm displays gpio vs servo_ch conflict 2022-04-26 15:19:28 +09:00
Randy Mackay 846637e3e9 AP_Button: pre-arm displays gpio vs servo_ch conflict 2022-04-26 15:19:28 +09:00
Randy Mackay 1ee01577f6 AP_HAL: add GPIO::pin_to_servo_channel method 2022-04-26 15:19:28 +09:00
Randy Mackay 588a75a883 AP_HAL_ChibiOS: GPIO comment removes mention of BRD_PWM_COUNT 2022-04-26 15:19:28 +09:00
Randy Mackay b6e86eee49 AP_IOMCU: valid_GPIO_pin checks if pin configured for GPIO 2022-04-26 15:19:28 +09:00
Randy Mackay caa2ed3294 AP_IOMCU: convert_pin_number leaves input untouched on failure 2022-04-26 15:19:28 +09:00
Iampete1 d621910a59 AP_AHRS: remove unneeded get_position wrapper 2022-04-26 10:28:28 +10:00
Iampete1 6e3cb7efdc AP_Scripting: support true aliases 2022-04-26 10:28:28 +10:00
Iampete1 352c48233e AP_Scripting: generator: rename alias keyword to rename 2022-04-26 10:28:28 +10:00
Iampete1 4fe335c2d0 SITL: tests: only build on sitl 2022-04-26 10:26:29 +10:00
Iampete1 d1aa7aa062 SITL: add battery model evaluation example 2022-04-26 10:26:29 +10:00
Iampete1 1111ca4867 SITL: SIM_Frame: load_frame_params and model to protected, allow USE_PICOJSON override 2022-04-26 10:26:29 +10:00
Iampete1 f0c17f0e49 SITL: use AP_SIM_ENABLED define more 2022-04-26 10:26:29 +10:00
Iampete1 c58404beac AP_HAL_Linux: allow stop_clock in examples 2022-04-26 10:26:29 +10:00
Iampete1 2d2165936a AP_InertialSensor: use pitch to guess which axis the user is trying to calibrate, warn about Q_TRIM_PITCH on plane 2022-04-26 10:03:30 +10:00
Iampete1 6c24a5ff37 AP_AHRS: add method to get view 2022-04-26 10:03:30 +10:00
Iampete1 04fdfea74a AP_AHRS_View: add method to get pitch trim and note on rotation 2022-04-26 10:03:30 +10:00
Randy Mackay 902b895aef AP_Arming: add pre-arm check of disabled servo channels 2022-04-25 15:55:54 +09:00
Andy Piper cc6b907a2f SRV_Channel: observe disabled_channels when enabling channels
setup disabled_channels observing channels that are implied to be digital
allow none to be a valid channel function once again
2022-04-25 15:55:54 +09:00
Andy Piper 119cde79a7 AP_HAL_ChibiOS: determine presence of disabled channels based on digital channels in a group 2022-04-25 15:55:54 +09:00
Andy Piper 8ccc84beab AP_HAL: add accessor for disabled channels to RCOutput 2022-04-25 15:55:54 +09:00
Andy Piper 03aeca22ec AP_BLHeli: keep a record of disabled motors 2022-04-25 15:55:54 +09:00
Peter Barker 7d10192550 SITL: do not write post locations files unless on HAL_BOARD_SITL
Nobody's going to be retrieving these from SD card so they can visualise
things...
2022-04-25 11:20:26 +10:00
Peter Barker 1d96dfe7c1 SITL: exclude method declarations based on USE_PICOJSON
Fixes SimOnHardware build
2022-04-25 11:20:26 +10:00
Randy Mackay bfd168dd4f AP_RPM: avoid attach interrupt retry and spam to GCS if PIN = -1 2022-04-25 08:59:03 +09:00
Henry Wurzburg 8556edc5ad AP_RPM: add note to desc's on how to determine GPIO pin numbers 2022-04-24 08:21:01 +09:00
Henry Wurzburg 93bdae50ab AP_Relay: add note to desc's on how to determine GPIO pin numbers 2022-04-24 08:21:01 +09:00
Henry Wurzburg 4a2aeb03f3 AP_RangeFinder: add note to desc's on how to determine GPIO pin numbers 2022-04-24 08:21:01 +09:00
Henry Wurzburg a8ff5ca2b9 AP_Notify: add note to desc's on how to determine GPIO pin numbers 2022-04-24 08:21:01 +09:00
Henry Wurzburg cc51e9f995 AP_LandingGear: add note to desc's on how to determine GPIO pin numbers 2022-04-24 08:21:01 +09:00
Henry Wurzburg 1e7fc17af3 AP_Camera: add note to desc's on how to determine GPIO pin numbers 2022-04-24 08:21:01 +09:00
Henry Wurzburg 958e36f80b AP_Button: add note to desc's on how to determine GPIO pin numbers 2022-04-24 08:21:01 +09:00
Henry Wurzburg 9d6f9bf907 AP_AdvancedFailsafe: add note to desc's on how to determine GPIO pin numbers 2022-04-24 08:21:01 +09:00
Randy Mackay 291d709409 AP_NavEKF: GSF comment typo fix 2022-04-22 15:24:11 +09:00
xianglunkai c853694f7a AP_Proximity_Boundary_3D:correction of miswriting 2022-04-21 08:41:07 +09:00
Iampete1 c31e54b5bb AP_CustomRotations: fix param refrencing 2022-04-20 18:25:57 +10:00
Andy Piper 6355934a36 AP_HAL: add bitwidth hal definitions.
revert to original bitwidths for neopixel and profiled
add proper neopixel test that observes spec'ed timings
2022-04-20 17:39:29 +10:00
Andy Piper df35cb6243 AP_HAL_ChibiOS: move bitwidths to AP_HAL 2022-04-20 17:39:29 +10:00
Andy Piper 89ea5dc12c AP_RCProtocol: flush CRSF telemety writes 2022-04-20 17:38:08 +10:00
Andy Piper eaa414bb0c AP_HAL_ChibiOS: implement pseudo-flushing for buffered UARTS 2022-04-20 17:38:08 +10:00
yuri-rage eaa62fb490 AP_HAL: remove BRD_PWM_COUNT reference 2022-04-20 07:57:57 +09:00
Andrew Tridgell e73f868fc0 HAL_ChibiOS: disable fatal exceptions for DMA errors
this zeros-watchdog was caused by a SPI DMA error on STM32F405:

  https://discuss.ardupilot.org/t/crash-with-4-2-0-beta-and-4-3-0-daily-bdshot/83297

we had incorrectly left these internal errors enabled when asserts
were not enabled. That led to a osalSysHalt()

without these we get an spi_fail internal error, caught by the
SPIDevice code
2022-04-19 21:52:53 +10:00
Andrew Tridgell ed1a5c086b AP_Logger: removed annoying message on missing logs 2022-04-19 11:45:26 +10:00
Andrew Tridgell 93b55e367e AP_Logger: fixed log listing with gap, and EKF error on log list
this fixes two issues:

The first issue that if we are missing a log file in the middle of the
list then it was not possible to download recent logs, as we get the
incorrect value for total number of logs. This happened for me with
107 logs, with log62 missing from the microSD. It would only show 45
available logs, so the most recent logs could not be downloaded.

The second issue is that get_num_logs() was very slow if there were a
lot of log files in a directory. This would cause EKF errors and ESC
resets. Using a opendir/readdir loop is much faster (approx 10x faster
in my testing with 107 logs on a MatekH743).
2022-04-19 11:45:26 +10:00
Peter Barker 348f0ad590 SITL: add SIM_SONAR_ROT, use it for measuring horizontal distances 2022-04-19 10:26:10 +10:00
xianglunkai f7f053191a AP_Logger: must set default fd = -1 2022-04-19 10:00:32 +10:00
Iampete1 a7abfeeb4a SITL: allow cutom motor postions and thrust vectors to be specified 2022-04-19 09:43:51 +10:00
Iampete1 c4518e5cb7 SITL: motor: use postion and thrust vector 2022-04-19 09:43:51 +10:00
Iampete1 47f327b500 SITL: allow Vector3f inertia to be set via JSON 2022-04-19 09:43:51 +10:00
Iampete1 6272dc33dd SITL: move moments inertia to frame property 2022-04-19 09:43:51 +10:00
Iampete1 7936f3bb0a SITL: move motor related constants to motor object 2022-04-19 09:43:51 +10:00
Andrew Tridgell db14ba46dc AP_InertialSensor: call notch param update with semaphore held 2022-04-19 09:39:03 +10:00
Andrew Tridgell bccca9ed2e AP_GyroFFT: added defaults for FFT with no notch
allow for testing with FFT enabled, and defaulting number of
frequencies to look for
2022-04-19 09:39:03 +10:00
Andrew Tridgell dff0e5ecc1 AP_InertialSensor: fixed the last notch values to be per-instance
thanks to Andy for noticing this
2022-04-19 09:39:03 +10:00
Andrew Tridgell e0bb717231 AP_GyroFFT: skip disabled notches 2022-04-19 09:39:03 +10:00
Andrew Tridgell 184f84f4ee AP_InertialSensor: don't update disabled notches 2022-04-19 09:39:03 +10:00
Andrew Tridgell 492e203fd2 AP_GyroFFT: allow for 2 FFT based notches 2022-04-19 09:39:03 +10:00
Andrew Tridgell 301c56d30a AP_Vehicle: implement common harmonic notch update code 2022-04-19 09:39:03 +10:00
Andrew Tridgell e6b56ce9ba AP_RPM: use HarmonicNotch class 2022-04-19 09:39:03 +10:00
Andrew Tridgell 86db91e3b4 AP_GyroFFT: use HarmonicNotch class 2022-04-19 09:39:03 +10:00
Andrew Tridgell ddab3f02ca AP_Arming: use HarmonicNotch class 2022-04-19 09:39:03 +10:00
Andrew Tridgell e2e1e74da5 AP_InertialSensor: switch to HarmonicNotch class
this makes the logic much easier to follow, without indexes into
arrays
2022-04-19 09:39:03 +10:00
Andrew Tridgell d7d04bc7cf Filter: removed parameters from the old notch filter
saves some flash space
2022-04-19 09:39:03 +10:00
Andrew Tridgell 782e4887bc AP_GyroFFT: only allow one harmonic notch filter to be linked to FFT 2022-04-19 09:39:03 +10:00
Andrew Tridgell ae1e9e06c1 AP_Arming: added arming check for conflicting notch modes 2022-04-19 09:39:03 +10:00
Andrew Tridgell 1cd1519a4f Filter: clarify meaning of 1st harmonic 2022-04-19 09:39:03 +10:00
Andrew Tridgell 7272a29b7b Filter: added RPM2 harmonic notch type 2022-04-19 09:39:03 +10:00
Andrew Tridgell a2fc4d909d AP_Vehicle: support two full harmonic notch filters 2022-04-19 09:39:03 +10:00
Andrew Tridgell ac50d3cc9f AP_RPM: support two full harmonic notch filters 2022-04-19 09:39:03 +10:00
Andrew Tridgell e67d9b4179 AP_InertialSensor: support two full harmonic notch filters 2022-04-19 09:39:03 +10:00
Andrew Tridgell 622ad2a088 AP_GyroFFT: support two full harmonic notch filters 2022-04-19 09:39:03 +10:00
Joshua Henderson 7cc2382a78 AP_AHRS_DCM: NFC comment on check_matrix() normalization reset 2022-04-19 09:27:00 +10:00
Randy Mackay 9d73cfb28f AP_NavEKF: GSF logging in deg from 0 to 360 2022-04-19 08:56:40 +10:00
Peter Barker 55517450bc AP_Scripting: correct script restart send_text message 2022-04-18 12:50:18 +01:00
Bill Geyer b8690ba109 AC_AutoTune: fix gain determination fail logic 2022-04-18 18:00:20 +09:00
Bill Geyer 8e35fd2658 AC_AutoTune: use failed state to exit 2022-04-18 18:00:20 +09:00
Bill Geyer b4059d3745 AC_AutoTune: use generic load gain method to save flash 2022-04-18 18:00:20 +09:00
Walter Dunckel b0c3fae662 AP_HAL_ChibiOS: add support for NucleoH755 board
This addition allows for cheap testing of a STM32H755 (dual core). This borrows the setup file STM32H757xx.py, as there are almost no changes between the chips. CRSF in and out, gps, ICM20948, BMP388, settings saving to on board flash all working.

PWM(3) pin change

Changed PWM(3) pin to one exposed on connector
2022-04-18 14:53:14 +10:00
QioTek 9909499a81 AP_HAL_ChibiOS: ICM4 series sensors as an alternative with IMU3.
AP_HAL_ChibiOS:  ICM4 series sensors as an alternative with IMU3.
2022-04-18 11:01:14 +10:00
Andrew Tridgell 9f58c73780 hwdef: Added MatekL431-Rangefinder 2022-04-17 17:40:04 +10:00
Peter Barker bca4fc9608 hwdef: disable serially-attached actuators on SkyViper 2022-04-17 09:10:10 +10:00
Andrew Tridgell 95ae150a21 AP_InertialSensor: catch FIFO overruns on BMI088
we have seen errors where the BMI088 gets out of sync, so that the 3
axes are rotated. The data is shifted by 4 bytes, so that X=Z, Y=X
and Z=Y

this changes the BMI088 to "stop on full" mode, which is what Bosch
use in their example drivers, and also catches FIFO overrun events and
triggers a full FIFO reset. This should fix the problem with the FIFO
sync
2022-04-16 19:24:16 +10:00
Andrew Tridgell 973befa5d8 GCS_MAVLink: prevent devop larger than buffer 2022-04-16 19:24:16 +10:00
Andrew Tridgell 4c9a851fc6 SITL: update for changed INS_NOTCH parameter name 2022-04-16 08:14:06 +10:00
Andrew Tridgell f5c3b56426 AP_HAL_ChibiOS: update for changed INS_NOTCH parameter name 2022-04-16 08:14:06 +10:00
Andrew Tridgell ab5e8419d8 AP_InertialSensor: move INS_HNTC2 to a new parameter table ID 2022-04-16 08:14:06 +10:00
Willian Galvani 6e326ee912 AC_PosControl_Sub.h: do not use our own input_vel_accel_z 2022-04-13 16:23:55 -03:00
mateksys 16a8400f85 AP_HAL_ChibiOS:add icm42688p as substitution 2022-04-13 20:59:07 +10:00
Peter Barker e788941f70 hwdef: turn off various GPS backends on on AP_Periph 2022-04-13 18:23:51 +10:00
Peter Barker ccca0e8e0f AP_GPS: stop using HAL_BUILD_AP_PERIPH to gate GPS backends 2022-04-13 18:23:51 +10:00
Andrew Tridgell cdfa682be0 AC_AttitudeControl: use deadzone for pitch
when pitch for nose-in and tail-in is enabled we should use the
deadzone
2022-04-13 18:19:02 +10:00
Andrew Tridgell f4548daa5a AC_AttitudeControl: added an option for pitch weathervaning
when nose-in or tail-in, if the aircraft has significant pitch
asymmetry in hover then we would spin around in no wind if we use
pitch as an input

this makes pitch input for nose-in and tail-in optional and off by
default to preserve existing behaviour
2022-04-13 18:19:02 +10:00
Peter Barker e5c40d0e54 AP_Logger: move logging of Beacon into Beacon library 2022-04-13 16:22:19 +10:00
Peter Barker bbcf0a0968 AP_Beacon: move logging of Beacon into Beacon library 2022-04-13 16:22:19 +10:00
Peter Barker a62e08ee40 AP_Proximity: move logging of Proximity into Proximity library 2022-04-13 16:22:19 +10:00
Peter Barker 795427e574 AP_Logger: move logging of Proximity into Proximity library 2022-04-13 16:22:19 +10:00
Peter Barker f023f0443d GCS_MAVLink: move logging of RPM into RPM library 2022-04-13 16:22:19 +10:00
Peter Barker ab86dafda7 AP_RPM: move logging of RPM into RPM library 2022-04-13 16:22:19 +10:00
Peter Barker 23f2055330 AP_Logger: move logging of RPM into RPM library 2022-04-13 16:22:19 +10:00
Peter Barker c09f56112e AP_Arming: move logging of RPM into RPM library 2022-04-13 16:22:19 +10:00
Peter Barker 04cc45de65 hwdef: remove non-ascii character from hwdef
Killing the custom build server
2022-04-13 12:14:17 +10:00
Randy Mackay 375ab84e56 SITL: correct suggestion to user re wind estimatation param value
EK3_MCOEF becomes EK3_DRAG_MCOEF
EK3_BCOEF_ becomes EK3_DRAG_BCOEF_
2022-04-13 07:57:35 +09:00
Randy Mackay 002bcca7f9 AP_Baro: correct param description refering to EK3 wind est params
AP_NavEKF3: correct wind estimate param descriptions

mention of EK3_BCOEF_X/Y becomes EK3_DRAG_BCOEF_X/Y
2022-04-13 07:57:35 +09:00
Randy Mackay 37e9ce3fb7 AP_NavEKF3: correct wind estimate param descriptions
EK3_MCOEF becomes EK3_DRAG_MCOEF
EK3_BCOEF_X/Y becomes EK3_DRAG_BCOEF_X/Y
2022-04-13 07:57:35 +09:00
Peter Barker e0a96eaa83 AP_GPS: remove more code based on GPS_MOVING_BASELINE 2022-04-12 11:20:01 +10:00
Peter Barker aa72559d00 AP_GPS: tidy initialisation of sending blobs 2022-04-12 11:20:01 +10:00
Peter Barker 4b6590734a AP_GPS: move gps blob initialisation out to method 2022-04-12 11:20:01 +10:00
Andy Piper 13464ebb20 AP_RCTelemetry: check EKF checks against failsafe defaults. 2022-04-12 11:14:44 +10:00
Peter Barker 961cf659d9 SRV_Channels: stop gating FETTECONEWIRE parameters on HAL_BUILD_BUILD_AP_PERIPH
This would break fettech on AP_Periph.  The define is off by default on
AP_Periph.
2022-04-12 10:35:01 +10:00
Peter Barker a5be9d0f18 SRV_Channel: allow RobotisServo protocol to be compiled out 2022-04-12 10:35:01 +10:00
Peter Barker 9001058d12 AP_RobotisServo: allow RobotisServo protocol to be compiled out 2022-04-12 10:35:01 +10:00
Peter Barker 73b86ccc04 AP_HAL_ChibiOS: allow RobotisServo protocol to be compiled out 2022-04-12 10:35:01 +10:00
Peter Barker 3339d96573 SRV_Channel: allow Volz protocol to be compiled out 2022-04-12 10:35:01 +10:00
Peter Barker d97c847966 AP_Volz_Protocol: allow Volz protocol to be compiled out 2022-04-12 10:35:01 +10:00
Peter Barker 2e20e26403 AP_HAL_ChibiOS: allow Volz protocol to be compiled out 2022-04-12 10:35:01 +10:00
Peter Barker 04a64a20fa AP_NavEKF2: remove instance id from EK2 external interface
Removes passing of instance id in interfaces where -1 was the only value
ever passed in
2022-04-12 10:25:29 +10:00
Peter Barker c1c18331f9 AP_AHRS: remove instance id from EK2 external interface
Removes passing of instance id in interfaces where -1 was the only value
ever passed in
2022-04-12 10:25:29 +10:00
Henry Wurzburg c770a2bd58 hwdef: minimal GPS support for Flywoo baords 2022-04-12 10:04:57 +10:00
Andy Piper 1a843f659f AP_HAL_ChibiOS: bdshot version of MatekF765-Wing 2022-04-12 10:03:11 +10:00
Andy Piper 29e8f96275 AP_InertialSensor: move frontend update into ramfunc. 2022-04-12 09:19:45 +10:00
Andy Piper 2d62da9298 AP_FlashIface: make sure XIP flash is ready before returning 2022-04-12 09:19:45 +10:00
Andy Piper e89eb34d55 AP_HAL_ChibiOS: add I2C and compass backend to drivers in memory on H750
move more of EKF into memory on H750
move rc handling into memory on H750
disable double math on SPRacing H7
2022-04-12 09:19:45 +10:00
Michel Pastor f4a3a65797 hwdef: add revo-mini-sd 2022-04-12 09:17:03 +10:00
Andrew Tridgell 0f230eec5a AP_Scripting: increase default heap size in SITL and on F7/H7
if we have 500k or more memory then use 100k heap for Lua, making
setup easier
2022-04-11 17:02:04 +10:00
Lokesh Ramina 729466358d hwdef: added CarbonixF405 AP_Periph node
added hwdef files for CarbonixF405 board
2022-04-11 12:58:48 +10:00
Peter Barker a9b90a3b5a AP_HAL: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 0b16c4063e AP_NavEKF3: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 65b00bcc2a AP_NavEKF2: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker df91effa4e AR_Motors: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 224c32edf0 AR_WPNav: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 6a0250bc85 AP_Winch: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker c452002ae4 AC_PrecLand: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker d319370080 RC_Channel: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker a10ed0e87f PID: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker c829b109bf AP_Vehicle: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker e1dd53eb17 AP_TECS: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker ce312a3750 AP_Scripting: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker df60565769 AP_Mission: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker dd589934cc APM_Control: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 0c32eeca2e AP_Logger: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 8ec0eed749 AP_Landing: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 6a97056736 AP_Camera: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker d73cd7d0e3 AC_WPNav: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker e5e4dee708 AC_PID: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker 66f0a0f42b AC_AutoTune: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Peter Barker c1e776fc46 AC_AttitudeControl: stop libraries including AP_Logger.h in .h files
AP_Logger.h is a nexus of includes; while this is being improved over
time, there's no reason for the library headers to include AP_Logger.h
as the logger itself is access by singleton and the structures are in
LogStructure.h

This necessitated moving The PID_Info structure out of AP_Logger's
namespace.  This cleans up a pretty nasty bit - that structure is
definitely not simply used for logging, but also used to pass pid
information around to controllers!

There are a lot of patches in here because AP_Logger.h, acting as a
nexus, was providing transitive header file inclusion in many (some
unlikely!) places.
2022-04-08 19:18:38 +10:00
Andy Piper e0adbb978e AP_HAL_ChibiOS: fix dshot timeout bug where the elapsed pulse is longer than the send time
dshot timeouts should be no longer than the pulse interval
use correct timestamp for dmar send time
2022-04-07 07:21:21 +10:00
Peter Barker b80cc9a610 AP_Logger: remove old, unused log metadata for MON 2022-04-06 21:54:15 +10:00
Peter Barker 00de10d796 AP_HAL_ChibiOS: use structure for writing out WDOG,MON message 2022-04-06 21:54:15 +10:00
Peter Barker a546bc797c AP_Logger: source IDs and structs from HAL_ChibiOS 2022-04-06 21:54:15 +10:00
Peter Barker adf9c21d48 AP_NavEKF3: remove instance id from EK3 external interface
Removes passing of instance id in interfaces where -1 was the only value
ever passed in
2022-04-06 17:36:05 +10:00
Peter Barker b762aac6ce AP_AHRS: remove instance id from EK3 external interface
Removes passing of instance id in interfaces where -1 was the only value
ever passed in
2022-04-06 17:36:05 +10:00
Peter Barker c2112565b5 AP_GPS: remove redundant _blend_mask check
filling in of these values is already gated by checking the mask
2022-04-06 17:31:42 +10:00
Peter Barker 4332ed8f36 AP_GPS: use sq function for squaring numbers 2022-04-06 17:31:42 +10:00
Iampete1 2589fa1b3b AP_GPS: UBlox: add TIM-TM2 logging 2022-04-06 17:22:30 +10:00
Iampete1 0a0178988d AP_Logger: add 1e-9 log multiplyer 2022-04-06 17:22:30 +10:00
Peter Barker 717edae9ef hwdef: fix redefinition of Solo values in CubeSolo/CubeGreen-Solo
adding fmuv3 into the list of firmwares we might run on Solo was a late
addition to the recent PRs.  It was forgotten that the inheritance would
cause a redefition failure
2022-04-06 16:38:23 +10:00
Andrew Tridgell 37d8feb928 hwdef: disable GPS drivers on low flash boards
only leave uBlox enabled on boards that are running out of flash
2022-04-06 14:14:07 +10:00
Andrew Tridgell c9bbfd94c0 hwdef: set AUTOBUILD_TARGETS None on eval boards 2022-04-06 14:13:44 +10:00
李孟晓 2d37bc9c78 AP_HAL_ChibiOS: CUAV-Nora: add usart3 support 2022-04-06 11:04:08 +10:00
Andrew Tridgell 06b6632f30 AP_Logger: fixed @SYS file logging
the key fix is the reset of the fd to -1. Without that fix we only
ever log @SYS/uarts.txt

The timing change is needed to get the files out in a reasonable
time. The function is actually getting called at 100Hz or less, not
1kHz (measured on MatekH743 copter at 400Hz). So we need to run it
faster to get the files logged in a reasonable time
2022-04-06 07:46:29 +10:00
Peter Barker d2c3c578c2 hwdef: add hwdef for CubeOrange-SimOnHardware 2022-04-05 18:10:14 +10:00
Andrew Tridgell 392e80001f HAL_ChibiOS: fixed H7 flash storage
this fixes the flash re-init problem when flash storage fills on
H7. It was caused by rejecting writes where one or more of the 32 byte
chunks was not all 0xff but was equal to the current data. That
happens when writing to the sector header in AP_FlashStorage

it also moves the interrupt disable inside the loop to allow for
other interrupts to run between blocks
2022-04-05 17:46:52 +10:00
Andrew Tridgell 093acc1577 HAL_ChibiOS: use 16 byte lines for flash storage on H7
this halves the number of flash writes needed, and makes flash storage
twice as space efficient on H7

On H7 we need to write 32 bytes at a time to flash, which corresponds
to 30 bytes of data in AP_FlashStorage. By using a 16 byte storage
line we don't waste as much space
2022-04-05 17:46:52 +10:00
Andrew Tridgell 055ee6ba82 HAL_ChibiOS: increase monitor thread stack by 512
this is needed to ensure that the log writes of MON and WDOG don't
overflow monitor thread stack
2022-04-05 17:46:52 +10:00
Andrew Tridgell 1b6620b42f HAL_ChibiOS: added expected delays on flash writes
this prevents a long loop internal error on disarm after a large
amount of flash writes when armed on a board with flash storage
2022-04-05 17:46:52 +10:00
Andrew Tridgell a0c867bce7 HAL_ChibiOS: disable interrupts during flash operations
we have now shown that interrupts being enabled during flash
operations can cause the infamous "68ms" bug, or watchdog when using a
32 bit timer on boards using flash for storage

The issue is quite repeatable with a load of a very large waypoint
file (over 500 waypoints) using "wp ftpload" in MAVProxy. This puts a
huge load on flash storage.

Our current working theory is that while doing flash writes for
storage on dual-bank we block access to only one bank, so if another
thread uses a timeout function with a short timeout while the flash
write is happening and chVTDoTickI calls code which crosses the flash
bank boundary then it can cause chVTDoTickI to violate the assumption
that no more than CH_CFG_ST_DELTA ticks pass while it is calculating
the value to set in the system timer. In that case we get a delay of a
full timer wrap, which is 68ms on boards with 16 bit timer and 70
minutes on boards with 32 bit timer
2022-04-05 17:46:52 +10:00
Andrew Tridgell f6f6521b28 Revert "hwdef: changed MatekH743 to a 32 bit timer"
This reverts commit 7dc5911572.
2022-04-05 17:46:52 +10:00
Andrew Tridgell 5ef9c5aaa5 HAL_ChibiOS: constrain more timer timeouts 2022-04-05 17:46:52 +10:00
Andrew Tridgell 4c977eb7a0 HAL_ChibiOS: prevent long timeouts in DShot
this prevents bad calculated timeouts in DShot. The timeout would
sometimes come out as 0xFFFFFFFF, which led to an assert and could
block the thread

This fix is meant to be minimilistic to allow it to be merged easily
into 4.2. A better fix would fix all the uint32_t wrap handling in
DShot
2022-04-05 17:46:52 +10:00
Andrew Tridgell a95b429acc AP_Math: added unsigned versions of constrain functions
sometimes it really does matter that we use constrain_uint32() instead
of constrain_int32(). For example, if we have a value like 0xFFFFFFFF
then the result will be very different

we should use unsigned constrain when dealing with unsigned values
2022-04-05 17:46:52 +10:00
Henry Wurzburg 82235163a2 AP_Scripting: remove original aerobatics example to avoid confusion 2022-04-05 10:12:13 +10:00
Henry Wurzburg fa81f7813c AP_Airspeed: correct metadata for params for non-Plane vehicles 2022-04-05 09:58:10 +10:00
Lokesh Ramina 11b3eccf66 AP_Periph: Hwdef CarbonixL496 update
Modification of CarbonixL496 to add more features.
Features:
To use internal clock of MCU, Oscillator value is set to 0.
LED pin changed from PA13 to PA15
Enabled  JTAG
Add interface to GPS and ADSB.
2022-04-05 09:57:02 +10:00
Nicholas Kruzan d42a287db0 AP_HAL_ESP32: partitions.csv - increase app partition to 3M 2022-04-05 08:41:11 +10:00
Nicholas Kruzan c3e071579d AP_Filesystem: AP_Filesystem_ESP32 allow_absolute_paths in ::open() 2022-04-05 08:40:26 +10:00
Andrew Tridgell 1c5a954b24 HAL_ChibiOS: incorrect class of class in uart TX timeout
need to call chEvtGetAndClearEventsI() as we are in a system lock
state
2022-04-04 16:59:38 +10:00
Peter Barker fd666dc4f1 AP_AHRS: subtract accel bias from correct ins accel instance
In the case that you have INS_USE indicating IMUs should be used, but
EK3_IMU_MASK leaving some IMUs unused, we subtract the bias from the
wrong INS data
2022-04-03 11:41:09 +10:00
Andrew Tridgell a01ca35939 AP_Logger: increase stack of log_io thread by 256
This was seem on omnibusf4pro, it is a bit too close:

  log_io PRI= 59 sp=0x20015CC0 STACK=144/1656
2022-04-01 19:56:30 +11:00
Mirko Denecke c1e0e9c305 AP_HAL_ChibiOS: fix ms5611 probe for NucleoH743 2022-03-31 16:31:13 +11:00
Randy Mackay 0dd9a8028b AR_WPNav: integrate scurve snap 2022-03-30 15:34:14 +09:00
Randy Mackay c233f114bd AR_PosControl: fixup logging to record desired and target velocity and acceleration 2022-03-30 15:34:14 +09:00
Randy Mackay 74df1c0b22 AR_PosControl: reduce default I term to zero 2022-03-30 15:34:14 +09:00
Randy Mackay 995ff30cd6 AC_Avoid: enable slide behaviour for rover 2022-03-30 15:34:14 +09:00
Randy Mackay 5d96804ef3 AR_WPNav: add protection against zero accel max 2022-03-30 15:34:14 +09:00
Randy Mackay a1b9fe5097 AR_WPNav: jerk time reduced to 0.1 sec 2022-03-30 15:34:14 +09:00
Randy Mackay c6dffb990f AR_WPNav: add set_nudge_speed_max
allows pilot to override speed_max from RC input
2022-03-30 15:34:14 +09:00
Randy Mackay 394a5fd2fc AR_WPNav: get/set_desired_speed renamed to get/set_speed_max
set_speed_max updates position controller limits and triggers recalculation of scurves
local _desired_speed member is no longer required because max speed is held in position controller
2022-03-30 15:34:14 +09:00
Randy Mackay 1996085282 AR_WPNav: init accepts speed max
also remove unused set_desired_speed_to_default
also init previous leg in set_desired_location
init accepts speed but inforces minimum
2022-03-30 15:34:14 +09:00
Randy Mackay a91025fa16 AR_WPNav: remove unused speed_min 2022-03-30 15:34:14 +09:00
Randy Mackay 537874c075 AR_WPNav: jerk_max maintained in position controller 2022-03-30 15:34:14 +09:00
Randy Mackay 54eee7d311 AR_WPNav: simplify init 2022-03-30 15:34:14 +09:00
Randy Mackay d03e801b65 AR_WPNav: remove get_accel_max, get_jerk_max 2022-03-30 15:34:14 +09:00
Randy Mackay 653afbeb15 AR_WPNav: enable_overspeed added to improve sailboat support 2022-03-30 15:34:14 +09:00
Randy Mackay 2f6e098f23 AR_WPNav: always use local calculation of cross track
also calc_crosstrack_error may return negative values
2022-03-30 15:34:14 +09:00
Randy Mackay 729dfee01c AR_WPNav: pivot turns stop before turning 2022-03-30 15:34:14 +09:00
Randy Mackay e0a628bb8c AR_WPNav: add is_fast_waypoint accessor 2022-03-30 15:34:14 +09:00
Randy Mackay 0bcae12ceb AR_WPNav_OA: use wpnav's expect fast updates 2022-03-30 15:34:14 +09:00
Randy Mackay f769a18996 AR_WPNav: add set_desired_location_expect_fast_update 2022-03-30 15:34:14 +09:00
Randy Mackay 1fd9da710d AR_WPNav: add internal error if invalid destination received 2022-03-30 15:34:14 +09:00
Randy Mackay 461c5196e7 AR_WPNav: add ACCEL and JERK params and accessors
allows users to specify a different acceleration and jerk for Auto, Guided, RTL, etc compared with manual modes (Acro, etc)
2022-03-30 15:34:14 +09:00
Randy Mackay 47ab961f42 AR_WPNav: fix application of turn-max-g 2022-03-30 15:34:14 +09:00
Randy Mackay b1237ffe80 AR_WPNav: always pivot at corners of at least WP_PIVOT_ANGLE 2022-03-30 15:34:14 +09:00
Randy Mackay 3d048ddcc2 AR_WPNav: fix pivot activation when reversing 2022-03-30 15:34:14 +09:00
Randy Mackay 6515e71fc1 AR_WPNav: move OA path planning handling into a separate class 2022-03-30 15:34:14 +09:00
Randy Mackay 2a1013e896 AR_WPNav: set desired lat accel and crosstrack to zero when disarmed 2022-03-30 15:34:14 +09:00
Randy Mackay a185e78271 AR_WPNav: integrate AR_PivotTurn class
moves pivot turn feature to separate class
also does not advance along scurve path while pivotin
2022-03-30 15:34:14 +09:00
Randy Mackay 7225d74777 AR_PivotTurn: pivot turn controller
also reduces default pivot speed to 60deg/sec (was 90deg/sec)
add would_active and allow activation to be forced
2022-03-30 15:34:14 +09:00
Randy Mackay 9d629f5ecd AR_WPNav: use position controller and s-curves 2022-03-30 15:34:14 +09:00
Randy Mackay abc7bd446a AR_PosControl: rover position controller 2022-03-30 15:34:14 +09:00
Randy Mackay 8fcefb59b1 AP_Math: add Vector2f::dot 2022-03-30 15:34:14 +09:00
Andy Piper 23f8a00619 AP_HAL_ChibiOS: use narrower bitwidths for dshot and LEDs to allow more accurate prescaler calculation 2022-03-30 17:11:09 +11:00
Andy Piper fff82bed75 AP_HAL: update prescaler tests 2022-03-30 17:11:09 +11:00
Peter Barker d9f819085c AP_Math: add specialisation for sq(float)
avoids conversion to double
2022-03-30 08:44:19 +11:00
Henry Wurzburg 479b02e5b0 HWDEF: add SLCAN OTG port, correct defaults.param errors 2022-03-29 10:43:51 +11:00
Andrew Tridgell 0879b497a4 AP_Param: fixed param class conversion code
param class conversion was unconditionally overwriting the parameter
from the old parameter. This meant if the user has set a value in an
old firmware they could not change it in a new firmware.

I hit this with ARSPD_TYPE. I had previously set this to 0 in a
previous use of the board, and found that it kept resetting to 0 on
the new firmware when I tried to enable airspeed
2022-03-29 10:41:33 +11:00
Andy Piper eb996f28cc AP_HAL_ChibiOS: spro H7 extreme updates.
cannot currently use both IMUs on spro H7 extreme due to CPU load
2022-03-29 10:39:35 +11:00
Andy Piper 63229d7eca AP_HAL_SITL: correct disable channel maths
unilaterally write rcoutput to appease the sitl gods
2022-03-29 10:29:31 +11:00
Andy Piper 6511a65b67 SRV_Channel: don't count disabled channels in mask and setup functions
disable channels that are not in use
2022-03-29 10:29:31 +11:00
Andy Piper 4fa0e275fd AP_HAL_ChibiOS: fix ESCs constantly arming on rover with dshot commands
make sure debug will compile
take into account active channels when configuring bdshot
add channel mask debug output
correct set bdshot telemetry position at startup
make sure all channels in a bdshot group are pulled high to prevent spurious pulses
2022-03-29 10:29:31 +11:00
xianglunkai abb0bf34d2 test_3d_lines:fix test result for test_3d_lines 2022-03-29 08:26:39 +09:00
xianglunkai 4513546845 vector3:return w1 not zero vector 2022-03-29 08:26:39 +09:00
Peter Barker 29c2c40c41 hwdef: enable both OreoLED and Solo gimbal on fmuv3
for users running fmuv3 on their Solo
2022-03-29 08:24:59 +09:00