Commit Graph

26424 Commits

Author SHA1 Message Date
Andrew Tridgell f34e4be991 AP_Logger: re-enable ATRP logging msg 2021-04-15 06:57:16 +10:00
Andrew Tridgell 7b073a61f1 APM_Control: allow for gain reductions when idle 2021-04-15 06:57:16 +10:00
Paul Riseborough b969a43074 Filter: Slewlimiter use different filtering for external reporting 2021-04-15 06:57:16 +10:00
Paul Riseborough dd446433f7 Filter: Adjust SlewLimiter tuning 2021-04-15 06:57:16 +10:00
Paul Riseborough 6e6df3df58 Filter: Increase gain modifier action 2021-04-15 06:57:16 +10:00
Paul Riseborough 458c46353d Filter: remove unnecessary fmaxf 2021-04-15 06:57:16 +10:00
Andrew Tridgell 91856b1d8c APM_Control: prevent bad init of FF in autotune 2021-04-15 06:57:16 +10:00
Paul Riseborough cb4a770d38 Filter: Reduce spikes in oscillation slew rate metric 2021-04-15 06:57:16 +10:00
Paul Riseborough fdfdb118b9 Filter: Improve SlewLimiter oscillation detection 2021-04-15 06:57:16 +10:00
Andrew Tridgell 3fdd507157 APM_Control: log I and prevent numercial errors in autotune 2021-04-15 06:57:16 +10:00
Andrew Tridgell 24d53eade4 APM_Control: adjust filter for autotune to 0.75 Hz
this should give a better FF estimate
2021-04-15 06:57:16 +10:00
Paul Riseborough 9e6561e6b5 APM_Control: Ensure adequate trim speed 2021-04-15 06:57:16 +10:00
Paul Riseborough 4622e33255 Filter: Use positive and negative direction changes for slew limiting 2021-04-15 06:57:16 +10:00
Andrew Tridgell fa88967b6e APM_Control: adjust min value for tconst 2021-04-15 06:57:16 +10:00
Andrew Tridgell b079da33c5 APM_Control: use slew rate to move gains more smoothly 2021-04-15 06:57:16 +10:00
Andrew Tridgell 59a805a740 Filter: expose slew rate in slew limiter 2021-04-15 06:57:16 +10:00
Andrew Tridgell 95b375dc87 AC_PID: log SRate in pid info and expose slew rate 2021-04-15 06:57:16 +10:00
Andrew Tridgell 05d5fc2ecc AP_Logger: added SRate logging to PIDs 2021-04-15 06:57:16 +10:00
Andrew Tridgell 772b1262d4 APM_Control: added proportional reduction to D and P 2021-04-15 06:57:16 +10:00
Andrew Tridgell d561cd358f APM_Control: log RMAX and TAU 2021-04-15 06:57:16 +10:00
Andrew Tridgell d914ce6829 APM_Control: reset filters on autotune start 2021-04-15 06:57:16 +10:00
Andrew Tridgell 6cae97446a Filter: added auto-init to LowPassFilter
make sure initial filter returns are not a long way off if filtered
input is far from zero
2021-04-15 06:57:16 +10:00
Andrew Tridgell 7e64875a02 APM_Control: tweak tuning settings 2021-04-15 06:57:16 +10:00
Andrew Tridgell ccd7b15d06 APM_Control: apply pitch limiting at high roll to rate
this fixes an issue with a large elevator trim error when rolled at
close to 90 degrees
2021-04-15 06:57:16 +10:00
Andrew Tridgell 4694820ac3 APM_Control: allow for smaller minimum tconst 2021-04-15 06:57:16 +10:00
Andrew Tridgell 97f88f67f6 APM_Control: allow for AUTOTUNE_LEVEL=0
this means keep the existing TCONST and RMAX parameters, if non-zero
2021-04-15 06:57:16 +10:00
Andrew Tridgell 316541017a APM_Control: fixed handling of clipped actuator in autotune 2021-04-15 06:57:16 +10:00
Andrew Tridgell 9997b191a8 APM_Control: log smoothed rates 2021-04-15 06:57:16 +10:00
Andrew Tridgell 20ef242280 APM_Control: fixed restore of tconst on autotune abort 2021-04-15 06:57:16 +10:00
Andrew Tridgell 8f249d5ece AP_OSD: fixed param edit for new plane PIDs 2021-04-15 06:57:16 +10:00
Andrew Tridgell 160b25c557 AP_Param: fixed KEY_DUMP option
use right index, and use ::printf
2021-04-15 06:57:16 +10:00
Andrew Tridgell 5818d6040c SITL: convert param file for new plane PID system 2021-04-15 06:57:16 +10:00
Andrew Tridgell 53ee13a083 APM_Control: use instance logging and allow AUTOTUNE_LEVEL adjustments 2021-04-15 06:57:16 +10:00
Andrew Tridgell 70c194c358 APM_Control: fixed LoggerDocumentation test 2021-04-15 06:57:16 +10:00
Andrew Tridgell 0b76a8018f APM_Control: move rmax and tau more slowly 2021-04-15 06:57:16 +10:00
Andrew Tridgell 3cb32a18f0 APM_Control: fixed for cygwin build 2021-04-15 06:57:16 +10:00
Andrew Tridgell 364fa0680d APM_Control: use shorter tau for autotune higher levels 2021-04-15 06:57:16 +10:00
Andrew Tridgell f88622def8 APM_Control: implement new autotune system
use actuator/rate ratio with median filter for FF and Dmod/overshoot
for P,I,D
2021-04-15 06:57:16 +10:00
Andrew Tridgell 12fad55891 APM_Control: fixed pid_info for pitch controller 2021-04-15 06:57:16 +10:00
Andrew Tridgell ead011c7c2 APM_Control: move to only ACPID 2021-04-15 06:57:16 +10:00
Andrew Tridgell 6ca9033dde APM_Control: run AC_PID in parallel with old PID for roll/pitch 2021-04-15 06:57:16 +10:00
Andrew Tridgell 99fe194980 AP_Logger: removed old ATRP log msg 2021-04-15 06:57:16 +10:00
Andrew Tridgell 7b98ab0f12 AP_Param: added get_param_by_index
useful for parameter conversion within an object
2021-04-15 06:57:16 +10:00
Andrew Tridgell 5ef31a1801 Filter: moved ModeFilter to C++
save flash space for common code
2021-04-15 06:57:16 +10:00
Andrew Tridgell 6f2e592943 AC_PID: allow for slew limit scaler
used by plane to have slew limiter in deg/s
2021-04-15 06:57:16 +10:00
Andrew Tridgell 62afa46924 AC_PID: added accessor for IMAX 2021-04-15 06:57:16 +10:00
Peter Barker 6a3188a8ec AC_PrecLand: use enum-class for Type, make enum private 2021-04-14 18:04:26 +10:00
Peter Barker 252543978e AC_PrecLand: remove unused PrecLandBehaviour enum and accessor
AFAICS this has never been used
2021-04-14 18:04:26 +10:00
Peter Barker 1ad9542df3 AC_PrecLand: use enum-class for EstimatorType
And remove accessor for same
2021-04-14 18:04:26 +10:00
Philippe Hamelin 187549b431 SITL: Add NMEA THS message. 2021-04-14 17:20:28 +10:00
Philippe Hamelin 738d000f86 AP_GPS: Add NMEA THS message. 2021-04-14 17:20:28 +10:00
Andrew Tridgell 3e138aa98a AP_Filesystem: fixed a read past EOF bug in @PARAM
this could cause mavproxy FTP param download to fail
2021-04-14 17:05:49 +10:00
Tatsuya Yamaguchi 5fd46c02ad AP_ExternalAHRS: remove message when EAHRS_TYPE is None 2021-04-14 14:46:03 +10:00
Andrew Tridgell 9990404e64 HAL_ChibiOS: fixed G4 analog input build
use right resolution in ADC peripheral for ADCv3
2021-04-14 13:11:58 +10:00
Andrew Tridgell 1fe1e53260 AC_PrecLand: pass in time corrected LANDING_TARGET msg
should make companion based precision landing more accurate
2021-04-13 17:30:19 +10:00
Andrew Tridgell 8444a3310d GCS_MAVLink: added handle_command_landing_target()
used to allow vehicle handling of time corrected LANDING_TARGET msgs
2021-04-13 17:30:19 +10:00
Hwurzburg cc4fe29d8f AP_OSD: add icon for terrain alt panel and font editor 2021-04-13 14:50:07 +10:00
Peter Barker 9513bbe85f AC_Precland: remove unused _timestamp_us 2021-04-13 14:18:05 +10:00
Andrew Tridgell ea3657e941 AP_Motors: added accessors for ff output to motors
needed for tailsitters
2021-04-13 10:28:47 +10:00
Peter Barker 6fe58a807d AP_Logger: move precision landing logging up into AC_PrecLand 2021-04-13 10:28:39 +10:00
Peter Barker 6d9f1f1bb4 AC_PrecLand: move precision landing logging up into AC_PrecLand 2021-04-13 10:28:39 +10:00
Andrew Tridgell eca8cf3414 HAL_ChibiOS: save flash on boards that are critically low
move to single OSD font on some boards

this saves about 12k on these boards. They were also extremely close
to overflowing flash, under 2k on some

Now that we support having an OSD font on the microSD card (where
available) we can reduce built in fonts without a large functionality
impact

This also disables some less used features on these boards:

 - generator support
 - object avoidance path planning
 - precision landing

This will give us some breathing room on these boards
2021-04-13 09:58:59 +10:00
Andrew Tridgell bb28a58bce AP_ExternalAHRS: added frontend/backend split
allow for multiple backends
2021-04-13 09:36:52 +10:00
Andrew Tridgell b3ed4f4b12 AP_InertialSensor: fixed handling of more than 3 accel/gyro instances
allows for first 3 to work without a panic
2021-04-13 09:36:52 +10:00
Andrew Tridgell fd3bf0f639 HAL_Linux: added --defaults option to Linux HAL
useful for initial parameters
2021-04-13 09:36:52 +10:00
Andrew Tridgell ae088f792d AP_ExternalAHRS: added EAHRS_RATE for IMU rate
this allows setting of required data rate from the external AHRS
2021-04-13 09:36:52 +10:00
Andrew Tridgell 266b425115 HAL_SITL: use common nmea_printf() 2021-04-13 09:36:52 +10:00
Andrew Tridgell 3650c02745 AP_GPS: use common nmea_printf() 2021-04-13 09:36:52 +10:00
Andrew Tridgell 6c29f8c24f AP_Common: added common nmea_printf code 2021-04-13 09:36:52 +10:00
Mirko Denecke e904de3431 AP_Scripting: add position light example 2021-04-13 09:23:59 +10:00
vierfuffzig 10f15fbba5 AP_OSD: add kilo symbol to RPM panel 2021-04-13 09:08:36 +10:00
Samuel Tabor e78d6fee0a AP_Soaring: Ensure minimum cruise times are respected when RC switch position is changed. 2021-04-12 18:38:10 +10:00
Samuel Tabor 9a7f80789f AP_Soaring: Update vario tau calculation to use SOAR_THML_BANK. 2021-04-12 16:24:03 +10:00
Andy Piper 4fd88e8ad0 AP_VideoTX: don't try to change pitmode on anything other than SA2.1 2021-04-12 16:22:36 +10:00
Andy Piper bfcefa3f34 AP_VideoTX: prioritize pitmode changes over power changes 2021-04-12 16:22:36 +10:00
Andy Piper de64467ca3 AP_RCTelemetry: prioritize pitmode changes over power changes 2021-04-12 16:22:36 +10:00
Peter Barker 27c262b037 SITL: add documentation fo rsimulated barometers 2021-04-10 11:28:22 +10:00
chobits fd88e53be6 AC_WPNav: remove unassigned _track_desired 2021-04-08 16:13:51 +09:00
Randy Mackay 30a08dda0a SITL: add rover with vectored thrust support 2021-04-08 08:47:07 +09:00
Randy Mackay 381044c2d0 SITL: add comments to SIM_Rover members 2021-04-08 08:47:07 +09:00
Iampete1 186cb6ef13 AP_Scripting: correct rotations in fault tolerant hex example 2021-04-08 08:23:08 +09:00
Andrew Tridgell 47a5d78397 HAL_ChibiOS: disable DMA on high contention UARTs
switch to interrupt driven when in high contention
2021-04-08 06:53:48 +10:00
Jacob Walser f7da853adb AP_HAL: update hardware definitions for navigator r3 2021-04-07 15:08:18 -04:00
Jacob Walser 397def7b9e AP_LeakDetector: update leak pin for navigator r3 2021-04-07 15:08:18 -04:00
Jacob Walser 5537f5564c AP_HAL: update imu hardware for navigator r3 2021-04-07 15:08:18 -04:00
Jacob Walser 3a433cd71e AP_HAL: update pwm hardware for navigator r3 2021-04-07 15:08:18 -04:00
Jacob Walser 421638453f AP_HAL: update Notify LED hardware for navigator r3 2021-04-07 15:08:18 -04:00
MHefny 6bbfdbaf6a AP_HAL_LINUX:fix missing setting physical address 2021-04-07 10:36:31 -07:00
MHefny 30382740d2 AP_HAL_Linux:fix code style 2021-04-07 10:36:31 -07:00
MHefny 8767112a77 AP_HAL_LINUX:remove duplicates and fix _version 2021-04-07 10:36:31 -07:00
MHefny c57764e9b4 linux: RCInput_RPI RPI-4 Support 2021-04-07 10:36:31 -07:00
Andrew Tridgell 7b9826cdce SITL: change for AP::terrain as a pointer 2021-04-07 20:56:01 +10:00
Andrew Tridgell 483ed19662 AP_OSD: change for AP::terrain as a pointer 2021-04-07 20:56:01 +10:00
Andrew Tridgell d3e3e58466 AP_Frsky_Telem: change for AP::terrain as a pointer 2021-04-07 20:56:01 +10:00
Andrew Tridgell 5e820b203b Ap_Terrain: make AP::terrain return a pointer
this is needed for rover and OSD support
2021-04-07 20:56:01 +10:00
Peter Barker 9471d8069c GCS_MAVLink: move handling of last-seen-SYSID_MYGCS up to GCS base class 2021-04-07 17:54:21 +10:00
Peter Barker 5d686b9cb1 AP_AdvancedFailsafe: move handling of last-seen-SYSID_MYGCS up to GCS base class 2021-04-07 17:54:21 +10:00
anbello 77998fb5ba revo-mini bdshot 2021-04-07 17:44:29 +10:00
anbello dcb90c7bdb revo-mini ext i2c 2021-04-07 17:26:56 +10:00
Andy Piper be39e1f297 AP_HAL_ChibiOS: correct current scale for BeastH7 and BeastF7 2021-04-07 17:25:19 +10:00
Andy Piper aa0ec0f091 AP_HAL_ChibiOS: optimize BeastH7 compilation 2021-04-07 17:25:19 +10:00
Iampete1 ec90ab13f4 AP_HAL_ChibiOS: RCOutput: print DMA alocation errors 2021-04-07 17:24:25 +10:00
Iampete1 15509f314c AP_HAL_ChibiOS: RCOuput: LED setup re-work 2021-04-07 17:24:25 +10:00
Andrew Tridgell 61c829d624 HAL_ChibiOS: only use SRAM4 for DMA for now
we can enable others when we have an allocation interface that
specifies the peripheral type
2021-04-07 17:10:45 +10:00
Iampete1 2377d33417 AP_HAL_ChibiOS: H7 set SRAM4 to no cache and allow DMA 2021-04-07 17:10:45 +10:00
Jacob Walser 8defcb9169 AP_Compass: add memsic MMC5883 driver 2021-04-07 16:03:57 +10:00
Andrew Tridgell 4cddb12508 HAL_ChibiOS: fixed DMA sent calculation on UART DMA timeout 2021-04-07 07:34:45 +10:00
Andy Piper b3dbc21fa7 AP_HAL_ChibiOS: KakuteF7 bdshot configuration, tested by yaapu 2021-04-06 11:33:53 +10:00
Iampete1 79a6c5d2d5 SITL: Examples: JSON: MATLAB: add legacy Simulink files for 2018b 2021-04-06 10:45:37 +10:00
Michael du Breuil bde695d11f AP_Notify: UAVCAN_RGB_LED: don't init if no UAVCAN backends
This allows us to consider enabling UAVCAN_RGB_LED as a more general
default, as it won't consume one of our limited backend slots if UAVCAN
is not enabled.
2021-04-06 10:45:09 +10:00
PYBrulin 240bfeb6bd AP_RangeFinder: TeraRangerI2C added case of out of range measurement 2021-04-06 10:44:13 +10:00
PYBrulin afe9573900 AP_RangeFinder: TeraRangerI2C redefining the output distance logic with OutOfRange cases 2021-04-06 10:44:13 +10:00
Andrew Tridgell c886fd7025 AP_Logger: make log file erase async
this prevents clagging up the main loop on a big erase. With an erase
of large enough files we could trigger a disarmed watchdog.
2021-04-06 10:40:40 +10:00
Andy Piper 721850d00a AP_HAL_ChibiOS: fix dshot150. 2021-04-06 10:24:04 +10:00
Andy Piper f6b1e15b0e AP_HAL_ChibiOS: optimize bdshot ISRs 2021-04-06 10:24:04 +10:00
Andy Piper cb3b37d181 AP_HAL_ChibiOS: ensure that non-dshot modes get regular 1Khz updates 2021-04-06 10:24:04 +10:00
Andy Piper ea3291520c AP_HAL_ChibiOS: add fast cycle calibration step 2021-04-06 10:24:04 +10:00
Andy Piper 74d4af9ac9 AP_HAL_ChibiOS: reset bdshot IC correctly
don't allow dshot rates below 800Hz.
set pin speed to MID1 to avoid glitching
don't run receive pulses on a timer
2021-04-06 10:24:04 +10:00
Andy Piper 477ff72214 AP_HAL_ChibiOS: allow dshot rate to be set so as to both regularize the output as well as
allow faster rates synchronized to the loop rate
synchronize 1Khz and use Betaflight definition for prescaler
adjust dshot bitrates
don't allocate IC DMA if already allocated
cancel DMA pulses correctly
try really hard to align pulses with push() by making each dshot pulse event driven
2021-04-06 10:24:04 +10:00
Andy Piper 9a870e4d75 SRV_Channel: add SERVO_DSHOT_RATE and propagate to rcout 2021-04-06 10:24:04 +10:00
Andy Piper 9ac8e2b705 AP_Vehicle: addlow SRV_Channels to be initialized 2021-04-06 10:24:04 +10:00
Andy Piper f29dba2ddd AP_HAL: add set_dshot_rate() 2021-04-06 10:24:04 +10:00
Peter Barker 749d4c997b AP_Vehicle: ensure reboot command ACK is written out in SITL 2021-04-06 10:21:59 +10:00
Peter Barker 5ebe505f2c AP_HAL_SITL: ensure reboot command ACK is written out in SITL 2021-04-06 10:21:59 +10:00
Jacob Walser d91fd8b006 AP_Notify: add driver for LED on Blue Robotics Navigator board 2021-04-06 09:11:53 +10:00
Peter Barker 1a2b960b0d GCS_MAVLink: prune old statustexts from queue 2021-04-06 09:10:43 +10:00
Peter Barker 4027ed6070 GCS_MAVLink: make servicing statustext more efficient
We should only need to do a single PAYLOAD_SIZE check for each mavlink
backend now.

 - stop iterating over all channels, only do instantiated mavlink
backends
 - if we don't have space for a statustext on a channel, break
immediately and don't do remaining texts
 - resposibility is now on the GCS_MAVLINK backend for sending texts
   - that's a timing change

 - only iterate over entries actually in the queue rather than maximum
queue size
   - it's likely to be the full length anyway as we don't expire things
from the queue and most setups will have full channels
2021-04-06 09:10:43 +10:00
Rishabh 5e5ca6e02a AP_Proximity: Check for stray faces and add new param for filter cut off freq 2021-04-05 14:09:17 +09:00
Rishabh e31ea2f3ee AC_Avoid: Change parameter defaults 2021-04-05 13:43:28 +09:00
Rishabh 1dc67fb932 AP_Proximity: Change parameter defaults 2021-04-05 13:43:28 +09:00
Andrew Tridgell 45477f6063 HAL_ChibiOS: fixed default MSP port for f405-MatekGPS 2021-04-05 11:02:32 +10:00
Andrew Tridgell ca948171fe HAL_ChibiOS: fixed ADC error on revXY STM32H7 boards
with the new ChibiOS revision we were configuring for newer revisions
of the H7, which meant that we changed the ADC config. This broke ADC
readings on revX and revY H7 MCUs.

This PR fixes it in two ways:

 1) change ChibiOS config to assume XY config chips

 2) use 16 bit ADC for H7, which means the chip rev doesn't matter,
    and also gives us 16x the resolution for ADC readinga, so we can
    read smaller voltage and current values
2021-04-05 11:01:03 +10:00
willpiper 94bdca7f6f AP_HAL_ChibiOS: tidy up beastF7 DMA channels 2021-04-04 16:51:19 +10:00
Randy Mackay 193799346c AP_SmartRTL: peek_point method peeks at next point
includes peek point takes semaphore
2021-04-03 12:07:59 +09:00
Leonard Hall 64ae08a925 AC_Loiter: fix references to position error 2021-04-03 12:07:59 +09:00
Leonard Hall d0ab74e496 AC_Circle: fix references to position error 2021-04-03 12:07:59 +09:00
Randy Mackay 2201450180 AC_WPNav: renames and comment fixes 2021-04-03 12:07:59 +09:00
Randy Mackay 85b24cf641 AC_WPNav: fix get_wp_destination_loc
was incorrectly adding alt-above-terrain as if it was alt-above-ekf-origin
also fixup comments
2021-04-03 12:07:59 +09:00
Leonard Hall 32c27b32aa AC_WPNav: support for SCurve navigation
set_wp_destination clear yaw target
limit velocity and acceleration based on track slope
add is_active() and remove unused reached_spline_destination
init accepts desired speed
set_kinematic_limits uses current speed limits instead of defaults
add time compression to prevent target moving too fast for air
implement alternative spline
remove vel-target-length
set_wp_destination always calculates this leg
set_kinematic_limits moved to scurve
fix origin speed after spline segment
spline terrain following fix
handle s-curves with mismatching alt types
fix set_spline_destination_next
add update_track_with_speed_accel_limits
Change to next waypoint at corner apex
use scurve advance along track
remove unused definitions and out-of-date todo
set_spline_destination_next sets fast_waypoint
scurve origin speed set from spline target velocity
fixup takeoff delay
2021-04-03 12:07:59 +09:00
Leonard Hall 6a8ba6f329 AC_PosControl_Sub: update for new position controller changes 2021-04-03 12:07:59 +09:00
Randy Mackay cb0d37586e AC_PosControl: use Vector limit_length and formatting fixes 2021-04-03 12:07:59 +09:00
Leonard Hall ba00c2edd6 AC_PosControl: alt hold controller update
pass accel limit top_pos_xy
prearm check updated
fix PSC_VELZ_FLTE/D param descriptions
fix VelZ FF param desc
limit maximum desired z component
integrate AC_PID_Basic
2021-04-03 12:07:59 +09:00
Leonard Hall b73ad1a1bc AC_PosControl: remove unused sqrt_controller_3D 2021-04-03 12:07:59 +09:00
Leonard Hall 49da872218 AC PosControl: fix position error get functions 2021-04-03 12:07:59 +09:00
Randy Mackay e24f23e076 AP_Mission: add restart_current_nav_cmd 2021-04-03 12:07:59 +09:00
Randy Mackay 2357568eb1 AP_Mission: Mission_Command struct gets comparison operators 2021-04-03 12:07:59 +09:00
Leonard Hall 83b7c496b5 AP_Logger: support for position controller logging 2021-04-03 12:07:59 +09:00
Randy Mackay ae66803148 AC_AttitudeControl: minor optimisation and comment fixes 2021-04-03 12:07:59 +09:00
Leonard Hall d6e3495eca AC_AttitudeControl: support for feedforward rate in angle request for yaw 2021-04-03 12:07:59 +09:00
Leonard Hall 1d720cc5e9 AC_PID: library update and additional functions
includes corrections from peer review
2021-04-03 12:07:59 +09:00
Randy Mackay bc0da915c4 AP_Math: add SplineCurve library
Co-authored-by: Leonard Hall <leonardthall@gmail.com>

includes corrections from peer review
2021-04-03 12:07:59 +09:00
Leonard Hall af7403f4e9 AP_Math: add SCurve library
SCurve const more local variables
rename update to get_jerk_vel_pos_at_time
removed unused update
debug output in SITL
fixes to ensure finished at end of path
fixes including validity check
includes corrections from peer review
2021-04-03 12:07:59 +09:00
Randy Mackay 0e506a71a1 AP_Math: remove control's limit_vector_length
these have been moved to Vector2f and Vector3f
2021-04-03 12:07:59 +09:00
Randy Mackay e2b46d05dc AP_Math: Vector2,3 get limit_length methods 2021-04-03 12:07:59 +09:00
Leonard Hall 3bb0482795 AP_Math: add update_pos_vel_accel to control
also add shape_vel, shape_pos_vel and stopping_distance
also add calculation of kinematic limits
2021-04-03 12:07:59 +09:00
Randy Mackay 67f2c79717 AP_InternalError: added invalid_arguments failure
this is intended to catch problems where we have unexpectedly received
invalid arguments.  For example an out-of-bounds target speed that
should have been caught somewhere else.

running out of bits so we use a single bit to capture invalid inputs to or output from a calculation
2021-04-03 12:07:59 +09:00
Peter Barker 018b1425ce AP_AdvancedFailsafe: remove APM from description 2021-04-01 22:49:34 +11:00
Josh Henderson fb789a07ce AC_WP_Nav_OA: origin_loc & dest_loc should use _terrain_alt_oabak 2021-04-01 14:44:40 +09:00
Sergey Bokhantsev ef95bf088c AP_Motors: Constrain get_throttle_hover value with allowed range 2021-04-01 13:06:02 +09:00
Samuel Tabor a301808e7a SITL: Add parsing of airspeed to SIM_JSON 2021-03-31 19:26:02 +11:00
Iampete1 0b8cdaf392 AP_Scripting: add mission command receve function, binding and example 2021-03-31 19:23:13 +11:00
Iampete1 849ad8c6de AP_Mission: support MAV_CMD_DO_SEND_SCRIPT_MESSAGE 2021-03-31 19:23:13 +11:00
Iampete1 82228469c8 AP_Scripting: add reset_remianing battery binding 2021-03-31 19:21:59 +11:00
Iampete1 9fdceeded3 AP_BattMoniter: add reset remaining per-instance rename existing to _mask 2021-03-31 19:21:59 +11:00
Iampete1 0fe38da522 GCS_MAVLink: rename battery reset function 2021-03-31 19:21:59 +11:00
Randy Mackay d343c569c2 AP_Arming: check for only first compass being disabled
If only the first compass is disabled, users may expect other enabled compasses to be used but they won't be
2021-03-31 19:16:01 +11:00
Randy Mackay 64c4b6a42b AP_Compass: remove unused set_use_for_yaw 2021-03-31 19:16:01 +11:00
Andrew Tridgell 46f35a6910 AP_Baro: work around bad WHOAMI read on DPS310
this fixes an issue with bad read of WHOAMI on a mRoPixracerPro. We
don't know how the sensor gets in a state where WHOAMI can't be read,
but toggling CS does fix it
2021-03-31 13:26:52 +11:00
Michelle Rossouw 7d42c3c834 SITL: Added simple blimp simulator 2021-03-31 12:27:07 +11:00
Michelle Rossouw ac893b4013 AP_Vehicle: added blimp vehicle type 2021-03-31 12:27:07 +11:00
Michelle Rossouw 8bc0f100a2 AP_Param: added blimp frame type 2021-03-31 12:27:07 +11:00
Michelle Rossouw d06161e8ee AP_HAL_SITL: Added support for blimp simulator 2021-03-31 12:27:07 +11:00
Peter Barker e5a8acb227 RC_Channel: return MAV_RESULT_FAILED from do_aux_function if invalid function 2021-03-31 11:36:09 +11:00
Peter Barker 115e895c82 GCS_MAVLink: return MAV_RESULT_FAILED from do_aux_function if invalid function 2021-03-31 11:36:09 +11:00
Peter Barker 30539ac8ac RC_Channel: add method on RC_Channels to execute aux function 2021-03-31 11:36:09 +11:00
Peter Barker d4a0222f76 AP_Mission: allow an auxillary function to be triggered as a DO command 2021-03-31 11:36:09 +11:00
Peter Barker 2d61ded1f3 GCS_MAVLink: add option to execute auxillary functions via mavlink 2021-03-31 11:36:09 +11:00
Peter Barker 7ea5bc7e3e AP_EFI: use enum class for protocol 2021-03-30 21:40:35 +11:00
Andrew Tridgell f0d6b79e8a HAL_ChibiOS: fixed skyviper builds with BMM150 2021-03-30 13:31:50 +09:00
Michael du Breuil c0017abb63 AP_Notify: Remove indirection on RGBLed of init()->hw_init()
Saves a bit of flash, and just makes the code a bit more obvious
2021-03-30 11:18:45 +11:00
Peter Barker f926c27470 AP_Arming: add LANDING arm/disarm method for Copter 2021-03-30 09:00:26 +09:00
Josh Henderson 5551deab4b AC_WPNav: make Location(Vector3f) require ALTFRAME 2021-03-30 08:56:35 +09:00
Josh Henderson 1b584a95ba AC_Avoidance: make Location(Vector3f) require ALTFRAME 2021-03-30 08:56:35 +09:00
Josh Henderson dce01fbb43 AP_Common: make Location(Vector3f) require ALTFRAME 2021-03-30 08:56:35 +09:00
Peter Barker d0b3b926c0 AP_HAL_Linux: split out a calculate_thread_priority method 2021-03-30 10:49:06 +11:00
Peter Barker cfacb5d34d AP_HAL_ChibiOS: split out a calculate_thread_priority method 2021-03-30 10:49:06 +11:00
Iampete1 8b278b52b3 AP_Scripting: add GPIO inputs and exmaple 2021-03-30 10:44:43 +11:00
Iampete1 4315a69b9d AP_HAL_Linux: add semaphore to AnalogIn::channel to make it thread safe 2021-03-30 10:44:43 +11:00
Iampete1 7c96522e44 AP_HAL_ChibiOS: add semaphore to AnalogIn::channel to make it thread safe 2021-03-30 10:44:43 +11:00
Iampete1 f2c2e8c1eb AP_Scripting: add PWM and GPIO to analog input example 2021-03-30 10:44:43 +11:00
Iampete1 e0621179ef AP_Scripting: add PWMSource bindings 2021-03-30 10:44:43 +11:00
Iampete1 590be4049c AP_Scripting: support userdata alias 2021-03-30 10:44:43 +11:00
Iampete1 9d739cfa42 AP_scripting: add bindings and example for analog inputs 2021-03-30 10:44:43 +11:00
Michael du Breuil e5de148ad1 AP_BattMonitor: Fix nullptr deref when resetting a battery 2021-03-30 09:47:44 +11:00
Siddharth Purohit d1dcfd91b5 AP_CANManager: do select before sending passthrough message 2021-03-30 08:05:00 +11:00
Siddharth Purohit cb118c6b73 AP_CANManager: improve robustness of slcan passthrough under high rate 2021-03-30 08:05:00 +11:00
Andrew Tridgell 07313ae71d HAL_ChibiOS: fixed 2nd CAN inferface on F4/F7
CAN1_TX_IRQn is an enum not a defined. This was broken by the recent
change to support different CAN ordering
2021-03-29 20:14:29 +11:00
QioTek 0190a42e47 AP_Airspeed: added ASP5033 driver 2021-03-28 07:50:34 +11:00
Randy Mackay b8d4dbfbb3 AP_Mission: options parameter description per vehicle 2021-03-27 08:20:43 +09:00
Randy Mackay a17086816f AP_Scripting: proximity bindings depend upon HAL_PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
Randy Mackay d4f1eacbed AP_Logger: use of AP_Proximity checks HAL_PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
Randy Mackay f67cdf5a81 AC_Avoidance: use of AP_Proximity checks HAL_PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
Randy Mackay b8f9c3b9c0 GCS_MAVLink: use of AP_Proximity checks HAL_PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
Randy Mackay d53c8b1dd0 AP_Arming: skip checks if not HAL_PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
Randy Mackay 1fad5d46e7 AP_Proximity: add #if HAL_PROXIMITY_ENABLED 2021-03-26 16:22:46 +09:00
Emre Saldiran 9e97c2e095 AP_Scripting: change set_target_posvel_circle example tart location calculation 2021-03-25 21:01:41 +09:00
Andrew Tridgell 1f60eb68ec AP_Math: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell dcf6bcea6e AP_InertialSensor: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell b9df270df6 AP_HAL_SITL: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell 0601259d20 AP_HAL_Linux: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell ebc1f9acf6 AP_HAL: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell 2473d3f7f8 AP_HAL_Empty: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell 88e277420f AP_HAL_ChibiOS: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell 0f5dd40052 AP_Compass: removed assert calls
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Josh Henderson 070ad226ce AP_Logger: OABR correct altitude logging frame and specifier 2021-03-24 20:30:54 +09:00
zhouzhiwen2000 afde83d2f9 AP_Baro: Fix occasional problems with SPL06
Sometimes SPL06 has init problems, that's due to failure of reading using SPI for the first time. The SPL06 is a dual protocol sensor(I2C and SPI), sometimes it takes one SPI operation to convert it to SPI mode.
2021-03-24 14:29:30 +11:00
Peter Barker f261045a2d AP_Logger: multiply IO thread timeout according to SITL speedup
Intended to solve issues we're now getting on CI where the IO thread is
blocking-on-write and the main thread is calling it dead.
2021-03-24 12:54:20 +11:00
Emre Saldiran dc290a8884 AP_Scripting: set_target_posvel example script 2021-03-24 08:55:48 +09:00
Emre Saldiran 1a3a2a0437 AP_Scripting: add set_target_posvel_NED binding 2021-03-24 08:55:48 +09:00
Emre Saldiran 858d69ca0e AP_Vehicle: add set_target_posvel_NED method 2021-03-24 08:55:48 +09:00
zhouzhiwen2000 7c6d5d9bf4 AP_OpticalFlow:add UPFLOW sensor 2021-03-24 08:42:14 +09:00
Peter Barker 82a28e2a58 AP_Logger: do not log soon after file transfer unless we're armed
mavlink log reads fail randomly, and you end up with a very large number
of log files as we keep closing logs off and then discovering we should
be logging
2021-03-24 08:57:03 +11:00
chobitsfan 73a3b5f832 AC_Fence: remove unused declaration 2021-03-24 08:50:48 +11:00
Peter Barker f4591faeed AP_NavEKF3: simplify taking of GPS measurements 2021-03-23 15:11:33 +11:00
Michel Pastor 46fb88e5a0 AP_OSD: Fix ground and wind speed varying length 2021-03-23 12:16:35 +11:00
Rishabh 06a7086562 AP_Scripting: Add proximity status binding 2021-03-23 10:02:18 +09:00
Andrew Tridgell 2d4dfe8a2a HAL_ChibiOS: fixed (unused) FF_FS_TIMEOUT
this change was harmless as we don't define FF_FS_REENTRANT
2021-03-23 12:01:20 +11:00
Andrew Tridgell ffb2876f58 HAL_ChibiOS: disable unused ChibiOS features 2021-03-23 12:01:20 +11:00
Andrew Tridgell 744a2fe535 HAL_ChibiOS: use uint32_t for bit timing in passthru
we should not use systime_t as it may be 16 bit
2021-03-23 12:01:20 +11:00
Andrew Tridgell c3d16cf2e2 HAL_ChibiOS: use defines for G4 messageram
review fix
2021-03-23 12:01:20 +11:00
Andrew Tridgell b4e4d48e52 HAL_ChibiOS: switch OMNIBUSF7V2 timer for RCIN
this avoids a conflict with shared interrupt on TIM1
2021-03-23 12:01:20 +11:00
Andrew Tridgell ff31e10d9e HAL_ChibiOS: ensure that RCIN DMA channel is not shared
RCIN DMA cannot be shared as it runs all the time
2021-03-23 12:01:20 +11:00
Andrew Tridgell 2842730868 HAL_ChibiOS: fixed F3 CAN build 2021-03-23 12:01:20 +11:00
Andrew Tridgell 4f1c43862e HAL_SITL: support arrays of CAN interfaces
allows for multi-bus in AP_Periph
2021-03-23 12:01:20 +11:00
Andrew Tridgell 2fc7ea1a8b HAL_ChibiOS: added G4-ESC hwdef 2021-03-23 12:01:20 +11:00
Andrew Tridgell 353eca79b6 HAL_ChibiOS: fixed 32/64 micros bug in CAN select() 2021-03-23 12:01:20 +11:00
Andrew Tridgell bac9b27a3f HAL_ChibiOS: enable analogin on G4 2021-03-23 12:01:20 +11:00
Andrew Tridgell ac9e6ba86d HAL_ChibiOS: fix label for CCM on G4 2021-03-23 12:01:20 +11:00
Andrew Tridgell 7496b8bff5 HAL_ChibiOS: fixed DMAR register offset
use offsetof() instead of a magic value
2021-03-23 12:01:20 +11:00
Andrew Tridgell 4f10565f82 HAL_ChibiOS: fixed CANFD build on H7 2021-03-23 12:01:20 +11:00
Andrew Tridgell f2ac61f6ba HAL_ChibiOS: enable DShot on G4 2021-03-23 12:01:20 +11:00
Andrew Tridgell f57b1b9c4b HAL_ChibiOS: support logical/physical CAN bus mapping
allow for first CAN interface to be CAN2 or CAN3
2021-03-23 12:01:20 +11:00
Andrew Tridgell 2f7ff778be HAL_ChibiOS: fixed bug in DMA resolver
idsets can be empty for a peripheral
2021-03-23 12:01:20 +11:00
Andrew Tridgell ec8abf0b2f AP_FlashStorage: support STM32G4
needs to write in multiples of 8 bytes, and can only write if all 1s
2021-03-23 12:01:20 +11:00
Andrew Tridgell 439a944801 HAL_ChibiOS: added support for STM32G474 MCU 2021-03-23 12:01:20 +11:00
Andy Piper e1d71486e4 AP_HAL_ChibiOS: build fixes for ChibiOS 20.3.x 2021-03-23 12:01:20 +11:00
Andy Piper c26f49fb0a AP_IOMCU: ChibiOS 20.3.x build fix 2021-03-23 12:01:20 +11:00
Andrew Tridgell 5b59445471 AP_HAL_ChibiOS: fixes for build with 20.3.x ChibiOS 2021-03-23 12:01:20 +11:00
Hwurzburg c1f56c4b22 AP_OSD: Add cell voltage and resting voltage displays
Co-authored-by:shellixyz
2021-03-23 10:24:12 +11:00
Paul Riseborough 1018801522 AP_NavEKF3: White space and comment fixes 2021-03-23 10:05:59 +11:00
Paul Riseborough 7113387d27 AP_NavEKF3: Use better defined data type 2021-03-23 10:05:59 +11:00
Paul Riseborough ac87cab6bc AP_NavEKF3: constify array index variable 2021-03-23 10:05:59 +11:00
Paul Riseborough 1498b516a3 AP_NavEKF3: Don't try to learn gyro biases that are poorly observable 2021-03-23 10:05:59 +11:00
Paul Riseborough 44be7161c0 AP_NavEKF3: Reduce yaw drift when operating without external aiding
Also fixes bug in the determination of the total angular variance threshold for when to fuse a zero innovation yaw measurement.
2021-03-23 10:05:59 +11:00
Paul Riseborough 53c4b163ce AP_NavEKF3: Allow adjustment of on ground not moving test sensitivity
Also re-tune default sensitivity based on user supplied logs with noisy gyro data.
2021-03-23 10:05:59 +11:00
Paul Riseborough e7b08c1ffc AP_NavEKF3: Update log message format description 2021-03-23 10:05:59 +11:00
Paul Riseborough 918606e71d AP_NavEKF3: Don't use fake measurements to learn dvel bias 2021-03-23 10:05:59 +11:00
Paul Riseborough c709ad9c80 AP_NavEKF3: Add missing axis specific dvel bias update inhibit 2021-03-23 10:05:59 +11:00
Paul Riseborough 073e273732 AP_NavEKF3: Don't allow yaw alignment until tilt alignment completed 2021-03-23 10:05:59 +11:00
Paul Riseborough a07427fd30 AP_NavEKF3: Don't learn poorly observed IMU dvel bias states before flight 2021-03-23 10:05:59 +11:00
priseborough 4b1c334bba AP_NavEKF3: improve stability of co-variance matrix processing
This patch prevents the delta velocity bias state variances collapsing due to insufficient process noise and causing bad bias estimates to form.
2021-03-23 10:05:59 +11:00
Randy Mackay 526065a6a4 AP_OAPathPlanner: minor format fix 2021-03-22 20:40:59 +09:00
QioTek fe30612bb0 AP_HAL_ChibiOS: release ICM20649 reserve sensor
BMI055 & BMI088 out of stock, release ICM20649 reserve sensor
2021-03-22 19:05:03 +11:00
Rishabh 711b497cc3 AC_Loiter: Make avoidance optional while using loiter controller 2021-03-22 14:04:42 +09:00
Andrew Tridgell bbd32844d1 HAL_ChibiOS: switch more boards to 32k FRAM
this enables the parameter backup/restore on those boards, as well as
more waypoints

This is in response to a report that CUAVv5 boards can suffer from the
parameter reset issue
2021-03-21 11:59:12 +11:00
yaapu b62c2d9518 AP_Frsky_Telem: added new capabilities param to frame 0x5007 2021-03-19 22:35:16 +11:00
yaapu 592fba7416 AP_Frsky_Telem: frame 0x5007 refactoring 2021-03-19 22:35:16 +11:00
murata 0536be1c88 AP_NavEKF: Change misnomer (NFC) 2021-03-19 17:49:27 +11:00
murata a5b6ce9220 AP_NavEKF2: Change misnomer (NFC) 2021-03-19 17:49:27 +11:00
Samuel Tabor d578b4d3db AP_Soaring: Fix incorrect use of aparm.loiter_radius. 2021-03-19 17:00:08 +11:00
Peter Barker 936aa63135 AP_Param: remove confusing comment
The code refered to is within is_sentinel - and it has a copy of the
comment
2021-03-19 12:21:25 +11:00
yaapu 45f7cb0c82 AP_Frsky_Telem: added passthrough frame 0x500B for height above terrain 2021-03-18 21:43:48 +11:00
Peter Barker 5e63ed908e AP_Logger: loosen constraint on failing to log replay block
// things will almost certainly go sour.  However, if we are not
    // logging while disarmed then the EKF can be started and trying
    // to log things even 'though the backends might be saying "no".
2021-03-18 19:38:43 +11:00
murata 6c67e191d4 AP_Mission: Change the description(NFC) 2021-03-18 12:32:59 +11:00
4712 38ea1296ca Update serial-4way-if to v20005
Reservation of an MCU_ID area to simplificate adding of upcoming BLHeli_32 MCU.
2021-03-18 08:10:08 +11:00
4712 6956abdb45 Some fixes for AP_BLHeli
Added ACK_I_INVALID_CHANNEL as response for cmd_DeviceReset cmd_DeviceInitFlash on bad channel selection
Fixed params for MSP_MOTOR_CONFIG
Adapted some timeouts
2021-03-18 08:10:08 +11:00
yaapu 59c5bbc8b8 AP_BLHeli: added missing ack to MSP_SET_MOTOR message 2021-03-18 08:10:08 +11:00
Randy Mackay 5912052a39 AP_RangeFinder: lightware legacy I2C retry count to 20
This is consistent with the non-legacy I2C protocol
2021-03-17 21:23:14 +09:00
Tatsuya Yamaguchi e134d12e32 AP_Notify: add EKF failsafe notify tones 2021-03-17 20:29:32 +09:00
Iampete1 733db3de19 RC_Channel: add MODE_SWITCH_RESET option 2021-03-17 19:18:46 +11:00
Iampete1 2d91679ec2 RC_Channel: add FBWA_TAILDRAGGER option 2021-03-17 19:18:46 +11:00
Iampete1 77e1092f46 RC_Channel: do_aux_function_mission_reset to virtual 2021-03-17 19:18:46 +11:00
Iampete1 58860205ea AP_Scripting: add manual i2c get device bindings 2021-03-17 18:50:05 +11:00
Iampete1 166aedf1be AP_Scripting: add I2CDevice to auto bindings 2021-03-17 18:50:05 +11:00
Iampete1 1f0e36e10d AP_Scripting: add i2c scan example 2021-03-17 18:50:05 +11:00
Iampete1 7b3097972b AP_Scripting: generator: support pointer semaphore flag 2021-03-17 18:50:05 +11:00
Iampete1 c54634e86b AP_Scripting: generator: finish off refence access implmentation 2021-03-17 18:50:05 +11:00
Iampete1 8effa59d10 AP_Scripting: generator: support method alias and sanitised names 2021-03-17 18:50:05 +11:00
Peter Hall 9997981702 AP_Scripting: generator: support literal singltons that do not need to be fetched 2021-03-17 18:50:05 +11:00
Andy Piper bb270014e7 AP_HAL_ChibiOS: make sure LEDs get a DMA channel on MatekH743-bdshot 2021-03-17 18:28:01 +11:00
Andy Piper 961c517274 AP_VideoTX: only mark updates when the VTX is enabled 2021-03-17 18:27:11 +11:00
Andy Piper f1eee860c0 AP_RCTelemetry: don't process VTX frames when VTX support is disabled 2021-03-17 18:27:11 +11:00
Andy Piper f7e23566ac AP_VideoTX: with SmartAudio v2 set the power level rather than power in dBm 2021-03-17 18:27:11 +11:00
Andy Piper 968d05a637 AP_HAL_ChibiOS: allow further LED channels to be allocated at the same length 2021-03-17 18:24:11 +11:00
Randy Mackay a6800b8c47 AC_Avoidance: minor PathPlanner format fix 2021-03-17 15:01:46 +09:00
Randy Mackay 0d730e11cc AC_WPNav: OA stores and uses original terrain alt 2021-03-17 14:11:12 +09:00
Randy Mackay da580bd1ea AC_WPNav: OA gets minor format fix 2021-03-17 14:11:12 +09:00
Peter Hall aa75fc2c3d AC_PosControl: use target lean angles rather than true for init 2021-03-17 08:13:11 +09:00
Peter Hall a43db51440 AC_AttitudeControl: add get_att_target_euler_rad function 2021-03-17 08:13:11 +09:00
Habibullah Oladepo a74ad951de SRV_Channel: fix servo output function documentation typo 2021-03-17 08:54:13 +11:00
Andrew Tridgell 8a8db85b9c HAL_ChibiOS: fixed build of f103-trigger fw 2021-03-16 18:28:58 +11:00
Randy Mackay b873e7fcb0 AP_Mission: read_cmd_from_storage sets all bytes of cmd
This resolves a potential valgrind issue caused by some bytes of the cmd not being set
2021-03-16 10:23:40 +09:00
Tatsuya Yamaguchi 2c95093d36 AP_InertialSensor: fix temperature sensor on LSM9DS0 2021-03-16 12:09:19 +11:00
Lava Chemist 4a52f945db AP_HAL_ChibiOS: Add FlywooF745 2021-03-16 11:27:23 +11:00
murata 3a006ae226 AP_GPS: Supplementary explanation of configuration parameters (NFC) 2021-03-16 10:43:18 +11:00
murata c5b1c832ba AP_NavEKF3: Change misnomer (NFC) 2021-03-15 18:21:15 +11:00
murata 24591d68bc AP_NavEKF2: Change misnomer (NFC) 2021-03-15 18:21:15 +11:00
Hwurzburg e1bab7374b AP_Notify: Add calibration indications for EKF temp and compass cal to RGB LED 2021-03-15 09:49:59 +09:00
Peter Barker 4605870788 AP_NavEKF3: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker 5dff32422d AP_NavEKF2: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker 5c31238f28 AP_Mount: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker 2b0bf45891 AP_InertialSensor: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker a0fcd74b52 AP_DAL: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker ea1884f491 AP_AHRS: remove separate calls to get delta-times for vel and ang 2021-03-13 11:29:29 +11:00
Peter Barker 5123b05b2b GCS_MAVLink: add support for ATTITUDE_QUATERNION 2021-03-13 09:44:12 +11:00
Siddharth Purohit edceb4e3a4 AP_GPS: move underscore one layer down for GPS 2021-03-12 16:32:36 +09:00
bugobliterator 49d934eb42 AP_HAL_SITL: add support for multiple periph instances 2021-03-12 16:32:36 +09:00
bugobliterator 0031fee851 AP_GPS: add support for ordering UAVCAN GPS 2021-03-12 16:32:36 +09:00
bugobliterator 67be2ed4ba AP_Arming: add support for GPS_Backends to spew failure reasons 2021-03-12 16:32:36 +09:00
Michael du Breuil a3ddf5264d AP_GPS: Support uavcan ardupilot.gnss.Status
Also makes the drive by change to make GPS_Backend::is_configured const
2021-03-12 09:39:55 +11:00
Michael du Breuil e47857a278 AP_UAVCAN: Add ardupilot.gnss.Status 2021-03-12 09:39:55 +11:00
Hwurzburg fd9c497232 AP_OSD: Add height above terrain panel and warning 2021-03-11 11:54:47 +11:00
murata 8e8f2b93a7 AP_Motors: Add DECA frame class and type string 2021-03-09 19:59:10 +09:00
Rishabh e9c0e50185 AP_Proximity: Filter out land detected by sensors 2021-03-09 11:02:26 +09:00
Randy Mackay fe382e4d10 AP_Mission: minor format fixes 2021-03-09 11:49:42 +11:00
Randy Mackay 3a66b2667b AP_Mission: correct spelling of interrupted 2021-03-09 11:49:42 +11:00
Rishabh e09e9b1e6a AP_Logger: Log raw and filtered distances from proximity lib 2021-03-08 16:33:20 +09:00
Rishabh 044e1850d4 AP_Proximity: Add a low pass filter per face for distances 2021-03-08 16:33:20 +09:00
James O'Shannessy f028747399 GCS_MAVLink: Remove todo since plane now supports MAV Protocol Capability Mission Fence 2021-03-05 16:48:57 +11:00
James O'Shannessy 43e06e9040 AC_Fence: Fix int32_t overflow with large longitude values 2021-03-05 14:52:46 +11:00
James O'Shannessy 26811ad46d AP_Landing: Autoenable fence if required when landing was aborted 2021-03-05 14:52:46 +11:00
James O'Shannessy 8ef68c8fb0 AC_Fence: Send text to gcs when fence is auto-enabled 2021-03-05 14:52:46 +11:00
James O'Shannessy b4bf41c6f9 AC_Fence: Adjustments to default parameters for addition to plane 2021-03-05 14:52:46 +11:00
James O'Shannessy c316711351 ArduPlane: Add conversion from ArduPlane geofence param to AC_Fence param 2021-03-05 14:52:46 +11:00
James O'Shannessy 254c28f142 AC_Fence: Improve auto enable documentation 2021-03-05 14:52:46 +11:00
James O'Shannessy b6d29d746b AC_Fence: Add common auto enable and auto disable 2021-03-05 14:52:46 +11:00
James O'Shannessy e4f1e26b5c AC_Fence: Disable fence floor when disabling the rest of the fence 2021-03-05 14:52:46 +11:00
Steven Josefs c783410494 AC_Fence: adjusted AP_GROUPINFO to contain all copters 2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar Do Carmo Lucas 22bdc3e54c AC_Fence: extend pre-arm checks
Fix comments
2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 2e422f249a AC_Fence: small comment improvements. Do not call the same function four times 2021-03-05 14:52:46 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 15e95be7d7 AC_Fence: do not delete the FENCE_ENABLE parameter. It would confuse many users.
Talked to Randy about this. The consensus was not to delete the parameter
2021-03-05 14:52:46 +11:00
James O'Shannessy 783a4b7965 AC_Fence: Change logic to fence enable and sys_status reporting 2021-03-05 14:52:46 +11:00
James O'Shannessy a23e8d46da AP_Vehicle: Add additional fence mode change reason 2021-03-05 14:52:46 +11:00
James O'Shannessy 8ca69c2e89 AP_Logger: Add support for fence floor events 2021-03-05 14:52:46 +11:00
James O'Shannessy c2abf27d78 GCS_MAVLink: Add reporting of fence floor breaches to GCS_MAVLink
GCS_MAVLink: Add disabling of fence floor only, per mavlink spec

GCS_MAVLink: Cannot enable a fence if the fence is not present
2021-03-05 14:52:46 +11:00
James O'Shannessy 0e73b7bce1 AP_Arming: Enable and Disable the fence when vehicle is armed/disarmed
AP_Arming: Use auto enable flag to arm fence only when armed (as per enum)

AP_Arming: Config defines are not available in AP_Arming

Since config definitions are not available in AP_Arming, we can still rely on singleton access of the AC_Fence object.

AP_Arming: Perform fence checks for all vehicles
2021-03-05 14:52:46 +11:00
James O'Shannessy 87b66b4b49 AC_Fence: Add parameters from Geofence to AC_Fence
AC_Fence: Add fence floor breach checks and calculations

AC_Fence: Add event logging to enable/disable of fence floor

AC_Fence: Adjust sys_status reporting to look at total fence count

AC_Fence: Make retrieving of the return point accessible

AC_Fence: Check whether fence is enabled or autoenable is set for arming checks

Checks whether the fence is currently enabled OR if the fence is intended to be enabled automatically.
These checks are used to find out enabled fences, or prearm checks
2021-03-05 14:52:46 +11:00
Paul Riseborough 9b53d505ea AP_AHRS: Handle airspeed estimation with have_inertial_nav() == false 2021-03-05 12:10:01 +11:00
Paul Riseborough e3eea0a54a AP_NavEKF3: Use specialised function for in-flight plane yaw alignment 2021-03-05 12:10:01 +11:00
Paul Riseborough 4675aea0bf AP_NavEKF3: Update parameter description 2021-03-05 12:10:01 +11:00
Paul Riseborough 246b80dc06 AP_NavEKF3: Don't return a 0,0 lat,lng unless absolutely necessary 2021-03-05 12:10:01 +11:00
Paul Riseborough aa49e92edc AP_AHRS: Remove unused AP_AHRS_NavEKF::yaw_alignment_complete API 2021-03-05 12:10:01 +11:00
Paul Riseborough 1a3258a039 AP_AHRS: Fall back to DCM airspeed estimate if EKF velocity not available 2021-03-05 12:10:01 +11:00
Paul Riseborough a50be71b41 AP_NavEKF3: Fix inconsistency in reporting raw GPS position validity 2021-03-05 12:10:01 +11:00
Paul Riseborough ec401083bf AP_AHRS: Remove unused variable 2021-03-05 12:10:01 +11:00
Paul Riseborough af2bf6097b AP_AHRS: Add accessor function for EKF3 yaw alignment status 2021-03-05 12:10:01 +11:00
Paul Riseborough 6a603019d5 AP_NavEKF3: Add accessor function for yaw alignment status 2021-03-05 12:10:01 +11:00
Paul Riseborough 3634a942a1 AP_NavEKF3: Fix bug causing unwanted use of default airspeed 2021-03-05 12:10:01 +11:00
Paul Riseborough a0faa55ef5 AP_AHRS: Fix rebase build error 2021-03-05 12:10:01 +11:00
Paul Riseborough 912db3512e AP_NavEKF3: Fix EKF selection bug 2021-03-05 12:10:01 +11:00
Paul Riseborough 85c0040fa3 AP_NavEKF3: Improve inFlight detection for fixed wing
Better handle case where no airspeed sensor is being used with a hand launch.
2021-03-05 12:10:01 +11:00
Andrew Tridgell 6d6ec44d59 AP_AHRS: fixed build on boards without EKF2 2021-03-05 12:10:01 +11:00
Paul Riseborough 295c1e1308 AP_NavEKF3: Reset covariances when falling back to non aiding mode 2021-03-05 12:10:01 +11:00
Paul Riseborough adae7365e1 AP_NavEKF3: Fix LLH reporting bug 2021-03-05 12:10:01 +11:00
Paul Riseborough ddadc45854 AP_NavEKF3: Reset states when falling back into non aiding mode. 2021-03-05 12:10:01 +11:00
Paul Riseborough b92eca7b66 AP_NavEKF3: Select startup aiding mode after landing without yaw sensor 2021-03-05 12:10:01 +11:00
Paul Riseborough afb31bc4f5 AP_NavEKF: Add underflow protection to yaw GSF weight normalisation
This improves protection against a condition where if all yaw hypothesis filers have very large innovations, the weights of Gaussian densities can underflow leading to failure of the weights to converge.
2021-03-05 12:10:01 +11:00
Paul Riseborough d1d790019c AP_AHRS: Improve use of estimated airspeed
Enable default airspeed variance to be specified externally to the EKF
Enable use of EKF airspeed estimates
2021-03-05 12:10:01 +11:00
Paul Riseborough 9a5a264aa0 AP_NavEKF3: Improve wind estimation without airspeed sensing
Enable default airspeed variance to be specified externally
Improve control of sideslip fusion
Don't modify non wind states unnecessarily when using synthesised air data measurements
2021-03-05 12:10:01 +11:00
Paul Riseborough ac00776184 AP_NavEKF2: DAL interface compatibility change 2021-03-05 12:10:01 +11:00
Paul Riseborough 296fb567ca AP_DAL: Enable default airspeed variance to be specified externally 2021-03-05 12:10:01 +11:00
murata 9228925bea AP_Motors: Battery voltage compensation maximum voltage 2021-03-05 08:48:20 +09:00
Tatsuya Yamaguchi ecf928d68b AP_Proximity: change PRX_IGN_WIDx range from 45 to 127 2021-03-04 17:40:07 +09:00
Josh Henderson 267d19b0de SITL: SIM_Vicon fix observation interval limit 2021-03-04 16:12:54 +09:00
Josh Henderson dceb76c9f1 SITL: SIM_VICON output MAVLink vision_position_delta 2021-03-04 16:12:54 +09:00
Peter Barker e3de88d1d4 GCS_MAVLink: handle MAV_CMD_DO_SET_MISSION_CURRENT 2021-03-04 11:59:33 +11:00
Randy Mackay f0ffaa5624 AR_AttitudeControl: reset speed filter and I term when stopped 2021-03-04 09:07:32 +09:00
James O'Shannessy f6231db618 AC_Fence: Add breach calculation variant to use LLA
Adds a parameter to make selection between vector pos_cm from origin and lat/lng.
2021-03-04 10:31:58 +11:00
murata e041b647d7 AP_Mount: Change misnomer (NFC) 2021-03-03 20:49:55 +11:00
murata 6e6e807223 AP_NavEKF: Change misnomer (NFC) 2021-03-03 20:49:55 +11:00
murata ae565aef1a AP_NavEKF3: Change misnomer (NFC) 2021-03-03 20:49:55 +11:00
murata af639f7812 AP_NavEKF2: Change misnomer (NFC) 2021-03-03 20:49:55 +11:00
Hugo Trippaers 0dbe2e072c AP_Mount: Set relative pan to true for servo mounts 2021-03-03 18:55:38 +11:00
Hugo Trippaers 44902ef535 AP_Mount: Add parameter to control relative pan option for servo mounts
* Change from a dedicated parameter to a reusable options field
2021-03-03 18:55:38 +11:00
Hugo Trippaers bcee4b7b82 AP_Mount: Add parameter to control relative pan option for servo mounts 2021-03-03 18:55:38 +11:00
Pierre Kancir 2953aa3748 AP_NMEA: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 77367c1376 AP_AHRS: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 8b1d35bc76 AP_Module: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 67540dc5bb AP_InertialSensor: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir ce34ce6def AP_Baro: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir aaf7504ac8 AP_Module: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir c8a7ab1a75 AP_InertialSensor: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir f2570d49a1 AP_Scheduler: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 1082a799c2 AP_Compass: fix example 2021-03-03 18:07:38 +11:00
Pierre Kancir 95d0c67a99 AP_Baro: fix example 2021-03-03 18:07:38 +11:00
Samuel Tabor fb8ec292cd AP_TECS: Clarify TECS_THR_DAMP and TECS_LAND_TDAMP descriptions. 2021-03-03 18:05:22 +11:00
Andy Piper d6575fb6ad AP_HAL_ChibiOS: bdshot configs for CubeYellow and mRoControlZeroH7 2021-03-03 18:02:26 +11:00
Michael du Breuil f227d67d58 AP_GPS: Remove unused enum 2021-03-03 10:00:15 +09:00
Randy Mackay 79c9b4b523 AC_WPNav: increase default speed to 10m/s and accel to 2.5m/s/s 2021-03-03 08:03:39 +09:00
murata 3824277d11 AC_Fence: Add Smart RTL or LAND to the fence action 2021-03-03 07:59:03 +09:00
Peter Barker a97786c01d RC_Channel: use RC channel options 203 and 204 for throttle and yaw
This gives us a 200 + n mapping for the traditional AETR mapping.

Unfortunately, it will break walking robots until they update their
parameters
2021-03-03 08:42:00 +11:00
Peter Barker 7480a2a00b GCS_MAVLink: correct output of AHRS2 mavlink message
The || here was causing short-circuiting
2021-03-02 20:48:36 +11:00
Peter Barker 03bb3237ef SITL: set default RPM_TYPE to 10 for FlightAxis 2021-03-02 15:41:44 +11:00
Peter Barker 4d2cf8c95b AP_Frsky_SPort: correct handling of RPM sensor data
Nails support down to just two RPM sensors for the time being.

Simplifies things (there was an issue here when I corrected RPM-in-SITL)
2021-03-02 15:41:44 +11:00
Peter Barker 370db00096 AP_RPM: add explicit RPM_TYPE_SITL
Old behaviour is that anything that wasn't claimed (or failed to
allocate) would become a SITL RPM sensor.  This meant we always had at
least one RPM sensor which was allocated but never provided valid data.

New behaviour is that if you want a SITL RPM sensor you have to set type
to 10.
2021-03-02 15:41:44 +11:00
Peter Barker c059338386 AP_Frsky_Telem: use location from AHRS not GPS
The AHRS may be able to supply information even in the absense of an
actual GPS unit.
2021-03-02 15:41:44 +11:00
Andrew Tridgell 4fbdb59398 HAL_ChibiOS: prevent sharing the same DMA stream on TIMn_UP channels
this avoids an issue with DShot where we run the same DMA stream on
two timers at once
2021-03-02 11:58:38 +11:00
Andy Piper 6cb263056d AP_HAL_ChibiOS: build fix for iomcu 2021-03-02 11:58:38 +11:00
Andy Piper d0e4d510cf AP_HAL_ChibiOS: order PWM timers by DMA UP stream id to prevent deadlocks in dshot 2021-03-02 11:58:38 +11:00
Iampete1 e64a7b2884 AP_Mount: type enable flag 2021-03-02 10:09:19 +11:00
Iampete1 3306484023 AP_NavEKF2: log position offset as float in meters 2021-03-02 10:03:12 +11:00
Iampete1 8173cd442a AP_NavEKF3 log position offset as float in meters 2021-03-02 10:03:12 +11:00
Paul Riseborough 0971ef55a4 AP_NavEKF3: Fix bug preventing EKFGSF running when needed for reset
The gpsAccuracyGood flag should not be used because it will go false if GPS innovations become high due to bad yaw which is when the EKFGSF is required. to keep running.
2021-03-02 07:28:24 +11:00
Paul Riseborough 948650dbe5 AP_NavEKF2: Fix bug preventing EKFGSF running when needed for reset
The gpsAccuracyGood flag should not be used because it will go false if GPS innovations become high due to bad yaw which is when the EKFGSF is required. to keep running.
2021-03-02 07:28:24 +11:00
Andrew Tridgell e884e4c5ac AP_Math: added fixedwing_turn_rate() helper 2021-02-27 14:42:20 +11:00
Yash Vadi b450740fb0 AP_Button: update BTN_FUNCx param descriptions 2021-02-26 12:30:13 +11:00
Andrew Tridgell 35149ae8b2 AP_Scripting: allow scripting startup with no sdcard
as scripts can be in ROMFS we should still create the thread without
the scripts directory
2021-02-25 11:34:39 -07:00
Peter Barker 9932aa99f7 GCS_MAVlink: return identical seq in MISSION_CURRENT if possible after set
// because MISSION_SET_CURRENT is a message not a command,
        // there is not ACK associated with us successfully changing
        // our waypoint.  Some GCSs use the fact we return exactly the
        // same mission sequence number in this packet as an ACK - so
        // if they send a MISSION_SET_CURRENT with seq number of 4
        // then they expect to receive a MISSION_CURRENT message with
        // exactly that sequence number in it, even if ArduPilot never
        // actually holds that as a sequence number (e.g. packet.seq==0).
2021-02-24 19:00:34 +11:00
Andrew Tridgell 14791c335b HAL_ChibiOS: fixed build of f3 boards without PWM out 2021-02-24 18:25:02 +11:00
Andrew Tridgell 9d87645c6e AP_IOMCU: fixed event handling bug in IOMCU code
if a a message send fails to IOMCU then we were discarding all
currently pending non-recurring events. This means that states like
oneshot enable would be lost if the IOMCU reset.

We now re-trigger all events that have not yet been handled
2021-02-24 18:21:08 +11:00
Andrew Tridgell 9126579b77 AP_IOMCU: added memory to debug code 2021-02-24 18:21:08 +11:00
Andrew Tridgell 243cf2199d HAL_ChibiOS: disable shared DMA on IOMCU
this saves about 600 bytes of ram
2021-02-24 18:21:08 +11:00
Andrew Tridgell bf999f701f AP_InertialSensor: fixed ICM-20602 y offset bug
this works around a bug in the ICM-20602 that can cause the Y facttory
offset register to change unexpectedly. We don't know what triggers
this.

The fix is to save the factory offset at boot and restore it if it
changes. We log a message describing the change, but don't mark the
IMU unhealthy as this happens too often and we don't want to fallback
to a 2nd less good quality IMU (eg. MPU6000 on MatekH743)
2021-02-24 18:18:37 +11:00
Andrew Tridgell 4cddf37984 AP_InertialSensor: log unexpected register changes
when the register checking code finds an error we will log what
register changed and to what value
2021-02-24 18:18:37 +11:00
Andrew Tridgell c23f61b79a HAL_ChibiOS: set internal error on panic 2021-02-24 18:18:37 +11:00
Andrew Tridgell f250c4d684 AP_InertialSensor: added an internal error for panic
ensure users cannot arm while in a panic
2021-02-24 18:18:37 +11:00
Andrew Tridgell 7010eae9e8 AP_HAL: remember details of register check fails
this allows for logging of register resets
2021-02-24 18:18:37 +11:00
Andrew Tridgell 85ef6b7ac6 AP_InertialSensor: added optional logging of register changes 2021-02-24 18:18:37 +11:00
Andrew Tridgell eec05c1f48 HAL_ChibiOS: fixed a race and null ptr deref in dshot
if a dshot is cancelled then the waiter can be nullptr
2021-02-24 15:39:10 +11:00
murata dee040b14a AP_Notify: Change division to multiplication 2021-02-24 11:06:54 +09:00
Dr.-Ing. Amilcar do Carmo Lucas 48ab08fb67 AP_ESC_Telem: Fix copy & paste typo 2021-02-24 12:49:05 +11:00
Andy Piper b102391163 AP_HAL_ChibiOS: don't send rcout events without rcout thread 2021-02-24 08:55:12 +11:00
Andrew Tridgell f7098c1635 AP_ROMFS: added crc check in ROMFS decompression 2021-02-23 20:20:07 +11:00
Andrew Tridgell 1c74f14162 AP_ROMFS: fixed range check in tinflate
this could cause valid compressed data to fail decompression
2021-02-23 20:20:07 +11:00
Sebastian Quilter b4119aa07b AP_OSD: remove font bins from gitignore 2021-02-23 15:22:22 +11:00
Sebastian Quilter bea8bf3afb AP_OSD: Add draw_vtx_power() 2021-02-23 15:22:22 +11:00
Sebastian Quilter e44eb47143 AP_OSD: Update fonts to include mW char 2021-02-23 15:22:22 +11:00
Peter Barker a3dcf5a6ff AP_NavEKF: move GSF logging from EKF files into GSF files 2021-02-23 12:36:33 +11:00
Peter Barker 65b780fad5 AP_NavEKF3: move GSF logging from EKF files into GSF files 2021-02-23 12:36:33 +11:00
Peter Barker d668243d1e AP_NavEKF2: move GSF logging from EKF files into GSF files 2021-02-23 12:36:33 +11:00
Peter Barker a17a8faf42 AP_Logger: move GSF logging from EKF files into GSF files 2021-02-23 12:36:33 +11:00
Peter Barker cfe9dc32d1 GCS_MAVLink: only send distance_sensor messages if valid data seen
In the case you only have a forward-pointing LIDAR we'd send messages
for each of the other orientations from proximty's horizontal-distances
array, chewing up bandwidth and processing time.
2021-02-23 10:02:47 +09:00
Peter Barker 9a66a1564c AP_Proximity: only send distance_sensor messages if valid data seen
In the case you only have a forward-pointing LIDAR we'd send messages
for each of the other orientations from proximty's horizontal-distances
array, chewing up bandwidth and processing time.
2021-02-23 10:02:47 +09:00
Andy Piper fcd35ba0f8 AP_Vehicle: move AP_Vehicle to AP_Vehicle 2021-02-23 11:43:32 +11:00
Andy Piper 8df8898464 RC_Channel: move AP_VideoTX to AP_VideoTX 2021-02-23 11:43:32 +11:00
Andy Piper 7039d67474 AP_VideoTX: move AP_VideoTX to AP_VideoTX 2021-02-23 11:43:32 +11:00
Andy Piper 74318dd0dd AP_Vehicle: move AP_VideoTX to AP_VideoTX 2021-02-23 11:43:32 +11:00
Andy Piper dd310fd12f AP_RCProtocol: move AP_VideoTX to AP_VideoTX 2021-02-23 11:43:32 +11:00
Andy Piper d97079e53b AP_RCTelemetry: move AP_VideoTX to AP_VideoTX 2021-02-23 11:43:32 +11:00
Peter Barker c5e62eb6e4 GCS_MAVLink: schedule current waypoint rather than immediate send
This message may not fit in our outgoing buffer
2021-02-23 11:27:22 +11:00
Patrick José Pereira 0e76006dc5 SRV_Channel: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira 300a14aaae SITL: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira ba2adac869 GCS_MAVLink: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira 3b0dac3198 AP_NavEKF3: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira 4f81aa82e2 AP_LeakDetector: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira d749fce378 AP_LandingGear: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira 1038581bcb AP_HAL_SITL: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Patrick José Pereira 9965cbb79a AP_Generator: Simplify boolean expression
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Peter Barker a0172fd2ca AC_Fence: emit a FENCE_STATUS message if we newly-breach the fences
This should resolve a problem in autotest where we don't detect the
fence as being breached as ArduPilot never announces the fact it has
breached - it just changes mode to RTL but the interval on the
FENCE_STATUS message never aligns with the time the vehicle is breached.
2021-02-23 08:28:02 +09:00
Mirko Denecke edc2b0c94e AP_HAL_ChibiOS: fix copy and paste typo 2021-02-23 08:15:50 +09:00
Andrew Tridgell 17031707e3 AP_Scripting: added pcall example
this shows how to catch errors in scripts to make them robust against
runtime errors
2021-02-23 09:59:37 +11:00
Paul Riseborough 342e6b35fa AP_NavEKF3: Fix use of incorrect ballistic coefficient parameter 2021-02-22 13:21:03 +09:00
Paul Riseborough 7370cd9f00 AP_NavEKF3: Fix typo and update parameter description 2021-02-22 13:21:03 +09:00
Randy Mackay 0c9559db6d AP_Motors: fixup octaquad CW_X motor directions 2021-02-22 11:00:44 +09:00
Peter Barker 1afa0a7ff2 GCS_MAVLink: remove unused member
and a bogus comment
2021-02-20 21:48:25 +11:00
Andrew Tridgell 7af20e9ea3 HAL_ChibiOS: increase H7 serial buffer sizes
this takes better advantage of the new UART code. Log download over
USB gets to 730 kbyte/s. For comparison, with the 4.0 code on the same
H7 we get about 300 kbyte/s
2021-02-20 20:49:45 +11:00
Andrew Tridgell 3b88a3273b HAL_ChibiOS: adjust up uart tx stack size
lowest was showing 80 bytes free, which is too close to the 64 byte
level where we trigger an internal error
2021-02-20 14:37:11 +11:00
Andrew Tridgell 5e0f175223 HAL_ChibiOS: adjust UART buffer sizes for new UART code
this gains about 20k of RAM, and has almost no impact on log download
speed at 921600 on a F427. The improved threading means we can afford
to have smaller buffers
2021-02-20 14:37:11 +11:00
Andy Piper 4e61ba2dc8 AP_HAL_ChibiOS: reduce stack sizes for rcout, uart_rx and storage. 2021-02-20 14:37:11 +11:00
Andy Piper 94de238751 AP_HAL_ChibiOS: disable RCOUT thread on iomcu and rebuild iomcu. 2021-02-20 14:37:11 +11:00
Andy Piper f9c5f9be00 AP_HAL_ChibiOS: make dshot DMA unlock event driven in order to allow unlocking from rcout thread
refactor rcout into separate thread and process all dshot requests there
move uart DMA completion to event model
process dshot locks in strick reverse order when unlocking
convert Shared_DMA to use mutexes
move UART transmit to a thread-per-uart
do blocking UART DMA transactions
do blocking dshot DMA transactions
trim stack sizes
cancel dma transactions on dshot when timeout occurs
support contention stats on blocking locking
move thread supression into chibios_hwdef.py
invalidate DMA bounce buffer correctly
separate UART initialisation into two halves
cleanup UART transaction timeouts
add @SYS/uarts.txt
move half-duplex handling to TX thread
correct thread statistics after use of ExpandingString
set unbuffered TX thread priority owner + 1
correctly unlock serial_led_send()
don't share IMU RX on KakuteF7Mini
observe dshot pulse time more accurately.
set TRBUFF bit for UART DMA transfers
deal with UART DMA timeouts correctly
don't deadlock on reverse ordered DMA locks
change PORT_INT_REQUIRED_STACK to 128
2021-02-20 14:37:11 +11:00
Andy Piper c388fd9214 AP_Filesystem: add @SYS/uarts.txt 2021-02-20 14:37:11 +11:00
Andy Piper a07b238c7d AP_HAL: add PRIORITY_RCOUT
don't allow UART copies
add @SYS/uarts.txt
2021-02-20 14:37:11 +11:00
Iampete1 bf7920f2d7 AP_Scripting: use helper for not supported error saving 1K of flash 2021-02-18 15:12:58 -07:00
Leonard Hall f0f87be06d AC_PID: AC_PI_2D format changes 2021-02-18 12:59:39 +09:00
mateksys 7eb4e9b370 AP_Periph: set PORT defaults for F405-MatekGPS 2021-02-18 11:51:50 +11:00
mateksys 97c2b7228e AP_Periph: Matek F303 and F405 AP_Periph use DSP310 baro 2021-02-18 11:51:50 +11:00
Tom Pittenger 8019cc160a AP_ICEngine: make it obvious that update_idle_gov does nothing if disabled 2021-02-18 09:45:30 +11:00
Peter Barker f124cf0991 AP_Hott_Telem: use GPS single-char representation of fix type 2021-02-18 08:59:23 +11:00
Peter Barker 9da9d8c94b AP_GPS: provide method for getting single char representing fix type
Should allow us to be consistent across places in the code base that
need a compact representation for a user display.
2021-02-18 08:59:23 +11:00
Leonard Hall e788d63686 AC_AttitudeControl: clear up comment for inertial_frame_reset 2021-02-17 21:19:18 +09:00
Andy Piper 4c2cbdab8d AP_HAL_ChibiOS: only setup half-duplex for receive when transmit is fully over 2021-02-17 20:09:48 +11:00
Andy Piper 5c32007cdf AP_HAL_ChibiOS: ensure stop bits can be set before UART begin 2021-02-17 20:09:48 +11:00
Peter Hall 43763091bd AP_Scripting: add send_named_float to simple loop example 2021-02-17 18:49:20 +11:00
Peter Hall fc95664580 AP_Scripting: add GCS send_named_float binding 2021-02-17 18:49:20 +11:00
Andy Piper 3371c272fb AP_Notify: make LED_NTF_LEN changes require a reboot
don't dynamically update LED length
2021-02-17 18:36:36 +11:00
Andy Piper 3a9107245c AP_HAL_ChibiOS: allocate DMA and LED buffers correctly when the length changes
calculate DMAR pulse times correctly
ensure 50us pulse separation for LED
make sure the LEDs are signalled for output
only allow LED length to be set once
2021-02-17 18:36:36 +11:00
Andy Piper a98f85502a AP_RCTelemetry: add support for SmartAudio protocol.
treat VTX frequency as a first class citizen, match band/channel to frequency
update CRSF to use new VTX configuration
use a 6-position switch to control VTX power
add support for VTX GCS announcement
announce VTX updates on CRSF
support pitmode-until-arm and pitmode-on-disarm

Co-authored-by: luis.martinez.exts <luis.martinez@juntadeandalucia.es>
2021-02-17 18:23:33 +11:00
Andy Piper ea3af39773 RC_Channel: add support for 6-position switch and use it for VTX power 2021-02-17 18:23:33 +11:00
Andy Piper 6f91e053d5 AP_VideoTX: new library to support the SmartAudio protocol
set the VTX parameters to what was actually configured by the VTX
use change band/change frequency when appropriate
set power levels appropriately for protocol version.

Co-authored-by: luis.martinez.exts <luis.martinez@juntadeandalucia.es>
2021-02-17 18:23:33 +11:00
Andy Piper 2d0fe8b883 AP_SerialManager: add support for the SmartAudio protocol
Co-authored-by: luis.martinez.exts <luis.martinez@juntadeandalucia.es>
2021-02-17 18:23:33 +11:00
Andy Piper b79ff9475d AP_Vehicle: add support for the SmartAudio protocol
Co-authored-by: luis.martinez.exts <luis.martinez@juntadeandalucia.es>
2021-02-17 18:23:33 +11:00
Peter Barker c20c4a6308 AP_HAL_SITL: set bus in read-size of rdwr transaction 2021-02-17 14:23:07 +11:00
Peter Barker 1c4e1aab05 AP_Logger: move gps logging structures into AP_GPS 2021-02-17 11:30:01 +11:00
Peter Barker c2cba52ad8 AP_GPS: move gps logging structures into AP_GPS 2021-02-17 11:30:01 +11:00
Peter Barker eefcc92f24 GCS_MAVLink: take MAV_CMD_DO_SPRAYER as a mavlink command 2021-02-16 22:36:43 +11:00
Peter Barker c3b005e1d9 AP_Mission: add mission command to turn sprayer on and off 2021-02-16 22:36:43 +11:00
Rishabh 98287a1b2f AC_Avoid: Use previous avoidance vel for limiting accel 2021-02-16 20:08:00 +09:00
Rishabh cbf57af1f3 AC_Avoid: Limit acceleration while simple avoidance is active 2021-02-16 20:08:00 +09:00
Rishabh 865f3cda79 AC_Avoid: Add param to switch off proximity avoidance based on alt 2021-02-16 20:08:00 +09:00
Peter Hall c1a831bbf4 GCS_MAVLink: sensor flags, only mark AHRS as enabled once initialised 2021-02-16 12:54:28 +11:00
Andrew Tridgell a42bfd5df5 AP_Baro: added MS5611 baro compensation for -15 to -40C 2021-02-16 11:20:57 +11:00
Michael du Breuil 4c4e613f6a AP_GPS: Don't send SBF config unless there is free space in the port 2021-02-15 16:31:45 -07:00
Michael du Breuil c0da87c066 AP_HAL_ChibiOS: Update HitecMosaic to reflect changes to GPS config 2021-02-15 16:31:45 -07:00
Michael du Breuil 4d42996068 AP_GPS: Force the buadrate on SBF units 2021-02-15 16:31:45 -07:00
Peter Barker 01eb64ce73 AP_RPM: don't present RPM2_PIN parameter if RPM_MAX_INSTANCES <=1 2021-02-16 08:26:18 +09:00
Andrew Tridgell 6d1511f3eb GCS_MAVLink: added method to force save calibration
useful after reloading parameters
2021-02-15 07:24:40 +11:00
Andrew Tridgell f8e0227c8c AP_Compass: added force_save_calibration() 2021-02-15 07:24:40 +11:00
Andrew Tridgell 25dd08a1fd AP_InertialSensor: added force_save_calibration() 2021-02-15 07:24:40 +11:00
Andrew Tridgell 9de1519928 HAL_ChibiOS: prevent hw flow control from hogging a DMA channel
When hw flow control is enabled check the CTS pin before we grab the
DMA channel to prevent a long timeout trying to send to a blocked port
from holding a DMA channel against another device

this fixes issue #16587
2021-02-15 07:23:56 +11:00
Andrew Tridgell 106162b0c5 AP_MSP: removed date/time from MSP
we don't want to use real dates here as that would mean we don't get
consistent builds. Being able to reproduce the exact build at a later
date is a valuable property of the code

The git hash should be enough
2021-02-13 19:24:48 +11:00
Andrew Tridgell 0cc4409845 HAL_ChibiOS: fixed handling of invalid channel for LED write
this prevents a null ptr dereference when an invalid channel (such as
one on IOMCU) is used for LEDs
2021-02-13 15:11:10 +11:00
Andrew Tridgell 098a17fe2e HAL_ChibiOS: fixed CubeOrange ADSB param name 2021-02-13 13:06:20 +11:00
Rishabh f107ce3951 AP_Proximity: Use 3 sectors for simple avoidance boundary 2021-02-12 16:48:16 +09:00
Rishabh 8cab737bdd AP_Proximity: Follow NED convention 2021-02-12 16:48:16 +09:00
Rishabh 74bda4952d AC_Avoid: Return early if velocity is unchanged in proximity avoidance 2021-02-12 16:48:16 +09:00
Randy Mackay eafd702773 AC_WPNav: add comment clarifying get_wp_destination alt frame 2021-02-11 13:01:37 +09:00
Mark Whitehorn bb15c18cc3 GCS_MAVLink: send message when MAVFTP init fails 2021-02-10 23:06:36 +11:00
Pierre Kancir eb78a473f6 AP_Vehicle: correct virtual specifier 2021-02-10 18:49:42 +11:00
Pierre Kancir 7430a415fb AP_Tuning: use AUX_PWM_TRIGGER_LOW and AUX_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir 67bdec3325 AP_OSD: use AUX_PWM_TRIGGER_LOW and AUX_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir 9362039feb AP_ICEngine: use AUX_PWM_TRIGGER_LOW and AUX_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir 287645cf68 RC_Channel: use AUX_PWM_TRIGGER_LOW and AUX_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir a631ca4eac AP_Button: add AUX_SWITCH_PWM_TRIGGER_LOW and AUX_SWITCH_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir 0725cbdffc RC_Channel: add AUX_SWITCH_PWM_TRIGGER_LOW and AUX_SWITCH_PWM_TRIGGER_HIGH 2021-02-10 18:48:06 +11:00
Pierre Kancir 68a27e3b41 AP_Arming: use RC_CALIB_MIN_LIMIT_PWM and RC_CALIB_MAX_LIMIT_PWM 2021-02-10 18:48:06 +11:00
Pierre Kancir 9dcaf155a6 RC_Channel: add use RC_CALIB_MIN_LIMIT_PWM and RC_CALIB_MAX_LIMIT_PWM 2021-02-10 18:48:06 +11:00
Randy Mackay 1ee7f00192 AP_VisualOdom: fix T265 criteria for aligning to AHRS 2021-02-10 18:37:45 +11:00
Leonard Hall f53242b323 AC_AttitudeControl: rename thrust_heading_rotation_angles args 2021-02-10 18:35:58 +11:00
Leonard Hall ad6e2eeed8 AC_AttitudeControl: remove feed-forward from run_quat 2021-02-10 18:35:58 +11:00
Andy Piper 20d8696a0a AP_HAL_ChibiOS: BeastH7 has DPS310 baro 2021-02-10 18:33:59 +11:00
Leonard Hall 8ace1bfad1 AC_PosControl: const local vars and remove todo 2021-02-10 13:26:23 +09:00
Iampete1 6d650e74f2 AP_Scripting: add fault tolerant hex MotorsMatrix example 2021-02-10 11:16:27 +09:00
Randy Mackay f4e6d63a7c AP_VisualOdom: minor formatting fixes 2021-02-09 20:17:39 +09:00
Gone4Dirt d928b80629 AP_SmartRTL: Add option to ignore pilot yaw 2021-02-09 19:39:17 +09:00
Randy Mackay 0703a1cf93 AC_PosControl: add PSCZ logging 2021-02-09 19:33:52 +09:00
Randy Mackay 9f914d9e7d AC_PosControl: add get_z_accel_cmss helper function 2021-02-09 19:33:52 +09:00
Randy Mackay 3ae8af6b21 AP_Logger: add PSCZ logging
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>

includes const log_PSCZ declaration
also changed PSZ ThO to percentage
2021-02-09 19:33:52 +09:00
Josh Henderson 8135d9e60a AP_VisualOdom: Privatize Logging 2021-02-09 19:33:14 +09:00
Josh Henderson 00e3bda2f5 AP_Logger: Privatize AP_VisualOdom Logging 2021-02-09 19:33:14 +09:00
Iampete1 9ace8ed216 AP_Motors: Matrix 6DoF scripting add get_frame_string 2021-02-09 12:43:54 +09:00
Iampete1 7d5e5f8dd7 AC_AttitudeControl: add SITL panic to remind us to implent the quarternion 2021-02-09 12:43:54 +09:00
Peter Hall cc26a520bc AP_MotorsMatrix: init to virtual and remove duplicate set initalised 2021-02-09 12:43:54 +09:00
Iampete1 1395f9ce79 AP_Scripting: add 6DoF motors matrix bindings and example 2021-02-09 12:43:54 +09:00
Iampete1 28e8c5e56e AP_Scripting: add 6DoF attitude control bindings and example 2021-02-09 12:43:54 +09:00
Iampete1 5c3725d899 AP_Motors: add 6DoF scripting matrix mixer 2021-02-09 12:43:54 +09:00
Iampete1 791e68b4ef AC_AttitudeControl: add 6DoF support 2021-02-09 12:43:54 +09:00
Gone4Dirt f490c9d799 AC_Autorotation: Add copter vehicle type to flight log metadata 2021-02-08 22:09:49 -05:00
Gone4Dirt 6dc100728f AP_Motors: Fix spelling of autorotation flag 2021-02-08 22:09:49 -05:00
Mark Whitehorn 9bc8a8c912 AP_Motors: make frame*string getters more const 2021-02-09 12:43:53 +11:00
Mark Whitehorn 6b2184a53a AP_Motors: add frame_class and frame_type strings
move frame_class/type string assignments down into subclasses
2021-02-09 12:43:53 +11:00
Andrew Tridgell 814393c9c2 HAL_ChibiOS: switch from DPS280 to DPS310 in boards that use the DPS310 2021-02-09 11:37:07 +11:00
Andrew Tridgell dad55b496b AP_Baro: support DPS310 temperature fix
separate DPS310 from DSP280
2021-02-09 11:37:07 +11:00
Randy Mackay 1814524fcb AP_NavEKF3: fix using_external_yaw when using external nav
the first if would always return true meaning the method would always return false when using external nav
thanks to David Sastre for finding this!
2021-02-09 11:35:39 +11:00
Andrew Tridgell 86fda93781 HAL_ChibiOS: added heater correction of AK09916
this fixes a problem with the internal compass being impacted by the
magnetic field from the heater
2021-02-09 11:32:19 +11:00
Andrew Tridgell a90b54ba6e AP_Compass: allow for AK09916 correction by heater duty cycle 2021-02-09 11:32:19 +11:00
Andrew Tridgell 1097d04e5d AP_BoardConfig: added get_heater_duty_cycle() 2021-02-09 11:32:19 +11:00
Andrew Tridgell 5920c52285 Scripting: simple relay example
toggle at 50Hz
2021-02-09 10:23:06 +11:00
Andrew Tridgell 2ab8ad0ef0 HAL_ChibiOS: added Durandal pinout details 2021-02-09 07:14:02 +11:00
Randy Mackay d1dda86f60 AC_AutoTune: report step in lower case
also shortens displayed accuracy to 0.1deg and removes one pair of brackets
we should use lower case for reporting because it is easier to read and it takes up less space when displayed on MP's HUD (and probably other GCSs too)
2021-02-06 14:45:53 +09:00
Randy Mackay 25beab4c82 AC_AutoTune: add failure to level warning 2021-02-06 14:45:53 +09:00
Randy Mackay 4032ac9884 AC_AutoTune: level criteria is 5deg for plane and 2.5 for all others 2021-02-06 14:45:53 +09:00
Michael du Breuil 623951a262 AP_HAL_ChibiOS: Add some extra GPS SBF config 2021-02-05 11:52:29 -07:00
Michael du Breuil 5f3b1b92a4 AP_GPS: SBF don't send configuration until we've recieved a prompt
This fixes a configuration problem with SBF unit's where sometimes we
fail to detect the GPS unit continously, until it's been manually
configured. This was tested by doing a hard reset to the GPS unit.

This also now accepts a set of defines from the hwdef, or build
environment, which allows us to specify extra config options.
2021-02-05 11:52:29 -07:00
Michael du Breuil d9ffd04a96 AP_GPS: Broadcast the detect message on AP_Periph over CAN 2021-02-05 11:52:29 -07:00
basti a3c47e0a23 AP_OSD: add SD-card handling to font README 2021-02-05 19:48:06 +11:00
Peter Barker 3da156e358 AP_InertialSensor: prevent nullptr dereference in SITL 2021-02-05 15:02:12 +11:00
Andrew Tridgell 6144136b61 Filter: fixed reset of filters to first value
the delay elements were set incorrectly
2021-02-05 15:01:22 +11:00
Tom Pittenger d1e6b0befb AP_HAL_ChibiOS: Add ADC1 support to STM32F3
This is useful for AP_Periph battery monitoring
2021-02-04 16:30:38 -08:00
murata 09f04e8a5a AP_RangeFinder: Devices are enabled and disabled by type
AP_RangeFinder: Devices are enabled and disabled by type

AP_RangeFinder: Delete some description of I2C function address.
2021-02-05 09:44:27 +11:00
Andrew Tridgell b8e82a56f3 HAL_ChibiOS: don't start rout ticks till after full system init
this prevents an occasional boot hang on systems with DShot
enabled. We shouldn't be starting DShot output till after setup() is
complete as the outputs are still being configured
2021-02-05 07:17:57 +11:00
Peter Barker f847758272 Filter: add gtest suite 2021-02-04 20:50:48 +11:00
Peter Barker 514dfa4b71 SITL: SF45B: increase resolution to 1 degree
The mode filter tends to squish a lot of data if we don't get this
correct.
2021-02-04 20:50:21 +11:00
Tatsuya Yamaguchi 83417c1df7 AP_Notify: modify NTF_BUZZ_VOLUME description 2021-02-04 17:27:00 +09:00
Peter Barker ee2f615352 AP_Proximity: RPLidarA2: correct face distances are assigned to 2021-02-04 16:57:48 +11:00
WillyZehnder acfe815305 AP_Scripting: make get_control_mode_reason available to lua 2021-02-04 08:32:35 +09:00
Peter Barker 84953c2e39 AP_BattMonitor: fix constexpr-and-MIN don't get along bug
lib/libArduCopter_libs.a(AP_BattMonitor_SMBus_NeoDesign.cpp.0.o): In function `AP_BattMonitor_SMBus_NeoDesign::timer()':
/home/pbarker/rc/ardupilot/build/sitl/../../libraries/AP_BattMonitor/AP_BattMonitor_SMBus_NeoDesign.cpp:27: undefined reference to `AP_BattMonitor_SMBus_NeoDesign::max_cell_count'
collect2: error: ld returned 1 exit status
2021-02-04 09:17:57 +11:00
Patrick José Pereira ba293084e3 SITL: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Patrick José Pereira 61bcbfea14 AP_TempCalibration: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Patrick José Pereira 12cd138030 AP_HAL: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Patrick José Pereira 6bdc1704f4 AP_GPS: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Patrick José Pereira e9a299d96e AP_CANManager: Remove pointer check before delete
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-04 09:01:19 +11:00
Andy Piper 2cdc202d19 AP_HAL_ChibiOS: use non-cachable SRAM3 for DMA on H743
Adjust SRAM1+SRAM2 to 256k as describe in the H743 reference manual
Provide access to mem_info() information

Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2021-02-03 23:35:44 +11:00
Andy Piper cfac268f13 AP_Filesystem: add @SYS/memory.txt
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2021-02-03 23:35:44 +11:00
Andy Piper 0eff201016 AP_HAL: add mem_info()
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2021-02-03 23:35:44 +11:00
murata de9382b0f4 AP_Mission: Reflecting the result of the process 2021-02-03 22:15:02 +11:00
murata 698f967b63 GCS_MAVLink: Notify the maximum number of missions
Update libraries/GCS_MAVLink/MissionItemProtocol.cpp

Co-authored-by: WickedShell <Wicked.Shell.Scripts@gmail.com>

GCS_MAVLink: Notify the maximum number of missions
2021-02-03 20:31:50 +11:00
Michael du Breuil f854477efe AP_BattMonitor: Limit the scope of possible corruption if the NeoDesigns gets a bad cell count 2021-02-03 19:21:39 +11:00
Marko 00d0fe876d AP_Compass: Added support for internal i2c bus to VRBrain-v51
Now the internal compass HMC5883 of the VRBrain-v51 is correctly recognized

Co-authored-by: Pierre Kancir <pierre.kancir.emn@gmail.com>
2021-02-03 19:00:48 +11:00
Andy Piper 06a1500f98 AP_HAL_ChibiOS: ensure GPIO pins get undef'ed properly
minimise bi-directional dshot configs for:

CubeOrange
Durandal
MatekF405
MatekH743
OmnibusNanoV6
Pixracer
mRoPixracerPro
omnibusf4pro
CUAV-X7
2021-02-03 18:49:06 +11:00
Patrick José Pereira 07c3435f9d SITL: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 7b6f1225ba AP_WheelEncoder: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira b8360a08c7 AP_Vehicle: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 9904b397d8 AP_UAVCAN: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 6b2e4296db AP_TemperatureSensor: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira e146483e72 AP_Stats: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 705a885d82 AP_Soaring: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 0da2d9f8eb AP_SmartRTL: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira bffda55639 AP_Scripting: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 806bc4898b AP_Scheduler: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira efffed0510 AP_RangeFinder: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 2ae7edc8b2 AP_RTC: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 8f96580e9d AP_RCProtocol: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira a902c1d54b AP_OSD: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 3df3d002ff AP_Notify: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 53eb2f2bf4 AP_NavEKF2: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira cc39e36ee1 AP_Mount: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira bdc14c60fb AP_Motors: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 266ed9541b AP_Mission: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 5d7d955378 AP_Math: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 18d8f19801 AP_Logger: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 41c653f973 AP_LandingGear: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira d006012cee AP_L1_Control: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira dc6f5aec92 AP_HAL_SITL: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 6899c0b5af AP_HAL: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 98a8e6e370 AP_GyroFFT: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 2e75425a2a AP_GPS: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira aa55578008 AP_Frsky_Telem: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira be37f10d61 AP_ExternalAHRS: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 842360b5e3 AP_Compass: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 5375980aa6 AP_Camera: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 001e516fa7 AP_Button: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 3fcf430a2c AP_BoardConfig: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira d190fff887 AP_BattMonitor: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 6a824b1467 AP_Baro: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira f6937babfa AP_Avoidance: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 7e01935893 AP_ADSB: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira f9732b6c70 AC_PID: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 345fe1a9e4 AC_Fence: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira e4fb439a96 AC_Avoidance: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 7be27235f3 AC_Autorotation: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 0ecbaa867d AC_AutoTune: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira e3d018c401 AC_AttitudeControl: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 03582ff77c AP_WindVane: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira e8e41c512e GCS_MAVLINK: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Patrick José Pereira 45a819c98e StorageManager: Add missing const in member functions
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Michel Pastor 41f7587637 ChibiOS: Add SWD pins to SuccexF4 bootloader 2021-02-03 18:37:46 +11:00
Andy Piper 881fd4f37c AP_HAL_ChibiOS: use buffered writes for CRSF telemetry 2021-02-03 18:28:28 +11:00
Peter Barker f15a1fbd62 AP_Vehicle: move control_mode_reason up to AP_Vehicle 2021-02-03 18:24:52 +11:00
auturgy 24268cc6de AP_HAL_ChibiOS: add MatekH743-periph hwdef 2021-02-03 18:17:44 +11:00
mateksys b91c65b4a4 AP_HAL_ChibiOS: add f405-MatekGPS & MatekF405-CAN hwdef 2021-02-03 18:09:35 +11:00
Dr.-Ing. Amilcar do Carmo Lucas 11bf02c2c4 AP_Logger: correct spelling in metadata 2021-02-03 17:47:28 +11:00
huhen 9ba35580db HAL_ChibiOS: Init kakutef7 motor pins for correct initialization of some ESCs 2021-02-03 13:13:32 +11:00
Arsh 18f56fbac5 AP_HAL:examples:Printf: Improvements in the Printf example 2021-02-03 13:02:49 +11:00
yaapu d5868e3c7d AP_Frsky_Telem: added telemetry support for RPM sensors 1 and 2 for SPort, FPort/FPort2 and passthrough over crossfire 2021-02-03 12:49:38 +11:00
Andrew Tridgell cfe63f8657 AP_OSD: changed OSD screen switching logic
this prevents us constantly changing screens when a PWM is given that
matches multiple screens. Instead the first matching screen is used
2021-02-03 10:09:41 +11:00
Josh Henderson 275c2849cf AP_Baro: Privatize Logging 2021-02-02 17:55:27 +11:00
Josh Henderson c32dd4bb5d AP_Logger: Privatize AP_Baro Logging 2021-02-02 17:55:27 +11:00
Michael du Breuil 05b9aa2fa2 AP_UAVCAN: Broadcast ArmingStatus regularly 2021-02-02 10:57:57 +11:00
Josh Henderson d6dc8864db AP_Camera: Privatize AP_Camera 2021-02-02 10:10:17 +11:00
Josh Henderson d142b3ba16 AP_Logger: Privatize AP_Camera Logging 2021-02-02 10:10:17 +11:00
Rishabh 401d365491 AC_WPNav: Adapt to 3-D Avoidance changes 2021-02-01 14:34:13 +09:00
Rishabh f3d825bebe AP_Math: Add unit tests for 3-D lines 2021-02-01 14:34:13 +09:00
Rishabh de67e2b70c AP_Proximity: refactor changes done for 3-D Boundary 2021-02-01 14:34:13 +09:00
Rishabh 37a14a78df AC_Avoid: Refactor changes for 3-D avoidance 2021-02-01 14:34:13 +09:00
Rishabh 5092bc2f6d AC_Avoid: Simplify accessing boundary 2021-02-01 14:34:13 +09:00
Rishabh d359c5ddf2 AC_Avoid: Let user take control if they are backing away at a greater speed than what we have calculated 2021-02-01 14:34:13 +09:00
Rishabh 91132d00d9 AC_Avoid: Add deadzone to backaway code 2021-02-01 14:34:13 +09:00
Rishabh 343ba1a693 AP_Proximity: Use only valid boundary for Simple Avoidance 2021-02-01 14:34:13 +09:00
Randy Mackay 71d928aab9 AP_Proximity: TeraRangerTowerEvo uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 5c9a65cff6 AP_Proximity: TeraRangerTower uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay d4a6ebd273 AP_Proximity: SITL backend uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 518078c901 AP_Proximity: RPLidarA2 uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay babba91632 AP_Proximity: RangeFinder backend uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 2d77adf720 AP_Proximity: MAV backend uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay a65e0affe4 AP_Proximity: LightwareSF45B uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 623bd6923e AP_Proximity: LightwareSF40C_v09 uses update Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 4fda6b38f7 AP_Proximity: LightwareSF40C uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay ad899de78c AP_Proximity: backend uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay ef9bc64bb1 AP_Proximity: AirSimSITL uses modified Boundary_3D interface 2021-02-01 14:34:13 +09:00
Randy Mackay 279b534f67 AP_Proximity: remove duplicate definition
PROXIMITY_NUM_LAYERS is defined in AP_Proximity_Boundary_3D
2021-02-01 14:34:13 +09:00
Randy Mackay 5a0cc08dcc AP_Proximity: refactor Boundary_3D
rename stack to layer
swap order of layer and sector within arrays
rename Boundary_Location to Face
rename get_sector to get_face
rename set_attributes to set_face_attributes
get_distance returns bool and fills in argument instead of returning distance
2021-02-01 14:34:13 +09:00
Rishabh ad6e013171 AC_Avoid: Support 3D Simple Avoidance and Bacakway 2021-02-01 14:34:13 +09:00
Rishabh 43717ea55c AP_Proximity: Add OBSTACLE_DISTANCE_3D mavlink message 2021-02-01 14:34:13 +09:00
Rishabh 36bba2e02c AP_Proximity: Convert Proximity Backend drivers to use 3D Boundary methods 2021-02-01 14:34:13 +09:00
Rishabh 4fce715a9a AP_Proximity: Shift methods to Proximity_Boundary_3D class and support 3D Boundary 2021-02-01 14:34:13 +09:00
Rishabh 7569d8bf8e AP_Proximity: Add AP_Proximity_Boundary_3D class 2021-02-01 14:34:13 +09:00
Rishabh a5fafe57d8 GCS_MAVLink: Add support for OBSTACLE_DISTANCE_3D 2021-02-01 14:34:13 +09:00
Rishabh 1262d73071 AP_Math: Add new methods to support 3D avoidance 2021-02-01 14:34:13 +09:00
Rishabh 79d5e432ee AP_Math: Add new method to extrapolate 3D vector given distance, yaw, pitch 2021-02-01 14:34:13 +09:00
Peter Barker dbae56eb3a AP_Logger: panic in SITL if we fail to log a Replay block
// failing to log a block means that when we go to replay the log
    // things will almost certainly go sour.
2021-01-31 10:46:26 +11:00
Tom Pittenger a5d33cacb5 AP_Soaring: add units to param SOAR_THML_BANK 2021-01-29 11:20:09 -08:00
Samuel Tabor 4ec1e55833 AP_Soaring: Add SOAR_THML_BANK parameter and associated logic. 2021-01-29 11:20:09 -08:00
yaapu 4fbba17506 AP_Scripting: added bindings for frsky telemetry library 2021-01-29 09:55:22 +11:00
yaapu 24382e25fc AP_Frsky_Telem: added support for sending frsky telemetry data from scripting 2021-01-29 09:55:22 +11:00
Michael du Breuil 0f363809f5 AP_GPS: Fix some unit errors with the GPS blended instance
Also add a static assert and some docs on the fact that blending only
works with 2 actual recievers at the moment

Also a small optimization to not call get_rate_ms() twice
2021-01-28 11:55:30 +11:00
Andy Piper 6f5d5c2bf9 AAP_HAL_ChibiOS: allow asserts to be printed on a GPIO pin 2021-01-27 19:36:58 +11:00
Andy Piper d41c92d317 AP_HAL_ChibiOS: don't overwrite fault handler data, register forced faults 2021-01-27 19:13:18 +11:00
Andy Piper 20d928a86a AP_HAL_ChibiOS: don't share DMA on OmnibusNanoV6 for Flash SPI 2021-01-27 19:04:49 +11:00
Andy Piper 873d35acd9 AP_HAL_ChibiOS: bi-directional dshot for MatekH743 2021-01-27 18:58:38 +11:00
Andy Piper 877dde4736 AP_HAL_ChibiOS: on BeastF7 share TIM3 UP/CH and give flash SPI dedicated channel 2021-01-27 18:54:43 +11:00
Andy Piper 2395018000 AP_BLHeli: don't log invalid bi-dir dshot values as they are never used 2021-01-27 18:54:10 +11:00
Andy Piper 9249b73e8b AP_HAL_ChibiOS: correctly allow mixing of bidir and non-bidir channels 2021-01-27 18:49:15 +11:00
Andy Piper 2823fa7245 AP_HAL_ChibiOS: never write bytes that have not been erased on H7
Be more careful about flash failure conditions on H7
2021-01-27 18:30:36 +11:00
Andy Piper 78735a946e AP_HAL_ChibiOS: allow STM32_FLASH_DISABLE_ISR for H7 2021-01-27 18:30:36 +11:00
Andrew Tridgell 155de6d2bc HAL_ChibiOS: fixed build of AP_Periph on H7 2021-01-27 18:24:03 +11:00
Andrew Tridgell 0535c4f592 AP_InertialSensor: default TMAX to 70
if user forgets to set this then better to just timeout rather than
calibrating over a small range
2021-01-27 09:49:35 +11:00
Andrew Tridgell 9861a02c60 HAL_ChibiOS: save INS_ACC*ID persistent parameters
this enables full factory accelerometer calibration, so the user is
not required to run an accelcal, even if they change vehicle type
2021-01-27 09:49:35 +11:00
Andrew Tridgell bdb364d461 AP_InertialSensor: save the accelerometer ID parameters
this is needed for factory accel cal
2021-01-27 09:49:35 +11:00
Andrew Tridgell 87528f47c8 AP_IOMCU: prevent internal error on bootloader flash
when we flash the bootloader on boards with an IOMCU we expect a long
delay as the CPU stops during the flash
2021-01-27 09:49:35 +11:00