Files
ardupilot/ArduSub/ReleaseNotes.txt
T
2026-09-02 12:32:50 +09:00

2213 lines
127 KiB
Plaintext

ArduPilot Sub Release Notes:
------------------------------------------------------------------
Release 4.7.1 31-August-2026 / 4.7.1-beta1 17-August-2026
Changes from 4.7.0
1) Board specific changes
- ARKV6S board added (@dakejahl, PR:33157)
- CORVON_V5 board added (@holydust, PR:33593)
- DAKEFPV boards add support for LSM6DSV and BMI270 IMUs (@engineer-dakefpv, PR:33984)
- FlywooF405S-AIO and -HD boards support SPL06 barometer (@mbuzdalov, PR:33779)
- KakuteH7-Wing boards support LSM6DSV IMU (@zebulon-86, PR:33761)
- ORBITH743v2 board added (@orbittechnologyx, PR:33582)
2) Plane specific changes
- Q_P_JERK_NE/D renamed to Q_P_NE/D_JERK (@rmackay9, PR:33843)
- Quadplane: In transition only set TECS throttle min in auto throttle modes (@IamPete1, PR:33972)
3) Copter specific changes
- Auto mode climbing Arc waypoint speed limits and velocity/acceleration fixed (@lthall, PR:33833)
- Auto mode fix to continue past RTL if rtl-final-descent non-zero (@rmackay9, PR:33797)
- Circle mode entry fixed when RC input present (@peterbarker, PR:33525)
- PSC_JERK_NE/D renamed to PSC_NE/D_JERK (@rmackay9, PR:33843)
- Simple mode fixed (@rmackay9, PR:33947)
4) Library/Driver changes
- AC_WPNAV: Use of uninitialised values avoided in m/cm conversion code (@peterbarker, PR:33715)
- AP_Filesystem: Files without an End-Of-Line character get correctly read (@peterbarker, PR:33744)
- AP_FlashStorage: Fix incorrect value of `current_sector` during init (@Juergen-Fahlbusch, PR:33640)
- AP_Follow: Fix parameter ranges to include their defaults (@lthall, PR:33928)
- AP_GPS: Unicore baseline correction in vertical component of Unicore reported baseline (@lthall, PR:33730)
- AP_Mount: Fix AlexMos yaw angle scaling (@borischernov, PR:33785)
- AP_NavEKF: Log per-core source set in XKFS (@mykhailopylyp, PR:33904)
- AP_OSD: use Betaflight SYM_TOTAL_DISTANCE for DisplayPort distance icon (@coreyfarley, PR:33908)
- AP_RangeFinder: TFMiniPlus: Small delay added to improve read reliability (@IamPete1, PR:33709)
- ChibiOS: fix overdrive disabled on H7 boards clocked above 400MHz (@andyp1per, PR:33824)
- GCS_MAVLink: Correction in diagnostics printing (@peterbarker, PR:33800)
- IST8310 compass gets probed only if the driver is enabled (@peterbarker, PR:32696)
- Topotek gimbal network connection handling is corrected (@peterbarker, PR:33803)
5) Tool changes
- build_options.py: Wrong dependecy for MAVLINK_SIGNING has been removed (@peterbarker, PR:33798)
------------------------------------------------------------------
Release 4.7.0 21-July-2026/ 4.7.0-beta8 13-July-2026
Changes from 4.7.0-beta7
1) Board specific changes
- BCubeF745v2 board added (@petrosaccone, PR:32753)
- CORVON743V2 board added (@holydust, PR:33307)
- Navigator board supports lsm6dsv IMU (@Williangalvani, PR:33219)
- SkystarsH7HDv3 onboard baro changed to SPL06 (@andyp1per, PR:33333)
- TBS LUCID H7 OEM board added (@andyp1per, PR:33337)
- TBS LUCID H7 V3 board added (@andyp1per, PR:33337)
2) Driver changes
- ASM330LHH IMU axes order fixed (@n-ito2222, PR:32921)
- TMP119 temperature sensor driver added (@Williangalvani, PR:33322)
3) Library changes
- Compass: COMPASS_DISBLMSK bug on internal compasses fixed (@Georacer, PR:33553)
- Custom Build Server dependency fix for DroneCAN and Generator (@peterbarker, PR:33429)
- EKF3: Fix rejected GPS yaw when the measurement is older than the fusion horizon (@lthall, PR:33643)
- Follow: Small fixes to maths and logic (@lthall, PR:33652)
- GCS_MAVLink: Serial port blocking write bug fixed (@tridge, PR:33437)
- MAVLinkCAN: CAN_FORWARD rejects negative CAN bus indices (@CSmith1539, PR:33376)
- Mount: POI_LOCK does not need terrain to build (@peterbarker, PR:33396)
- Mount: POI_LOCK function enabled by default in all >2MB boards (@rmackay9, PR:33372)
- Scripting: New `vehicle:is_crashed()` Lua binding (@yuri-rage, PR:33258)
4) Copter specific changes
- CIRCLE_OPTIONS descriptions improved (@rmackay9, PR:33669)
- EKF3 prevented from fusing probably-bad airspeed estimate (@peterbarker, PR:33607)
- Guided mode set-target-angle-and-climbrate scaling used by scripting fixed (@rmackay9, PR:33692)
- PosHold "jerky" response fixed (@zebulon-86, PR:33590)
- WPNav: Fixed LOITER breaking, broken by the turn coordinator (@IamPete1, PR:33631)
5) TradHeli specific changes
- Fixed run up complete flag not posting in manual throttle modes when governor doesn't engage (@bgnsgeyer, PR:33693)
6) Rover specific changes
- AHRS does not fall back to DCM when AHRS_OPTIONS=3 (@deepak31296, PR:33392)
------------------------------------------------------------------
Release 4.7.0-beta7 13-June-2026
Warnings
- TradHeli's arming behaviour changes to require collective stick full down regardless of using stick or switch arming. In RC_OPTIONS parameter, uncheck option for "Arming check throttle for 0 input" to allow switch arming with a collective raised from bottom. This option is not recommended for stick arming as it allows arming at non zero collective setting.
Changes from 4.7.0-beta6
1) Board specific changes
- AcctonGodwit GA1 has corrected pinout and bootloader (@erickao-hy, PR:33276)
- JAE JFB200 board added (@n-ito2222, PR:32786)
- SkyDroid-S3 fixed internal compass probing bug (@Hwurzburg, PR:33374)
2) Library changes
- STM ASM330LHH IMU support (@n-ito2222, PR:31656)
3) Rover specific changes
- Mode changes when safety switch pressed bug fixed (@peterbarker, PR:33070)
4) Tradheli specific changes
- Stick arming behaviour bugfix (@bnsgeyer, PR:33402)
------------------------------------------------------------------
Release 4.7.0-beta6 01-June-2026
Changes from 4.7.0-beta5
1) Board specific changes
- MambaF405v2 SBUS pin polarity fixed (@andyp1per, PR:33203)
- PilotGaeaSV7V1 board added (@PilotGaea2001, PR:32416)
- SkyDroid-S3 board added (@UAVcihang, PR:32920)
- ZeroOneX6v2 supports SPA06 and MBP581 barometers (@ZeroOne-Aero, PR:33237)
2) Driver changes
- AP_Compass: LIS2MDL recent duplicate driver is removed (@dakejahl, PR:33140)
- Filter: Harmonic Notch Filters fixed to prevent runtime error (@peterbarker, PR:33230)
- KellerLD barometer has better corruption rejection (@vshie, PR:32889)
- Lightware GRF250 I2C driver added (@rishabsingh3003, PR:32923)
- RC_Channel: Channel overrides fixed to not apply on restricted channels (@peterbarker, PR:33275)
3) Library changes
- AP_CANManager: Removed unused logging interface (@tpwrules, PR:33031)
- AP_Filesystem: FTP-related hardfault is fixed (@peterbarker, PR:33156)
- AP_Follow: Vertical target estimate has minor fixes (@lthall, PR:33109)
- AP_Follow: bugfixes related to the motion of the target (@lthall, PR:33038)
- AP_OpenDroneID: UAS ID available length is fixed (@cuav-chen2, PR:33224)
- Filter: Harmonic notch logging fix to avoid over reading array (@peterbarker, PR:33232)
- ardupilotwaf: gcc-14+ compiler warnings are suppressed (@yuri-rage, PR:33138)
4) Plane specific changes
- Spoolup events are better reported with less false-positive errors (@lthall, PR:32955)
5) Copter specific changes
- Terrain failsafe will be triggered when a mission terrain altitude cannot be retrieved (@rmackay9, PR:32943)
- Pilot yaw is correctly ignored during RTL (@rmackay9, PR:33169)
- Spoolup events are better reported with less false-positive errors (@lthall, PR:32955)
6) Sub related changes
- MOT_FV_CPLNG_K has better documentation (@ES-Alexander, PR:33076)
- Very early prearm check will not cause initializatin bug (@CSmith1539, PR:33217)
- Spoolup events are better reported with less false-positive errors (@lthall, PR:32955)
------------------------------------------------------------------
Release 4.7.0-beta5 15-May-2026
Changes from 4.7.0-beta4
1) Board specific changes
- Linux-Navigator: IIS2MDC support added (@WillianGalvani, PR:32863)
2) Library changes
- AP_Logger: Named Value Float dataflash logging drops fixed (@tridge, PR:32975)
- AP_Logger: LOG_MAV_RATEMAX default changed to 10 (@tridge, PR:33030)
- AP_Logger: logging over MAVLink speed significantly improved (@tridge, PR:33020)
- AP_NavEKF3: barometer offset logging added (@rmackay, PR:32931)
- AP_NavEKF3: bugfix to prevent covariance state corruption (@tpwrules, PR:32177)
- HAL_ChibiOS: Oneshot pulse corruption upon safety-enable fixed (@tridge, PR:32979)
3) Copter specific changes
- Increment data added for several parameters (@ES-Alexander, PR:32949)
- Weathervaning bugfix to properly stop weathervaning (@IamPete1, PR:33019)
- Land and Payload place waypoints fixed to use correct altitude and spline waypoints (@lthall, PR:32634)
4) Helicopter specific changes
- PID scaling support fixed (@lthall, PR:32725)
5) Sub specific changes
- Increment data added for several parameters (@ES-Alexander, PR:32949)
------------------------------------------------------------------
Release 4.7.0-beta4 30-Apr-2026
Changes from 4.7.0-beta3
1) Board specific changes
- VUAV-TinyV7 board added (@viewpro-caijie, PR:32058)
2) Driver changes
- LSM6DSV16X IMU from ST is now supported (@zebulon-86, PR:32574)
- MMP581 driver handles data corruption better (@peterbarker, PR:32171)
3) Library changes
- AC_PID: NTF and NEF parameters metadata includes 0 as a valid value (@IamPete1, PR:32898)
- AC_WPNav: BendyRuler altitude bug fixed (@hunt0r, PR:32892)
- AP_Arming: E-stop value is taken into account (@IamPete1, PR:32705)
- AP_GPS: SBF driver improvement in Do Not Use values (@UAVcihang, PR:32642)
- AP_Math: S-Curve bugs fixed (@lthall, PR: 32730)
- RC_Channel: RCx_PROTOCOLS metadata updated with SITLUDP option (@peterbarker, PR:32778)
4) Plane specific changes
- AP_IOMCU: Throttle will not output on failsafe while disarmed (@IamPete1, PR:32912)
5) Sub specific changes
- Lights servo channels defaults fixed (@ES-Alexander, PR:32764)
- Remote leak detector MAVLink interface support added (@ES-Alexander, PR:32614)
6) Rover specific changes
- Power limiting UX improved (@stephendade, PR:32788)
------------------------------------------------------------------
Release 4.7.0-beta3 10-Apr-2026
Changes from 4.7.0-beta2
1) Board specific changes
- Atlas-Control has updated hwdef.dat file (@AltasFlight, PR:32268)
- HWH7 flight controller added to supported boards (@Arwayday, PR:32248)
- TBS_LUCID_H7 now has an MPU6000 version (@andyp1per, PR:32512)
2) Driver changes
- ZB25VQ128D flash chip now supported for onboard logging (@LoyalLinjy, PR:32408)
- Kebni SensAItion as External AHRS now supported in IMU and INS modes (@magnus-lindhe-kebni, PR:31775)
- IST8310 compass probing corrected on fmuv3-based boards (@peterbarker, PR:32462)
3) AHRS specific changes
- EKF3 flash space requirements reduced (@tpwrules, PRs:32213, 32618)
- EKF3 is fixed to no longer reset to external altitude when it is configured to another source (@snktshrma, PR:32508)
- AHRS recorded origin check will correctly use the GPS (@andyp1per, PR: 32469)
- AHRS external origin setting will be delayed until filter is initialised (@andyp1per, PR: 32505)
- EKF3 missing constraints to FuseDragForces added (@tpwrules, PR:32128)
- Fix replay involving body odometry data (@twprules, PR:32598)
4) Camera and mount specific changes
- Camera servo driver's CAMERA_INFORMATION flags fixed (@Davidsastresas, PR:32564)
- RunCam param metadata names are fixed to match code (@tpwrules, PR:32601)
- Mount fix to angular rates when using FPV mode (@KSimeonAVTA, PR:32540)
- Mount scripting driver accepts rate targets (@peterbarker, PR:32626)
- Fix wire data issues with various Mount backends (@peterbarker, PR:32630)
5) Other libraries changes
- Fence for Plane and Copter supports alt above terrain (@andyp1per, PR:31619)
- Ignore-receiver in RC_OPTIONS is now respected during RC loss (@peterbarker, PR:32488)
- ATC_INPUT_TC and Q_A_INPUT_TC param defaults reduced (@rmackay9, PR:32643)
6) Copter/Tradheli specific changes
- Spool state is logged (@Georacer, PR:31668)
7) Plane specific changes
- Rangefinder state is logged (@Georacer, PR:31579)
- AHRS log message rate not affected by full rate attitude logging (@IamPete1, PR:32623)
8) Sub specific changes
- Automatically deal with misconfigured lights/actuators (@Williangalvani, PR:31109)
9) Rover specific changes
- Battery watt limiter feature added to custom build server (@mackay9, PR:32687)
10) Scripting changes
- plane_follow.lua messages will no longer crash the script if there is no target vehicle (@timtuxworth, PR:32567)
- plane_follow.lua has a fix for crosstrack oscillation (@timtuxworth, PR:32575)
------------------------------------------------------------------
Release 4.7.0-beta2 21-Mar-2026
Changes from 4.7.0-beta1
1) Board specific changes
- UAV-DEV GmbH Powermodule changes for production (@mirkix, PR:32417)
- X-MAV_AP-H743r1 switch to SPL06 baro only (@TompsonTan, PR:32480)
2) Driver changes
- External AHRS variances used in arming checks and EKF failsafe (@oursland, PR:32364)
- Precision landing ORIENT parameter only visible on Rover (@rmackay9, PR:32403)
- RunCam parameter conversion fix (@IamPete1, PR:32428)
- Trimble PX-1 GNSS-RTX-INS External AHRS support (@Ryanf55, PR:30232)
3) Copter/Tradheli specific changes
- Copter CTUN climb rate logging converted to m/s (@piVerified, PR:32474)
- TradHeli attitude controller leaky-I term during power-off fixed (@Ferruccio1984, PR:32273)
4) Plane specific changes
- Throttle slew fixed during first takeoff (@IamPete1, PR:32381)
- EXTENDED_SYS_STATE during AIRBRAKE fixed (@robertlong13, PR:32422)
5) Scripting changes
- param-set script renamed to param-lockdown (@rmackay9, PR:32489)
- PlaneFollow scripting parameter case fixed (@timtuxworth, PR:32456)
------------------------------------------------------------------
Release 4.7.0-beta1 06-Mar-2026
Changes from 4.6.3
1) Board specific changes
- 3DR and mRo boards support DPS310 baro (@TOTON95, PR:31560)
- 3DR ASAUAV periph support (@TOTON95, PR:31744)
- AeroCogito-H7Digital support (@michael-cerasulo, PR:31076)
- AeroFox-H7 defaults to no safety switch (@AEROFOXtech, PR:30614)
- AeroFox-PMU param defaults updated (@AEROFOXtech, PR:30514)
- Aeromind6X support (@ArkinLabs1Support, PR:31187)
- AIRBRAIN H743 support (@andyp1per, PR:31262)
- ARK_FPV autopilot support (@dakejahl, PR:28603)
- ARKV6X gets default serial port for RCIN (@dakejahl, PR:29851)
- ARKV6X-bdshot support (@dakejahl, PR:30409)
- Atlas-Control support (@AltasFlight, PR:31608)
- AtomRCf405 navi deluxe board support (@Hwurzburg, PR:25511)
- AUAV UAV-DEV GmbH powermodule support (@mirkix, PR:29781)
- AUAV UAV-DEV GmbH uav-dev-fc-um982 autopilot support (@mirkix, PR:29780)
- AUAV uav-dev-auav-g4 baro and airspeed sensor support (@mirkix, PR:30214)
- AUAV UAV-DEV GmbH M10S GNSS support (@mirkix, PR:29488)
- BlitzF745 gets filesystem support (@andyp1per, PR:31227)
- BlitzF745AIO and BlitzF745 support SPL06 baro (@andyp1per, PR:31466)
- BrahmaF4 gets OSD_TYPE2 param default (@Hwurzburg, PR:29902)
- BrotherHobbyH743 v2 support (@andyp1per, PR:31691)
- CBU-H7-Stamp updates including baro changed (@CBUnmanned, PR:28364)
- CBUnmanned CBU-H7-LC-Stamp support (@andyp1per, PR:28710)
- CORVON405V2.1 support (@holydust, PR:29665)
- CORVON743V1 support (@holydust, PR:29797)
- CrazyF405 support (@Srivenkateshwar, PR:28829)
- CSKY DroneCAN PMU periph support (@Hwurzburg, PR:31762)
- CUAV-V6X-v2 support (@cuav-chen2, PR:30900)
- CubeNode-ETH SERIAL1 protocol defaulted to PPP (@bugobliterator, PR:32187)
- CubeNode-ETH Serial8 CTS/RTS pin and LED fix (@haydendonald, PR:28665)
- CubeNode-ETH supports CAN-over-MAVLink (@peterbarker, PR:31055)
- CubeNode/CubeNode-ETH supports publishing raw IMU data (@bugobliterator, PR:28394)
- CubeOrangePlus-ODID remote id support (@BryonOI, PR:27561)
- CubePilot bootloaders updated to avoid flash erase due to single ECC error (@bugobliterator, PR:32318)
- CubeRed supports CAN Multicast (@bugobliterator, PR:29866)
- CubeRedPrimary icm45686 SPI speed increased (@bugobliterator, PR:28617)
- CubeRedSecondary supports running IOMCU FW (@bugobliterator, PR:29094)
- CubeRedSecondary uses MAVSysId 2 (@bugobliterator, PR:29446)
- DAKEFPVF405 support (@engineer-dakefpv, PR:30100)
- DAKEFPVH743_SLIM support (@engineer-dakefpv, PR:31733)
- DroneerF405 support (@DroneerUAV, PR:28846)
- ESP32 imu module v1.1 support (@nkruzan, PR:20449)
- F4BY F427 variant support (@peterbarker, PR:28700)
- F4BY_F427 supports QMC compass (@kozinalexey, PR:30903)
- F4BY_H743 support (@kozinalexey, PR:30905)
- FlyingMoonF407, F427 and H743 updates (@kenking2536, PR:31352)
- FlysparkF4 support (@magicrub, PR:28365)
- Foxeer H743v2 support (@andyp1per, PR:26501)
- GreenSight UltraBlue support (@sionv, PR:28995)
- H7 CPUs support 32MHz HSE (@jwoloch, PR:27861)
- Here4-FC WS2812 LEDs fixed (@haydendonald, PR:28919)
- HolybroG4_GPS supports ICP201XX barometer (@tridge, PR:28781)
- iFlight Blitz H743 Pro gets camera switch (@andyp1per, PR:28185)
- JHEMCUF405PRO (aka GHF405AIO-HD) support (@HishamGhosheh, PR:29697)
- JHEMCUF405WING autopilot support (@jhemcu, PR:26685)
- KakuteF4Mini, SkystarsH7HD minor default params fixes (@robertlong13, PR:30470)
- KakuteH7Mini-Nand supports scripting (@tpwrules, PR:29120)
- KT-FMU-F1 support (@redstonee, PR:32180)
- Lumenier LUX F765-NDAA support (@djmorvay, PR:29377)
- MatekG474-GPS periph support (@MATEKSYS, PR:28959)
- MatekH743 supports flash-from-SDCard (@ntamas, PR:29810)
- MatekH743-periph supports GPS-for-yaw (@rishabsingh3003, PR:28980)
- MatekH7A3-Wing support (@peterbarker, PR:31790)
- MatekL431-AUAV support (@MATEKSYS, PR:30829)
- MatekL431-Periph NeoPixel support fixed (@villivateur, PR:30469)
- MFE AirSpeed-CAN periph support (@mikefenghao, PR:28989)
- MFE_PDB_CAN periph support (@mikefenghao, PR:28694)
- MFE_POS3_CAN GPS periph support (@mikefenghao, PR:28515)
- MicoAir743-Lite support (@Minderring, PR:31304)
- Morakot autopilot support (@Rex-Taiphoon, PR:31316)
- NarinFC-H5, NarinFC-X3 autopilot support (@vololand, PR:29753)
- NTF_LED_TYPES param defaults include NeoPixels for many boards (@Hwurzburg, PR:30889)
- Nucleo H753 zi support (@wdunn001, PR:30639)
- ORBITH743 support (@Hwurzburg, PR:30237)
- PilotPi Linux autopilot support (@heeplr, PR:28247)
- PixSurveyA2-IND autopilot support (@mikefenghao, PR:29662)
- PocketBeagle 2 with DIY cape support (@juvinski, PR:30536)
- PocketBeagle supports DShot motor output (@juvinski, PR:32012)
- Resolute H7 support (@Hwurzburg, PR:32239)
- SkyRukh Surge H7 autopilot support (@DronmarketAS, PR:31230)
- SpeedyBeeF405V5 support (@Bloody-Badboy, PR:31884)
- Stellar F4, F4v2 support (@cvetaevvitaliy, PR:29088)
- Stellar H7V2 support (@cvetaevvitaliy, PR:28926)
- STM32F413xx MCU support (@joshanne, PR:28845)
- STM32H755xx supports Ethernet (@n-ito2222, PR:31655)
- SULILGH7 support (@SULILG, PR:29209)
- T3 Gemstone O1 Linux autopilot support (@ghost, PR:31232)
- TBS L431 airspeed peripheral (@tridge, PR:29185)
- TBS L431 Peripherals (@andyp1per, PR:29367)
- TBS-L431-BattMon DAC settings corrected (@andyp1per, PR:31583)
- TBS_LUCID_H7_WING_AIO pwm outputs corrected (@andyp1per, PR:31493)
- USB flow control enabled to speed up MAVFTP over USB (@tridge, PR:31549)
- VimDrones L431 param saving fixed (@Huibean, PR:30821)
- VimDrones pico and CAN servo hub periph support (@Huibean, PR:29818)
- X-MAV AP-H743r1 autopilot support (@TompsonTan, PR:31571)
- YARIV6X support (@KarthiAru, PR:30917)
- ZeroOne X6_Pro, ZeroOneAir autopilot support (@ZeroOne-Aero, PR:30171)
2) System / Driver changes
- ADIS16507 IMU gyro and accel data processing fixed (@ZeroOne-Aero, PR:32017)
- Ainstein LR-D1 driver updated to handle new packet format (@peterbarker, PR:30286)
- Airspeed driver supports up to 6 sensors (@IamPete1, PR:31162)
- Airspeed sensor changed if not set to use (@IamPete1, PR:31889)
- Airspeed sensor switching reduced while armed (@IamPete1, PR:31947)
- Airspeed startup cal can be skipped but may require manual cal (@IamPete1, PR:29467)
- Airspeed's EKF based health check fixed to only affect sensor being used (@IamPete1, PR:31893)
- AIS fix for multi part message decoding (@IamPete1, PR:29195)
- Analog battery monitor safely handles allocating too many analog channels (@WickedShell, PR:28910)
- AP_DroneCAN message subscription performance optimised (@tpwrules, PR:28400)
- AUAV airspeed sensor absolute channel maybe used as barometer (@IamPete1, PR:29535)
- AUAV Airspeed sensor support (@Tdogb, PR:27802)
- Baro Field Elevation set to 0m endlessly fixed (@rishabsingh3003, PR:25114)
- Baro thrust scaling compensates for prop wash effect on baro (see BARO1_THST_SCALE) (@andyp1per, PR:28982)
- Benewake TFS20L rangefinder support (@Shubham07-bit, PR:31161)
- BMM350 compass low temperature calibration fixed (@cuav-chen2, PR:31302)
- Bootloader and Firmware signing process improvements (@joshanne, PR:31623)
- CAN range finders correctly report type (Laser, Radar) via mavlink (@Charlie-Burge, PR:31033)
- ChibiOS updates to fix SD card watchdogs/stuck threads (@tpwrules, PR:31620)
- CPU load accurately recorded in @SYS/threads.txt (@andyp1per, PR:30913)
- Crash dump pre-arm message made less spammy (@IamPete1, PR:31414)
- CRSF bind fix (@andyp1per, PR:31396)
- Currawong Cortex generator support (@SchrodingersGat, PR:31022)
- Cypress S25FL064L flash chip support (@rishabsingh3003, PR:31242)
- Direct DMA transfer on Invensense v3 IMUs (@andyp1per, PR:28201)
- DO_JUMP counter reset when loop completed (see MIS_OPTIONS) (@tridge, PR:29763)
- DroneCAN battery monitor supports hot-swapping using new option bit (@tatsuy, PR:29690)
- DroneCAN GPS GPS-for-yaw warning messages made less spammy (@peterbarker, PR:30674)
- DroneCAN GPS shows num sats from receiver regardless of fix type (was always zero with no fix) (@fsaulo, PR:30251)
- DroneCAN message playback using script and CAN_Pn_OPTIONS param (@tridge, PR:30796)
- DroneCAN rangefinder resolution improved to sub-centimeter (@IamPete1, PR:32088)
- DroneCAN rangefinders correctly report too-low and too-high (@andyp1per, PR:31155)
- DroneCAN rangefinders with slow startup enabled correctly (@rishabsingh3003, PR:30364)
- DroneCAN RC supports link statistics (@olliw42, PR:28390)
- DroneCAN, Networking log virtual UART data rates (@IamPete1, PR:29486)
- DShot DMA buffer flushed and invalidated correctly (@andyp1per, PR:31398)
- DTS6012M rangefinder support (@FractalEngineer, PR:32188)
- Ensure that boards with small flash-based sdcard logging do not erase all logs on boot (@andyp1per, PR:31517)
- ESC Telemetry handles negative RPMs from DroneCAN ESCs (@rishabsingh3003, PR:30538)
- ESC Telemetry RPM timeout race conditions fixed (@robertlong13, PR:29028)
- FATFS (SDCard) filesystem reliability and error handling improvements (@tpwrules, PR:29332)
- Fence warns at the margins (see FENCE_OPTIONS) (@andyp1per, PR:28840)
- Fence horizontal margin made configurable (see FENCE_MARGIN_XY) (@andyp1per, PR:31018)
- Fix handling of more than 3 compasses connected to autopilot (@bugobliterator, PR:31496)
- GPS blending unhealthy if all blend weights are zero (@peterbarker, PR:31476)
- Gripper starts in the neutral position instead of always opening (@lthall, PR:31249)
- H7 File Log Buffer performance improvements (@andyp1per, PR:30842)
- Harmonic notch filter handles negative ESC RPMs (@andyp1per, PR:28309)
- Holybro CAN products support software CAN termination (@vincentpoont2, PR:29557)
- ICEngine slews smoothly between start percent and minimum throttle (@LachlanConn, PR:31727)
- ICM42688-V IMU support (uses ICM42688-P driver) (@peterbarker, PR:31199)
- IIM42652 IMU supports external clock input (aka CLKIN) (@cuav-chen2, PR:30541)
- IMUs support 3 harmonic notch filters (@tridge, PR:30246)
- INA260 battery monitor support (@IamPete1, PR:31324)
- JRE serial range finder provides signal quality (@n-ito2222, PR:31255)
- LEDs show GCS failsafe for Plane, Rover, Sub (@magicrub, PR:31257)
- LightWare GRF250/GRF500 lidar support (@rishabsingh3003, PR:30043)
- LIS2MDL compass support (@andyp1per, PR:31405)
- LittleFS (Flash) filesystem reliability and speed improvements (@tpwrules, PR:29472)
- Loweheiser generator support added (@Georacer, PR:29587)
- MAX31865 temperature sensor fixed for sub-zero temps (@andyp1per, PR:32019)
- MAX31865 temperature sensor gets params for nominal and reference resistance (see TEMPx_RTD_NOM, TEMPx_RTF_REF) (@IamPete1, PR:30406)
- Mission get_item ensures returned items are clean (previously unused fields could be random numbers) (@IamPete1, PR:29038)
- Mission handling better deals with home being in index 0 (@IamPete1, PR:29071)
- MMC5XX3 (MMC5983MA) external I2C compass support (@Jagadeeshdinesh, PR:29722)
- MS5837-02BA baro support (@Shaikimram, PR:29122)
- MS5837-30BA baro temperature compensation improved (@ES-Alexander, PR:29132)
- Networking port type change requires reboot to take effect (@magicrub, PR:30828)
- Networking supports capturing all packets to a pcap file (@tridge, PR:30637)
- Networking supports non-blocking sockets (@tridge, PR:30983)
- Networking supports up to 3 PPP interfaces (@tridge, PR:30587)
- OpticalFlow MAVLink backend accepts rad/s and supports roll/pitch stabilised sensor (@rmackay9, PR:30663)
- OSD INAV font fix for arrow at 11:00 position (@Caped-Crussader, PR:31448)
- OSD parameter screens indexed correctly from CRSF (@andyp1per, PR:31518)
- Periph battery monitors expose BATTx_options if battery summing is used (@AlfieLockrey, PR:28678)
- Periph firmware updates over very high latency links fixed (@tridge, PR:28948)
- PID filtering enabled on low flash boards (@tridge, PR:28787)
- Precision Landing mavlink backend supports LOCAL_FRD frame (@rmackay9, PR:30446)
- ProfiLEDs may be controlled via bit banging on IOMCU safety switch pins (@bugobliterator, PR:27732)
- Quintuple harmonic notch support (@andyp1per, PR:30994)
- Rangefinders with more than 327m range supported (@peterbarker, PR:27886)
- RC failsafe cleared if enable param set to zero (FS_THR_ENABLE=0 or THR_FAILSAFE=0) (@Hwurzburg, PR:29846)
- RC input uses full resolution to reduce jitter (@andyp1per, PR:29465)
- RC input valid only if we have ever seen RC input (@peterbarker, PR:31351)
- Rockblock 9704 satellite modem support (@stephendade, PR:31296)
- RPLidar A2M12 proximity sensor support (@amilcarlucas, PR:30737)
- RPM sensors run at 50hz on all vehicles (@IamPete1, PR:30632)
- SBF GPS undulation usage fixed (@peterbarker, PR:31997)
- Scheduler loop period during startup improved (@andyp1per, PR:30224)
- Serial passthrough timeout can be disabled by setting SERIAL_PASSTIMO to -1 (@tridge, PR:30212)
- Servo telemetry support for DroneCAN servos, Himark, Volz (@IamPete1, PR:28651)
- SPI full duplex optimisation for baros, IMUs, MAX7456 OSD (@andyp1per, PR:29614)
- Stats include total dist flown (STAT_DISTFLWN) and number of flights (STAT_FLTCNT) (@TroyNeubauer, PR:31002)
- Temperature sensor library supports up to 15 sensors (@rob-clarke, PR:31871)
- Temperature sensor support for motor and PCB temps (@rob-clarke, PR:31616)
- Terrain DisableDisk option allows using terrain on boards with no SD card (see TERRAIN_OPTION) (@TroyNeubauer, PR:30993)
- Terrain pre-arm check for old DAT files (@tridge, PR:32275)
- Terrain sanity check of spacing less than 1m (@tiagoc-santos, PR:29653)
- Tremble GPS obeys GPS_AUTO_CONFIG param for ethernet connection (@Ryanf55, PR:29641)
- Tremble Gsof GPS driver robustness improvements (@Ryanf55, PR:28802)
- Triple-channel INA3221 i2c voltage-and-current sensor support (@peterbarker, PR:15091)
- Ublox driver supports CFG_VALGET/VALSET/VALDEL msgs (required for X20/F20) (@bugobliterator, PR:31217)
- Ublox F9 GPS potential memory leak fixed (@peterbarker, PR:29374)
- Ublox GPS epoch time around u-blox week rollover fixed (@rishabsingh3003, PR:31914)
- Ublox GPS supports NAVIC constellation (@MonarchOfShadows69, PR:31202)
- VisualOdometry MAVLink backend supports aligning position with GPS (@rishabsingh3003, PR:30650)
- Volz telemetry support including motor and PCB temp (@IamPete1, PR:28188)
3) AHRS/EKF changes
- AHRS without GPS may set origin to last known location (see AHRS_ORIGIN_LAT, LON, ALT) (@andyp1per, PR:31177)
- DCM drift correct fix for use of TAS/EAS (@peterbarker, PR:28728)
- DCM uses only horizontal component of wind speed for heading consistency check (@muramura, PR:32339)
- EKF source option defaults to not FuseAllVelocities (@rishabsingh3003, PR:30584)
- EKF3 allow extnav to work without vertical velocity (@rishabsingh3003, PR:29213)
- EKF3 CPU, RAM, flash usage and code generation improvements (@tpwrules, PR:32003)
- EKF3 delta velocity bias covariance fixed (may resolve occasional onground covariance instability) (@tpwrules, PR:32069)
- EKF3 GPS sat count based noise scaling only applied when actually using GPS (@rishabsingh3003, PR:29847)
- EKF3 reverts to primary compass on ground (@rishabsingh3003, PR:29300)
- EKF3 support for cores to run different sensor sources (@rishabsingh3003, PR:29750)
- EKF3 supports manual lane switching (see EK3_OPTIONS and EK3_PRIMARY parameters) (@rishabsingh3003, PR:29623)
- EKF3 uses the correct extnav variances for posvel fusion (@rishabsingh3003, PR:29420)
- EKF3 wind estimate based drag force fusion rho calculation fixed (@jschall, PR:28495)
- EKF3 with optical flow but no compass fixed (was cycling between aiding/stopped-aiding) (@rishabsingh3003, PR:32136)
- External AHRS IMU timestamp handling fixed (was causing accel cal to fail) (@andyp1per, PR:31927)
- External AHRS logs only when EAHRS_TYPE non-zero to avoid unnecessary logging (@muramura, PR:31472)
- External AHRS pre-arm check of origin skipped unless primary AHRS (@rishabsingh3003, PR:31377)
- External AHRS supports variances per backend (@tridge, PR:28405)
- GSF accel usage during dynamic maneuvers fixed (@rmackay9, PR:32212)
- Non-GPS using optical flow may use SRTM data when beyond the rangefinder range (@rmackay9, PR:30718)
- Protect against uninitialized location and origin (@Ryanf55, PR:29636)
- SBG External AHRS support (@magicrub, PR:31048)
4) Camera and gimbal enhancements
- AVT camera gimbal support (@rmackay9, PR:30643)
- CADDX mount support roll pitch EF mount lock via aux sw option (RCx_OPTION = 185) (@Hwurzburg, PR:31461)
- Camera mavlink commands use target sysid and compid (@rmackay9, PR:30517)
- FPV Lock support on some gimbal (aka roll/pitch body frame lock) (@Hwurzburg, PR:31832)
- MAVLink gimbal retract mode fix (@KSimeonAVTA, PR:31635)
- MAVLink gimbals may implement ROI directly (@KSimeonAVTA, PR:32162)
- Mount Lock RC aux function inits heading reference instead of using North (@Hwurzburg, PR:31713)
- RC failsafe handling including stop moving if RC lost while in rate control (@peterbarker, PR:16251)
- POI lock aux function switch added (@Hwurzburg, PR:31860)
- Runcam integration improved including use during missions (@andyp1per, PR:26887)
- Scripting backend ROI handling fixed (@neo-0007, PR:31552)
- Servo camera support focus and zoom control (@Williangalvani, PR:29247)
- Servo retract support extended to all gimbals (@landswellsong, PR:30810)
- Solo and SToRM32 gimbal RC rate targetting fixed (@peterbarker, PR:31706)
- SToRM32 initialisation improved by searching for gimbal while vehicle disarmed (@rmackay9, PR:30501)
- Topotek tracking error handling improved (@laozhou-fujian, PR:31768)
- Viewpro supports zoom for IR sensors (@eppravitra, PR:29140)
- Warning added if ROI active but AHRS/EKF has no position estimate (@Hwurzburg, PR:31499)
- XFRobot gimbal support (@rmackay9, PR:29599)
5) Parameter scaling and/or renaming related changes
- ANGLE_MAX (centi-degrees) replaced by ATC_ANGLE_MAX or Q_A_ANGLE_MAX (in degs) (@rmackay9, PR:31978)
- ARMING_CHECK replaced with ARMING_SKIPCHK (@tpwrules, PR:31568)
- ATC_ACC_R/P/Y_MAX renamed and scaled to deg/s/s (@rmackay9, PR:32192)
- AVOID_ANGLE_MAX renamed to AVOID_ANG_MAX and converted to degrees (@rmackay9, PR:32186)
- Copter Land, PosHold and RTL parameters renamed and converted to meters (@rmackay9, PR:32169)
- Copter position controller converted to meters including logging (@lthall, PR:30516)
- Copter/Sub's CIRCLE_RADIUS replaced by CIRCLE_RADIUS_M (@rmackay9, PR:31990)
- Copter/TradHeli PILOT parameters renamed and converted to meters (@rmackay9, PR:32184)
- EK3_MAX_FLOW renamed to EK3_FLOW_MAX (@rmackay9, PR:30729)
- SERIALn_OPTIONS bits moved to MAVn_OPTIONS (@peterbarker, PR:30094)
- QuadPlane attitude control, position control converted to SI units (@lthall, PR:30683)
- Waypoint navigation params converted to deg and meters and renamed from WPNAV to WP (@rmackay9, PR:32147)
6) Copter specific changes
- Acro balance parameters pre-arm check (@lthall, PR:31435)
- Acro mode trainer minor fix when ACRO_TRAINER = 1 (Leveling) (@lthall, PR:30392)
- Acro mode uses Rate control only with scaled I-term when ACRO_OPTIONS = 1 (Rate Loop Only) (@andyp1per, PR:31171)
- Alt-above-ground calculation corrected for non-GPS modes including non-GPS Land and landing gear (@ahmedmsalah99, PR:30698)
- Attitude command model replaced with improved Real Time S-Curve algorithm (@lthall, PR:31849)
- Attitude control, Loiter, position control and navigation converted to SI units (@lthall, PR:30120)
- Auto mode supports circular arcs (use ARC_WAYPOINT command) (@lthall, PR:31139)
- Auto mode uses LAND command's alt field to slow descent (@IamPete1, PR:30195)
- Auto trim can be started from RC aux function (set RCx_OPTION = 182) (@peterbarker, PR:28881)
- Auto trim works in position hold modes (@Hwurzburg, PR:29341)
- Autotune gain backoff added to improve stability margin (see AUTOTUNE_GMBK) (@lthall, PR:31127)
- Brake mode may trigger GCSs failsafe action (@IamPete1, PR:30670)
- Co-rotating X8 frame support (@tridge, PR:30585)
- Compass pre-arm health check text includes compass number (@muramura, PR:31563)
- Custom modes available using scripting (@IamPete1, PR:28110)
- Dijkstras object avoidance corner detection fix (@lthall, PR:30457)
- EKF failsafe gets "Report Only" action and notifies pilot in all cases (@IamPete1, PR:30189)
- Fast rate loop runs at full IMU filter rate (see FSTRATE_ENABLE, FSTRATE_DIV) (@andyp1per, PR:27029)
- Follow mode improvements for target estimation and control (@lthall, PR:30101)
- Guided mode resumes horizontal control when takeoff completes even if lower than WP_NAVALT_MIN (@lthall, PR:31958)
- Lean-angle based object avoidance disabled by default (re-enable with custom build server) (@rmackay9, PR:32360)
- Loiter speed may be changed using CH6 tuning (@rishabsingh3003, PR:14188)
- Loiter supports co-ordinated turns by default (see LOIT_OPTIONS) (@lthall, PR:31061)
- LOITER_TURNS with zero radius bug fixed (was using previous iteration's radius) (@henrywarhurst, PR:30874)
- LoiterTurns command announces number of circles completed (@peterbarker, PR:30231)
- LoiterTurns command moves to circle edge in a straight line (@peterbarker, PR:31379)
- Motors support ESC startup delay (see MOT_IDLE_SEC) (@lthall, PR:31963)
- Payload place parameters hidden when payload place is disabled (@tatsuy, PR:31998)
- PosHold timing fix when main loop rate is not 400hz (@lthall, PR:30358)
- Position control EKF reset handling improved (@lthall, PR:31357)
- Real time S-Curves use improved jerk limited algorithm (@lthall, PR:31848)
- RTL final alt fixed when RTL_ALT_FINAL non-zero (@IamPete1, PR:29244)
- Save trim scaling problem fixed (was assuming lean angle max of 45 deg) (@lthall, PR:32233)
- Second transmitter-tuning control channel added (see TUNE2 parameters) (@peterbarker, PR:30042)
- Simple mode fix to never consume invalid RC input (@peterbarker, PR:30071)
- Stabilize, Acro, Drift and Turtle modes may not be entered during RC failsafe (@peterbarker, PR:30543)
- Support for up to 32 motors, including dodecahexa-octa (two-layers of 8 motors each) (@peterbarker, PR:29020)
- Terrain failsafe message improved (@timtuxworth, PR:30544)
- Throw mode gets target ascent and descent params (see THROW_ALT_DCSND, THROW_ALT_ACSND) (@peterbarker, PR:29869)
- Toy mode wifi reset check fixed (@peterbarker, PR:31445)
- WeatherVaning emits active message for change of direction (@IamPete1, PR:31104)
- WP_NAVALT_MIN is only applied to takeoff (not landing) (@IamPete1, PR:30662)
7) TradHeli specific changes
- Autorotation restructured and improved speed controller added (@MattKear, PR:28209)
- Collective transition ramp (@Ferruccio1984, PR:31561)
- Do not allow users to set throttle-based notch (@MattKear, PR:28843)
- Rotor runup complete checks governor is engaged (@Ferruccio1984, PR:30952)
8) Plane/QuadPlane specific changes
- Added optional full roll limiting near stall using airspeed sensor (@rubenp02, PR:29843)
- Advanced Failsafe option to not go back to the loss comm mission item if we are already in the return path (@eppravitra, PR:29961)
- AHRS fly-forward re-evaluated on mode mode change (avoids clearing wind estimates on mode change) (@peterbarker, PR:28346)
- Airspeed nudge supported when using synthetic airspeed (@IamPete1, PR:31679)
- Allow lower speeds in landing final (@rubenp02, PR:29265)
- AP_TECS fix off-by-one error in TECS_HDEM_TCONST docs (@Ryanf55, PR:30160)
- Attitude stall prevention adjustments (see AIRSPEED_STALL) (@rubenp02, PR:29092)
- Autoland mode added (@Hwurzburg, PR:28771)
- Blackbox logging using BBX onboard log messages (@tridge, PR:30926)
- Climb slope minimum height parameter added (see CLIMB_SLOPE_HGT) (@rubenp02, PR:29077)
- Crash detection false positive fixed on "shake to launch" (@rubenp02, PR:29390)
- CTUN.Pitch log field corrected to remove PITCH_TRIM (@Hwurzburg, PR:29152)
- D Feedforward scaling for PID controllers fixed (but rarely used) (@grep265, PR:30753)
- Do not apply minimum throttle during SLT VTOL airbrake (@Georacer, PR:28329)
- Flight options bit added to enable flaps by actual speed (@tridge, PR:30476)
- Forward throttle cutoff voltage parameter added (see FWD_BAT_THR_CUT) (@rubenp02, PR:29080)
- Forward transition throttle glitch fixed for tilting rotor quadplanes (@priseborough, PR:29696)
- get_fwd_pitch_is_limited check fixed (@lthall, PR:29826)
- Guided mode command timeout made configurable (see GUIDED_TIMEOUT) (@eppravitra, PR:31032)
- Heading lock upon gnd speed made consistent (@Hwurzburg, PR:29104)
- ICE governor while disarmed in non-manual (@robertlong13, PR:30201)
- ICE input control fully move to aux function (@IamPete1, PR:28655)
- Idle throttle setting for hand/bungee/catapult launches (see TKOFF_THR_IDLE, TKOFF_OPTIONS) (@Georacer, PR:28351)
- Inflight Tuning text displayed on OSD and GCS (@Yury-MonZon, PR:28831)
- is_landing correctly reported to GCS during AUTOLAND (@Hwurzburg, PR:29553)
- Load factor and roll formulas fixed along with TECS's TASmin (@IamPete1, PR:29101)
- log throttle-is-suppressed to STAT message "Sup" field (@peterbarker, PR:28906)
- Motor test obeys E-Stop during motor test and allow changing values (@IamPete1, PR:29491)
- Pitch stick mixing full override fixed (@rubenp02, PR:29841)
- Precision landing accuracy fixed (@tridge, PR:31677)
- Prevent excessive aero surface deflections in VTOL operation (@priseborough, PR:31010)
- Quadplane autotune heading fixed while holding position (@lthall, PR:32214)
- Quadplane coordinates turns during transition (@robertlong13, PR:30434)
- Quadplane POSITION1 velocity control improved (@robertlong13, PR:30309)
- Quadplane pre-arm check for RTL_AUTOLAND vs Q_RTL_MODE (@peterbarker, PR:31457)
- Quadplane stopping speed equation fixed (@eppravitra, PR:29712)
- Quadplane supports thrust loss detection (@IamPete1, PR:31764)
- QuadPlane yaws more smoothly during back transition (@robertlong13, PR:31401)
- RC_FS_TIMEOUT parameter support (@Maarrk, PR:31441)
- Reverse thrust available in manual modes with `USE_REV_THRUST` 0 (@IamPete1, PR:30532)
- Roll-only stick mixing added (see STICK_MIXING) (@rubenp02, PR:29842)
- RPM check added to takeoff (@robertlong13, PR:29052)
- Short failsafe simplified by removing FS_SHORT_TIMEOUT (@Jazhi, PR:30350)
- Soaring adds named value float publisher of soaring thermal EKF state (@Ryanf55, PR:29030)
- Soaring rate limit the NVF publishers to 4Hz (@Ryanf55, PR:29064)
- System ID on RC aux Switch (set RCn_OPTION=184) (@bnsgeyer, PR:29608)
- Takeoff roll error fixed when flying inverted (@Maarrk, PR:32110)
- TEC3 log message field formatting rearranged (@peterbarker, PR:30486)
- TECS altitude reset along with the rest of the controllers (good for balloon drops) (@Georacer, PR:27827)
- TECS initializes flare sink demand with current demand (@Georacer, PR:31610)
9) Rover specific changes
- AIS information populated in object avoidance database (used by BendyRuler) (@IamPete1, PR:30185)
- Arm automatically after arming checks complete (set ARMING_REQUIRE=3) (@peterbarker, PR:29066)
- Arming check added to optionally require position (see ARMING_NEED_LOC) (@peterbarker, PR:29073)
- Arming check if terrain data required but not available (@rmackay9, PR:31365)
- DCM fallback disabled by default (see AHRS_OPTIONS) (@rmackay9, PR:31632)
- DO_CHANGE_SPEED command's speed type (param1) must be 0 or 1 (@IamPete1, PR:30509)
- Follow mode better handles a stopped leader (@stephendade, PR:30012)
- Guided mode position targets rejected if acceleration supplied (@peterbarker, PR:28076)
- Log when armed fixed (regardless of safety switch state) (@IamPete1, PR:32082)
- Loiter or Hold added as a failsafe action (@Williangalvani, PR:30079)
- MAVLink stream rate requests do not save to params (e.g. stream rates revert on next reboot) (@rmackay9, PR:28894)
- MOT_REV_DELAY allows delaying before reversing motors (@tridge, PR:30188)
- MOT_THR_MAX minimum reduced to 5% to support very powerful vehicles (@IamPete1, PR:31576)
- Omni vehicle brushed motor support fixed (@mattp256, PR:29187)
- Pivot turn control improved with steering deceleration max parameter (see ATC_STR_DEC_MAX) (@stephendade, PR:30539)
- Pivot turns disabled by default (see WP_PIVOT_ANGLE) (@rmackay9, PR:31376)
- RC_FS_TIMEOUT parameter support (@Maarrk, PR:31441)
- Rover AMP limiter added (see BATTn_WATT_MAX, MOT_BAT_WATT_TC) (@SpiciestMayo, PR:31285)
- Speed max increased to 100m/s for pilot controlled modes (@IamPete1, PR:32080)
10) Sub specific changes
- Acro mode pilot throttle input bug fix (@xianglunkai, PR:31469)
- Allow limiting upwards throttle at surface (@Williangalvani, PR:29995)
- Baro data timeout extended to 20sec (@peterbarker, PR:30887)
- Correct operation of pilot input and rc failsafes (@Hwurzburg, PR:30365)
- Depth sensor message made less spammy (@Hwurzburg, PR:29891)
- DO_CHANGE_SPEED command's speed type (param1) must be 0 or 1 (@IamPete1, PR:30509)
- Do not interpret zero altitude waypoints as 'current altitude' (@Williangalvani, PR:30823)
- Lights and video switches moved to aux functions (@Williangalvani, PR:29863)
- Loop rate logging added (see LOG_BITMASK's IMU_FAST bit) (@clydemcqueen, PR:28747)
- OSD support added to FPV builds (@Hwurzburg, PR:30271)
- PosHold horizontal velocity limited to PILOT_SPEED to avoid bounceback (@clydemcqueen, PR:28205)
- Pre-arm check for aux func disarm/estop (@Hwurzburg, PR:29979)
- RCMAP supports remapping RC input channels (@Hwurzburg, PR:30018)
- RSSI support (@Hwurzburg, PR:30166)
- SCALED_PRESSURE3 fixed for standard users (@ES-Alexander, PR:31133)
- Servos refactored (see ACTUATOR params) (@Williangalvani, PR:28801)
- Simplify home logic (@Williangalvani, PR:30891)
- Surface mode number reporting to GCS fixed (@Hwurzburg, PR:29906)
- Surface mode works with no altitude data (@Williangalvani, PR:29996)
- Surface tracking reset if disarmed (fixes dive when disarmed) (@clydemcqueen, PR:30103)
- Sysid filtering added for remote leak detection (@ES-Alexander, PR:32255)
- Tether turn counting improved (@ES-Alexander, PR:30011)
- Traditional RC tx/rx supported (@Hwurzburg, PR:29742)
- Warn or automatically fix misconfigured relay/leak detector (@Williangalvani, PR:31702)
- WATER_DEPTH MAVLink reporting added (@SpiciestMayo, PR:31622)
- When disarmed and in manual mode, set throttle out to neutral value (@amarburg, PR:32057)
11) Tracker specific changes
- ATTITUDE_TARGET mavlink message sent to GCS (@python36, PR:30548)
- GCS_PID_TUNING fixed (@landswellsong, PR:31284)
- PWM outputs "corked" to ensure consistent outputs (@landswellsong, PR:32368)
12) AP_Periph specific changes
- Actuator telemetry support added (@Huibean, PR:31557)
- Basic BMS support (@rmackay9, PR:31791)
- BatteryMonitor reports state of health (@IamPete1, PR:29700)
- BatteryTag support (@tridge, PR:29983)
- CAN-over-MAVLink added (@peterbarker, PR:30782)
- ESC telemetry fills in ESC error count if available (@IamPete1, PR:31528)
- Periph DroneCAN msg order fix (@tpwrules, PR:31673)
- PWM servo command timeout (see SRV_CMD_TIME_OUT) (@IamPete1, PR:30363)
- Simultaneous serial passthrough connections (@peterbarker, PR:30133)
- Support for sending servo telemetry (@IamPete1, PR:31577)
13) Scripting changes
- AHRS's get_accel() binding returns primary accel rather than first usable (@andyp1per, PR:28588)
- AHRS_switch.lua gets minor improvement to RC aux switch handling (@tridge, PR:28386)
- mavlink:init docs corrected and scripts fixed including plane_aerobatics, copter-slung-payload (@IamPete1, PR:29246)
- Aux auths reset when scripts restarted (avoids "PreArm: Too many auxiliary authorisers" error) (@robertlong13, PR:29337)
- BattEstimate.lua applet's SoC model generalised for more battery chemistries (@rubenp02, PR:29391)
- Binding for fence margin direction (@andyp1per, PR:31009)
- Binding for mcu_voltage (@haydendonald, PR:28338)
- Binding for scripted battery monitors to set state of health (@IamPete1, PR:29701)
- Bindings for more fence methods (@andyp1per, PR:31603)
- Bindings for serial port parity and stop bits (@ajboainain, PR:30226)
- Bindings for servo telemetry (@IamPete1, PR:28857)
- Bindings for ESC telem power percentage and support "depends" keyword on fields (@IamPete1, PR:31502)
- config_profiles.lua examples allows selection of different configuration sets (@peterbarker, PR:31052)
- copter_terrain_brake.lua applet reads aloud activation message (@peterbarker, PR:30760)
- CRSF memory leaks and nullptr dereferences fixed (@tpwrules, PR:31718)
- Duplicate names checked when adding scripting params (@IamPete1, PR:30523)
- EFI_DLA64.lua driver supports new protocol for updated EFI engine from DLA (@tridge, PR:29953)
- EFI_Halo6000.lua driver enable fix (@Georacer, PR:29758)
- Enhanced copter attitude control bindings (see set_target_angle_and_rate_and_throttle) (@andyp1per, PR:25814)
- ESC_slew_rate.lua example for testing ESC slew limits (@tridge, PR:28415)
- fake camera tracking example added (@robertlong13, PR:28418)
- follow-target-send.lua applet sends leader position to followers (@rmackay9, PR:28886)
- gcs:set_message_interval port range expanded to include serial-over-ethernet ports (@tpwrules, PR:31279)
- gps_switch.lua example supports switching GPS used by EKF (@Ryanf55, PR:30239)
- HFE EFI driver script supports logging all CAN frames (@tridge, PR:28772)
- INF_Inject.lua EFI temperature ranges corrected (was C, now Kelvin) (@WickedShell, PR:30608)
- Initial memory usage message only printed if SCR_DEBUG_OPTS's Runtime messages bit set (@tpwrules, PR:31180)
- Logging memory leak reporting fixed (was not actually leaking) (@tpwrules, PR:31688)
- LTE_modem.lua driver supports Air780, BG95, CMUX, EC200U, EG800Q, SIM7070G including via PPP (@tridge, PR:30213)
- Lua example to convert pwm output to sbus (see sbus_send.lua) (@robot-to-society, PR:31781)
- Lua upgraded to ver 5.3.6 (@tpwrules, PR:29116)
- Mavlink handling fixed to avoid crash on reinit with bigger buffer size (@tpwrules, PR:31682)
- MAVLink messages with incorrect CRC are rejected (@IamPete1, PR:31268)
- Memory leak in socket recv() fixed (@tridge, PR:31039)
- message_interval applet sends more messages (@rmackay9, PR:31320)
- Minor script changes to resolve luacheck issues (@IamPete1, PR:28931)
- MissionSelector applet handles file access failures (@IamPete1, PR:28520)
- mount-djirs2 driver updated including support for connecting using a DroneCAN bus (@tpwrules, PR:28512)
- net-ntrip.lua applet supports RTK GPS via direct connection to an unsecure NTRIP caster (@yuri-rage, PR:29821)
- param-set.lua applet allows rejecting attempts to set parameters (@peterbarker, PR:29989)
- Param_Controller.lua time out fixed and support added for comma delimited lists (@JosephStew-art, PR:30475)
- Plane autoland applet added (@Hwurzburg, PR:28591)
- Plane follow lua applet (@timtuxworth, PR:30654)
- plane-callout-alt.lua example provides alt callouts in feet (@timtuxworth, PR:28426)
- plane_precland.lua fix when PLND_XY_DIST_MAX is 0 (@AlexisMGL, PR:30685)
- plane_ship_landing.lua gets pos/vel sanity check (@peterbarker, PR:29886)
- qnh_alt.lua example sends QNH altitude to GCS (useful for BVLOS) (@tridge, PR:29705)
- RAM and flash cost reduced by removing utf8 assistance code (unlikely anyone was using it) (@tpwrules, PR:30625)
- RAM usage reduced by loading metatables on first use (@tpwrules, PR:31717)
- Repl applet minor bug fix (@tpwrules, PR:31944)
- revert_params.lua applet supports motor slew rates, notch params (@tridge, PR:30815)
- RockBlock.lua applet and MAVLinkHL.lua example get better mavlink parsing (@stephendade, PR:29314)
- Scripts may be stored in flash on boards using littlefs (@andyp1per, PR:28724)
- Scripted CRSF Menus (@andyp1per, PR:29368)
- Scripting e-stop RC aux function (set RCn_OPTION = 316) (@andyp1per, PR:30508)
- Scripting engine run in protected mode to fix panic hardfault (@tpwrules, PR:31793)
- Scripting RC aux functions increased to 16 (@IamPete1, PR:28858)
- Scripts may use default serial baudrate (@landswellsong, PR:31269)
- Segfault fixed from trying to send a mavlink message on an invalid channel (@IamPete1, PR:31031)
- set_ahrs_origin promoted to an applet (@rmackay9, PR:28770)
- Support for sending/receiving DroneCAN messages (@tridge, PR:29310)
- throttle_kill.lua applets supports turning off turbine engines that rely on low PWM (@tridge, PR:28714)
- Torqeedo TorqLink lua driver (see drivers/torqeedo-torqlink.lua) (@rmackay9, PR:29145)
- Traxxas Velineon ESC example script (@IamPete1, PR:30976)
- trisonica-mini.lua example decode wind speed from Trisonica LI-550 (@Ryanf55, PR:30054)
- UltraMotion servo driver fixes (@robertlong13, PR:30651)
- Unify handling of legacy dot vs. colon calls (@tpwrules, PR:31681)
- Viewpro lua driver removed (use C++ driver instead) (@deepak61296, PR:31774)
- VSPeak Modell flow meter driver added (@Georacer, PR:28627)
14) ROS2/DDS changes
- Airspeed control added for planes in GUIDED mode (@Ryanf55, PR:29829)
- Airspeed message includes eas_2_tas factor (@tizianofiorenzani, PR:29522)
- Arm commands handled through external control for additional safety (@Ryanf55, PR:28609)
- Battery topic reports all available batteries (@tizianofiorenzani, PR:28291)
- Compile-time configurable rates for each publisher supported (@Ryanf55, PR:28434)
- Configuration fixes so enable options work as expected (@srmainwaring, PR:29009)
- Goal topic publisher added (@tizianofiorenzani, PR:28372)
- Initialisation fixed on UDP transport (@stephendade, PR:30899)
- Namespace representation for global constants added (@snktshrma, PR:29850)
- Publish all available GPS instances (@tizianofiorenzani, PR:29419)
- Quadplane takeoff support (@Ryanf55, PR:30098)
- RC channels message support (@tizianofiorenzani, PR:28907)
- Status Message provides vehicle type, mode, RC Failsafe (@tizianofiorenzani, PR:28337)
- Topic retries added (@stephendade, PR:31599)
15) Linux/ESP32/QURT (ModalAI) changes
- AP_HAL_ESP32 fix to GPIO relays (@DanyloZhubryd, PR:32055)
- ESP32 CPU and memory usage optimisations (@srmainwaring, PR:28803)
- ESP32 I2C and SPI driver fixes (@tpwrules, PR:29269)
- ESP32 RC over UART support (@srmainwaring, PR:28650)
- ESP32 scheduler and UART thread ownership fixes (@srmainwaring, PR:29010)
- ESP32 wifi connection reliability improved (@sblaksono, PR:28460)
- Increase max notch filters for Linux boards (@andyp1per, PR:31920)
- Linux boards gets SPI-based serial LED driver for NeoPixel/WS2812 (@andyp1per, PR:31951)
- M5Stack M5Stamp Fly 55mm quadcopter support (@tpwrules, PR:29448)
- ModalAI Sentinel with IO board and Starling 2 Max parameter files added (@katzfey, PR:28844)
- QURT support for the ModalAI IO board to support PWM ESCs (@katzfey, PR:28834)
16) Logging related changes
- CAN servo messages (CSRV) logging fixed to avoid missed messages (@tridge, PR:28404)
- ControlMonitor removed including logging (use PID Review WebTool instead) (@rmackay9, PR:29610)
- DCM logging of airspeed to DCM log message (@peterbarker, PR:31510)
- Fsync code enhancements (@tpwrules, PR:29308)
- Generator GEN log message renamed to RICH (@peterbarker, PR:30033)
- Log last time we saw our GCS on each link in MAV message (@peterbarker, PR:30495)
- Log rate of dropped incoming serial data (@IamPete1, PR:29473)
- Log transfer expects longer CPU delays avoiding possible watchdogs (@peterbarker, PR:31955)
- Log Unix epoch time (@peterbarker, PR:29948)
- POWR message ACC flag's Changed field fixed (@peterbarker, PR:28618)
- Pre-arm failure if no logging backends are available (@tpwrules, PR:31534)
- Protect against memory corruption if scripts log very large messages (@tpwrules, PR:31680)
- Rally altitude logging multiplier corrected (@peterbarker, PR:32298)
17) GCS / MAVLink related changes
- Accel calibration ack only accepted from initial source sysid/compid (resolves conflict with Gremsy gimbals) (@meee1, PR:18989)
- AVAILABLE_MODES message sends list of available modes to GCS (for QGC) (@IamPete1, PR:28566)
- DO_SET_GLOBAL_ORIGIN command support added (@peterbarker, PR:29699)
- FLIGHT_INFORMATION message added (@nexton-winjeel, PR:25489)
- High latency connections do not initialise streamrates (@stephendade, PR:31331)
- HIL_GPS message support removed (@peterbarker, PR:28593)
- HWSTATUS mavlink message removed by default (re-enable with custom build server) (@peterbarker, PR:31174)
- MAV_GCS_SYSID_HI param allows GCS failsafe handling to work with multiple ground stations (@tridge, PR:30627)
- MAVFTP burst complete indicator fixed (@ZachFleck42, PR:30399)
- MAVFTP fix to create file if opened as "write only" (@deepak61296, PR:31872)
- MAVFTP fix to file name length comparison to support MAVSDK (@alploskov, PR:26462)
- MAVFTP fix to returned error code from close calls (@ntamas, PR:31045)
- MAVFTP speedup (@tridge, PR:31551)
- MAVn_OPTIONS bit added to forward mavlink messages with bad CRCs (@peterbarker, PR:25419)
- MAVn_OPTIONS bit to enable channel-specific signing (@ben-sembira-1, PR:29546)
- MOUNT_CONFIGURE, MOUNT_CONTROL message support removed (use equivalent commands instead) (@peterbarker, PR:28990)
- Nicer mode names for QGC (@tpwrules, PR:31897)
- ODOMETRY, VISION_POSITION_ESTIMATE, ATT_POS_MOCAP consume covariance, pos and ang err calcs fixed (@chobitsfan, PR:32084)
- PARAM_ERROR error message support (reports error to GCS if param cannot be set) (@peterbarker, PR:31062)
- Plane supports DO_REPOSITION command with HEADING_TYPE_DEFAULT (@timtuxworth, PR:28527)
- Preflight calibration of airspeed return code fixed no airspeed (@rishabsingh3003, PR:30111)
- PREFLIGHT_REBOOT command accepted only if sent to autopilot compID (@nexton-winjeel, PR:31537)
- Raise number of MAVLink ports to 8 (or 32 with code definition change) (@tridge, PR:28343)
- RANGEFINDER messages not sent by default (use DISTANCE_SENSOR instead) (@peterbarker, PR:31095)
- Rover's POSITION_TARGET_GLOBAL_INT alt units fixed (@peterbarker, PR:32315)
- Rover's WHEEL_DISTANCE timestamp overflow fixed (@peterbarker, PR:32302)
- Sanity check SET_GPS_GLOBAL_ORIGIN altitude (@Maarrk, PR:31261)
- Streamrates, sysid, mygcs-sysid, etc moved to MAV_ parameters (@peterbarker, PR:29617)
- Support requesting MESSAGE_INTERVAL via REQUEST_MESSAGE cmd (@nexton-winjeel, PR:28353)
- SYS_STATUS errors_comm field holds number of received packets dropped (@amilcarlucas, PR:20949)
- SYS_STATUS errors_count3 fields holds dropped message count (@peterbarker, PR:30187)
- Tracker's GLOBAL_POSITION_INT alt units fixed (@peterbarker, PR:32312)
- WIND mavlink message speed field fixed (was using 3D length) (@peterbarker, PR:32311)
18) Features removed due to flash constraints
- Beacon, Generator, KDECAN, Robotis and Volz servos, Winch support removed on most boards (re-enable with custom build server) (@peterbarker, PR:30297)
- External AHRS removed from <2MB boards (@tridge, PR:30062) remove ExtAHRS from <2MB boards
- ICE, EFI, GHST telemetry and Video TX disabled on Pixhawk1-1M (@andyp1per, PR:32062)
- SBP GPS raw logging removed (@peterbarker, PR:29469)
19) Developer and support related changes
- Bootloader reads Git SHA (@joshanne, PR:28492)
- Copter internals converted to SI units and NED frame (@lthall, PR:31513)
- Copter loses InertialNav library wrapper for EKF (code simplification) (@lthall, PR:30153)
- Crashdump memory regions increased to diagnostic data (@bugobliterator, PR:28395)
- Ensure stable IMU timing on RealFlight (@andyp1per, PR:29921)
- FlightAxis support for automatically resetting the aircraft position (@robertlong13, PR:28282)
- RealFlight performance under cygwin improved (@peterbarker, PR:31539)
- Simulink arducopter.slx updated from 4.3.3 to 4.6.2 (@amilcarlucas, PR:31047)
- Various QURT compiler support improvements (@katzfey, PR:28624)
------------------------------------------------------------------
Sub-4.5.0 beta1 22-February-2024
- Branched from Copter 4.5
- Innumerable system-level improvements; see Copter and Plane 4.2-4.5 release notes
- Added SurfTrak mode for surface tracking (Altitude Hold with rangefinders)
Sub-4.1.2 22-February-2024
- Add support for additional joystick axis for roll/pitch
- Allow using Compass Learn with no GPS
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.1 2-November-2023
Changes from 4.1.0:
- prevent multiple baro drivers on the same device
- Revert attitude control to 3.5 implementation, hopefully resolving the roll/pitch drift for good.
- Fix Python 3.11 compatibility
- drop MMC5xx3 sample rate to 100Hz
- Introduce CONTROL_FRAME parameter, allowing users to switch control frame for yaw
- Fix missing deadzone in yaw input for AUTO, SURFACE, GUIDED, and CIRCLE modes
- Fix Leak detection on Navigator
- Fix missing deadzone in yaw input for AUTO, SURFACE, GUIDED, and CIRCLE modes
- Fix GUIDED MODE bouncing back to origin after velocity command
- Add digital output (including relay) support for Navigator boards
- Fix Position Hold "bounce back" issue
- Improve low gain control in Position Hold and Depth Hold modes
- Add Pixhawk defaults for lights and camera mount tilt
- Changed flow_of_control error to a gcs warning
- Always calibrate barometer if negative depth is detected
- Improve Depth hold behavior when surface/bottom is reached
- Fix issue where changing modes caused the ROV to dive
- Change default PILOT_VELZ_MAX to 1 m/s
- Set default EK3_SRC1_VELZ to None instead of GPS to fix Depth oscilations
- Set default parameters for a smoother Position Hold and Depth Hold operation
- Add support for CPU affinity in Linux boards
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.1 Beta8 31-Oct-2023
- Revert default Roll/Pitch P and D terms
- prevent multiple baro drivers on the same device
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.1 Beta7 16-July-2023
- Revert attitude control to 3.5 implementation, hopefully resolving the roll/pitch drift for good.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.1 Beta6 10-July-2023
- Fix roll/pitch drift in stabilized modes
- Fix Python 3.11 compatibility
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.1 Beta5 10-April-2023
- drop MMC5xx3 sample rate to 100Hz
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.1 Beta4 1-December-2022
- Introduce CONTROL_FRAME parameter, allowing users to switch control frame for yaw
- Fix missing deadzone in yaw input for AUTO, SURFACE, GUIDED, and CIRCLE modes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.1 Beta3 1-December-2022
- Fix Leak detection on Navigator
- Fix missing deadzone in yaw input for AUTO, SURFACE, GUIDED, and CIRCLE modes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.1 Beta2 24-October-2022
- Fix GUIDED MODE bouncing back to origin after velocity command
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.1 Beta1 13-October-2022
- Add digital output (including relay) support for Navigator boards
- Fix Position Hold "bounce back" issue
- Improve low gain control in Position Hold and Depth Hold modes
- Add Pixhawk defaults for lights and camera mount tilt
- Changed flow_of_control error to a gcs warning
- Always calibrate barometer if negative depth is detected
- Improve Depth hold behavior when surface/bottom is reached
- Fix issue where changing modes caused the ROV to dive
- Change default PILOT_VELZ_MAX to 1 m/s
- Tighten default Pitch stabilization parameters
- Set default EK3_SRC1_VELZ to None instead of GPS to fix Depth oscilations
- Set default parameters for a smoother Position Hold and Depth Hold operation
- Add support for CPU affinity in Linux boards
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.0 6-June-2022
- Fix agressive depth hold twitching introduced in beta7
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.0-beta8 26-May-2022
- Fix issue with poshold introduced in beta7 (no lateral control)
- Fix i2c buses masks for Navigator
- Do not use RC3_MIN/MAX instead of MOT_PWM_MIN/MAX
- Update submodules for easier builds
- Fix cygwin build
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.0-beta7 29-Apr-2022
- Tweak depth hold at arbitrary attitudes
- Add autotest for depth hold at arbitrary attitudes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.0-beta6 19-Apr-2022
- Update Navigator I2C masks
- Fix constraining PWM with SERVON_MAX and MOT_PWM_MAX
- Tweak default BTN parameters
- Improve althold with large buoyancy/payloads
- Fix depth hold jumping down when enabling it
- Allow holding arbitrary attitudes in depth hold and stabilize modes
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.0-beta5 31-Mar-2022
- Set default BRD_RTC_TYPE to 3 (GPS and MAVLink)
- Set default BARO_PROBE_EXT to 768 (Keller and MS5837)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.0-beta4 25-Mar-2022
- Set default loop rate for Navigator
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.0-beta3 3-Mar-2022
- Set default parameters for Navigator for camera tilt and lights
- Set default streamrates
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.0-beta2 3-Mar-2022
- Set default parameters for Navigator
- AP_Hal_Linux: PCA9685: do not shutdown PWM chip
- Use AK09915 compass at 200Hz
- Retry reading MMC5983 Compass ID up to 10 times
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.1.0beta 3-Jan-2022
- Rebased on top of Copter 4.1.3
- Add leak detection support for Pixhawk 4
- No longer report battery percentage if capacity is set to 0 mAh
- fix issue where it was not possible to arm after testing motors
- Added support for the Blue Robotics Navigator Raspberry Pi hat.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 4.0.0 4-March-2020
- Over 10000 new commits, catching up with other vehicles 4.0 releases
- The Real Time Operating System (RTOS) is now ChibiOs instead of NuttX
- Added a new option for automatic detection of the thrusters directions, making setup easier
- Heavy frames can now roll/tilt to arbitrary attitudes (even upside down)
- Depth Hold is now working with arbitrary attitudes
- Depth Hold and Stabilize modes now hold the attitude at which they were enabled
- Roll-Pitch toggle mode now used the inputs as rate targets instead of position targets
- In Roll-Pitch Toggle mode, the Center Mount button now levels the ROV
- Support depth setpoints via MAVlink in Depth-Hold mode
- Support attitude setpoints via MAVlink in Depth-Hold and Stabilize modes
- Support for setting MAVLink message intervals
- Navigator board support
- Frame SimpleROV-4 now has Roll factor for thrusters 4 and 5
- Barometers is now recalibrated if disarmed and reading a depth above water level
- Added thrusters matrix for Frame SimpleROV-3
- Many improvements to SITL (Software In The Loop simulator for developers) so its behavior better resembles that of a real ROV
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.5.4 5-April-2019
- major depth hold performance improvement: remove overshoot and bounce-back
- bugfix motor test initialization condition
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.5.3-beta 29-April-2018 / Sub 3.5.3 8-May-2018
Changes from 3.5.2:
- Add current and voltage monitoring to simulation (SITL)
- Add current limiting
- Add momentary relay and servo button functions
- Add servo toggle button functions
- Apply yaw input scaling via ACRO_YAW_P to manual mode
- Remove some vehicle-specific parameter metadata that does not apply to Sub
- Allow zero gains for attitude control
- Allow system time to be set by SYSTEM_TIME message from GCS
- Clarify and improve error messages for depth sensor problems
- Do not report depth calculated via air pressure with on-board barometer
- Add motor test functionality
- Remove arbitrary scalars from inputs in manual mode - allow full power to motors in manual mode
- Disarm motors if initial failsafe action fails to execute
- Implement camera mount pan
- Reduce default yaw input scaling by 25% (ACRO_YAW_P)
- Suppress repeated printing of "GPS detected as MAV" messages when no mavlink gps is connected
- Add RC_SLEW_RATE parameter for slewing input demands to motors mixer in manual mode
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.5.2 31-October-2017
Changes from 3.5.1:
- Bugfix output conflicts between motors and servo channel function assignments
- Bugfix Notify leak flag logic
- Bugfix COMPASS_OFFS_MAX should default to 1000
- Don't emit tether turn status via audible STATUSTEXT messages
- Increase threshold for input hold engaged flag
- Announce input hold engaged/disengaged
- Force correct GND_EXT_BUS parameter at boot for Pixhawk 1 and 2
- Rework camera tilt input and slew limiting. This fixes mount stabilization.
- Clear and disable input hold when disarmed
- Allow adjusting PWM output range for lights channels
- Always neutralize control inputs during pilot input failsafe
- Add joystick button functions for relays 3 and 4
- Clear roll/pitch inputs when switching to manual or acro mode
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.5.1 12-September-2017 / Sub 3.5.1beta1 29-August-2017
Changes from 3.5:
- Various parameter metadata and default value corrections
- Add support for PLAY_TUNE and LED_CONTROL mavlink commands
- Send sub-specific telemetry via NAMED_VALUE_FLOAT (tether turns, camera tilt angle etc.)
- Support for Keller LD pressure sensors enabling depth measurement to 200 bar / 2 km
- Relax arming checks, no sensor checks required by default
- Increase pilot input failsafe timeout from 1 second to 3 seconds
- Default INS_GYR_CAL behavior to 'Never' (0)
- Bug fix neutralization of forward input channel during failsafe
- Bug fix notify LED status code does not reflect leak fault resolution
- Set GND_EXT_BUS appropriately at boot for both Pixhawk 1 and Pixhawk 2
- Bug fix sensor health flag with no pressure sensor detected at boot
- Acknowledge MAV_CMD_PREFLIGHT_REBOOT_SHUTDOWN before shutting down
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.5 09-May-2017 / Sub 3.5-rc2 04-May-2017
Changes from 3.5-rc1:
- Bugfix for external baro failsafe handling when no baro is
connected at boot
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.5-rc1 17-April-2017
Major changes:
- Merge with ardupilot project
- Implement autotest suite (autotest.ardupilot.org)
- Firmware available on firmware.ardupilot.org and through QGC dropdown
- All supported frames are included in one binary. Select your frame with the FRAME_CONFIG parameter
- Improved pilot control in depth hold mode. Now depth hold behaves like STABLIZE when pilot commands
ascent/descent, rather than setting desired climb rate.
- Implemented arming checks and the AP_Arming libraries
- Added pilot input failsafe requiring MANUAL_CONTROL or RC_CHANNELS_OVERRRIDE messages to be received
at regular intervals. This addresses issue of joystick being disconnected while GCS connection remains
unbroken.
- Add failsafe for depth sensor malfunction, vehicle will automatically enter MANUAL mode when
depth sensor malfunctions.
- Drastically reduced latency between IMU updates and motor output (Thanks Randy and Tridge!)
- RC/Servo Channel library and parameters split
- Allow MS5837 pressure sensor on boards other than pixhawk, use GND_EXT_BUS parameter to select
I2C bus to look for sensor on. -1 = Disabled; default to 1, which is Pixhawk external I2C bus
- Rework parameters, unused or irrelevant parameters have been removed
Other changes:
- No more ch5 mode selection, modes are configured by assigning modes directly to
joystick button functions. Forward/lateral inputs are now on channel 5/6 (was 6/7)
- Default FS_LEAK_ENABLE to FS_LEAK_WARN_ONLY (was disabled)
- Added support for BlueRobotics Celsius temperature sensor (TSYS01). Temperature is output on
SCALED_PRESSURE3 message as a workaround.
- No longer report battery percent remaining, as the measurement algorithm is flawed and does not work
on partially charged batteries.
- Implement auto circle mode (loiter turns)
- Implement circle mode
- Implement guided mode
- Implement auto surface mode (NAV_CMD_LAND)
- Implement spline waypoints
- Implement crash check failsafe
- Implement ekf failsafe
- Implement battery failsafe
- Implement relay joystick button functions
- Add joystick button functions to control servos
- Add joystick button function to toggle between forward/lateral input and roll/pitch input
- Remove BASE_RESET and BASE_PRESS baro parameters. Barometer reset is now done via mavlink cmd.
- Implement parameter reset to defaults via mavlink cmd.
- Fixed bug with camera tilt smoothing conflicting with RC_OVERRIDE messages
- Fix bug preventing LOG_FILE_DSRMROT parameter from working correctly
- Detect external pressure sensor according to BARO_TYPE == BARO_TYPE_WATER rather than hard-coding baro instance index
- Use default StorageManager layout instead of Copter layout
- Add support for AHRS View
- Remove experimental/deprecated VELHOLD and TRANSECT modes
- Some refactoring of code and files to improve readability
- Disable untested CAMERA object and parameters by default
- Only allow negative altitudes and ALT_FRAME_ABOVE_HOME for mission commands
- Remove lots of dead code left over from ArduCopter:
- RC receiver
- Landing
- Unused/unsupported modes
- Remove channel 5 mode logic
- Remove aux switches
- Throttle zero flag
- Auto trim
- Unsupported mavlink messages
- Compassmot calibration
- Simple mode
- Ch6 tuning
- Esc calibration
- CLI
- Motor test
- Helicopter references
- HIL_MODE
- Various unused flags, members and methods
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.4.1 04-May-2017
Don't report battery percentage estimate. The estimate is only correct if battery
is fully charged at boot. User should rely on voltage estimate.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.4 30-Dec-2016 / Sub 3.4-rc3 14-Dec-2016
First Stable Release
Changes from 3.4-rc2:
1) Bug fix for GCS (ground control station) failsafe, suppress warning message
until after first contact.
Notes:
ArduSub v3.4 is the first official stable release of ArduSub. After nearly a
year of steady development, testing, and improvement, ArduSub has become one
of the most capable ROV control systems available.
Important Note for ArduSub-3.4: Many unused and inapplicable parameters that
ArduSub inherited from ArduCopter have been removed. As a consequence, after
upgrading to V3.4 and later, all of the parameters will be erased, and the
default parameters will be loaded. You should save your parameters before
flashing this firmware. After upgrading the firmware, you can load your saved
parameter file through QGroundControl. When loading your old parameter file
through QGroundControl, you will see many errors about parameters that have
been removed, this is okay. After you load your parameter file, you need to
change the SYSID_SW_MREV parameter to 1 before rebooting in order to prevent
the default parameters from being reloaded. This procedure will only have to
be done when upgrading from firmware version 3.4-dev. Subsequent releases will
keep the same parameter format, so this will only have to be done once.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.4-rc2 13-Dec-2016
Changes from 3.4-rc1:
1) Bug fix on external barometer initialization. BRD_TYPE parameter should
remain set to 2.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Sub 3.4-rc1 11-Dec-2016
Notes:
- Due to parameter reorganization, all parameters will be overwritten when updating
- Must be used with QGroundControl daily builds or stable version 3.1 (once released)
- Joystick buttons are configured by default
- PX4Firmware sensor drivers have been replaced with in-tree APM drivers. On some
hardware, the barometer driver will sometimes hang until a reboot. If your pressure
sensor is not detected after rebooting, set the BRD_TYPE parameter to 100 and reboot
to fall back to the PX4Firmware driver. Please report back if you experience an issue
with the pressure sensor and the new driver.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~ArduSub Development Begins Here~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
APM:Copter Release Notes:
------------------------------------------------------------------
Copter 3.3.2 01-Dec-2015 / 3.3.2-rc2 18-Nov-2015
Changes from 3.3.2-rc1
1) Bug fix for desired climb rate initialisation that could lead to drop when entering AltHold, Loiter, PosHold
2) Fix to hard landings when WPNAV_SPEED_DN set high in RTL, Auto (resolved by using non-feedforward alt hold)
3) Reduce Bad AHRS by filtering innovations
4) Allow arming without GPS if using Optical Flow
5) Smoother throttle output in Guided mode's velocity control (z-axis now 400hz)
------------------------------------------------------------------
Copter 3.3.2-rc1 4-Nov-2015
Changes from 3.3.1
1) Helicopter Improvements:
a) Fix Arming race condition
b) Fix servos to move after arming in Stabilize and Acro
c) Implement Pirouette Compensation
d) Add Rate I-Leak-Min functionality
e) Add new Stab Collective and Acro Expo Col functions
f) Add circular swashplate limits (Cyclic Ring)
g) Add new H_SV_Man functions
h) Add Hover Roll Trim function
i) Add Engine Run Enable Aux Channel function
j) Add servo boot test function
h) Add Disarm Delay parameter
------------------------------------------------------------------
Copter 3.3.1 26-Oct-2015 / 3.3.1-rc1 20-Oct-2015
Changes from 3.3
1) Bug fix to prevent potential crash if Follow-Me is used after an aborted takeoff
2) compiler upgraded to 4.9.3 (runs slightly faster than 4.7.2 which was used previously)
------------------------------------------------------------------
Copter 3.3 29-Sep-2015 / 3.3-rc12 22-Sep-2015
Changes from 3.3-rc11
1) EKF recovers from pre-arm "Compass variance" failure if compasses are consistent
------------------------------------------------------------------
Copter 3.3-rc11 10-Sep-2015
Changes from 3.3-rc10
1) PreArm "Need 3D Fix" message replaced with detailed reason from EKF
------------------------------------------------------------------
Copter 3.3-rc10 28-Aug-2015
Changes from 3.3-rc9
1) EKF improvements:
a) simpler optical flow takeoff check
2) Bug Fixes/Minor enhancements:
a) fix INS3_USE parameter eeprom location
b) fix SToRM32 serial protocol driver to work with recent versions
c) increase motor pwm->thrust conversion (aka MOT_THST_EXPO) to 0.65 (was 0.50)
d) Firmware version sent to GCS in AUTOPILOT_VERSION message
3) Safety:
a) pre-arm check of compass variance if arming in Loiter, PosHold, Guided
b) always check GPS before arming in Loiter (previously could be disabled if ARMING_CHECK=0)
c) sanity check locations received from GCS for follow-me, do-set-home, do-set-ROI
d) fix optical flow failsafe (was not always triggering LAND when optical flow failed)
e) failsafe RTL vs LAND decision based on hardcoded 5m from home check (previously used WPNAV_RADIUS parameter)
------------------------------------------------------------------
Copter 3.3-rc9 19-Aug-2015
Changes from 3.3-rc8
1) EKF improvements:
a) IMU weighting based on vibration levels (previously used accel clipping)
b) fix blended acceleration (used for altitude control) in cases where first IMU fails
c) ensure unhealthy barometer values are never consumed
2) TradHeli: remove acceleration feed forward
3) Safety:
a) check accel, gyro and baro are healthy when arming (previously was only checked pre-arm)
b) Guided mode velocity controller timeout (vehicle stops) after 3 seconds with no update from GCS
4) Minor enhancements:
a) fix for AUAV board's usb-connected detection
b) add Lidar-Lite-V2 support
c) MOT_THR_MIN_MAX param added to control prioritisation of throttle vs attitude during dynamic flight
d) RALLY_INCL_HOME param allows always including home when using rally points
e) DO_FLIGHT_TERMINATION message from GCS acts as kill switch
5) Bug Fixes:
a) fix to ensure motors start slowly on 2nd spin-up
b) fix RTL_CLIMB_MIN feature (vehicle climbed too high above home)
------------------------------------------------------------------
Copter 3.3-rc8 25-Jul-2015
Changes from 3.3-rc7
1) EKF improvements:
a) de-weight accelerometers that are clipping to improve resistance to high vibration
b) fix EKF to use primary compass instead of first compass (normally the same)
2) UBlox "HDOP" corrected to actually be hdop (was pdop) which leads to 40% lower value reported
3) TradHeli:
a) Motors library split into "Multicopter" and "TradHeli" so TradHeli does not see multicopter parameters
b) Heading target reset during landing to reduce vehicle fighting to rotate while on the ground
4) Minor enhancements:
a) SToRM32 gimbal can be connected to any serial port
b) log when baro, compass become unhealthy
c) ESC_CALIBRATION parameter can be set to "9" to disable esc calibration startup check
d) Circle rate adjustment with ch6 takes effect immediately
e) log home and origin
f) pre-arm check of battery voltage and fence
g) RTL_CLIMB_MIN parameter forces vehicle to climb at least this many cm when RTL is engaged (default is zero)
5) Bug fixes:
a) fix THR_MIN being incorrectly scaled as pwm value during low-throttle check
b) fence distance calculated from home (was incorrectly calculated from ekf-origin)
c) When flying with joystick and joystick is disconnected, control returns immediately to regular TX
d) dataflash's ATT yaw fixed to report heading as 0 ~ 360
e) fix to mission's first command being run multiple times during mission if it was a do-command
f) ekf-check is enabled only after ekf-origin is set (stops red-yellow flashing led when flying without GPS lock)
g) fix initialisation of mount's mode
h) start-up logging so parameters only logged once, mission always written
6) Linux:
a) bebop support
------------------------------------------------------------------
Copter 3.3-rc7 28-Jun-2015
Changes from 3.3-rc6
1) reduce EKF gyro bias uncertainty that caused attitude estimate errors
2) force 400hz IMU logging on (temporary for release candidate testing)
------------------------------------------------------------------
Copter 3.3-rc6 25-Jun-2015
Changes from 3.3-rc5
1) EKF related changes:
a) reset altitude even when arming without GPS lock
b) fix yaw twitch caused by EKF heading estimate reset
c) fix IMU time scaling bug that caused height estimate to deviate from the baro
2) AutoTune improvements:
a) improved yaw tuning by increasing yaw step magnitude
b) added logging of accelerations
c) improvements to step tests
3) Improved crash check:
a) allow triggering even if pilot doesn't move throttle to zero
b) easier triggering by removing baro check and using angle error instead of absolute tilt angle
4) TradHeli:
a) swash moves while landed in AltHold mode
b) improvements to land detector
c) fixed RSC Runup Time calculation
d) Rate FF Low-pass Filter changed from 5Hz to 10Hz, more responsive
5) support Linux builds for NAVIO+ and Erle-Brain (http://firmware.diydrones.com/Copter/beta/)
6) Other improvements / Bug Fixes:
a) sonar pre-arm checks only enforced if using optical flow
b) fix EKF failsafe bug that would not allow recovery
c) full rate IMU logging for improved vibration analysis (set LOG_BITMASK to All+FullIMU)
d) new VIBE dataflash message records vibration levels
e) default MNT_TYPE to "1" if servo gimbal rc outputs were defined
f) RC_FEEL defaults to medium
g) addition of SToRM32 serial support (supports mount angle feedback to GCS)
h) new tricopter's tail servo parameters (MOT_YAW_SV_MIN, MAX, TRIM, REV)
------------------------------------------------------------------
Copter 3.3-rc5 23-May-2015
Changes from 3.3-rc4
1) Fix AHRS bad gyro health message caused by timing jitter and log IMU health
2) TradHeli:
a) better default rate PIDs
b) Collective pitch output now operates even when disarmed
3) Small changes/fixes:
a) GCS can use MAV_CMD_MISSION_START to start mission in AUTO even without pilot raising throttle
b) GCS can force disarming even in flight by setting param2 to "21196"
c) rc-override timeout reduced from 2 seconds to 1 (applies when using GCS joysticks to control vehicle)
d) do-set-speed fix so it takes effect immediately during missions
e) GCS failsafe disarms vehicle if already landed (previously it could RTL)
------------------------------------------------------------------
Copter 3.3-rc4 17-May-2015
Changes from 3.3-rc3
1) AutoTune:
a) save roll, pitch, yaw rate acceleration limits along with gains
b) more conservative gains
2) Roll, pitch rate control feed-forward now on by default (set ATC_RATE_FF_ENAB to "0" to disable)
3) Serial ports increased to maximum of 4 (set SERIALX_PROTOCOL to 1)
4) MOT_THR_MIX_MIN param to control minimum throttle vs attitude during landing (higher = more attitude control but bumpier landing)
5) EKF fixes/improvements
a) prevent yaw errors during fast spins
b) bug fix preventing external selection of optical flow mode
6) Parachute:
a) servo/relay held open for 2sec when deploying (was 1sec)
b) fix altitude check to be alt-above-home (was alt-above ekf origin which could be slightly different)
7) TradHeli:
a) parameters moved to stop possibility of corruption if board is switched between tradheli and multicopter firmware. Heli users may need to re-setup some heli-specific params.
b) H_COLYAW param can be float
8) Small Improvements / Bug Fixes:
a) reduced spline overshoot after very long track followed by very short track
b) log entire mission to dataflash whenever it's uploaded
c) altitude reported if vehicle takes off before GPS lock
d) high speed logging of IMU
e) STOP flight mode renamed to BRAKE and aux switch option added
------------------------------------------------------------------
Copter 3.3-rc2/rc3 02-May-2015
Changes from 3.3-rc1
1) AutoTune reliability fixes (improved filtering to reduce noise interference)
2) Optical flow improvements:
a) Range Finder pre-arm check - lift vehicle between 50cm ~ 2m before arming. Can be disabled by setting ARMING_CHECK to "Skip Params/Sonar"
b) Vehicle altitude limited to range finder altitude when optical flow is enabled
3) AltHold & Take-off changes:
a) feed-forward controller and jerk limiting should result in slightly snappier performance and smoother take-offs
b) vehicle climbs automatically to PILOT_TKOFF_ALT alt when taking off in Loiter, AltHold, PosHold, Sport (disabled by default, pilot's throttle input overrides takeoff)
c) PILOT_THR_FILT allows enforcing smoother throttle response in manual flight modes (defaults to 0 = off)
d) TX with sprung throttle can set PILOT_THR_BHV to "1" so motor feedback when landed starts from mid-stick instead of bottom of stick
e) GCS can initiate takeoff even in Loiter, AltHold, PosHold and sport by issuing NAV_TAKEOFF mavlink command
4) Stop flight mode - causes vehicle to stop quickly, and does not respond to user input or waypoint movement via MAVLink. Requires GPS, will be renamed to Brake mode.
5) Aux channel features:
a) Emergency Stop - stops all motors immediately and disarms in 5 seconds
b) Motor Interlock - opposite of Emergency Stop, must be on to allow motors to spin motors, must be off to arm
6) Air pressure gain scaling (of roll, pitch, yaw) should mostly remove need to re-tune when flying at very different altitudes
7) landing detector simplified to only check vehicle is not accelerating & motors have hit their lower limit
8) Loiter tuning params to remove "freight train" stops:
raising WPNAV_LOIT_MAXA makes vehicle start and stop faster
raising WPNAV_LOIT_MINA makes vehicle stop more quickly when sticks centered
9) Other items:
a) faster EKF startup
b) Camera control messages sent via MAVLink to smart cameras. Allow control of camera zoom for upcoming IntelEdison/Sony QX1 camera control board
c) Lost Copter Alarm can be triggered by holding throttle down, roll right, pitch back
10) Bug fixes:
a) Home position set to latest arm position (it was being set to previous disarm location or first GPS lock position)
b) bug fix to mission Jump to command zero
------------------------------------------------------------------
Copter 3.3-rc1 11-Apr-2015
Changes from 3.2.1
1) Only support fast CPUs boards (Pixhawk, VRBrain, etc) and drop support for APM1, APM2 (sorry!)
2) AutoTune for yaw
3) Smooth throttle curve which should reduce wobbles during fast climbs and descents
4) ch7/ch8 aux switches expanded to ch9 ~ ch12 (see CH9_OPT ~ CH12_OPT params)
5) PX4Flow support in Loiter mode (still somewhat experimental)
6) Safety features:
a) EKF on by default replacing DCM/InertialNav which should improve robustness
b) increased accelerometer range from 8G to 16G to reduce chance of climb due to high vibrations (requires accel calibration)
7) Landing features:
a) improved landing on slopes
b) retractable landing gear (see LGR_ parameters)
8) Camera Gimbal features:
a) SToRM32 gimbal support (using MAVLink)
b) AlexMos gimbal support (using AlexMos serial interface)
c) do-mount-control commands supported in missions (allows controlling gimbal angle in missions)
9) Battery related features:
a) PID scaling for battery voltage (disabled by default, see MOT_THST_BAT_ parameters)
b) smart battery support
10) Other:
a) support do-set-home command (allows return-to-me and locked home position once GCS enhancements are completed)
b) performance improvements for Pixhawk reduce CPU load from 80% to 15%
c) firmware string name changed from ArduCopter to APM:Copter
------------------------------------------------------------------
ArduCopter 3.2.1 11-Feb-2015 / 3.2.1-rc2 30-Jan-2015
Changes from 3.2.1-rc1
1) Bug Fixes:
a) prevent infinite loop with linked jump commands
b) Pixhawk memory corruption fix when connecting via USB
c) vehicle stops at fence altitude limit in Loiter, AltHold, PosHold
d) protect against multiple arming messages from GCS causing silent gyro calibration failure
------------------------------------------------------------------
ArduCopter 3.2.1-rc1 08-Jan-2015
Changes from 3.2
1) Enhancements:
a) reduced twitch when passing Spline waypoints
b) Faster disarm after landing in Auto, Land, RTL
c) Pixhawk LED turns green before arming only after GPS HDOP falls below 2.3 (only in flight modes requiring GPS)
2) Safety Features:
a) Add desired descent rate check to reduce chance of false-positive on landing check
b) improved MPU6k health monitoring and re-configuration in case of in-flight failure
c) Rally point distance check reduced to 300m (reduces chance of RTL to far away forgotten Rally point)
d) auto-disarm if vehicle is landed for 15seconds even in Auto, Guided, RTL, Circle
e) fence breach while vehicle is landed causes vehicle to disarm (previously did RTL)
3) Bug Fixes:
a) Check flight mode even when arming from GCS (previously it was possible to arm in RTL mode if arming was initiated from GCS)
b) Send vehicle target destination in RTL, Guided (allows GCS to show where vehicle is flying to in these modes)
c) PosHold wind compensation fix
------------------------------------------------------------------
ArduCopter 3.2 07-Nov2014 / 3.2-rc14 31-Oct-2014
Changes from 3.2-rc13
1) Safety Features:
a) fail to arm if second gyro calibration fails (can be disabled with ARMING_CHECK)
2) Bug fixes:
a) DCM-check to require one continuous second of bad heading before triggering LAND
b) I2C bug that could lead to Pixhawk freezing up if I2C bus is noisy
c) reset DCM and EKF gyro bias estimates after gyro calibration (DCM heading could drift after takeoff due to sudden change in gyro values)
d) use primary GPS for LED status (instead of always using first GPS)
------------------------------------------------------------------
ArduCopter 3.2-rc13 23-Oct-2014
Changes from 3.2-rc12
1) DCM check triggers LAND if yaw disagrees with GPS by > 60deg (configure with DCM_CHECK_THRESH param) and in Loiter, PosHold, Auto, etc
2) Safety features:
a) landing detector checks baro climbrate between -1.5 ~ +1.5 m/s
b) sanity check AHRS_RP_P and AHRS_YAW_P are never less than 0.05
c) check set-mode requests from GCS are for this vehicle
3) Bug fixes:
a) fix ch6 tuning of wp-speed (was getting stuck at zero)
b) parachute servo set to off position on startup
c) Auto Takeoff timing bug fix that could cause severe lean on takeoff
d) timer fix for "slow start" of motors on Pixhawk (timer was incorrectly based on 100hz APM2 main loop speed)
4) reduced number of relays from 4 to 2 (saves memory and flash required on APM boards)
5) reduced number of range finders from 2 to 1 (saves memory and flash on APM boards)
6) allow logging from startup when LOG_BITMASK set to "All+DisarmedLogging"
------------------------------------------------------------------
ArduCopter 3.2-rc12 10-Oct-2014
Changes from 3.2-rc11
1) disable sonar on APM1 and TradHeli (APM1 & APM2) to allow code to fit
2) Add pre-arm and health check that gyro calibration succeeded
3) Bug fix to EKF reporting invalid position and velocity when switched on in flight with Ch7/Ch8 switch
------------------------------------------------------------------
ArduCopter 3.2-rc11 06-Oct-2014
Changes from 3.2-rc10
1) reduce lean on take-off in Auto by resetting horizontal position targets
2) TradHeli landing check ignores overall throttle output
3) reduce AHRS bad messages by delaying 20sec after init to allow EKF to settle (Pixhawk only)
4) Bug fixes:
a) fix THR_MIN scaling issue that could cause landing-detector to fail to detect landing when ch3 min~max > 1000 pwm
b) fix Mediatek GPS configuration so update rate is set correctly to 5hz
c) fix to Condition-Yaw mission command to support relative angles
d) EKF bug fixes when recovering from GPS glitches (affects only Pixhawks using EKF)
------------------------------------------------------------------
ArduCopter 3.2-rc10 24-Sep-2014
Changes from 3.2-rc9
1) two-stage land-detector to reduce motor run-up when landing in Loiter, PosHold, RTL, Auto
2) Allow passthrough from input to output of channels 9 ~ 14 (thanks Emile!)
3) Add 4hz filter to vertical velocity error during AltHold
4) Safety Feature:
a) increase Alt Disparity pre-arm check threshold to 2m (was 1m)
b) reset battery failsafe after disarming/arming (thanks AndKe!)
c) EKF only apply centrifugal corrections when GPS has at least 6 satellites (Pixhawk with EKF enabled only)
5) Bug fixes:
a) to default compass devid to zero when no compass connected
b) reduce motor run-up while landing in RTL
------------------------------------------------------------------
ArduCopter 3.2-rc9 11-Sep-2014
Changes from 3.2-rc8
1) FRAM bug fix that could stop Mission or Parameter changes from being saved (Pixhawk, VRBrain only)
------------------------------------------------------------------
ArduCopter 3.2-rc8 11-Sep-2014
Changes from 3.2-rc7
1) EKF reduced ripple to resolve copter motor pulsing
2) Default Param changes:
a) AltHold Rate P reduced from 6 to 5
b) AltHold Accel P reduced from 0.75 to 0.5, I from 1.5 to 1.0
c) EKF check threshold increased from 0.6 to 0.8 to reduce false positives
3) sensor health flags sent to GCS only after initialisation to remove false alerts
4) suppress bad terrain data alerts
5) Bug Fix:
a)PX4 dataflash RAM usage reduced to 8k so it works again
------------------------------------------------------------------
ArduCopter 3.2-rc7 04-Sep-2014
Changes from 3.2-rc6
1) Safety Items:
a) Landing check made more strict (climb rate requirement reduced to 30cm/s, overall throttle < 25%, rotation < 20deg/sec)
b) pre-arm check that accels are consistent (Pixhawk only, must be within 1m/sec/sec of each other)
c) pre-arm check that gyros are consistent (Pixhawk only, must be within 20deg/sec of each other)
d) report health of all accels and gyros (not just primary) to ground station
------------------------------------------------------------------
ArduCopter 3.2-rc6 31-Aug-2014
Changes from 3.2-rc5
1) Spline twitch when passing through a waypoint largely resolved
2) THR_DZ param added to allow user configuration of throttle deadzone during AltHold, Loiter, PosHold
3) Landing check made more strict (climb rate must be -40~40cm/s for 1 full second)
4) LAND_REPOSITION param default set to 1
5) TradHeli with flybar passes through pilot inputs directly to swash when in ACRO mode
6) Safety Items:
a) EKF check disabled when using inertial nav (caused too many false positives)
b) pre-arm check of internal vs external compass direction (must be within 45deg of each other)
7) Bug Fixes:
a) resolve NaN in angle targets when vehicle hits gimbal lock in ACRO mode
b) resolve GPS driver buffer overflow that could lead to missed GPS messages on Pixhawk/PX4 boards
c) resolve false "compass not calibrated" warnings on Pixhawk/PX4 caused by missing device id initialisation
------------------------------------------------------------------
ArduCopter 3.2-rc5 15-Aug-2014
Changes from 3.2-rc4
1) Pixhawk's max num waypoints increased to 718
2) Smoother take-off in AltHold, Loiter, PosHold (including removing initial 20cm jump when taking off)
3) ACRO mode roll, pitch, yaw EXPO added for faster rotation when sticks are at extremes (see ACRO_EXPO parameter)
4) ch7/ch8 relay option replaces ch6 option (ch6 is reserved for tuning not switching things on/off)
5) Safety Items:
a) Baro glitch check relaxed to 5m distance, 15m/s/s max acceleration
b) EKF/INav check relaxed to 80cm/s/s acceleration correct (default remains as 0.6 but this now means 80cm/s/s)
c) When GPS or Baro glitch clears, the inertial nav velocities are *not* reset reducing chance of sudden vehicle lean
d) Baro altitude calculation checked for divide-by-zero and infinity
6) Bug Fixes:
a) AltHold jump bug fixed (altitude target reset when landed)
b) Rally point bug fix so it does not climb excessively before flying to rally point
c) body-frame rate controller z-axis bug fix (fast rotation in z-axis would cause wobble in roll, pitch)
------------------------------------------------------------------
ArduCopter 3.2-rc4 01-Aug-2014
Changes from 3.2-rc3
1) Pre-takeoff throttle feedback in AltHold, Loiter, PosHold
2) Terrain altitude retrieval from ground station (informational purposes only so far, Pixhawk only)
3) Safety Items:
a) "EKF check" will switch to LAND mode if EKF's compass or velocity variance over 0.6 (configurable with EKFCHECK_THRESH param)
When EKF is not used inertial nav's accelerometer corrections are used as a substitute
b) Barometer glitch protection added. BAROGLTCH_DIST and BAROGLTCH_ACCEL parameters control sensitivity similar to GPSGLITCH protection
When glitching occurs barometer values are temporarily ignored
c) Throttle/radio and battery failsafes now disarm vehicle when landed regardless of pilot's throttle position
d) auto-disarm extended to Drift, Sport and OF_Loiter flight modes
e) APM2 buzzer notification added for arming failure
f) APM2 arming buzz made longer (now matches Pixhawk)
g) do-set-servo commands cannot interfere with motor output
4) Bug Fixes:
a) Drift slow yaw response fixed
b) AC3.2-rc3 failsafe bug resolved. In -rc3 the throttle failsafe could be triggered even when disabled or motors armed (although vehicle would not takeoff)
------------------------------------------------------------------
ArduCopter 3.2-rc3 16-Jul-2014
Changes from 3.2-rc2
1) Hybrid renamed to PosHold
2) Sonar (analog, i2c) and PulsedLight Range Finders enabled on Pixhawk (Allyson, Tridge)
3) Landing changes:
a) disable pilot repositioning while landing in RTL, Auto (set LAND_REPOSITION to 1 to re-enable) (JonathanC)
b) delay 4 seconds before landing due to failsafe (JonathanC)
4) Secondary compass calibration enabled, pre-arm check that offsets match current devices (Randy, Tridge, MichaelO)
5) Control improvements:
a) use bias adjusted gyro rates - helps in cases of severe gyro drift (Jonathan)
b) bug-fixes when feed-forward turned off (Leonard)
6) TradHeli improvements (RobL):
a) bug fix to use full collective range in stabilize and acro flight modes
b) filter added to main rotor input (ch8) to ensure momentary blip doesn't affect main rotor speed
7) Safety items:
a) increased default circular Fence radius to 300m to reduce chance of breach when GPS lock first acquired
b) radio failsafe timeout for late frames reduced to 0.5sec for normal receivers or 2.0sec when flying with joystick (Craig)
c) accelerometer pre-arm check for all active accelerometers (previously only checked the primary accelerometer)
8) Other features:
a) ch7/ch8 option to retract mount (svefro)
b) Do-Set-ROI supported in Guided, RTL mode
c) Condition-Yaw accepted in Guided, RTL modes (MoussSS)
d) CAMERA dataflash message includes relative and absolute altitude (Craig)
9) Red Balloon Popper support (Randy, Leonard):
a) Velocity controller added to Guided mode
b) NAV_GUIDED mission command added
10) Bug fixes:
a) bug fix to flip on take-off in stabilize mode when landing flag cleared slowly (JonathanC)
b) allow disarming in AutoTune (JonathanC)
c) bug fix to unpredictable behaviour when two spline points placed directly ontop of each other
------------------------------------------------------------------
ArduCopter 3.2-rc2 27-May-2014
Changes from 3.2-rc1
1) Hybrid mode initialisation bug fix
2) Throttle pulsing bug fix on Pixhawk
3) Parachute enabled on Pixhawk
4) Rally Points enabled on Pixhawk
------------------------------------------------------------------
ArduCopter 3.2-rc1 9-May-2014
Changes from 3.1.4
1) Hybrid mode - position hold mode but with direct response to pilot input during repositioning (JulienD, SandroT)
2) Spline waypoints (created by David Dewey, modified and integrated by Leonard, Randy)
3) Drift mode uses "throttle assist" for altitude control (Jason)
4) Extended Kalman Filter for potentially more reliable attitude and position control (Pixhawk only) (Paul Riseborough). Set AHRS_EKF_USE to 1 to enable or use Ch7/8 switch to enable/disable in flight.
5) Manual flight smoothness:
a) Smoother roll, pitch response using RC_FEEL_RP parameter (100 = crisp, 0 = extremely soft)
b) Adjustable max rotation rate (ATC_RATE_RP_MAX, ATC_RATE_Y_MAX) and acceleration (ATC_ACCEL_RP_MAX, ATC_ACCEL_Y_MAX)
6) Autopilot smoothness:
a) Vertical acceleration in AltHold, Loiter, Hybrid modes can be configured with PILOT_ACCEL_Z parameter (higher = faster acceleration)
b) Maximum roll and pitch angle acceleration in Loiter mode can be configured with WPNAV_LOIT_JERK (higher = more responsive but potentially jerky)
c) Yaw speed can be adjusted with ATC_SLEW_YAW parameter (higher = faster)
d) smoother takeoff with configurable acceleration using WPNAV_ACCEL_Z parameter
e) Twitches removed during guided mode or when entering Loiter or RTL from high speeds
7) Mission improvements:
a) mission will be resumed from last active command when pilot switches out and then back into Auto mode (prev behaviour can be restored by setting MIS_RESTART param to 1)
b) DO_SET_ROI persistent across waypoints. All-zero DO_SET_ROI command restores default yaw behaviour
c) do-jump fixed
d) conditional_distance fixed
e) conditional_delay fixed
f) do-change-speed command takes effect immediately during mission
g) vehicle faces directly at next waypoint (previously it could be about 10deg off)
h) loiter turns fix to ensure it will circle around lat/lon point specified in mission command (previously it could be off by CIRCLE_RADIUS)
8) Safety improvements:
a) After a fence breach, if the pilot re-takes control he/she will be given a minimum of 10 seconds and 20m to recover before the autopilot will invoke RTL or LAND
b) Parachute support including automatic deployment during mechanical failures
9) Other enhancements:
a) V-tail quad support
b) Dual GPS support (secondary GPS output is simply logged, not actually used yet)
c) Electro Permanent Magnet (aka Gripper) support
d) Servo pass through for channels 6 ~ 8 (set RC6_FUNCTION to 1)
e) Remove 80m limit on RTL's return altitude but never let it be above fence's max altitude
10) Other bug fixes:
a) Bug fix for LAND sometimes getting stuck at 10m
b) During missions, vehicle will maintain altitude even if WPNAV_SPEED is set above the vehicle's capabilities
c) when autopilot controls throttle (i.e. Loiter, Auto, etc) vehicle will reach speeds specified in PILOT_VELZ_MAX and WPNAV_SPEED_UP, WPNAV_SPEED_DN parameters
11) CLI removed from APM1/2 to save flash space, critical functions moved to MAVLink:
a) Individual motor tests (see MP's Initial Setup > Optional Hardware > Motor Test)
b) compassmot (see MP's Initial Setup > Optional Hardware > Compass/Motor Calib)
c) parameter reset to factory defaults (see MP's Config/Tuning > Full Parameter List > Reset to Default)
------------------------------------------------------------------
ArduCopter 3.1.5 27-May-2014 / 3.1.5-rc2 20-May-2014
Changes from 3.1.5-rc1
1) Bug Fix to broken loiter (pixhawk only)
2) Workaround to read from FRAM in 128byte chunks to resolve a few users boot issues (Pixhawk only)
------------------------------------------------------------------
ArduCopter 3.1.5-rc1 14-May-2014
Changes from 3.1.4
1) Bug Fix to ignore roll and pitch inputs to loiter controller when in radio failsafe
2) Bug Fix to allow compassmot to work on Pixhawk
------------------------------------------------------------------
ArduCopter 3.1.4 8-May-2014 / 3.1.4-rc1 2-May-2014
Changes from 3.1.3
1) Bug Fix for Pixhawk/PX4 NuttX I2C memory corruption when errors are found on I2C bus
------------------------------------------------------------------
ArduCopter 3.1.3 7-Apr-2014
Changes from 3.1.2
1) Stability patch fix which could cause motors to go to min at full throttle and with large roll/pitch inputs
------------------------------------------------------------------
ArduCopter 3.1.2 13-Feb-2014 / ArduCopter 3.1.2-rc2 12-Feb-2014
Changes from 3.1.2-rc1
1) GPS Glitch detection disabled when connected via USB
2) RC_FEEL_RP param added for adjusting responsiveness to pilot roll/pitch input in Stabilize, Drift, AltHold modes
------------------------------------------------------------------
ArduCopter 3.1.2-rc1 30-Jan-2014
Changes from 3.1.1
1) Pixhawk baro bug fix to SPI communication which could cause large altitude estimate jumps at high temperatures
------------------------------------------------------------------
ArduCopter 3.1.1 26-Jan-2014 / ArduCopter 3.1.1-rc2 21-Jan-2014
Changes from 3.1.1-rc1
1) Pixhawk improvements (available for APM2 when AC3.2 is released):
a) Faster arming
b) AHRS_TRIM fix - reduces movement in loiter when yawing
c) AUX Out 5 & 6 turned into general purpose I/O pins
d) Three more relays added (relays are pins that can be set to 0V or 5V)
e) do-set-servo fix to allow servos to be controlled from ground station
f) Motorsync CLI test
g) PX4 parameters moved from SD card to eeprom
h) additional pre-arm checks for baro & inertial nav altitude and lean angle
------------------------------------------------------------------
ArduCopter 3.1.1-rc1 14-Jan-2014
Changes from 3.1
1) Pixhawk improvements:
a) Telemetry port 2 enabled (for MinimOSD)
b) SD card reliability improvements
c) parameters moved to FRAM
d) faster parameter loading via USB
e) Futaba SBUS receiver support
2) Bug fixes:
a) Loiter initialisation fix (Loiter would act like AltHold until flight mode switch changed position)
b) ROI commands were not returning Lat, Lon, Alt to mission planner when mission was loaded from APM
3) TradHeli only fixes:
a) Drift now uses same (reduced) collective range as stabilize mode
b) AutoTune disabled (for tradheli only)
c) Landing collective (smaller than normal collective) used whenever copter is not moving
------------------------------------------------------------------
ArduCopter 3.1 14-Dec-2013
Changes from 3.1-rc8
1) Pixhawk improvements:
a) switch to use MPU6k as main accel/gyro
b) auto loading of IO-board firmware on startup
2) RTL fixes:
a) initialise waypoint leash length (first RTL stop would be more aggressive than 2nd)
b) reduce projected stopping distance for higher speed stops
------------------------------------------------------------------
ArduCopter 3.1-rc8 9-Dec-2013
Changes from 3.1-rc7
1) add Y6 motor mapping with all top props CW, bottom pros CCW (set FRAME = 10)
2) Safety Changes:
a) ignore yaw input during radio failsafe (previously the copter could return home spinning if yaw was full over at time of failsafe)
b) Reduce GPSGLITCH_RADIUS to 2m (was 5m) to catch glitches faster
3) Bug fixes:
a) Optical flow SPI bus rates
b) TradHeli main rotor ramp up speed fix
------------------------------------------------------------------
ArduCopter 3.1-rc7 22-Nov-2013
Changes from 3.1-rc6
1) MOT_SPIN_ARMED default to 70
2) Smoother inertial nav response to missed GPS messages
3) Safety related changes
a) radio and battery failsafe disarm copter if landed in Loiter or AltHold (previously they would RTL)
b) Pre-Arm check failure warning output to ground station every 30 seconds until they pass
c) INS and inertial nav errors logged to dataflash's PM message
d) pre-arm check for ACRO_BAL_ROLL, ACRO_BAL_PITCH
------------------------------------------------------------------
ArduCopter 3.1-rc6 16-Nov-2013
Improvements over 3.1-rc5
1) Heli improvements:
a) support for direct drive tails (uses TAIL_TYPE and TAIL_SPEED parameters)
b) smooth main rotor ramp-up for those without external governor (RSC_RAMP_TIME)
c) internal estimate of rotor speed configurable with RSC_RUNUP_TIME parameter to ensure rotor at top speed before starting missions
d) LAND_COL_MIN collective position used when landed (reduces chance copter will push too hard into the ground when landing or before starting missions)
e) reduced collective while in stabilize mode (STAB_COL_MIN, STAB_COL_MAX) for more precise throttle control
f) external gyro parameter range changed from 1000~2000 to 0~1000 (more consistent with other parameters)
g) dynamic flight detector switches on/off leaky-i term depending on copter speed
2) SingleCopter airframe support (contribution from Bill King)
3) Drift mode replaces TOY
4) MPU6k SPI bus speed decreased to 500khz after 4 errors
5) Safety related changes:
a) crash detector cuts motors if copter upside down for more than 2 seconds
b) INS (accel and gyro) health check in pre-arm checks
c) ARMING_CHECK allows turning on/off individual checks for baro, GPS, compass, parameters, board voltage, radio
d) detect Ublox GPS running at less than 5hz and resend configuration
e) GPSGlitch acceptable radius reduced to 5m (stricter detection of glitches)
f) range check roll, pitch input to ensure crazy radio values don't get through to stabilize controller
g) GPS failsafe options to trigger AltHold instead of LAND or to trigger LAND even if in flight mode that does not require GPS
h) Battery failsafe option to trigger RTL instead of LAND
i) MOT_SPIN_ARMED set to zero by default
6) Bug fixes:
a) missing throttle controller initialisation would mean Stabilize mode's throttle could be non-tilt-compensated
b) inertial nav baro and gps delay compensation fix (contribution from Neurocopter)
c) GPS failsafe was invoking LAND mode which still used GPS for horizontal control
------------------------------------------------------------------
ArduCopter 3.1-rc5 22-Oct-2013
Improvements over 3.1-rc4
1) Pixhawk USB reliability improvements
2) AutoTune changes:
a) enabled by default
b) status output to GCS
c) use 2 pos switch only
3) ch7/ch8 LAND
4) Tricopter stability patch improvements [thanks to texlan]
5) safety improvements:
a) slower speed up of motors after arming
b) pre-arm check that copter is moving less than 50cm/s if arming in Loiter or fence enabled
------------------------------------------------------------------
ArduCopter 3.1-rc4 13-Oct-2013
Improvements over 3.1-rc3
1) Performance improvements to resolve APM alt hold issues for Octacopters:
a) SPI bus speed increased from 500khz to 8Mhz
b) Telemetry buffer increased to 512bytes
c) broke up medium and slow loops into individual scheduled tasks and increased priority of alt hold tasks
2) Bug fix for Pixhawk USB connection
3) GPS Glitch improvements:
a) added GPS glitch check to arming check
b) parameters for vehicle max acceleration (GPSGLITCH_ACCEL) and always-ok radius (GPSGLICH_RADIUS)
------------------------------------------------------------------
ArduCopter 3.1-rc3 09-Oct-2013
Improvements over 3.1-rc2
1) GPS Glitch protection - gps positions are compared with the previous gps position. Position accepted if within 10m or copter could have reached the position with max accel of 10m/s/s.
2) Bug fix for pixhawk SPI bus contention that could lead to corrupted accelerometer values on pixhawk resolved
3) Auto Tuning (compile time option only add "#define AUTOTUNE ENABLED" to APM_Config.h and set CH7_Opt or CH8_Opt parameter to 17)
4) CPU Performance improvement when reading from MPU6k for APM
5) SUPER_SIMPLE parameter changed to a bit map to allow some flight modes to use super simpler while others use regular simple (MP release to allow easier selection will go out with AC3.1 official release)
6) Safety changes:
a) safety button must be pushed before arming on pixhawk
b) RGB LED (aka toshiba led) changed so that disarmed flashes, armed is either blue (if no gps lock) or green (if gps lock)
c) sensor health bitmask sent to groundstations
------------------------------------------------------------------
ArduCopter 3.1-rc2 18-Sep-2013
Improvements over 3.1-rc1
1) bug fix for MOT_SPIN_ARMED to allow it to be higher than 127
2) PX4/pixhawk auto-detect internal/external compass so COMPASS_ORIENT should be set to ORIENTATION_NONE if using GPS+compass module
------------------------------------------------------------------
ArduCopter 3.1-rc1 9-Sep-2013
Improvements over 3.0.1
1) Support for Pixhawks board
2) Arm, Disarm, Land and Takeoff in Loiter and AltHold
3) Improved Acro
a) ACRO_RP_P, ACRO_YAW_P parameters added to control speed of rotation
b) ACRO_BAL_ROLL, ACRO_BAL_PITCH controls speed at which copter returns to level
c) ACRO_TRAINER can be set to 0:disable trainer, 1:auto leveling when sticks released, 2:auto leveling and lean angle limited to ANGLE_MAX
d) Ch7 & Ch8 switch to set ACRO_TRAINER options in-flight
4) SPORT mode - equivalent of earth frame Acro with support for simple mode
5) Sonar ground tracking improvements and bug fixes that reduce reaction to bad sonar data
6) Safety improvements
a) motors always spin when armed (speed can be controlled with MOT_SPIN_ARMED, set to 0 to disable)
b) vehicle's maximum lean angle can be reduced (or increased) with the ANGLE_MAX parameter
c) arming check that GPS hdop is > 2.0 (disable by setting GPS_HDOP parameter to 900)
d) slow take-off in AUTO, LOITER, ALTHOLD to reduce chance of motor/esc burn-out on large copters
7) Bug fixes:
a) Optical flow sensor initialisation fix
b) altitude control fix for Loiter_turns mission command (i.e. mission version of CIRCLE mode)
c) DO_SET_ROI fix (do not use "ROI")
8) Distribute Loiter & Navigation calcs over 4 cycles to reduce impact on a single 100hz loop
9) RCMAP_ parameters allow remapping input channels 1 ~ 4
------------------------------------------------------------------
ArduCopter 3.0.1-rc2 / 3.0.1 11-Jul-2013
Improvements over 3.0.1-rc1
1) Rate Roll, Pitch and Yaw I fix when we hit motor limits
2) pre-arm check changes:
a) double flash arming light when pre-arm checks fail
b) relax mag field checks to 35% min, 165% max of expected field
3) loiter and auto changes:
a) reduced Loiter speed to 5 m/s
b) reduced WP_ACCEL to 1 m/s/s (was 2.5 m/s/s)
c) rounding error fix in loiter controller
d) bug fix to stopping point calculation for RTL and loiter during missions
4) Stability Patch fix which was freezing Rate Taw I term and allowing uncommanded Yaw
------------------------------------------------------------------
ArduCopter 3.0.1-rc1 26-Jun-2013
Improvements over 3.0.0
1) bug fix to Fence checking position after GPS lock was lost
2) bug fix to LAND so that it does not attempt to maintain horizontal position without GPS lock
------------------------------------------------------------------
ArduCopter 3.0.0 / 3.0.0-rc6 16-Jun-2013
Improvements over 3.0.0-rc5
1) bug fix to Circle mode's start position (was moving to last loiter target)
2) WP_ACCEL parameter added to allow user to adjust acceleration during missions
3) loiter acceleration set to half of LOIT_SPEED parameter value (was hard-coded)
4) reduce AltHold P to 1.0 (was 2.0)
------------------------------------------------------------------
ArduCopter 3.0.0-rc5 04-Jun-2013
Improvements over 3.0.0-rc4
1) bug fix to LAND flight mode in which it could try to fly to mission's next waypoint location
2) bug fix to Circle mode to allow counter-clockwise rotation
3) bug fix to heading change in Loiter, RTL, Missions when pilot's throttle is zero
4) bug fix for mission sticking at take-off command when pilot's throttle is zero
5) bug fix for parameters not saving when new value is same as default value
6) reduce pre-arm board min voltage check to 4.3V (was 4.5V)
7) remove throttle controller's ability to limit lean angle in loiter, rtl, auto
------------------------------------------------------------------
ArduCopter 3.0.0-rc4 02-Jun-2013
Improvements over 3.0.0-rc3
1) loiter improvements:
i) repositioning enhanced with feed forward
ii) use tan to convert desired accel to lean angle
2) stability patch improvements for high powered copters or those with roll-pitch rate gains set too high
3) auto mode vertical speed fix (it was not reaching the desired speeds)
4) alt hold smoothed by filtering feed forward input
5) circle mode fix to initial position and smoother initialisation
6) RTL returns to initial yaw heading before descending
7) safe features:
i) check for gps lock when entering failsafe
ii) pre-arm check for mag field length
iii) pre-arm check for board voltage between 4.5v ~ 5.8V
iv) beep twice during arming
v) GPS failsafe enabled by default (will LAND if loses GPS in Loiter, AUTO, Guided modes)
vi) bug fix for alt-hold mode spinning motors before pilot has raised throttle
8) bug fixes:
i) fixed position mode so it responding to pilot input
ii) baro cli test
iii) moved cli motor test to test sub menu and minor change to throttle output
iv) guided mode yaw control fix
------------------------------------------------------------------
ArduCopter 3.0.0-rc3 22-May-2013
Improvements over 3.0.0-rc2
1) bug fix for dataflash erasing unnecessarily
2) smoother transition to waypoints, loiter:
intermediate point's speed initialised from copter's current speed
3) Ch8 auxiliary function switch (same features as Ch7)
4) safety checks:
Warning to GCS of reason for pre-arm check failure
ARMING_CHECK parameter added to allow disabling pre-arm checks
Added compass health and offset check to pre-arm check
compassmot procedure displays interference as percentage of total mag field
5) WPNAV dataflash message combined into NTUN message
6) allow TriCopters to use ESC calibration
------------------------------------------------------------------
ArduCopter 3.0.0-rc2 13-May-2013
Improvements over 3.0.0-rc1:
1) smoother transition to waypoints, loiter:
reduced loiter max acceleration to smooth waypoints
bug fix to uninitialised roll/pitch when entering RTL, AUTO, LOITER
2) fast waypoints - copter does not stop at waypoints unless delay is specified
3) WPNAV_LOIT_SPEED added to allow faster/slower loiter repositioning
4) removed speed limits on auto missions
5) enhance LAND mission command takes lat/lon coordinates
6) bug fix for RTL not pointing home sometimes
7) centrifugal correction disabled when copter is disarmed to stop HUD moving
8) centrifugal correction disabled when sat count less than 6 (AHRS_GPS_MINSATS)
9) compass calibration reliability improvements when run from mission planner
10) bug fix to allow compassmot to be run from mission planner terminal screen
11) add support for H-quad frame
12) add COMPASS_ORIENT parameter to support external compass in any orientation
------------------------------------------------------------------
ArduCopter 3.0.0-rc1 01-May-2013
Improvements over 2.9.1b:
1) Inertial navigation for X & Y axis (Randy/Leonard/Jonathan)
2) 3D waypoint navigation library (Leonard/Randy)
WPNAV_SPEED, WPNAV_SPEED_UP, WPNAV_SPEED_DN control target speeds during missions and RTL
WP_YAW_BEHAVIOR to allow disabling yaw during missions and RTL
3) PX4 support (some features still not available) (Tridge/Pat/PX4Dev Team)
4) Safety improvements:
Tin-can shaped fence (set FENCE_ENABLED to 1 and copter will RTL if alt > 150m or horizontal distance from home > 300m) (Randy/Tridge/Leonard)
GCS failsafe (set FS_GCS_ENABLED to 1 and if you are using a tablet to fly your copter it will RTL and return control to the radio 3 seconds after losing telemetry) (Randy)
pre-arm checks to ensure accelerometer and radio calibration has been performed before arming (Randy)
5) motor interference compensation for compass (Jonathan/Randy)
6) Circle mode improvements:
set CIRCLE_RADIUS to zero to do panorama shots in circle mode (copter does not move in a circle but instead slowly rotates)
CIRCLE_RATE parameter allows controlling direction and speed of rotation in CIRCLE mode and LOITER_TURNS (can also be adjusted in flight from CH6 knob)
7) SONAR_GAIN parameter add to allow reducing the response to objects sensed by sonar (Randy)
8) support for trapezoidal quads (aka V shaped or FPV quads) (Leonard/Craig)
9) performance improvements to dataflash logging (Tridge)
10) bug-fix to analog read which could cause bad sonar reads when using voltage or current monitor (Tridge)
11) bug-fix to motors going to minimum when throttle is low while switching into Loiter, AUTO, RTL, ALT_HOLD (Jason/Randy)
12) bug-fix for auto disarm sometimes disarming shortly after arming (Jason/SirAlex)
------------------------------------------------------------------
ArduCopter 2.9.1b 30-Feb-2013
Improvements over 2.9.1:
1) reduce INS_MPU6K_FILTER to 20hz
2) reduce InertialNav Z-axis time constant to 5 (was 7)
3) increased max InertialNav accel correction to 3 m/s (was 1m/s)
4) bug fix for alt_hold being passed as int16_t to get_throttle_althold_with_slew
5) bug fix for throttle after acro flip (was being kept at min throttle if pilot switched out of ACRO mode while inverted)
6) reduce yaw_rate P default to 0.20 (was 0.25)
------------------------------------------------------------------
ArduCopter 2.9.1 & 2.9.1-rc2 01-Feb-2013
Improvements over 2.9.1-rc1:
1) small corretion to use of THR_MID to scale lower end of manual throttle between THR_MIN and 500 instead of 0 and 500
2) bug fix for longitude scaling being incorrectly calculated using Next Waypoint instead of home which could lead to scaling being 1
3) ESC calibration change to set update rate to ESCs to 50hz to allow simonk ESC to be calibrated
------------------------------------------------------------------
ArduCopter 2.9.1-rc1 31-Jan-2013
Improvements over 2.9:
1) THR_MID parameter added to allow users to adjust the manual throttle so that vehicle hovers at about mid stick
2) bug fix for autotrim - roll axis was backwards
3) bug fix to set sonar_alt_health to zero when sonar is disabled
4) capture level roll and pitch trims as part of accel calibration
5) bug fix to ppm encoder false positives
------------------------------------------------------------------
ArduCopter 2.9 & 2.9-rc5 14-Jan-2013
Improvements over 2.9-rc4:
1) add constraint to loiter commanded roll and pitch angles
2) relax altitude requirement for take-off command to complete
------------------------------------------------------------------
ArduCopter 2.9-rc4 12-Jan-2013
Improvements over 2.9-rc3:
1) Smoother transition between manual and auto flight modes (Leonard)
2) bug fix for LAND not actually landing when initiated from failsafe (Randy/Craig)
------------------------------------------------------------------
ArduCopter 2.9-rc3 11-Jan-2013
Improvements over 2.9-rc2:
1) alt hold with sonar improvements - now on by default (Leonard/Randy)
2) performance and memory usage improvements (Tridge/Randy)
3) increase APM1 baro pressure read from 5hz to 8.3hz to improve alt hold (Randy)
4) bug fix: altitude error reported to GCS (Randy)
5) limit inertial nav's max accel offset correction to 100cm/s/s to speed up recovery after hard impacts (Randy)_
6) moved rate controllers to run after ins read (Tridge/Randy)
------------------------------------------------------------------
ArduCopter 2.9-rc2 31-Dec-2012
Improvements over 2.9-rc1:
1) increased throttle rate gains from 1.0 to 6.0
2) APM1 fix so it works with inertial nav (5hz update rate of baro was beyond the tolerance set in the inav library)
------------------------------------------------------------------
ArduCopter 2.9-rc1 23-Dec-2012
Improvements over 2.8.1:
1) altitude hold improvements:
a)inertial navigation for vertical axis [Randy/Jonathan/Leonard/Jason]
b)accel based throttle controller [Leonard/Randy]
c)accelerometer calibration routine updated to use gauss-newton method [Randy/Tridge/Rolfe Schmidt]
d)parameters to control climb rate:
AUTO_VELZ_MIN, AUTO_VELZ_MAX - allows you to control the maximum climb and descent rates of the autopilot (in cm/s)
PILOT_VELZ_MAX - allows you to control the maximum climb/descent rate when in alt hold or loiter (in cm/s)
2) landing improvements [Leonard/Randy]
LAND_SPEED - allows you to set the landing speed in cm/s
3) camera related improvements:
a) AP_Relay enabled for APM2 and integrated with AP_Camera [Sandro Benigno]
b) camera trigger with channel 7 switch or DO_DIGICAM_CONTROL mission command [Randy]
c) allow yaw override by pilot or with CONDITIONAL_YAW command during missions [Randy]
YAW_OVR_BEHAVE - Controls when autopilot takes back normal control of yaw after pilot overrides (0=after next wp, 1=never)
4) trad heli improvements [Rob]
a) code tested and brought back into the fold (2.8.1 was never released for trad helis)
b) enabled rate controller (previously only used angle controllers)
c) fix to rotor speed controllers - now operates by switching off channel 8
d) allow wider collective pitch range in acro and alt hold modes vs stabilize mode
e) removed angle boost function because it created more problems than it solved
f) bug fix to allow collective pitch to use the entire range of servos
5) mediatek gps driver improvements [Craig]
a) added support for 1.9 firmware
b) bug fix to start-up routine so sbas can be enabled
6) failsafe improvements (both throttle and battery) [Randy/Craig/John Arne Birkeland]
a) RTL will not trigger if your throttle is zero - reduces risk of accidentally invoking RTL if you switch off your receiver before disarming
b) failsafe triggered in unlikely case of a PPM encoder failure
c) bug fix to resolve motors momentarily reducing to zero after failsafe is triggered
7) mpu6k filtering made configurable and default changed to 42hz for copters [Leonard/Tridge]
8) support ppm sum for transmitters with as few as 5 channels [Randy/John Arne Birkeland]
9) acro trainer - copter will return to be generally upright if you release the sticks in acro mode [Leonard]
ACRO_BAL_ROLL, ACRO_BAL_PITCH - controls rate at which roll returns to level
ACRO_TRAINER - 1 to enable the auto-bring-upright feature
10) other changes and bug fixes:
a) allow >45 degrees when in stabilize mode by adding lines like below to APM_Config (compile time option only) [Jason]
#define MAX_INPUT_ROLL_ANGLE 6000 // 60 degrees
#define MAX_INPUT_PITCH_ANGLE 6000 // 60 degrees
b) bug fix to stop RTL from ever climbing to an unreasonable height (i.e. >80m) [Jason]
c) event and state logging [Jason]
d) allow cli to be used over telemetry link [Tridge]
e) bug fix to allow compass accumulate to run when we have spare cpu cycles [Randy]
f) bug fix so do_set_servo command works [Randy]
g) bug fix to PID controller's so they don't calculate crazy D term on the first call [Tridge]
h) bug fix to initialise navigation parameter to resolve twitch when entering some navigation modes [Jason]
i) performance improvement to copter leds - use DigitalFastWrite and DigitalFastRead instead of native arduino functions [Randy]
j) removed unused stab_d from roll and pitch controller [Jason]
k) bug fix for guided mode not reaching target altitude if it reaches horizontal target first [Randy]
l) code clean-up, parameter documentation improvements [Randy/Jason/Rob/others]
------------------------------------------------------------------
ArduCopter 2.8.1 22-Oct-2012
Improvements over 2.8:
- 430 bytes of RAM freed up to resolve APM1 level issue and reduce chance of memory corruption on both APM1 and APM2
Improvements over 2.7.3:
- Improved ACRO mode (Leonard Hall)
- Improved stability patch to reduce "climb-on-yaw" problem (Leonard, Rob Lefebvre, Randy)
- Rate controller targets moved to body frames (yaw control now works properly when copter is inverted) (Leonard/Randy)
- Less bouncy Stabilize yaw control (Leonard)
- OpticalFlow sensor support for APM2.5 (Randy)
- DMP works again by adding "#define DMP_ENABLED ENABLED" to APM_Config.h You can also log DMP vs DCM to the dataflash by adding "#define SECONDARY_DMP_ENABLED ENABLED" (Randy)
- Watch dog added to shutdown motors if main loop feezes for 2 seconds (Randy)
- Thrust curve added to linearize pwm->thrust. Removes deadzone found above 90% throttle in most ESC/motors (Randy)
- More timing improvements (main loop is now tied to MPU6000s interrupt) (Randy)
- GPS NMEA bug fix (Alexey Kozin)
- Logging improvements (log I terms, dump all settings at head of dataflash log) (Jason)
Bug Fixes / Parameter changes:
- fixed skipping of last waypoint (Jason)
- resolved twitching when no GPS attached (Tridge)
- fixed loss of altitude if alt hold is engaged before first GPS lock (Randy/Jason)
- moved Roll-Pitch I terms from Stabilize controllers to Rate controllers
- TILT_COMPENSATION param tuned for TradHeli (Rob)
Code Cleanup:
- HAL changes for platform portability (Pat Hickey)
- Removed INSTANT_PWM (Randy)
------------------------------------------------------------------