Commit Graph

25669 Commits

Author SHA1 Message Date
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