Commit Graph

31410 Commits

Author SHA1 Message Date
Andrew Tridgell e55d3a0834 AP_Motors: fix mask passed to rc_set_freq
the full motor mask must be supplied to work correctly for oneshot and
dshot
2018-04-07 09:10:29 +10:00
Andrew Tridgell 610a6a6c88 HAL_ChibiOS: optimise USB config driver 2018-04-07 09:10:29 +10:00
Andrew Tridgell bc32276966 HAL_ChibiOS: support DShot output
use DMAR burst DMA to minimise number of DMA channels needed

thanks to betaflight for the great reference implementation!
2018-04-07 09:10:29 +10:00
Andrew Tridgell 294aac6955 HAL_ChibiOS: fixed CTS pulldown
we need to pulldown to prevent delays in uart sends
2018-04-07 09:10:29 +10:00
Andrew Tridgell a64819cbf2 HAL_ChibiOS: minimise DMA TX latency on contended UARTs
try to prevent long delays on other users of a DMA channel
2018-04-07 09:10:29 +10:00
Andrew Tridgell a86e85c6b2 HAL_ChibiOS: enable checking for DMA contention 2018-04-07 09:10:29 +10:00
Andrew Tridgell 0fb4e4720d AP_HAL_VRBRAIN: added mask to set_output_mode()
this allows for some groups using dshot and some not
2018-04-07 09:10:29 +10:00
Andrew Tridgell 25cc73c1e7 AP_HAL_PX4: added mask to set_output_mode()
this allows for some groups using dshot and some not
2018-04-07 09:10:29 +10:00
Andrew Tridgell 4fb53d44f3 AP_HAL_F4Light: added mask to set_output_mode()
this allows for some groups using dshot and some not
2018-04-07 09:10:29 +10:00
Andrew Tridgell 4350cee7cf Rover: added mask to set_output_mode() 2018-04-07 09:10:29 +10:00
Andrew Tridgell 2c84d77306 AP_Motors: setup for DShot output modes 2018-04-07 09:10:29 +10:00
Andrew Tridgell e7dc304f4e AP_HAL: support DShot output modes 2018-04-07 09:10:29 +10:00
Andrew Tridgell 64278f07d3 HAL_ChibiOS: removed the DMA channels from RCIN in hwdef.dat
no longer needed as this is automatic now
2018-04-07 09:10:29 +10:00
Andrew Tridgell 9a5df6d1f7 HAL_ChibiOS: auto-generate DMA channels for RCIN
and add DMA channels for TIMx_UP ready for DMAR based DShot support
2018-04-07 09:10:29 +10:00
Andrew Tridgell 6aff7ecbf5 HAL_ChibiOS: added channel numbers for STM32F4xx MCUs 2018-04-07 09:10:29 +10:00
Andrew Tridgell da2e79130b HAL_ChibiOS: generate channel numbers in DMA tables 2018-04-07 09:10:29 +10:00
Andrew Tridgell 3501763f4e HAL_ChibiOS: added DShot example app 2018-04-07 09:10:29 +10:00
Leonard Hall 5c1d895f82 Copter: autotune announce only while tuning 2018-04-06 14:48:28 +09:00
Leonard Hall 83fac326a4 Copter: autotune check for vel overshoot in angle P
this change reduces the chance of over tuned angle P
2018-04-06 14:48:28 +09:00
Randy Mackay 64be134f7b GCS_MAVLink: add VISP logging 2018-04-06 11:13:28 +09:00
Tom Pittenger f03c73aeff AP_Terrain: compiler warning printing %u with signed value 2018-04-06 07:40:37 +09:00
Peter Barker 975ad608eb Copter: honour defines for optional feature's log messages 2018-04-05 17:37:02 +09:00
Peter Barker b77d4ad82a AP_InertialNav: remove dead get_hagl method 2018-04-05 17:35:55 +09:00
Peter Barker 893b761533 Copter: correct terrain-alt logging
Also change to using an out-of-band value upon no-terrain-alt-available
2018-04-05 12:30:05 +09:00
Randy Mackay f7a168478d Rover: integrate attitude control's get_steering_out_heading 2018-04-05 12:14:59 +09:00
Randy Mackay a8857726d1 AR_AttitudeControl: replace get_steering_out_angle_error with heading
internally uses AHRS's heading to determine angle error so overally a non-functional change
2018-04-05 12:14:59 +09:00
Randy Mackay 8186ce0d32 Tools: add deg/s/s to valid parameter units 2018-04-05 12:14:59 +09:00
Randy Mackay e8070a5cb3 Rover: pass waypoint radius to L1 as min dist along track 2018-04-05 12:14:59 +09:00
Randy Mackay 4f0b26bd48 AP_L1_Control: update_waypoint gets dist_min argument
L1_dist can become extremely short for slow moving vehicles leading to unnecessarily jerk turns after passing waypoints.  This reduces the minimum length along the track that the vehicle will point.
2018-04-05 12:14:59 +09:00
Randy Mackay 41bd79a387 Rover: pivot-turn uses heading controller 2018-04-05 12:14:59 +09:00
Randy Mackay e6f8021519 AR_AttitudeControl: add angular accel and rate limits
This limits the change in desired turn rate to reduce impossible requests which should help avoid overshoot
Also add rotation rate limit to turn-rate controller
2018-04-05 12:14:59 +09:00
Peter Barker 3d84dfcc2e DataFlash: remove unused ins error count logging 2018-04-04 14:21:20 +01:00
Peter Barker c4ea83177f AP_Scheduler: remove unused ins error count logging 2018-04-04 14:21:20 +01:00
Peter Barker be634a893f AP_InertialSensor: remove unused ins error count logging 2018-04-04 14:21:20 +01:00
Peter Barker 81044760c7 AP_NavEKF2: const accessors 2018-04-04 12:20:36 +01:00
Peter Barker aca87ab638 AP_InertialSensor: remove pointless initialisations
AP_InertialSensor: avoid pointless zeroing in constructor

AP_InertialSensor is either in bss or is created via new (which zeroes
memory)
2018-04-04 12:14:02 +01:00
Peter Barker 355752ebb8 AP_AHRS: remove pointless initialisations
These are either in bss or new'd.

Saves ~130 bytes
2018-04-04 10:14:40 +01:00
Peter Barker 51991fdd76 AP_Proximity: fix compilation warning in LightWare driver
../../libraries/AP_Proximity/AP_Proximity_LightWareSF40C.cpp: In member
function ‘void AP_Proximity_LightWareSF40C::request_new_data()’:
../../libraries/AP_Proximity/AP_Proximity_LightWareSF40C.cpp:235:6:
warning:
‘__builtin___snprintf_chk’ output may be truncated before the last
format
character [-Wformat-truncation=]
 void AP_Proximity_LightWareSF40C::request_new_data()
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:862:0,
                 from ../../libraries/AP_Common/AP_Common.h:179,
                 from ../../libraries/AP_HAL/UARTDriver.h:5,
                 from ../../libraries/AP_HAL/HAL.h:11,
                 from ../../libraries/AP_HAL/AP_HAL_Main.h:19,
                 from ../../libraries/AP_HAL/AP_HAL.h:8,
                 from
../../libraries/AP_Proximity/AP_Proximity_LightWareSF40C.cpp:16:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:65:44: note:
‘__builtin___snprintf_chk’ output between 10 and 16 bytes into a
destination
of size 15
        __bos (__s), __fmt, __va_arg_pack ());
                                            ^
../../libraries/AP_Proximity/AP_Proximity_LightWareSF40C.cpp: In member
function ‘bool
AP_Proximity_LightWareSF40C::send_request_for_distance()’:
../../libraries/AP_Proximity/AP_Proximity_LightWareSF40C.cpp:275:6:
warning:
‘__builtin___snprintf_chk’ output may be truncated before the last
format
character [-Wformat-truncation=]
 bool AP_Proximity_LightWareSF40C::send_request_for_distance()
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/stdio.h:862:0,
                 from ../../libraries/AP_Common/AP_Common.h:179,
                 from ../../libraries/AP_HAL/UARTDriver.h:5,
                 from ../../libraries/AP_HAL/HAL.h:11,
                 from ../../libraries/AP_HAL/AP_HAL_Main.h:19,
                 from ../../libraries/AP_HAL/AP_HAL.h:8,
                 from
../../libraries/AP_Proximity/AP_Proximity_LightWareSF40C.cpp:16:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:65:44: note:
2018-04-04 18:04:57 +09:00
Peter Barker 2d31a7b318 Copter: remove check for enabled in for Log_Write_Beacon
The DataFlash library does this now
2018-04-04 16:20:33 +09:00
Peter Barker e74d07ff15 Rover: remove wrapper for Log_Write_Beacon 2018-04-04 16:20:33 +09:00
Peter Barker b7f1040dca DataFlash: do not log beacon if it is disabled 2018-04-04 16:20:33 +09:00
Randy Mackay f6cf52a748 AC_Loiter: move defines to cpp 2018-04-04 10:45:10 +09:00
Randy Mackay 757a35f3ba AC_Loiter: consolidate sanity checks 2018-04-04 10:45:10 +09:00
Randy Mackay defdeaed95 Sub: integrate AC_Loiter 2018-04-04 10:45:10 +09:00
Randy Mackay 6728659b4a Sub: add AC_Loiter to make build 2018-04-04 10:45:10 +09:00
Randy Mackay 840a6e4147 Plane: quadplane uses AC_Loiter
includes param conversion
2018-04-04 10:45:10 +09:00
Randy Mackay 59e4749fd0 Copter: integrate AC_Loiter
includes param conversion
2018-04-04 10:45:10 +09:00
Randy Mackay 5f2f446199 Copter: add AC_Loiter to make build 2018-04-04 10:45:10 +09:00
Randy Mackay acfc3a606a Copter: circle mode uses AC_Circle get_distance_to_target 2018-04-04 10:45:10 +09:00
Randy Mackay 9de73a994f AC_Circle: add get distance and bearing to target 2018-04-04 10:45:10 +09:00