Commit Graph

21545 Commits

Author SHA1 Message Date
Matt Lawrence fd9d4a012d RC_Channel: Add GoPro mode toggle Aux switch 2020-05-06 14:14:11 +09:00
Matt Lawrence 0bef5bd9dd GCS_Mavlink: Add routing for GoPro heartbeat 2020-05-06 14:09:16 +09:00
Matt Lawrence 5fe19911bf AP_Camera: Add handling of GoPro mavlink commands 2020-05-06 14:09:13 +09:00
Matt Lawrence e23e798eb9 AP_HAL_ChibiOS: Fix waf --default-parameters
If a defaults.parm file was present in the hwdef, waf ignored the --default-parameters=xyz.parm command line argument.  This will allow it to use that command line argument specified file.
2020-05-06 14:07:00 +09:00
ashvath f59bbc1c9e Copter: function for mot_pwm checks 2020-05-06 14:00:12 +09:00
Andrew Tridgell ac51e2b02b AP_GPS: fixed yaw error when one GPS has zero position
the M_PI correction was only valid for one zero side. Much simpler to
always calculate difference
2020-05-06 13:58:04 +09:00
Andrew Tridgell 804949707d HAL_SITL: added betaflight-x-rev frame type 2020-05-06 13:54:11 +09:00
Andrew Tridgell b072190cf8 SITL: added betaflight-rev-x frame 2020-05-06 13:54:06 +09:00
Andrew Tridgell 67ffb30954 AP_Motors: added betaflight-x-reversed frame type 2020-05-06 13:53:56 +09:00
Andrew Tridgell 1cbad0c86e SRV_Channel: change function to AP_Int16
this also removes the old parameter conversion code used for when we
first added the SERVO parameters. This was needed for conversion from
Copter 3.4 and Plane 3.7
2020-04-21 08:03:01 +09:00
Andrew Tridgell 8255517e3a AP_Param: added convert_parameter_width()
this allows for easy conversion of the width of a parameter without
changing indexes
2020-04-21 08:03:01 +09:00
Peter Hall ac1c4a3b2c SRV_Channel: add missing ProfiLED description values 2020-04-21 08:03:01 +09:00
Peter Hall 81a95e2a71 AP_Scripting: Add led matrix examples 2020-04-21 08:03:01 +09:00
Peter Hall 4b84e749ad AP_Scripting: update LED_roll example 2020-04-21 08:03:01 +09:00
Peter Hall 21cfe5a3d6 AP_HAL_SITL: update function names 2020-04-21 08:03:01 +09:00
Peter Hall 7dacfcc198 AP_HAL_ChibiOS: add support for ProfiLEDs 2020-04-21 08:03:01 +09:00
Peter Hall a42b459b27 AP_HAL: support ProfiLEDs 2020-04-21 08:03:01 +09:00
Peter Hall fa1b8cb792 AP_Notify: support ProfiLEDs 2020-04-21 08:03:01 +09:00
Peter Hall 473bd4c9ee AP_Scripting: regenerate bindings 2020-04-21 08:03:01 +09:00
Peter Hall 33bef0f884 AP_Scripting: support ProfiLEDs 2020-04-21 08:03:01 +09:00
Peter Hall d8501c4031 AP_SerialLED: support ProfiLEDs 2020-04-21 08:03:01 +09:00
Peter Hall 3f0eeaf6d9 SRV_Channel: add ProfiLED ouputs 2020-04-21 08:03:01 +09:00
Andrew Tridgell 71ef4ef231 AP_SerialLED: added define for LED limit 2020-04-21 08:03:01 +09:00
Andrew Tridgell 59bf162572 HAL_ChibiOS: reserve plenty of DMA memory for luminousbee4 2020-04-21 08:03:01 +09:00
Andrew Tridgell 434ad4e990 AP_SerialLED: allow more than 32 LEDs 2020-04-21 08:03:01 +09:00
Andrew Tridgell 18a9dce6e9 AP_Scripting: adjust for updated LED API 2020-04-21 08:03:01 +09:00
Andrew Tridgell 8ea159fe4e AP_Notify: allow up to 64 LEDs on a pin 2020-04-21 08:03:01 +09:00
Andrew Tridgell b26233495f HAL_SITL: allow more than 32 LEDs on a pin 2020-04-21 08:03:01 +09:00
Andrew Tridgell b219ee453c HAL_ChibiOS: allow more than 32 WS2812 LEDs on a pin 2020-04-21 08:03:01 +09:00
Andrew Tridgell cdee5f8b0e AP_HAL: adjust LED API to allow more than 32 LEDs on a pin 2020-04-21 08:03:01 +09:00
Andrew Tridgell e26860bd09 HAL_ChibiOS: added luminousbee4 flight controller 2020-04-21 08:03:01 +09:00
Peter Hall eb85d98b4d AP_Scripting: regenerate bindings 2020-04-07 09:05:35 +10:00
Peter Hall 389f28d937 AP_Scripting: correct generator bug 2020-04-07 09:05:35 +10:00
Peter Barker b9804be01c AP_HAL_ChibiOS: make a static-const hal a reference to the external symbol 2020-03-03 20:35:57 +09:00
Andrew Tridgell 43c8efd820 HAL_ChibiOS: switched to new USB VID for dual-CDC boards 2020-02-20 13:03:57 +11:00
Andrew Tridgell 2ed21b3be1 HAL_ChibiOS: fixed default fast sampling on CubeOrange and Durandal 2020-02-20 13:03:09 +11:00
Andrew Tridgell 6d8482bc2e HAL_ChibiOS: produce more accurate clocks for DShot and PWM 2020-02-20 13:02:09 +11:00
Andrew Tridgell ca1053a28c HAL_ChibiOS: raised timer clocks to 200MHz
this gives more flexibility in setting up timers for DShot
2020-02-20 13:01:00 +11:00
Andrew Tridgell d3ee8c8795 GCS_MAVLink: don't send statustext from other than main thread
This fixes high stack usage in the RCIN thread when it notifies the
GCS of a new RCIN protocol. The problem is severe when signing is
enabled, as signing adds over 500 bytes to stack cost of sending a
mavlink msg

fixes issue #13615
2020-02-20 12:59:01 +11:00
Randy Mackay 10ef74172c AP_ServoRelayEvents: do-set-servo affects sprayer and gripper 2020-02-20 09:52:20 +09:00
bnsgeyer a8b1f93a83 AP_Motors: tradheli - fix quad heli collective structure 2020-02-20 09:52:19 +09:00
Andrew Tridgell 7eb106ea07 HAL_ChibiOS: fixed output string for non-DMA capable chan
this fixes a problem where the user requests DShot (which rquired DMA)
on an output channel which cannot allocate a DMA channel. We end up
sending normal PWM, so the string representation of the output modes
should reflect that
2020-02-20 09:39:27 +09:00
Randy Mackay 4b684085cc GCS_MAVLink: send rc output mode banner to GCS 2020-02-20 09:36:53 +09:00
Randy Mackay 95ec629923 AP_HAL: add RCOutput::get_output_mode_banner 2020-02-20 09:36:48 +09:00
Randy Mackay dfbccf3811 AC_AttitudeControl_Heli: fix VFF and ILMI param descriptions 2020-02-14 12:51:04 +09:00
Randy Mackay 8f32a1089d AC_PosControl: add missing ACCZ param descriptions 2020-02-14 12:51:01 +09:00
Andrew Tridgell 1201292c09 GCS_MAVLink: raise ftp stack size to 3072 from 1024
this prevents memory corruption on directory listing
2020-02-11 12:43:29 +11:00
Andrew Tridgell 77865e9f78 HAL_ChibiOS: fixed spektrum RC input on Pixracer
RCININT is inverted compared to RCIN, so need to enable SBUS_INV pin
2020-02-05 11:13:30 +09:00
Andrew Tridgell 8e0124f383 AP_RangeFinder: fixed failover between rangefinders
this fixes the case where we have one rangefinder that can handle
short range and another that is good for long range but no good for
short range (quite common, eg radar and lidar)

If possible we want to use the first rangefinder that is in range for
the right orientation. If none are in range then use the first for the
orientation
2020-02-05 11:13:30 +09:00
Henry Wurzburg f7cbdb4520 HWDEF: Speedybeef4 change I2C internal mask to 0 to allow probing ext baros 2020-02-05 11:13:30 +09:00
Andrew Tridgell 72b9a69911 AP_NavEKF3: don't use WMM tables unless we have a compass scale factor set 2020-02-05 11:13:30 +09:00
Andrew Tridgell d47126fc6b AP_NavEKF2: don't use WMM tables unless we have a compass scale factor set 2020-02-05 11:13:30 +09:00
Andy Piper a1f2c7530e AP_Logger: fix locking issues, uninitialized read and status message length
account for erased partial sectors when looking at wrapped logs
2020-02-04 12:11:07 +09:00
Jaaaky 11062cf7d2 AP_Logger: fix 'last_file' may be used uninitialized with debug build 2020-02-04 12:10:43 +09:00
Andy Piper 7e6fda6650 AP_Logger: mavlink backend needs to be the last backend
be really careful to catch aborted erases
take care to protect shared structures in io thread
if flash corruption is detected try and recover whole files
overwrite format in erase to make sure erase happens
output useful messages at critical times
a block is 64k a sector is 4k, rename internal variables appropriately
cope with log wrapping when sending log listings over mavlink
2020-02-04 12:10:17 +09:00
Randy Mackay 06f9c6a210 AP_RangeFinder: fix offset param for PWM driver 2020-02-03 19:38:59 +09:00
Andrew Tridgell 6489623499 HAL_ChibiOS: fixed skyviper-v2450 build 2020-02-02 08:14:20 +11:00
Leonard Hall 50534b6e29 AC_AutoTune: fix restoring of original gains
current_gain_type was not being set when load_gains was called meaning subsequent calls to load_gains would fail if gain_type was GAIN_ORIGINAL
2020-02-01 16:57:18 +09:00
Andrew Tridgell 2612fe50f7 HAL_SITL: fixed bitmask error on storage erase 2020-01-31 19:55:09 +09:00
Andrew Tridgell f033e7dcb9 HAL_Linux: fixed bitmask error on storage erase 2020-01-31 19:55:06 +09:00
Andrew Tridgell aff77c86d6 HAL_ChibiOS: fixed bitmask error on storage erase 2020-01-31 19:55:01 +09:00
Rob Ratcliff a6fbee9820 RC_Channel: fix handling of rc_override_time of -1 2020-01-31 19:52:47 +09:00
Randy Mackay fc0f6297a7 AP_RangeFinder: update OFFSET param description to clarify only for analog and pwm 2020-01-31 19:50:19 +09:00
Randy Mackay a2fdc5b428 AP_RangeFinder: PWM driver adds offset param value 2020-01-31 19:50:16 +09:00
Randy Mackay f3ccec329d AC_AutoTune: fix backup of yaw acceleration 2020-01-31 19:48:00 +09:00
Bill Geyer f434bab7db AC_AttitudeControl: tradheli-Remove Param descriptions
This remove the old filter param description from AC 3.6 and adds the new filter param descriptions.
2020-01-31 19:47:07 +09:00
Matt Lawrence 8c8d90898e AP_Notify: Remove pixhawk from Oreo LED comments
Removes specific reference to pixhawk from comments since not all flight controllers are pixhawks.
2020-01-31 19:46:22 +09:00
Matt Lawrence 3d14e33e10 AP_Notify: Add GCS failsafe notify tones and lights 2020-01-31 19:46:11 +09:00
Andrew Tridgell b5435d6a24 HAL_ChibiOS: use recursive mutex for RCInput 2020-01-31 19:35:53 +09:00
Andrew Tridgell 50a6d63101 HAL_ChibiOS: implement pulse_input_enable()
and cleanup use of mutexes in RC input
2020-01-31 19:35:53 +09:00
Andrew Tridgell 89d0562e9d HAL_ChibiOS: added disable() API for pulse input 2020-01-31 19:35:53 +09:00
Andrew Tridgell 289a0d8694 AP_IOMCU: use more efficient read API for rcin 2020-01-31 19:35:53 +09:00
Andrew Tridgell 07ee3b4c5e AP_RCProtocol: added multi-channel read() API
and use pulse_input_enable() to disable pulse input when not needed
2020-01-31 19:35:53 +09:00
Andrew Tridgell 3ca8b7b40f AP_HAL: added pulse_input_enable() API
this allows disabling pulse input at runtime to lower CPU load on
IOMCU when decoding via a UART
2020-01-31 19:35:53 +09:00
Andrew Tridgell c38c78d718 AP_OpticalFlow: probe all I2C buses for px4flow on Hex Cubes 2020-01-28 14:42:57 +09:00
Michael du Breuil 2c0eee390d AP_Rangefinder: Fix bad subgroup pointer for drivers 2020-01-19 10:44:01 +09:00
Randy Mackay dce1710901 AP_Logger: remove non-error init messages 2020-01-19 10:41:16 +09:00
Michael du Breuil 55c00b9957 AP_Param: Fix failing to invalidate the cached parameter count
This would cause a GCS to download fewer then the requested number of
parameters
2020-01-18 20:31:45 +11:00
Andrew Tridgell 6d4a4604f2 AP_FileSystem: chunk IOs to max 4k
this prevents larger IOs from attempting to allocate too much memory
in DMA bouncebuffers
2020-01-18 16:04:46 +11:00
Andrew Tridgell ac26aea18b AP_IOMCU: added a health check based on status read errors
if we have more than 1 in 128 read status requests failing then mark
IOMCU unhealthy
2020-01-18 16:04:46 +11:00
Andrew Tridgell c8f24b2c71 AP_IOMCU: reduce uart buffer sizes 2020-01-18 16:04:46 +11:00
Andrew Tridgell 925ce44a6c HAL_ChibiOS: use 4k bouncebuffer for sdcard
match AP_Logger IO size
2020-01-18 16:04:46 +11:00
Andrew Tridgell 15d45397c6 HAL_ChibiOS: adjust dma reserve allocation
use larger target and allow for smaller allocation
2020-01-18 16:04:46 +11:00
Andrew Tridgell 26ced02cd1 HAL_ChibiOS: don't extend alloc of iomcu uart 2020-01-18 16:04:46 +11:00
Andrew Tridgell 6477180e87 HAL_ChibiOS: added checking on bouncebuffer allocation
fail operations if DMA bouncebuffer alloc fails
2020-01-18 16:04:46 +11:00
Andrew Tridgell 43c99664b0 AP_Logger: add a semaphore to protect creation of new log formats 2020-01-18 16:04:46 +11:00
Andrew Tridgell 184b3e1d63 AP_Filesystem: fixed set_mtime semaphore 2020-01-18 16:04:46 +11:00
Andrew Tridgell 552a06dab7 AP_UAVCAN: protect UAVCAN DNA server with semaphore 2020-01-18 16:04:46 +11:00
Bill Geyer a05f00d180 AC_InputManager: tradheli-Fix parameter metadata errors 2020-01-14 08:25:28 +09:00
Andrew Tridgell 77b9663ce8 AP_Frsky_Telem: fixed a race condition with statustext handling
this fixes an issue that can cause a hardfault. See this bug report:

https://discuss.ardupilot.org/t/hexa-crash-after-watchdog-reset/50917

ObjectArray is not thread safe
2020-01-10 17:58:51 +11:00
Andrew Tridgell 1ba5585652 AP_RCProtocol: fixed support for 22ms multi-frame DSM 2020-01-09 15:18:53 +11:00
Andrew Tridgell 48e116afca GCS_MAVLink: support MAV_CMD_FIXED_MAG_CAL_YAW 2020-01-09 15:18:53 +11:00
Andrew Tridgell facedb5156 AP_Compass: added mag_cal_fixed_yaw()
this is a fast compass calibration that uses a yaw value provided by
the user.
2020-01-09 15:18:53 +11:00
Randy Mackay f7a8bcf87f SRV_Channel: add NeoPixelx to function param description 2020-01-09 11:43:18 +09:00
Andrew Tridgell 33be48868b AP_UAVCAN: fixed build on Linux 2020-01-08 20:59:43 +11:00
Andrew Tridgell 9343cf04f6 AP_KDECAN: fixed build error on Linux 2020-01-08 20:58:37 +11:00
Andrew Tridgell e3710bfa47 AP_Declination: re-generate mag tables
max interpolate error between -60 and 60 latitude is 13.86 mGauss
2020-01-08 20:57:21 +11:00
Andrew Tridgell 21a1b17571 AP_Declination: update generate script
added ability to display max error
2020-01-08 20:57:18 +11:00
Andrew Tridgell 7f49f81818 AP_SerialManager: ensure users can't break SERIAL0_PROTOCOL
this prevents users from setting SERIAL0_PROTOCOL to something that
prevents them accessing the board. This can happen when users are
trying to setup SLCAN
2020-01-08 20:55:57 +11:00
Andrew Tridgell e03e0bccae AP_Airspeed: switched to recursive semaphore
this is needed by the SDP3X driver. It is the simplest fix for the
issue
2020-01-08 08:41:10 +11:00