Commit Graph

25723 Commits

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