1 ArduPilot Copter Release Notes:
2 ------------------------------------------------------------------
5 Changes from 4.6.0-beta2
7 1) Board specfic changes
10 - AET-H743-Basic support
11 - ESP32 memory initialisation fix
12 - MicoAir743AIO and MicoAir743v2 support
13 - OrqaF405Pro supports ICM42688 IMU
14 - TBS Lucid Pro support
16 2) Plane related enhancements and bug fixes
18 - RC aux channel option for C++ QuikTune
19 - TECs uses external HAGL (if available) for landing
21 3) DDS/ROS2 pre-arm check and copter takeoff service
23 4) Bug Fixes and minor enhancements
25 - BATTx_OPTIONS param desc fixed
26 - BLHeli telemetry ESC index fixed on boards with IOMCU
27 - CAN manager logging critical race condition fixed (only occurred if CAN_LOGLEVEL was 1 or higher)
28 - DShot EDTv2 logging fixed
29 - ICM45686 IMU FIFO read rate fixed (could read unnecessarily quickly)
30 - LDRobot LD06 proximity driver prevents possible read buffer overrun
31 - LDRobot LD06 proximity driver averages over 2deg slices (was 12 deg)
32 - RunCam/OSD menu movements obey RC channel reversal
33 - Topotek camera gimbal pitch rate control direction fixed
34 - TradHeli AutoTune rate and accel limiting fixed
35 - VTOL-quiktune script gets QUIK_ANGLE_MAX to prevent bad oscillation if tuning algorithm fails
36 ------------------------------------------------------------------
37 Release 4.6.0-beta2 11 Dec 2024
39 Changes from 4.6.0-beta1
41 1) Board specfic changes
43 - FoxeerF405v2 supports BMP280 baro
44 - KakuteH7, H7-Mini, H7-Wing, F4 support SPA06 baro
46 - SkySakura H743 support
47 - TBS Lucid H7 support
48 - VUAV-V7pro README documentation fixed
49 - X-MAV AP-H743v2 CAN pin definition fixed
51 2) Copter specific enhancements and bug fixes
53 - AutoTune fix for calc of maximum angular acceleration
54 - Advanced Failsafe customer build server option
56 3) Plane related enhancements and bug fixes
58 - QuadPlane fix for QLand getting stuck in pilot repositioning
59 - QuikTune C++ conversion (allow running quiktun on F4 and f7 boards)
60 - Takeoff direction fixed when no yaw source
61 - TECS correctly handles home altitude changes
63 4) Bug Fixes and minor enhancements
65 - AIRSPEED_AUTOCAL mavlink message only sent when required and fixed for 2nd sensor
66 - CAN frame logging added to ease support
67 - CRSF reconnection after failsafe fixed
68 - EKF3 position and velocity resets default to user defined source
69 - Ethernet IP address default 192.168.144.x
70 - Fence autoenable fix when both RCn_OPTION=11/Fence and FENCE_AUTOENABLE = 3 (AutoEnableOnlyWhenArmed)
71 - Fence pre-arm check that vehicle is within polygon fence
72 - Fence handling of more than 256 items fixed
73 - FFT protection against divide-by-zero in Jain estimator
74 - Frsky telemetry apparent wind speed fixed
75 - Inertial sensors stop sensor converging if motors arm
76 - Inertial sensors check for changes to notch filters fixed
77 - Real Time Clock allowed to shift forward when disarmed
78 - ROS2/DDS get/set parameter service added
79 - Scripting gets memory handling improvements
80 - Scripting promote video-stream-information to applet
81 - Topotek gimbal driver uses GIA message to retrieve current angle
82 - Tramp VTX OSD power indicator fixed
83 ------------------------------------------------------------------
84 Release 4.6.0-beta1 13 Nov 2024
88 1) Board specific changes
90 - AnyLeaf H7 supports compass and onboard logging
91 - Blitz743Pro supports CAN
92 - BlueRobotics Navigator supports BMP390 baro
93 - Bootloader ECC failure check fixed on boards with >128k bootloader space (e.g CubeRed)
94 - CB Unmanned Stamp H743 support
95 - ClearSky CSKY405 support
96 - CUAV-7-Nano default batt monitor fixed
97 - CubeRed bootloader fixes including disabling 2nd core by default
98 - CubeRed supports PPP networking between primary and secondary MCU
99 - CubeRedPrimary supports external compasses
100 - ESP32 main loop rate improvements
101 - ESP32 RC input fixes and wifi connection reliability improved
102 - ESP32 safety switch and GPIO pin support
103 - FlyingMoon no longer support MAX7456
104 - Flywoo F405HD-AIOv2 ELRS RX pin pulled high during boot
105 - Flywoo H743 Pro support
106 - Flywoo/Goku F405 HD 1-2S ELRS AIO v2
107 - FlywooF745 supports DPS310 baro
108 - FPV boards lose SMBus battery support (to save flash)
109 - GEPRC F745BTHD support
110 - GEPRCF745BTHD loses parachute support, non-BMP280 baros (to save flash)
111 - Here4FC bootloader fix for mismatch between RAM0 and periph that could prevent firmware updates
112 - Holybro Kakute F4 Wing support
113 - iFlight 2RAW H743 supports onboard logging
114 - JFB110 supports measuring servo rail voltage
115 - JFB110 supports safety switch LED
116 - JHEM-JHEF405 bootloader supports firmware updates via serial
117 - JHEMCU GF30H743 HD support
118 - JHEMCU-GF16-F405 autopilot support
119 - JHEMCU-GSF405A becomes FPV board (to save flash)
120 - KakuteF7 only supports BMP280 baro (to save flash)
121 - KakuteH7Mini supports ICM42688 IMU
122 - Linux auto detection of GPS baud rate fixed
123 - Linux board scheduler jitter reduced
124 - Linux board shutdown fixes
125 - MakeFlyEasy PixPilot-V6Pro support
126 - MatekF405, Pixhawk1-1M-bdshot, revo-mini loses blended GPS (to save flash)
127 - MatekH7A3 support Bi-directional DShot
128 - MicoAir405v2 and MicoAir405Mini support optical flow and OSD
129 - MicoAir743 internal compass orientation fixed
130 - MicroAir405Mini, MicroAir743, NxtPX4v2 support
131 - MicroAir405v2 Bi-directional DShot and LED DMA fixes
132 - MicroAir405v2 defined as FPV board with reduced features (to save flash)
133 - ModalAI VOXL2 support including Starling 2 and Starling 2 max
134 - mRo Control Zero Classic supports servo rail analog input
135 - mRo KitCAN revC fixed
136 - Mugin MUPilot support
137 - OmnibusF7v2 loses quadplane support (to save flash)
138 - Pixhack-v3 board added (same as fmuv3)
139 - Pixhawk6C bootloader supports flashing firmware from SD card
140 - RadiolinkPIX6 imu orientation fixed
141 - RadiolinkPIX6 supports SPA06 baro
142 - ReaperF745 V4 FC supports MPU6000 IMU
144 - SDModelH7v2 SERIAL3/7/9_PROTOCOL param defaults changed
145 - Solo serial ports default to MAVLink1
146 - SpeedyBeeF405Wing gets Bi-directional DShot
147 - SpeedyBeeF405WING loses landing gear support, some camera gimbals (to save flash)
148 - Spektreworks boom board support
149 - TrueNavPro-G4 SPI does not share DMA
150 - X-MAV AP-H743v2 support
152 2) AHRS/EKF enhancements and fixes
154 - AHRS_OPTION to disable fallback to DCM (affects Plane and Rover, Copter never falls back)
155 - AHRS_OPTION to disable innovation check for airspeed sensor
156 - Airspeed sensor health check fixed when using multiple sensors and AHRS affinity
157 - DCM support for MAV_CMD_EXTERNAL_WIND_ESTIMATE (Plane only)
158 - EK2 supports disabling external nav (see EK2_OPTIONS)
159 - EK3 External Nav position jump after switch from Optical flow removed (see EK3_SRC_OPTION=1)
160 - EK3 uses filtered velocity corrections for IMU position
161 - EKF2, EKF3, ExternalAHRS all use common origin
162 - EKF3 accepts set origin even when using GPS
163 - EKF3 allows earth-frame fields to be estimated with an origin but no GPS
164 - EKF3 copes better with GPS jamming
165 - EKF3 logs mag fusion selection to XKFS
166 - EKF3 wind estimation when using GPS-for-yaw fixed
167 - External AHRS improvements including handling variances, pre-arm origin check
168 - Inertial Labs External AHRS fixes
169 - VectorNav driver fix for handling of error from sensor
170 - VectorNav External AHRS enhancements including validation of config commands and logging improvements
171 - VectorNav support for sensors outside VN-100 and VN-300
173 3) Driver enhancements and bug fixes
175 - ADSB fix to display last character in status text sent to GCS
176 - Ainstein LR-D1 radar support
177 - Airspeed ASP5033 whoami check fixed when autopilot rebooted independently of the sensor
178 - AIRSPEED message sent to GCS
179 - Analog temperature sensor extended to 5th order polynomial (see TEMP_A5)
180 - ARSPD_OPTIONS to report calibration offset to GCS
181 - Baro EAS2TAS conversions continuously calculated reducing shocks to TECS (Plane only)
182 - Baro provides improved atmospheric model for high altitude flight
183 - BARO_ALT_OFFSET slew slowed to keep EKF happy
184 - BATTx_ESC_MASK param supports flexible mapping of ESCs to batteries
185 - BATTx_OPTION to not send battery voltage, current, etc to GCS
186 - Benewake RDS02U radar support
187 - Bi-directional DShot on IOMCU supports reversible mask
188 - Bi-directional DShot telemetry support on F103 8Mhz IOMCUs
189 - BMM350 compass support
190 - CAN rangefinders and proximity sensors may share a CAN bus (allows NRA24 and MR72 on a single CAN bus)
191 - Compass calibration world magnetic model checks can use any position source (e.g. not just GPS)
192 - CRSF baro and vertical speeed fixed
193 - CRSF RX bind command support
194 - DroneCAN battery monitor check to avoid memory corruption when type changed
195 - DroneCAN DNA server fixes including removing use of invalid node IDs, faster ID allocation, elimination of rare inability to save info
196 - DroneCAN EFI health check fix
197 - DroneCAN ESC battery monitors calculate consumed mah
198 - DroneCAN ESCs forced to zero when disarmed
199 - DroneCAN RPM message support
200 - DroneCAN timeout fix for auxiliary frames
201 - DroneCAN to serial tunneling params accepts short-hand baud rates (e.g. '57' for '57600')
202 - F9P, F10-N and Zed-F9P support for GPSx_GNSS_MODE to turn on/off SBAS, Galileo, Beidou and Glonass
203 - FuelLevel battery monitor fix to report capacity
204 - GPS_xxx params renamed to GPS1_xxx, GPS_xxx2 renamed to GPS2_xxx
205 - Hirth EFI logging includes modified throttle
206 - Hirth ICEngine supports reversed crank direction (see ICE_OPTIONS parameter)
207 - Hott and LTM telemetry deprecated (still available through custom build server)
208 - i-BUS telemetry support
209 - ICE_PWM_IGN_ON, ICE_PWM_IGN_OFF, ICE_PWM_STRT_ON, ICE_PWM_STRT_OFF replaced with SERVOx_MIN/MAX/REVERSED (Plane only)
210 - ICE_START_CHAN replaced with RC aux function (Plane only)
211 - ICEngine retry max added (see ICE_STRT_MX_RTRY)
212 - IE 2400 generator error message severity to GCS improved
213 - INA2xx battery monitor support (reads temp, gets MAX_AMPS and SHUNT params)
214 - MCP9600 temperature sensor I2C address fixed
215 - MLX90614 temperature sensor support
216 - MSP GPS ground course scaling fixed
217 - MSP RC uses scaled RC inputs (fixes issue with RCx_REVERSED having no effect)
218 - Networking supports reconnection to TCP server or client
219 - OSD params for adjusting horizontal spacing and vertical extension (see OSD_SB_H_OFS, OSD_SB_V_EXT)
220 - Relay inverted output support (see RELAYx_INVERTED parameter)
221 - ROMFS efficiency improvements
222 - RS-485 driver enable RTS flow control
223 - Sagetech MXS ADSP altitude fix (now uses abs alt instead of terrain alt)
224 - Septentrio GPS sat count correctly drops to zero when 255 received
225 - Septentrio supports selecting constellations (see GPS_GNSS_MODE)
226 - Single LED for user notification supported
227 - SPA06 baro supported
228 - Sum battery monitor optionally reports minimum voltage instead of average
229 - Sum battery monitor reports average temp
230 - Torqeedo dual motor support (see TRQ1, TRQ2 params)
231 - Ublox GPS driver uses 64 bit time for PPS interrupt (avoids possible dropout at 1hour and 12 minutes)
232 - UBlox GPS time ignored until at least 2D fix
233 - VideoTX supports additional freq bands (RushFPV 3.3Ghz)
234 - Volz logs desired and actual position, voltage, current, motor and PCB temp
235 - Volz server feedback and logging fixed
236 - Volz servo output in its own thread resulting in smoother movements
237 - W25N02KV flash support
239 4) Networking enhancements and fixes
241 - Allow multiple UDP clients to connect/disconnect/reconnect
242 - Ethernet supports faster log downloading (raised SDMMC clock limit on H7)
244 5) Camera and gimbal enhancements
246 - Alexmos precision improved slightly
247 - CAMERA_CAPTURE_STATUS mavlink msg sent to GCS (reports when images taken or video recorded, used by QGC)
248 - CAMERA_FOV_STATUS mavlink reports lat,lon of what camera is pointing at
249 - DO_MOUNT_CONTROL yaw angle interpreted as body-frame (was incorrectly being interpreted as earth-frame)
250 - Dual serial camera gimbal mounts fixed
251 - Lua script bindings to send CAMERA_INFORMATION and VIDEO_STREAM_INFORMATION messages to GCS
252 - Retract Mount2 aux function added (see RCx_OPTION = 113)
253 - Servo gimbal reported angles respect roll, pitch and yaw limits
254 - Siyi driver sends autopilot location and speed (recorded in images via EXIF)
255 - Siyi picture and video download scripts
256 - Siyi ZT6 and ZT30 support sending min, max temperature (see CAMERA_THERMAL_RANGE msg)
257 - Siyi ZT6 and ZT30 thermal palette can be changed using camera-change-setting.lua script
258 - Siyi ZT6 hardware id and set-lens fixed
259 - Topotek gimbal support
260 - Trigger distance ignores GPS status and only uses EKF reported location
262 6) Harmonic notch enhancements
264 - Harmonic notch is active in forward flight on quadplanes
265 - Harmonic notch filter freq clamping and disabling reworked
266 - Harmonic notch handles negative ESC RPMs
267 - Harmonic notch supports per-motor throttle-based harmonic notch
269 7) Copter specific enhancements and bug fixes
271 - Attitude control fix to dt update order (reduces rate controller noise)
272 - Auto mode fix to avoid prematurely advancing to next waypoint if given enough time
273 - Auto mode small target position jump when takeoff completes removed
274 - Auto mode yaw drift when passing WP removed if CONDITION_YAW command used and WP_YAW_BEHAVIOR = 0/None
275 - Auto, Guided flight mode pause RC aux switch (see RCx_OPTION = 178)
276 - AutoRTL (e.g. DO_LAND_START) uses copter stopping point to decide nearest mission command
277 - AutoRTL mode supports DO_RETURN_PATH_START (Copter, Heli only)
278 - AutoTune fix to prevent spool up after landing
279 - AutoTune performance and safety enhancements (less chance of ESC desync, fails when vehicle likely can't be tuned well)
280 - Autotune test gains RC aux switch function allows testing gains in any mode (see RCx_OPTION = 180)
281 - Config error avoided if auto mode is paused very soon after poweron
282 - FLIGHT_OPTIONS bit added to require position estimate before arming
283 - Follow mode slowdown calcs fixed when target is moving
284 - Ground oscillation suppressed by reducing gains (see ATC_LAND_R/P/Y_MULT)
285 - Guided mode internal error fix when taking off using SET_ATTITUDE_CONTROL message
286 - Guided mode internal error resolved when switching between thrust or climb rate based altitude control
287 - Guided mode yaw fixed when WP_YAW_BEHAVIOR = 0/None and CONDITION_YAW command received containing relative angle
288 - Landing detector fixed when in stabilize mode at full throttle but aircraft is upside down
289 - Landing detector logging added to ease support (see LDET message)
290 - Loiter unlimited command accepts NaNs (QGC sends these)
291 - Mavlink SYSTEM_STATUS set to BOOT during initialisation
292 - MOT_PWM_TYPE of 9 (PWMAngle) respects SERVOx_MIN/MAX/TRIM/REVERSED param values
293 - Payload place bug fix when aborted because gripper is already released
294 - RC based tuning (aka CH6 tuning) can use any RC aux function channel (see RCx_OPTION = 219)
295 - RTL_ALT minimum reduced to 30cm
296 - SystemID position controller support (Copter and Heli)
297 - TriCopter motor test and slew-up fixed
298 - WPNAV_SPEED min reduced to 10 cm/s (Copter only)
299 - Loiter mode zeros desired accel when re-entering from Auto during RC failsafe
301 8) TradHeli specific enhancements
303 - Autorotation yaw behaviour fix
304 - Autotune improvements including using low frequency dwell for feedforward gain tuning and conducting sweep in attitude instead of rate
305 - Blade pitch angle logging added (see SWSH log message)
306 - Constrain cyclic roll for intermeshing
307 - ICE / turbine cool down fix
308 - Inverted flight extended to non manual throttle modes
309 - Inverted flight transitions smoothed and restricted to only Stabilize mode
310 - SWSH logging fix for reversed collectives
312 9) Plane specific enhancements and bug fixes
314 - AIRSPEED_STALL holds vehicle stall speed and is used for minimum speed scaling
315 - Allow for different orientations of landing rangefinder
316 - Assistance requirements evaluted on mode change
317 - FBWB/CRUISE climb/sink rate limited by TECS limits
318 - FLIGHT_OPTION to immediately climb in AUTO mode (not doing glide slope)
319 - Glider pullup support (available only through custom build server)
320 - Loiter breakout improved to better handle destinations inside loiter circle
321 - Manual mode throttle made consistent with other modes (e.g battery comp and watt limit is done if enabled)
322 - Mavlink GUIDED_CHANGE_ALTITUDE supports terrain altitudes
323 - Minimum throttle not applied during SLT VTOL airbrake (reduces increase in airspeed and alt during back transition)
324 - Q_APPROACH_DIST set minimum distance to use the fixed wing approach logic
325 - Quadplane assistance check enhancements
326 - Quadplane Deca frame support
327 - Quadplane gets smoother takeoff by input shaping target accel and velocity
328 - Servo wiggles in altitude wait staged to be one after another
329 - Set_position_target_global_int accepts MAV_FRAME_GLOBAL_RELATIVE_ALT and MAV_FRAME_GLOBAL_TERRAIN_ALT frames
330 - Takeoff airspeed control improved (see TKOFF_MODE, TKOFF_THR_MIN)
331 - Takeoff fixes for fence autoenable
332 - Takeoff improvements including less overshoot of TKOFF_ALT
333 - TECS reset along with other controllers (important if plane dropped from balloon)
334 - Tilt quadplane ramp of motors on back transition fixed
335 - Tiltrotor tilt angles logged
336 - TKOFF_THR_MIN applied to SLT transitions
337 - Twin motor planes with DroneCAN ESCs fix to avoid max throttle at arming due to misconfiguration
338 - VTOLs switch to QLAND if a LONG_FAILSAFE is triggered during takeoff
340 10) Rover specific enhancements and bug fixes
342 - Auto mode reversed state maintained if momentarily switched to Hold mode
343 - Circle mode tracks better and avoids getting stuck at circle edge
344 - Flight time stats fixed
345 - MAV_CMD_NAV_SET_YAW_SPEED deprecated
346 - Omni3Mecanum frame support
347 - Stopping point uses max deceleration (was incorrectly using acceleration)
348 - Wheel rate controller slew rate fix
350 11) Antenna Tracker specific enhancements and bug fixes
352 - Never track lat,lon of 0,0
354 12) Scripting enhancements
356 - advance-wp.lua applet supports advancing Auto mode WP via RC switch
357 - AHRS_switch.lua supports switching between EKF2 and EKF3 via RC switch
358 - battery_internal_resistance_check.lua monitors battery resistance
359 - CAN:get_device returns nil for unconfigured CAN device
360 - copter_terrain_brake.lua script added to prevent impact with terrain in Loiter mode (Copter only)
361 - Copter:get_target_location, update_target_location support
362 - crosstrack_restore.lua example allows returning to previous track in Auto (Plane only)
363 - Display text on OLED display supported
364 - Docs improved for many bindings
365 - EFI get_last_update_ms binding
366 - EFI_SkyPower.lua driver accepts 2nd supply voltage
367 - ESC_slew_rate.lua example script supports testing ESCs
368 - Filesystem CRC32 check to allow scripts to check module versions
369 - forced arming support
370 - GPIO get/set mode bindings (see gpio:set_mode, get_mode)
371 - GPS-for-yaw angle binding (see gps:gps_yaw_deg)
372 - Halo6000 EFI driver can log all CAN packets for easier debugging
373 - handle_external_position_estimate binding allows sending position estimate from lua to EKF
374 - I2C:transfer support
375 - IMU gyros_consistent and accels_consistent bindings added
376 - INF_Inject.lua driver more robust to serial errors, improved logging, throttle and ignition control
377 - INS bindings for is calibrating, gyro and accel sensor values
378 - IPV4 address bindings (see SocketAPM_ipv4_addr_to_string) to allow UDP server that responds to individual clients
379 - Logging of booleans supported
380 - Lua language checks improved (finds more errors)
381 - MAVLink commands can be called from scripting
382 - MCU voltage binding (see analog:mcu_voltage)
383 - NMEA 2000 EFI driver (see EFI_NMEA2k.lua)
384 - "open directory failed" false warning when scripts in ROMFS fixed
385 - Param_Controller.lua supports quickly switching between 3 parameter sets via RC switch
386 - Pass by reference values are always initialized
387 - pelco_d_antennatracker.lua applet supports sending Pelco-D via RS-485 to PTZ cameras
388 - plane_aerobatics.lua minor enhancements
389 - REPL applet (read-evaluate-print-loop, see repl.lua) for interactive testing and experimentation
390 - "require" function failures in rare circumstances fixed
391 - "require" function works for modules in ROMFS (e.g. not on SD card)
392 - revert_param.lua supports more params (e.g ATC_RATE_R/P/Y, PTCH2SRV_TCONST, RLL2SRV_TCONST, TECS_)
393 - Scripts may receive mavlink messages which fail CRC (e.g messages which FC does not understand)
394 - SD card formatting supported
395 - Serial device simulation support (allows Lua to feed data to any supported serial protocol for e.g. sensor simulation)
396 - set_target_throttle_rate_rpy allows rate control from scripts (new for Copter)
397 - sitl_standby_sim.lua example shows how to switch between redundant flight controllers using an RC switch
398 - Slung payload oscillation suppression applet added (see copter-slung-payload.lua)
399 - Temperature sensor bindings added
401 - Various performance and memory usage optimizations
402 - VTOL-quicktune.lua minor enhancements including increasing YAW_FLTE_MAX to 8
403 - x-quad-cg-allocation.lua applet corrects for the CoM discrepancy in a quad-X frame
405 13) GCS / mavlink related changes and fixes
407 - BATTERY2 message deprecated (replaced by BATTERY_STATUS)
408 - CMD_MISSION_START/STOP rejected if first-item/last-item args provided
409 - Deny attempts to upload two missions simultaneously
410 - Fence and Rally points may be uploaded using FTP
411 - GPS_INPUT and HIL_GPS handles multiple GPSs
412 - HIGHRES_IMU mavlink message support (used by companion computers to receive IMU data from FC)
413 - MAV_CMD_COMPONENT_ARM_DISARM accepts force arm magic value of 21196
414 - MAV_CMD_DO_SET_SAFETY_SWITCH_STATE support
415 - MAV_CMD_SET_HAGL support (Plane only)
416 - MAVFTP respects TX buffer flow control to improve FTP on low bandwidth links
417 - MAVLink receiver support (RADIO_RC_CHANNELS mavlink message)
418 - Message interval supports TERRAIN_REPORT msg
419 - Mission upload may be cancelled using MISSION_CLEAR_ALL
420 - MOUNT_CONFIGURE, MOUNT_CONTROL messages deprecated
421 - RC_CHANNELS_RAW deprecated
422 - Serial passthrough supports parity allowing STM32CubeProgrammer to be used to program FrSky R9 receivers
423 - SET_ATTITUDE_TARGET angular rate input frame fixed (Copter only)
424 - TIMESYNC and NAMED_VALUE_FLOAT messages not sent on high latency MAVLink ports
426 14) Logging enhancements and fixes
428 - AC_PID resets and I-term sets logged
429 - ANG provides attitude at high rate (equivalent to ATT)
430 - ATT logs angles as floats (better resolution than ints)
431 - CAND message gets driver index
432 - DCM log message includes roll/pitch and yaw error
433 - EDT2 log msg includes stress and status received via extended DShot Telemetry v2
434 - EFI ECYL cylinder head and exhaust temp logs in degC (was Kelvin)
435 - ESCX log msg includes DroneCAN ESCs status, temp, duty cycle and power pct
436 - FMT messages written as required instead of all at beginning
437 - Logging restarted after download completes when LOG_DISARMED = 1
438 - MISE msg logs active mission command (CMD logged when commands are uploaded)
439 - ORGN message logging fixed when set using SET_GPS_GLOBAL_ORIGIN
440 - RPM sensor logging gets instance field, quality and health fields
441 - Short filename support removed (e.g log1.BIN instead of 00000001.BIN)
442 - Temperature sensor logging option for only sensors with no source (see TEMP_LOG)
443 - UART data rates logged at 1hz (see UART message)
445 15) ROS2 / DDS support
448 - Battery topic reports all available batteries
449 - Compile-time configurable rates for each publisher
450 - DDS_TIMEOUT_MS and DDS_MAX_RETRY set timeout and num retries when client pings XRCE agent
451 - GPS global origin published at 1 Hz
452 - High frequency raw imu data transmission
454 - Support sending waypoints to Copter and Rover
455 - Remove the XML refs file in favor of binary entity creation
457 16) Safety related enhancements and fixes
459 - Accel/Gyro inconsistent message fixed for using with only single IMU
460 - Battery monitor failure reported to GCS, triggers battery failsafe but does not take action
461 - Far from EKF origin pre-arm check removed (Copter only)
462 - Fence breach warning message slightly improved
463 - Fence enhancements incluiding alt min fence (Copter only, see FENCE_AUTOENABLE, FENCE_OPTIONS)
464 - Fences can be stored to SD Card (see BRD_SD_FENCE param)
465 - ICEngine stopped when in E-Stop or safety engaged (Plane only)
466 - LEDs flash green lights based on EKF location not GPS
467 - Parachute option to skip disarm before parachute release (see CHUTE_OPTIONS)
468 - Plane FENCE_AUTOENABLE of 1 or 2 deprecation warning added
469 - Pre-arm check if OpenDroneID is compiled in but disabled
470 - Pre-arm check of duplicate RC aux functions fixed (was skipping recently added aux functions)
471 - Pre-arm checks alert user more quickly on failure
472 - Prearm check for misconfigured EAHRS_SENSORS and GPS_TYPE
473 - Proximity sensor based avoidance keeps working even if one proximity sensor fails (Copter, Rover)
474 - RC aux functions for Arm, Disarm, E-Stop and Parachute ignored when RC is first turned on
475 - Warning of duplicate SERIALx_PROTOCOL = RCIN
477 17) Other bug fixes and minor enhancements
479 - Accel cal fixed for auxiliary IMUs (e.g. IMU4 and higher)
480 - Bootloader fix to reduce unnecessary mass erasing of flash when using STLink or Jlink tools
481 - Bootloader rejects allocation of broadcast node ID
482 - CAN forward registering/de-registering fix (affected Mission Planner DroneCAN UI)
483 - Dijkstras fix to correct use of uninitialised variable
484 - DShot rates are not limited by NeoPixel rates
485 - Ethernet and CAN bootloader fix to prevent getting stuck in bootloader mode
486 - Filesystem does not show entries for empty @ files
487 - Filesystem efficiency improvements when reading files
488 - Flight statistics only reset if user sets STAT_RESET to zero (avoids accidental reset)
489 - Flight time statistics updated on disarm (avoids issue if vehicle powered-down soon after disarm)
490 - Internal error thrown if we lose parameters due to saving queue being too small
491 - MAVLink via DroneCAN baud rate fix
492 - SPI pins may also be used as GPIOs
493 - Terrain cache size configurable (see TERRAIN_CACHE_SZ)
495 18) Developer focused fixes and enhancements
497 - AP_Camera gets example python code showing how to use GStreamer with UDP and RTSP video streams
498 - Cygwin build fix for non-SITL builds
499 - Cygwin build fixed with malloc wrap
500 - DroneCAN and scripting support FlexDebug messages (see CAN_Dn_UC_OPTION, FlexDebug.lua)
501 - EKF3 code generator documentation and cleanup
502 - GPS jamming simulator added
503 - MacOS compiler warnings reduced
504 - SFML joystick support
505 - SITL support for OpenBSD
506 - Text warning if older Fence or Rally point protocols are used
507 ------------------------------------------------------------------
508 Release 4.5.7 08 Oct 2024
510 Changes from 4.5.7-beta1
512 1) Reverted Septentrio GPS sat count correctly drops to zero when 255 received
513 ------------------------------------------------------------------
514 Release 4.5.7-beta1 26 Sep 2024
518 1) Bug fixes and minor enhancements
521 - CUAV-7-Nano correction for LEDs and battery volt and current scaling
522 - DroneCAN deadlock and saturation of CAN bus fixed
523 - DroneCAN DNA server init fix (caused logging issues and spam on bus)
524 - F4 boards with inverter support correctly uninvert RX/TX
525 - Nanoradar M72 radar driver fix for object avoidance path planning
526 - RC support for latest version of GHST
527 - Septentrio GPS sat count correctly drops to zero when 255 received
528 - TradHeli DDVP tail rotor pitch actuator fixed
530 2) ROS2/DDS and other developer focused enhancements
532 - AP quaternions normalised for ROS2 to avoid warnings
533 - Dependencies fixed for easier installation
534 - ROS2 SITL launch file enhancements including displaying console and map
535 - ROS_DOMAIN_ID param added to support multiple vehicles or instances of ROS2
536 - Python 3.12 support
537 ------------------------------------------------------------------
538 Release 4.5.6 03 Sep 2024
540 No changes from 4.5.6-beta1
541 ------------------------------------------------------------------
542 Release 4.5.6-beta1 20 Aug 2024
546 1) Board specific enhancements and bug fixes
548 - 3DR Control Zero H7 Rev G support
549 - CUAV-7-Nano support
550 - FoxeerF405v2 servo outputs increased from 9 to 11
551 - Holybro Pixhawk6C hi-power peripheral overcurrent reporting fixed
552 - iFlight 2RAW H7 support
553 - MFT-SEMA100 support
554 - TMotorH743 support BMI270 baro
557 2) Minor enhancements and bug fixes
559 - Cameras using MAVLink report vendor and model name correctly
560 - DroneCAN fix to remove occasional NodeID registration error
561 - GPS NMEA and GSoF driver ground course corrected (now always 0 ~ 360 deg)
562 - ICP101XX barometer slowed to avoid I2C communication errors
563 - IMU temp cal param (INSn_ACCSCAL_Z) stored correctly when bootloader is flashed
564 - IMU gyro/accel duplicate id registration fixed to avoid possible pre-arm failure
565 - Logging to flash timestamp fix
566 - OSD displays ESC temp instead of motor temp
567 - PID controller error calculation bug fix (was using target from prev iteration)
568 - Relay on MAIN pins fixed
570 3) Copter specific fixes
572 - Payload place bug fix (calimb rate after releasing payload was unreliable)
574 ------------------------------------------------------------------
575 Release 4.5.5 1st Aug 2024
577 No changes from 4.5.5-beta2
578 ------------------------------------------------------------------
579 Release 4.5.5-beta2 27 July 2024
581 Changes from 4.5.5-beta1
583 1) Board specific enhancements and bug fixes
585 - CubeRed's second core disabled at boot to avoid spurious writes to RAM
586 - CubeRed bootloader's dual endpoint update method fixed
587 ------------------------------------------------------------------
588 Release 4.5.5-beta1 1st July 2024
592 1) Board specific enhancements and bug fixes
594 - fixed IOMCU transmission errors when using bdshot
595 - update relay parameter names on various boards
596 - add ASP5033 airspeed in minimal builds
597 - added RadiolinkPIX6
598 - fix Aocoda-RC H743Dual motor issue
599 - use ICM45686 as an ICM20649 alternative in CubeRedPrimary
601 2) System level minor enhancements and bug fixes
603 - correct use-after-free in script statistics
604 - added arming check for eeprom full
605 - fixed a block logging issue which caused log messages to be dropped
606 - enable Socket SO_REUSEADDR on LwIP
607 - removed IST8310 overrun message
608 - added Siyi ZT6 support
609 - added BTFL sidebar symbols to the OSD
610 - added CRSF extended link stats to the OSD
611 - use the ESC with the highest RPM in the OSD when only one can be displayed
612 - support all Tramp power levels on high power VTXs
613 - emit jump count in missions even if no limit
614 - improve the bitmask indicating persistent parameters on bootloader flash
615 - fix duplicate error condition in the MicroStrain7
619 - fix infinite climb bug when using EK3_OGN_HGT_MASK
621 4) Copter specific changes
623 - fix MAV_CMD_CONDITION_YAW with relative angle
625 5) Other minor enhancements and bug fixes
627 - specify pymonocypher version in more places
628 - added DroneCAN dependencies to custom builds
630 ------------------------------------------------------------------
631 Release 4.5.4 12th June 2024
635 Disable highres IMU sampling on ICM42670 fixing an issue on some versions of Pixhawk6X
637 ------------------------------------------------------------------
638 Release 4.5.3 28th May 2024
640 No changes from 4.5.3-beta1
641 ------------------------------------------------------------------
642 Release 4.5.3-beta1 16th May 2024
646 1) Board specific enhancements and bug fixes
648 - correct default GPS port on MambaH743v4
650 - added iFlight Blitz H7 Pro
651 - added BLITZ Wing H743
652 - added highres IMU sampling on Pixhawk6X
654 2) System level minor enhancements and bug fixes
656 - fixed rare crash bug in lua scripting on script fault handling
657 - fixed Neopixel pulse proportions to work with more LED variants
658 - fixed timeout in lua rangefinder drivers
659 - workaround hardware issue in IST8310 compass
660 - allow FIFO rate logging for highres IMU sampling
662 3) Copter specific changes
664 - fixed speed constraint during avoidance backoff
666 ------------------------------------------------------------------
667 Release 4.5.2 14th May 2024
669 No changes from 4.5.2-beta1
670 ------------------------------------------------------------------
671 Release 4.5.2-beta1 29th April 2024
675 1) Board specific enhancements and bug fixes
677 - FoxeerF405v2 support
678 - iFlight BLITZ Mini F745 support
679 - Pixhawk5X, Pixhawk6C, Pixhawk6X, Durandal power peripherals immediately at startup
681 2) System level minor enhancements and bug fixes
683 - Camera lens (e.g. RGB, IR) can be selected from GCS or during missions using set-camera-source
684 - Crashdump pre-arm check added
685 - Gimbal gets improved yaw lock reporting to GCS
686 - Gimbal default mode fixed (MNTx_DEFLT_MODE was being overriden by RC input)
687 - RM3100 compass SPI bus speed reduced to 1Mhz
688 - SBUS output fix for channels 1 to 8 also applying to 9 to 16
689 - ViewPro gimbal supports enable/disable rangefinder from RC aux switch
690 - Visual Odometry delay fixed (was always using 1ms delay, see VISO_DELAY_MS)
691 - fixed serial passthrough to avoid data loss at high data rates
695 - Compass learning disabled when using GPS-for-yaw
696 - GSF reset minimum speed reduced to 1m/s (except Plane which remains 5m/s)
697 - MicroStrain7 External AHRS position quantization bug fix
698 - MicroStrain7 init failure warning added
699 - MicroStrain5 and 7 position and velocity variance reporting fix
701 4) Copter specific changes
703 - Auto mode condition yaw fix to avoid pointing at out-of-date target
704 - Guided mode angle control yaw target initialisation fix (was always turning North)
706 5) Other minor enhancements and bug fixes
708 - DDS_UDP_PORT parameter renamed (was DDS_PORT)
709 - Harmonic Notch bitmask parameter conversion fix (see INS_HNTCH_HMNCS)
711 ------------------------------------------------------------------
713 Release 4.5.1 8th April 2024
715 This release fixes a critical bug in the CRSF R/C protocol parser that
716 can lead to a handfault and a vehicle crashing. A similar fix was
717 applied to the GHST protocol, although we believe that GHST could not
718 be affected by the bug, so this was just a precaution.
720 There are no other changes in this release.
722 ------------------------------------------------------------------
723 Release 4.5.0 2nd April 2024
725 No changes from 4.5.0-beta4
726 ------------------------------------------------------------------
727 Release 4.5.0-beta4 22nd March 2024
729 Changes from 4.5.0-beta3
733 - fixed a cache corruption issue with microSD card data on H7 based boards
734 - rename parameter NET_ENABLED to NET_ENABLE
735 - fixed FDCAN labels for adding new H7 boards
736 - avoid logging dma.txt to save CPU
737 - fixed roll/pitch in viewpro driver
738 - added band X in VideoTX
739 - fixed quaternion attitude reporting for Microstrain external AHRS
740 - add RPLidarC1 proximity support
746 ------------------------------------------------------------------
747 Release 4.5.0-beta3 14-March-2024
749 Changes from 4.5.0-beta2
751 1) Board specific changes
752 - added PixFlamingo F7 board
753 - support ICM42688 on BlitzF745AIO
754 - fixed IMU orientation of CubeRedSecondary
755 - enable all FPV features on SpeedyBeeF405WING
757 2) System level changes
759 - improved robustness of CRSF parser
760 - reduced memory used by DDS/ROS2
761 - added filesystem crc32 binding in lua scripting
762 - support visual odometry quality metric and added autoswitching lua script
763 - allow for expansion of fence storage to microSD for larger pologon fences
764 - allow FTP upload of fence and rally points
765 - fixed vehicle type of ship simulation for ship landing
766 - make severity level depend on generator error level in IE 2400 generator
767 - speed up initial GPS probe by using SERIALn_BAUD first
768 - allow NanoRadar radar and proximity sensor to share the CAN bus
769 - added MR72 CAN proximity sensor
770 - only produce *_with_bl.hex not *.hex in builds if bootloader available
771 - fixed check for GPS antenna separation in moving baseline yaw
772 - added GPS_DRV_OPTIONS options for fully parsing RTCMv3 stream
773 - fixed logging of RTCM fragments in GPS driver
774 - fixed video recording while armed
775 - robostness and logging improvements for ExternalAHRS
776 - fixed RPM from bdshot on boards with IOMCU
777 - fixed accel cal simple to remove unused IMUs
779 3) Copter specific changes
780 - check fence breaches more often on copter for smaller overrun
781 - improved copter follow mode at close distances
782 - fixed default for FLTD for yaw
783 - fixed reset_target_and_rate method in attitude control
785 ------------------------------------------------------------------
786 Copter 4.5.0-beta2 14-February-2024
788 Changes from 4.5.0-beta1:
790 1) New Autopilots supported
794 2) System level changes
795 - fixed float rounding issue in HAL_Linux millis and micros functions
796 - fixed loading of defaults.parm parameters for dynamic parameter subtrees
797 - fixed discrimination between GHST and CRSF protocols
798 - fixed bug in DroneCAN packet parsing for corrupt packets that could cause a crash
799 - fixed handling of network sockets in scripting when used after close
800 - fixed bit timing of CANFD buses
802 3) Copter specific changes
803 - added filter to EKF variances for EKF failsafe
805 4) Camera and gimbal enhancements
806 - wait for non-zero camera version in SIYI driver
809 - do relay parameter conversion for parachute parameters if ever has been used
810 - broaden acceptance criteria for GPS yaw measurement for moving baseline yaw
812 ------------------------------------------------------------------
813 Copter 4.5.0-beta1 30-Jan-2024
815 1) New autopilots supported
817 - Airvolute DCS2 onboard FMU
819 - BrainFPV RADIX 2 HD
823 - Esp32-tomte76, esp32nick, esp32s3devkit
826 - FlywooF405S-AIO with alternative IMUs
827 - Here4 GPS as flight controller
828 - Holybro 6X revision 6
829 - Holybro6X-45686 with 3x ICM45686 IMUs
831 - KakuteH7 using ICM42688
832 - PixFlamingo (uses STM32L4PLUS CPU)
840 - YJUAV_A6SE, YJUAV_A6SE_H743
841 2) Autopilot specific changes
842 - 1MB boards lose features to save flash (Payload Place, some battery monitors, NMEA Output, bootloaders, Turtle mode)
843 - CubeOrangePlus supports IMU high resolution sampling (works with ICM42688, ICM42652, ICM42670, ICM45686 IMUs)
844 - F4 processors with only 1 IMU gain Triple Harmonic Notch support
845 - F765-SE bdshot support on 1st 4 pin
846 - F7 and H7 boards lose DMA on I2C ports (not required, limited DMA better used elsewhere)
847 - FlyingMoonH743, FlyingMoonF427 2nd and 3rd IMU order swapped
848 - HEEWING-F405 supports CRSF
849 - MatekL431-RC bootloader added, DMA used for RC and GPS
850 - PH4-mini, PH4-mini-bdshot, Swan-K1 and TBS-Colibri-F7 BRD_SER4_RTSCTS param conflict fixed
851 - Pixhawk6C supports BMI088 baro
852 - TMotorH743, Heewing-F405 serial parameter definitions fixed
853 3) AHRS/EKF enhancements and fixes
854 - AHRS_OPTIONS supports disabling fallback to DCM
855 - BARO_ALT_OFFSET slews more slowly (was 20sec, now 1min)
856 - EKF2 removed (can be re-enabled with Custom build server)
857 - External AHRS support for multiple GPSs
858 - InertialLabs INS-U external AHRS support
859 - Lord external AHRS renamed to MicroStrain5
860 - MAV_CMD_EXTERNAL_POSITION_ESTIMATE supports setting approximate position during dead-reckoning
861 - Microstrain7 (aka 3DM-QG7) external AHRS support
862 4) Driver enhancements
863 - 3DR Solo supports up to 6S batteries
864 - Airspeed health checks vs GPS use 3D velocity
865 - BDshot on the first four channels of boards with F103-based IOMCUs (e.g. Pixhawk 6X)
866 - Dshot on all IOMCU channels on all boards with an IOMCU (e.g. all CubePilot autopilots)
867 - Dshot commands (e.g. motor reversal abd beeps) and EDT supported on IOMCU
868 - DroneCAN battery monitors calculate consumed energy if battery doesn't provide directly
869 - DroneCAN RC and Ghost RC protocol support
871 - Extended DShot Telemetry support (requires BLHeli32 ver 32.10 or BlueJay, set SERVO_DSHOT_ESC=3 or 4)
872 - GPS L5 band health override to enable L5 signal use (see GPS_DRV_OPTIONS)
873 - GPS-for-yaw works at lower update rate (3hz minimum)
874 - GSOF GPS supports GPS_COM_PORT parameter
875 - Hirth ICEngine support
876 - ICE option to enable/disable starting while disarmed
877 - ICE support for starter via relay
878 - IMUDATA serial protocol outputs raw IMU data on serial port (only available using custom build server)
879 - Innomaker LD06 360deg lidar support
880 - Intelligent Energy fuel cells new protocol support
881 - IRC Tramp supports 1G3 bands A and B
884 - KDECAN driver rewrite (params moved to KDE_, works on all vehicles)
885 - MCP9601 temperature sensor support
886 - NanoRadar NRA24 rangefinder support
887 - NeoPixelsRGB support
888 - NoopLoop TOFSense, TOFSenseF-I2c rangefinder support
889 - OSD shows flashing horizon when inverted
890 - OSD2 support (e.g. second OSD)
891 - QMC5883P compass support
892 - Relay refactored to support RELAYx_FUNCTION, RELAY_STATUS message support added
893 - Reventech fuel level support (extends existing analog driver, see BATT_FL_xx parameters)
894 - RPLidarS1 360 deg lidar support and improved reliability for all RPLidars
895 - SBF GPS supports yaw from dual antennas
896 - Temperature sensor using analog voltages supported
897 - Trimble PX-1 support added as a GPS
898 - Winch driver enhancements including stuck protection, option for spin-free on startup
899 5) Control and navigation changes and enhancements
900 - Auto missions can always be cleared while disarmed (would fail if mission still running)
901 - DO_ENGINE_CONTROL allows starting engine even when disarmed
902 - DO_SET_MISSION_CURRENT command can reset mission (see Reset Mission field)
903 - DO_SET_SERVO, DO_REPEAT_SERVO work with servo outputs set to RCInxScaled
904 - Fractional Loiter Turn Support in missions
905 - HarmonicNotch supports up to 16 harmonics
906 - JUMP command sends improved text msg to pilot (says where will jump to)
907 - MAV_CMD_AIRFRAME_CONFIGURATION can control landing gear on all vehicles
908 - MOT_OPTIONS allows voltage compensation to use raw battery voltages (instead of current corrected voltage)
909 - PID controllers get DFF/D_FF (derivative feed-forward), NTF (target notch filter index) and NEF (error notch filter index)
910 - PID controllers get PDMX param to limit P+D output (useful for large vehicles and/or slow actuators)
911 - PID notch filter configured via new filter library using FILT parameters
912 - RTL mode uses RTL_CLIMB_MIN even if within cone slope (previously always climbed 2m)
913 6) Copter specific enhancements
914 - MOT_SPOOL_TIM_DN allows slower spool down of motors
915 - Precision landing gets fast descent option (see PLND_OPTIONS)
916 - Throw mode min and max altitude support (see THROW_ALT_MIN/MAX)
917 - TKOFF_TH_MAX allows lower throttle during takeoff
918 - ZigZag mode sends position target to GCS
919 7) TradHeli specific enhancements
920 - Arming checks improved
921 - Motor test removed (it was non-functional)
922 - OSD shows main rotor RPM
923 - RPM based dynamic notch can track below reference (e.g. below INS_HNTCH_FM_RAT)
924 - Thrust linearization for DDFP tails
925 - Heli_idle_control.lua closed loop throttle control Lua script
926 8) Parameters renamed
927 - COMPASS_TYPEMASK renamed to COMPASS_DISBLMSK
928 9) ROS2 / DDS support
929 - Added support for EProsima MicroXRCEDDS as a transport in SITL and hardware
930 - Added sensor data topic support such as NavSatStatus and BatteryState
931 - Added velocity control support in Copter
932 - Added a new AP_ExternalControl library for generic control support in SI units
933 - Added support for building ArduPilot with the colcon build system
934 - DDS topics comply with ROS REP-147
935 - Added Gazebo Garden and Gazebo Harmonic simulation with examples
936 - Added support for ROS 2 services such as Arm and Mode control
937 - Added high level goal interface for waypoints
938 - Wiki updated to support ROS 2
939 - Added ROS 2 launch scripts for SITL, MAVProxy and micro-ROS agent
940 - Add pytests for DDS client and ROS 2 launch scripts and integrate into CI
941 10) Camera and gimbal enhancements
942 - Calculates location where camera gimbal is pointing (see CAMERA_FOV_STATUS)
943 - CAMx_MNT_INST allows specifying which mount camera is in
944 - Camera lens (e.g. live video stream) selectable using RC aux function
945 - Follow mode can point gimbal at lead vehicle
946 - Circle mode can point gimbal at circle center (see CIRCLE_OPTIONS)
947 - Interval timer (for taking pictures at timed intervals)
948 - Image tracking support (ViewPro only)
949 - MAVLink Gimbal Protocol v2 support for better GCS integration
950 - MNTx_SYSID_DFLT allows easier pointing gimbal at another vehicle
951 - MOUNT_CONTROL, MOUNT_CONFIGURE messages deprecated
952 - RangeFinder support (only logged, only supported on Siyi, Viewpro)
953 - Pilot's RC input re-takes manual control of gimbal (e.g. switches to RC_TARGETING mode)
954 - Siyi driver gets Zoom control, sends autopilot attitude and time (reduces leans)
955 - Video recording may start when armed (see CAMx_OPTIONS)
956 - ViewPro driver (replaces equivalent Lua driver)
957 - Xacti camera gimbal support
958 - Zoom percentage support (for both missions and GCS commands)
959 11) Logging and reporting changes
960 - Battery logging (e.g. BAT) includes health, temperature, state-of-health percentage
961 - CAM and MNT messages contain camera gimbal's desired and actual angles
962 - INS_RAW_LOG_OPT allows raw, pre-filter and post-filter sensor data logging (alternative to "batch logging", good for filtering analysis)
963 - PID logging gets reset and I-term-set flags
964 - Rangefinder logging (e.g. RFND) includes signal quality
965 - RC aux functions sorted alphabetically for GCS
966 - RC logging (RCI, RCI2) include valid input and failsafe flags
967 - RTK GPS logging includes number of fragments used or discarded
968 12) Scripting enhancements
969 - Autopilot reboot support
970 - Baro, Compass, IMU, IOMCU health check support
971 - Battery cell voltage bindings
972 - Battery driver support
973 - BattEsimate.lua applet estimates SoC from voltage
974 - Camera and Mount bindings improved
975 - CAN input packet filtering reduces work required by Lua CAN drivers
976 - DJI RS2/RS3 gimbal driver supports latest DJI firmware version (see mount-djirs2-driver.lua)
977 - EFI drivers for DLA serial, InnoFlight Inject EFI driver
978 - EFI bindings improved
980 - Generator drivers for Halo6000, Zhuhai SVFFI
981 - GCS failsafe support
982 - Hobbywing_DataLink driver (see Hobbywing_DataLink.lua)
983 - is_landing, is_taking_off bindings
984 - led_on_a_switch.lua sets LED brightness from RC switch
985 - MAVLink sending and receiving support
986 - Mission jump_to_landing_sequence binding
987 - mount-poi.lua upgraded to applet, sends better feedback, can lock onto Location
988 - Networking/Ethernet support
989 - Proximity driver support
990 - Rangefinder drivers can support signal quality
991 - revert_param.lua applet for quickly reverting params during tuning
992 - RockBlock.lua applet supports setting mode, fix for battery voltage reporting
993 - Serial/UART reading performance improvement using readstring binding
994 - sport_aerobatics.lua rudder control fixed
995 - Thread priority can be set using SCR_THD_PRIORITY (useful for Lua drivers)
996 - Wind alignment and head_wind speed bindings
997 13) Safety related enhancements and fixes
998 - Arm/Disarmed GPIO may be disabled using BRD_OPTIONS
999 - Arming check of compass vs world magnetic model to detect metal in ground (see ARMING_MAGTHRESH)
1000 - Arming check of GPIO pin interrupt storm
1001 - Arming check of Lua script CRC
1002 - Arming check of mission loaded from SD card
1003 - Arming check of Relay pin conflicts
1004 - Arming check of emergency stop skipped if emergency stop aux function configured
1005 - Arming failures reported more quickly when changing from success to failed
1006 - ARMING_OPTIONS allows supressing "Armed", "Disarmed" text messages
1007 - BRD_SAFETY_MASK extended to apply to CAN ESCs and servos
1008 - Buzzer noise for gyro calibration and arming checks passed
1009 - Dijkstras object avoidance supports "fast waypoints" (see AVOID_OPTIONS)
1010 - FENCE_OPTIONS supports union OR intersection of all polygon fences
1011 - FLTMODE_GCSBLOCK blocks GCS from changing vehicle to specified modes
1012 - GCS failsafe action to switch to Brake mode (see FS_GCS_ENABLE)
1013 - Main loop lockup recovery by forcing mutex release (only helps if caused by software bug)
1014 - Rally points supports altitude frame (AMSL, Relative or Terrain)
1015 - SERVO_RC_FS_MSK allows outputs using RC passthrough to move to SERVOx_TRIM on RC failsafe
1016 - TKOFF_RPM_MAX aborts takeoff if RPM is too high (for cases where a propeller has come off)
1017 14) System Enhancements
1018 - CAN port can support a second CAN protocol on the same bus (2nd protocol must be 11 bit, see CAN_Dn_PROTOCOL2)
1019 - CAN-FD support (allows faster data transfer rates)
1020 - Crash dump info logged if main thread locksup (helps with root cause analysis)
1021 - Ethernet/Networking support for UDP and TCP server and client (see NET_ENABLED) and PPP (see SERIALx_PROTOCOL)
1022 - Firmware flashing from SD card
1023 - Linux board SBUS input decoding made consistent with ChibiOS
1024 - Linux boards support DroneCAN
1025 - Parameter defaults stored in @ROMFS/defaults.parm
1026 - SD Card formatting supported on all boards
1027 - Second USB endpoint defaults to MAVLink (instead of SLCAN) except on CubePilot boards
1028 - Serial over DroneCAN (see CAN_D1_UC_SER_EN) useful for configuring F9P DroneCAN GPSs using uCenter
1029 15) Custom Build server include/exclude features extended to include
1032 - Bootloader flashing
1034 - Compass calibration
1036 - ExternalAHRS (e.g. MicroStrain, Vectornav)
1049 16) Developer specific items
1050 - ChibiOS upgrade to 21.11
1051 - UAVCAN replaced with DroneCAN
1052 - AUTOPILOT_VERSION_REQUEST message deprecated (use REQUEST_MESSAGE instead)
1053 - PREFLIGHT_SET_SENSOR_OFFSETS support deprecated (was unused by all known ground stations)
1054 - MISSION_SET_CURRENT message deprecated (use DO_SET_MISSION_CURRENT command instead)
1055 - MISSION_CURRENT message sends num commands and stopped/paused/running/complete state
1056 - Python version requirement increased to 3.6.9
1057 - mavlink_parse.py shows all suported mavlink messages
1058 - COMMAND_INT messages can be used for nearly all commands (previously COMMAND_LONG)
1060 - 3DR Solo gimbal mavlink routing fixed
1061 - Airspeed health always checked before use (may not have been checked when using "affinity")
1062 - Auto mode fix for DO_CHANGE_SPEED commands placed immediately after TAKEOFF (previously were ignored)
1063 - Bootloop fixed if INS_GYRO_FILTER set too high
1064 - Button Internal Error caused by floating pin or slow device power-up fixed
1065 - CAN Compass order maintained even if compass powered up after autopilot
1066 - Compass device IDs only saved when calibrated to ensure external compasses appear as primary on new boards
1067 - Cut corners more by defaulting WPNAV_ACCEL_C to 2x WPNAV_ACCEL
1068 - Currawong ECU EFI does not send exhaust gas temperature
1069 - DJI RS2/RS3 gimbal reported angle fix
1070 - DO_SET_ROI, ROI_LOCATION, ROI_NONE bug fix that could lead to gimbal pointing at old target
1071 - Generator parameter init fix (defaults might not always have been loaded correctly)
1072 - GPS_TC_BLEND parameter removed (it was unused)
1073 - Guided mode protection against targets with NaN values
1074 - Guided mode yaw fix (vehicle might rotate too slowly)
1075 - Harmonic Notch gets protection against extremely low notch filter frequencies
1076 - IE 650/800 Generators report fuel remaining
1077 - INS calibration prevents unlikely case of two calibrations running at same time
1078 - LPS2XH Baro supported over I2C fixed
1079 - MatekH743 storage eeprom size fixed
1080 - MAVLink routing fix to avoid processing packet meant for another vehicle
1081 - Mount properly enforces user defined angle limits
1082 - MPU6500 IMU filter corrected to 4k
1083 - NMEA output time and altitude fixed
1084 - OSD gets labels for all supported serial protocols
1085 - OSD RF panel format fixed
1086 - RobotisServo initialisation fix
1087 - RPM accuracy and time wrap handling improved
1088 - Sagetech ADSB MXS altitude fix (needs amsl, was sending alt-above-terrain)
1089 - SageTechMXS ADSB climb rate direction fixed
1090 - SBUS out exactly matches SBUS in decoding
1091 - Serial port RTS pins default to pulldown (SiK radios could getting stuck in bootloader mode)
1092 - SERIALx_ parameters removed for ports that can't actually be used
1093 - Servo gimbal attitude reporting fix
1094 - Servo output fix when using scaled RC passthrough (e.g. SERVOx_FUNCTION = RCinXScaled)
1095 - Siyi continuous zoom stutter fixed
1096 - Siyi gimbal upside-down mode fixed (avoid bobbing if upside-down)
1097 - SmartRTL premature "buffer full" failure fixed
1098 - ST24 RC protocol fixed
1099 - STM32L496 CAN2 init fix (AP_Periph only?)
1100 - Tricopter, SingleCopter, CoaxCopter fins centered if using BLHeli/DShot
1101 - VFR_HUD climb rate reports best estimate during high vibration events (previously it would stop updating)
1102 - Visual Odometry healthy check fix in case of out-of-memory
1103 - VTX_MAX_POWER restored (allows setting radio's power)
1104 - Yaw limit calculations fixed
1105 ------------------------------------------------------------------
1106 Copter 4.4.4 19-Dec-2023 / 4.4.4-beta1 05-Dec-2023
1108 1) Autopilot related enhancement and fixes
1109 - CubeOrange Sim-on-hardware compilation fix
1110 - RADIX2HD supports external I2C compasses
1111 - SpeedyBeeF405v4 support
1113 - DroneCAN battery monitor with cell monitor SoC reporting fix
1114 - NTF_LED_TYPES parameter description fixed (was missing IS31FL3195)
1115 - ProfiLED output fixed in both Notify and Scripting
1116 - Scripting bug that could cause crash if parameters were added in flight
1117 - STAT_BOOTCNT param fix (was not updating in some cases)
1118 - Takeoff RPM check fixed where motors are attached to AUX channels
1119 - don't query hobbywing DroneCAN ESC IDs while armed
1120 ------------------------------------------------------------------
1121 Copter 4.4.3 14-Nov-2023
1122 Changes from 4.4.3-beta1
1123 1) AP_GPS: correct uBlox M10 configuration on low flash boards
1124 ------------------------------------------------------------------
1125 Copter 4.4.3-beta1 07-Nov-2023
1127 1) Autopilot related enhancements and fixes
1128 - BETAFTP-F405 board configuration fixes
1129 - CubeOrangePlus-BG edition ICM45486 IMU setup fixed
1130 - YJUAV_A6SE_H743 support
1131 2) Minor enhancements
1132 - GPS_DRV_OPTION allows using ellipsoid height in more GPS drivers
1133 - Lua script support for fully populating ESC telemetry data
1135 - AK09916 compass being non-responsive fixed
1136 - IxM42xxx IMUs "stuck" gyros fixed
1137 - MAVLink response fixed when no airspeed sensor during preflight calibration
1138 - Notch filtering protection when using uninitialised RPM source in ESC telemetry
1139 - SIYI gimbal driver parsing bug fixed (was causing lost packets)
1140 ------------------------------------------------------------------
1141 Copter 4.4.2 22-Oct-2023 / Copter 4.4.2-beta1 13-Oct-2023
1143 1) Autopilot related enhancements and fixes
1144 - BETAFPV-F405 support
1145 - MambaF405v2 battery and serial setup corrected
1146 - mRo Control Zero OEM H7 bdshot support
1147 - SpeedyBee-F405-Wing gets VTX power control
1148 - SpeedyBee-F405-Mini support
1149 - T-Motor H743 Mini support
1150 2) EKF3 supports baroless boards
1151 3) GPS-for-yaw allows base GPS to update at only 3Hz
1152 4) INA battery monitor supports config of shunt resistor used (see BATTx_SHUNT)
1153 5) Log VER message includes vehicle type
1154 6) OpenDroneId option to auto-store IDs in persistent flash
1155 7) RC SBUS protection against invalid data in first 4 channels
1157 - BMI088 IMU error value handling fixed to avoid occasional negative spike
1158 - Dev environment CI autotest stability improvements
1159 - OSD correct DisplayPort BF MSP symbols
1160 - OSD option to correct direction arrows for BF font set
1161 - Sensor status reporting to GCS fixed for baroless boards
1162 ------------------------------------------------------------------
1163 Copter 4.4.1 26-Sep-2023 / 4.4.1-beta2 14-Sep-2023
1164 Changes from 4.4.1-beta1
1165 1) Autopilot related enhancements
1166 - H750 external flash optimisations for to lower CPU load
1167 - MambaF405Mini fixes to match manufacturer's recommended wiring
1169 - YJUAV_A6SE support
1171 - Airbotf4 features minimised to build for 4.4
1172 - ChibiOS clock fix for 480Mhz H7 boards (affected FDCAN)
1173 - RPI hardware version check fix
1174 ------------------------------------------------------------------
1175 Copter 4.4.1-beta1 05-Sep-2023
1177 1) Autopilot related fixes and enhancements
1178 - KakuteH7-wing get 8 bit directional dshot channel support
1179 - Luminousbee5 boards defaults updated
1180 - Navigator autopilot GPIOs fix (PWM output was broken)
1181 - Pixhawk6C Serial RTS lines pulled low on startup
1182 - QiotekZealotF427 and QiotekZealotH743 battery monitor default fixed
1183 - SDMODELH7V1 support
1184 2) Driver enhancements
1185 - DroneCAN battery monitors allow reset of battery SoC
1186 - Himark DroneCAN servo support
1187 - Hobbywing DroneCAN ESC support
1188 3) EKF3 high vibration handling improved with EK3_GLITCH_RADIUS option
1189 4) Custom build server gets mission storage on SDCard selection
1190 5) SITL default parameter handling bug fix
1191 ------------------------------------------------------------------
1192 Copter 4.4.0 18-Aug-2023 / 4.4.0-beta5 12-Aug-2023
1193 Changes from 4.4.0-beta4
1194 1) Autopilots specific changes
1197 - DroneCAN airspeed sensor fix to handle missing packets
1198 - DroneCAN GPS RTK injection fix
1199 - Notch filter gyro glitch caused by race condition fixed
1200 ------------------------------------------------------------------
1201 Copter 4.4.0-beta4 27-July-2023
1202 Changes from 4.4.0-beta3
1203 1) Autopilots specific changes
1204 - Diatone-Mamba-MK4-H743v2 uses SPL06 baro (was DPS280)
1205 - DMA for I2C disabled on F7 and H7 boards
1206 - Foxeer H743v1 default serial protocol config fixes
1207 - HeeWing-F405 and F405v2 support
1208 - iFlight BlitzF7 support
1209 2) Scripts may take action based on VTOL motor loss
1211 - BLHeli returns battery status requested via MSP (avoids hang when using esc-configurator)
1212 - CRSFv3 rescans at baudrates to avoid RX loss
1213 - EK3_ABIAS_P_NSE param range fix
1214 - Scripting restart memory corruption bug fixed
1215 - Siyi A8/ZR10 driver fix to avoid crash if serial port not configured
1216 ------------------------------------------------------------------
1217 Copter 4.4.0-beta3 03-July-2023
1218 Changes from 4.4.0-beta2
1219 1) Autopilots specific changes
1220 - Holybro KakuteH7-Wing support
1221 - JFB100 external watchdog GPIO support added
1222 - Pixhawk1-bdshot support
1223 - Pixhawk6X-bdshot support
1224 - SpeedyBeeF4 loses bdshot support
1226 - added LP5562 I2C LED driver
1227 - added IS31FL3195 LED driver
1228 3) TradHeli gets minor fix to RSC servo output range
1229 4) Camera and Gimbal related changes
1230 - DO_SET_ROI_NONE command support added
1232 - added QUIK_MAX_REDUCE parameter to VTOL quicktune lua applet
1234 - ADSB sensor loss of transceiver message less spammy
1235 - AutoTune Yaw rate max fixed
1236 - EKF vertical velocity reset fixed on loss of GPS
1237 - GPS pre-arm failure message clarified
1238 - SERVOx_PROTOCOL "SToRM32 Gimbal Serial" value renamed to "Gimbal" because also used by Siyi
1239 - SERIALx_OPTION "Swap" renamed to "SwapTXRX" for clarity
1240 - SBF GPS ellipsoid height fixed
1241 - Ublox M10S GPS auto configuration fixed
1242 - ZigZag mode user takeoff fixed (users could not takeoff in ZigZag mode previously)
1243 ------------------------------------------------------------------
1244 Copter 4.4.0-beta2 05-Jun-2023
1245 Changes from 4.4.0-beta1
1246 1) Autopilots specific changes
1247 - FlywooF745 update to motor pin output mapping and baro
1248 - FoxeerH743 support
1250 - Mamba-F405v2 supports ICM42688
1251 - Matek-F405-TE/VTOL support
1252 - Matek-H743 IMU SPI slowed to 1Mhz to avoid init issues
1253 - SpeedyBee-405-Wing support
1254 2) Copter specfic fixes and enhancements
1255 - RTL speed fix so changes to WPNAV_SPEED have no effect if RTL_SPEED is non-zero
1256 - RTL mode accepts do-change-speed commands from GCS
1257 3) AHRS/EKF related fixes and Enhancements
1258 - EKF allocation failure handled to avoid watchdog
1259 - EKF3 accel bias calculation fix and tuning for greater robustness
1260 - Airspeed sensor remains enabled during dead-reckoning (few copters have airspeed sensors)
1261 - Wind speed estimates updates reduced while dead-reckoning
1262 4) Other Enhancements
1263 - Attitude control slew limits always calculated (helps tuning reporting and analysis)
1264 - INA228 and INA238 I2C battery monitor support
1265 - LOG_DISARMED=3 logs while disarmed but discards log if never eventually armed
1266 - LOG_DARM_RATEMAX reduces logging while disarmed
1267 - Serial LEDs threading enhancement to support longer lengths without dshot interference
1269 - Analog battery monitor2 current parameter default fixed
1270 - AutoTune fix for loading Yaw Rate D gains
1271 - BRD_SAFETYOPTION parameter documentation fix (ActiveForSafetyEnable and Disable were reversed)
1272 - Compassmot fix to protect against bad gyro biases from GSF yaw
1273 - ICE engine fix for starting after reaching a specified altitude
1274 - LED thread locking fix to avoid watchdog
1275 - Logging rotation on disarm disabled if Replay logging active (avoids gaps in logs)
1276 - RC input on IOMCU bug fix (RC might not be regained if lost)
1277 - Serial passthrough fixed
1278 5) Custom build server fix to which features are included/excluded
1279 ------------------------------------------------------------------
1280 Copter 4.4.0-beta1 19-Apr-2023
1282 1) New autopilots supported
1284 - Flywoo Goku F405S AIO
1291 2) Autopilot specific changes
1292 - Bi-Directional DShot support for CubeOrangePlus-bdshot, CUAVNora+, MatekF405TE/VTOL-bdshot, MatekL431, Pixhawk6C-bdshot, QioTekZealotH743-bdshot
1293 - Bi-Directional DShot up to 8 channels on MatekH743
1294 - BlueRobotics Navigator supports baro on I2C bus 6
1295 - BMP280 baro only for BeastF7, KakuteF4, KakuteF7Mini, MambaF405, MatekF405, Omnibusf4 to reduce code size (aka "flash")
1296 - CSRF and Hott telemetry disabled by default on some low power boards (aka "minimised boards")
1297 - Foxeer Reaper F745 supports external compasses
1298 - OmnibusF4 support for BMI270 IMU
1299 - OmnibusF7V2-bdshot support removed
1300 - KakuteF7 regains displayport, frees up DMA from unused serial port
1301 - KakuteH7v2 gets second battery sensor
1302 - MambaH743v4 supports VTX
1303 - MatekF405-Wing supports InvensenseV3 IMUs
1304 - PixPilot-V6 heater enabled
1305 - Raspberry 64OS startup crash fixed
1306 - ReaperF745AIO serial protocol defaults fixed
1307 - SkystarsH7HD (non-bdshot) removed as users should always use -bdshot version
1308 - Skyviper loses many unnecessary features to save flash
1309 - UBlox GPS only for AtomRCF405NAVI, BeastF7, MatekF405, Omnibusf4 to reduce code size (aka "flash")
1310 - VRBrain-v52 and VRCore-v10 features reduced to save flash
1311 3) Driver enhancements
1312 - ARK RTK GPS support
1313 - BMI088 IMU filtering and timing improved, ignores bad data
1314 - CRSF OSD may display disarmed state after flight mode (enabled using RC_OPTIONS)
1315 - Daiwa winch baud rate obeys SERIALx_BAUD parameter
1316 - EFI supports fuel pressure and ignition voltage reporting and battery failsafe
1317 - ICM45686 IMU support
1318 - ICM20602 uses fast reset instead of full reset on bad temperature sample (avoids occasional very high offset)
1319 - ICM45686 supports fast sampling
1320 - MAX31865 temp sensor support
1321 - MB85RS256TY-32k, PB85RS128C and PB85RS2MC FRAM support
1322 - MMC3416 compass orientation fix
1323 - MPPT battery monitor reliability improvements, enable/disable aux function and less spammy
1324 - Multiple USD-D1-CAN radar support
1325 - NMEA output rate configurable (see NMEA_RATE_MS)
1326 - NMEA output supports PASHR message (see NMEA_MSG_EN)
1327 - OSD supports average resting cell voltage (see OSD_ACRVOLT_xxx params)
1328 - Rockblock satellite modem support
1329 - Serial baud support for 2Mbps (only some hardware supports this speed)
1330 - SF45b lidar filtering reduced (allows detecting smaller obstacles
1331 - SmartAudio 2.0 learns all VTX power levels)
1332 - UAVCAN ESCs report error count using ESC Telemetry
1333 - Unicore GPS (e.g. UM982) support
1334 - VectorNav 100 external AHRS support
1336 4) EKF related enhancements
1337 - Baro compensation using wind estimates works when climbing or descending (see BAROx_WCF_UP/DN)
1338 - External AHRS support for enabling only some sensors (e.g. IMU, Baro, Compass) see EAHRS_SENSORS
1339 - Magnetic field tables updated
1340 - Non-compass initial yaw alignment uses GPS course over GSF (mostly affects Planes and Rover)
1341 5) Control and navigation enhancements
1342 - AutoTune of attitude control yaw D gain (set AUTOTUNE_AXES=8)
1343 - Circle moode and Loiter Turns command supports counter-clockwise rotation (set CIRCLE_RATE to negative number)
1344 - DO_SET_ROI_NONE command turns off ROI
1345 - JUMP_TAG mission item support
1346 - Missions can be stored on SD card (see BRD_SD_MISSION)
1347 - NAV_SCRIPT_TIME command accepts floating point arguments
1348 - Pause/Resume returns success if mission is already paused or resumed
1349 - Payload Place enhancements
1350 - Descent speed is configurable (see PLDP_SPEED_DN)
1351 - Manual release supported (detects pilot release of gripper)
1352 - Post release delay is configurable (see PLDP_DELAY)
1353 - Range finder range used to protect against premature release (see PLDP_RNG_MIN)
1354 - Touchdown detection threshold is configurable (see PLDP_THRESH)
1355 - Position controller angle max adjusted inflight with CH6 Tuning knob (set TUNE=59)
1356 - Surface tracking time constant allows tuning response (see SURFTRAK_TC)
1357 - Throttle-Gain boost increases attitude control gains when throttle high (see ATC_THR_G_BOOST)
1358 - Waypoint navigation cornering acceleration is configurable (see WPNAV_ACCEL_C)
1359 - WeatherVane into the wind in Auto and Guided modes (see WVANE_ENABLE)
1360 6) TradHeli specific enhancements
1361 - Manual autorotation support
1362 - Improved collect to yaw compensation
1363 7) Filtering enhancements
1364 - FFT notch can be run based on filtered data
1365 - Warn of motor noise at RPM frequency using FFT
1366 - In-flight FFT can better track low frequency noise
1367 - In-flight FFT logging improved
1368 - IMU data can be read and replayed for FFT analysis
1369 8) Camera and gimbal enhancements
1370 - BMMCC support included in Servo driver
1371 - DJI RS2/RS3-Pro gimbal support
1372 - Dual camera support (see CAM2_TYPE)
1373 - Gimbal/Mount2 can be moved to retracted or neutral position
1374 - Gremsy ZIO support
1375 - IMAGE_START_CAPTURE, SET_CAMERA_ZOOM/FOCUS, VIDEO_START/STOP_CAPTURE command support
1376 - Paramters renamed and rescaled
1377 - CAM_TRIGG_TYPE renamed to CAM1_TYPE and options have changed
1378 - CAM_DURATION renamed to CAM1_DURATION and scaled in seconds
1379 - CAM_FEEDBACK_PIN/POL renamed to CAM1_FEEBAK_PIN/POL
1380 - CAM_MIN_INTERVAL renamed to CAM1_INTRVAL_MIN and scaled in seconds
1381 - CAM_TRIGG_DIST renamed to CAMx_TRIGG_DIST and accepts fractional values
1382 - RunCam2 4k support
1383 - ViewPro camera gimbal support
1385 - BARD msg includes 3-axis dynamic pressure useful for baro compensation of wind estimate
1386 - MCU log msg includes main CPU temp and voltage (was part of POWR message)
1387 - RCOut banner message always included in Logs
1388 - SCR message includes memory usage of all running scripts
1389 - CANS message includes CAN bus tx/rx statistics
1390 - OFCA (optical flow calibration log message) units added
1391 - Home location not logged to CMD message
1392 - MOTB message includes throttle output
1393 10) Scripting enhancements
1394 - Copter deadreckoning upgraded to applet
1395 - EFI Skypower driver gets improved telem messages and bug fixes
1396 - Generator throttle control example added
1397 - Heap max increased by allowing heap to be split across multiple underlying OS heaps
1398 - Hexsoon LEDs applet
1399 - Logging from scripts supports more formats
1400 - Parameters can be removed or reordered
1401 - Parameter description support (scripts must be in AP's applet or driver directory)
1402 - Rangefinder driver support
1403 - Runcam_on_arm applet starts recording when vehicle is armed
1404 - Safety switch, E-Stop and motor interlock support
1405 - Scripts can restart all scripts
1406 - Script_Controller applet supports inflight switching of active scripts
1407 11) Custom build server enhancements
1408 - AIS support for displaying nearby boats can be included
1409 - Battery, Camera and Compass drivers can be included/excluded
1410 - EKF3 wind estimation can be included/excluded
1411 - PCA9685, ToshibaLED, PLAY_TUNE notify drivers can be included/excluded
1412 - Preclanding can be included/excluded
1413 - RichenPower generator can be included/excluded
1414 - RC SRXL protocol can be excluded
1415 - SIRF GPSs can be included/excluded
1416 12) Safety related enhancements and fixes
1417 - Arming check for high throttle skipped when arming in Auto mode
1418 - Arming check for servo outputs skipped when SERVOx_FUNCTION is scripting
1419 - Arming check fix if both "All" and other bitmasks are selected (previously only ran the other checks)
1420 - "EK3 sources require RangeFinder" pre-arm check fix when user only sets up 2nd rangefinder (e.g. 1st is disabled)
1421 - Pre-arm check that low and critical battery failsafe thresholds are different
1422 - Pre-arm message fixed if 2nd EKF core unhealthy
1423 - Pre-arm check if reboot required to enabled IMU batch sampling (used for vibe analysis)
1424 - RC failsafe (aka throttle failsafe) option to change to Brake mode
1425 - RC failsafe timeout configurable (see RC_FS_TIMEOUT)
1426 - Takeoff check of motor RPM (see TKOFF_RPM_MIN)
1427 - Turtle mode warns user to raise throttle to arm
1428 13) Minor enhancements
1429 - Boot time reduced by improving parameter conversion efficiency
1430 - BRD_SAFETYENABLE parameter renamed to BRD_SAFETY_DEFLT
1431 - Compass calibration auxiliary switch function (set RCx_OPTION=171)
1432 - Disable IMU3 auxiliary switch function (set RCx_OPTION=110)
1433 - Frame type sent to GCS defaults to multicopter to ease first time setup
1434 - Rangefinder and FS_OPTIONS param conversion code reduced (affects when upgrading from 3.6 or earlier)
1435 - MAVFTP supports file renaming
1436 - MAVLink in-progress reply to some requests for calibration from GCS
1438 - ADSB telemetry and callsign fixes
1439 - Battery pct reported to GCS limited to 0% to 100% range
1440 - Bi-directional DShot fix on H7 boards after system time wrap (more complete fix than in 4.3.6)
1441 - DisplayPort OSD screen reliability improvement on heavily loaded OSDs especially F4 boards
1442 - DisplayPort OSD artificial horizon better matches actual horizon
1443 - EFI Serial MS bug fix to avoid possible infinite loop
1444 - EKF3 Replay fix when COMPASS_LEARN=3
1445 - ESC Telemetry external temp reporting fix
1446 - Fence upload works even if Auto mode is excluded from firmware
1447 - FMT messages logged even when Fence is exncluded from firmware (e.g. unselected when using custom build server)
1448 - Guided mode slow yaw fix
1449 - Hardfault avoided if user changes INS_LOG_BAT_CNT while batch sampling running
1450 - ICM20649 temp sensor tolerate increased to avoid unnecessary FIFO reset
1451 - IMU detection bug fix to avoid duplicates
1452 - IMU temp cal fix when using auxiliary IMU
1453 - Message Interval fix for restoring default rate https://github.com/ArduPilot/ardupilot/pull/21947
1454 - RADIO_STATUS messages slow-down feature never completely stops messages from being sent
1455 - SERVOx_TRIM value output momentarily if SERVOx_FUNCTION is changed from Disabled to RCPassThru, RCIN1, etc. Avoids momentary divide-by-zero
1456 - Scripting file system open fix
1457 - Scripting PWM source deletion crash fix
1458 - MAVFTP fix for low baudrates (4800 baud and lower)
1459 - ModalAI VOXL reset handling fix
1460 - MPU6500 IMU fast sampling rate to 4k (was 1K)
1461 - NMEA GPGGA output fixed for GPS quality, num sats and hdop
1462 - Position control reset avoided even with very uneven main loop rate due to high CPU load
1463 - SingleCopter and CoaxCopter fix to fin centering when using DShot
1464 - SystemID mode fix to write PID log messages
1465 - Terrain offset increased from 15m to 30m (see TERRAIN_OFS_MAX)to reduce chance of "clamping"
1466 - Throttle notch FFT tuning param fix
1467 - VTX protects against pitmode changes when not enabled or vehicle disarmed
1468 15) Developer specific items
1469 - DroneCAN replaces UAVCAN
1470 - FlighAxis simulator rangefinder fixed
1471 - Scripts in applet and drivers directory checked using linter
1472 - Simulator supports main loop timing jitter (see SIM_TIME_JITTER)
1473 - Simulink model and init scripts
1474 - SITL on hardware support (useful to demo servos moving in response to simulated flight)
1475 - SITL parameter definitions added (some, not all)
1476 - Webots 2023a simulator support
1477 - XPlane support for wider range of aircraft
1478 ------------------------------------------------------------------
1479 Copter 4.3.8 24-Aug-2023 / 4.3.8-beta1 12-Aug-2023
1482 - DroneCAN GPS RTK injection fix
1483 - INAxxx battery monitors allow for battery reset remaining
1484 - Notch filter gyro glitch caused by race condition fixed
1485 - Scripting restart memory corruption bug fixed
1486 ------------------------------------------------------------------
1487 Copter 4.3.7 31-May-2023 / 4.3.7-beta1 24-May-2023
1490 a) EKF3 accel bias calculations bug fix
1491 b) EKF3 accel bias process noise adjusted for greater robustness
1492 c) GSF yaw numerical stability fix caused by compassmot
1493 d) INS batch sampler fix to avoid watchdog if INS_LOG_BAT_CNT changed without rebooting
1494 e) Memory corruption bug in the STM32H757 (very rare)
1495 f) RC input on IOMCU bug fix (RC might not be regained if lost)
1496 ------------------------------------------------------------------
1497 Copter 4.3.6 05-Apr-2023 / 4.3.6-beta1, 4.3.6-beta2 27-Mar-2023
1499 1) Bi-directional DShot fix for possible motor stop approx 72min after startup
1500 ------------------------------------------------------------------
1501 Copter Copter 4.3.5 14-Mar-2023 / 4.3.5-rc1 01-Mar-2023
1504 a) GPS unconfigured error fix for non-M10 uBlox GPS
1505 b) Gremsy gimbal fix when attached to autopilot's serial3 (or higher)
1506 c) Landing detector fix with large AHRS_TRIM values (>0.1)
1507 d) MambaF405 2022 gets VTX power on support
1508 e) MCU voltage enabled on H757 CPUs (including CubeOrangePlus)
1509 f) PiccoloCAN fix for ESC voltage and current scaling
1510 g) Servo gimbal mount yaw handling fix (only affects 3-axis servo gimbals)
1511 ------------------------------------------------------------------
1512 Copter 4.3.4 01-Mar-2023
1513 Changes from 4.3.4-rc1
1514 1) Lua script PWMSource feature disabled (will be back in 4.4.x)
1515 ------------------------------------------------------------------
1516 Copter 4.3.4-rc1 14-Feb-2023
1518 1) AutoPilot specific enhancements
1519 a) CubeOrangePlusBG support
1520 b) Foxeer ReaperF745 supports external compass
1521 c) MambaH743v4 supports VTX power
1522 2) Precision landing option to resume tracking target after pilot repositioning
1524 a) Arming check fix for terrain following with rangefinder (failed if terrain db was disabled)
1525 b) Arming check fix if BARO_FIELD_ELEV set
1526 c) Compass calibration diagonals set to 1,1,1 if incorrectly set to 0,0,0
1527 d) FFT notch tune feature disabled (will be re-released in 4.4)
1528 e) Gimbal's yaw feed-forward set to zero when landed (affects Gremsy gimbals)
1529 f) IOMCU double reset and safety disable fix
1530 g) Logging fix for duplicate format messages
1531 h) OpenDroneId sets emergency status on crash or chute deploy
1532 i) Peripheral firmware updates using MAVCAN fixed
1533 j) RC protocol cannot be changed once detected on boards with IOMCU
1534 k) Surface tracking uses filtered and corrected rangefinder values
1535 ------------------------------------------------------------------
1536 Copter 4.3.3 20-Jan-2023
1537 Changes from 4.3.3-rc1
1539 a) MAVFTP fix to terminate session error (could cause FTP failures)
1540 b) IMU fast fifo reset log message max frequency reduced
1541 ------------------------------------------------------------------
1542 Copter 4.3.3-rc1 09-Jan-2023
1544 1) Autopilot related changes
1545 a) AIRLink LTE module enable pin and HEAT_ params added
1546 b) CUAV Nora/Nora+ bdshot firmware (allows Bi-directional DShot)
1547 c) CubeOrange, CubeYellow gets fast reset of ICM20602
1548 d) MambaH743v2 with dual ICM42688 supported
1550 2) Attitude and Navigation controllers use real-time dt (better handles variable or slow main loop)
1551 3) MAVFTP speed improvement including faster param download
1553 a) Analog rangefinder GPIO pin arming check fixed
1554 b) Arming check of AHRS/EKF vs GPS location disabled if GPS disabled
1555 c) CRSF gets RC_OPTIONS for ELRS baudrate to avoid RC failsafes
1556 d) Null pointer checks avoid watchdog when out of memory
1557 e) Position Controller limit handling improved to avoid overshooting and hard landings
1558 f) Position Controller internal error after 70min of flight fixed
1559 g) PSC_ANGLE_MAX param reduction causing WPNAV_ACCEL to be set too low fixed
1560 h) Servo gimbal yaw jump to opposite side fixed
1561 i) Siyi A8 gimbal driver's record video feature fixed
1562 j) SToRM32 serial gimbal driver actual angle reporting fixed (pitch and yaw angle signs were reversed)
1563 k) Takeoff in Auto, Guided fixed when target altitude is current altitude
1564 l) Takeoff in Auto handles baro drift before takeoff
1565 m) Takeoff twitch due to velocity integrator init bug fixed
1566 ------------------------------------------------------------------
1567 Copter 4.3.2 23-Dec-2022
1568 Changes from 4.3.2-rc1
1569 1) Reverted arming check that main loop is running at configured speed (e.g. SCHED_LOOP_RATE)
1570 ------------------------------------------------------------------
1571 Copter 4.3.2-rc1 10-Dec-2022
1573 1) Arming check that main loop is running at configured speed (e.g. SCHED_LOOP_RATE)
1574 2) uBlox M10 support
1575 3) Autopilot specific changes
1576 a) CubeOrange defaults to using 2nd IMU as primary
1577 b) SIRF and SBP GPS disabled on BeastF7v2, MatekF405-STD, MAtekF405-Wing, omnibusf4pro
1579 a) AutoTune gains loaded correctly during pilot testing
1580 b) Camera driver's CAM_MIN_INTERVAL fixed if pilot manually triggers extra picture
1581 c) EKF3 fix when using EK3_RNG_USE_HGT/SPD params and rangefinder provides bad readings
1582 d) Main loop slowdown after arming fixed (parameter logging was causing delays)
1583 e) Main loop's fast tasks always run (caused twitches in Loiter on heavily loaded CPUs)
1584 f) MAVLink commands received on private channels checked for valid target sysid
1585 g) ModalAI cameras support fixed (ODOMETRY message frame was consumed incorrectly)
1586 h) Param reset after firmware load fixed on these boards
1589 - f405-MatekAirspeed
1595 - MatekF405-Wing-bdshot
1597 - MatekF765-Wing-bdshot
1598 i) Siyi A8 gimbal support fixed
1599 j) Windows builds move to compiling only 64-bit executables
1600 ------------------------------------------------------------------
1601 Copter 4.3.1 05-Dec-2022 / 4.3.1-rc1 17-Nov-2022
1603 1) Autopilot specific enhancements
1605 b) MatekH743 supports 8 bi-directional dshot channels
1606 c) Pixhawk boards support MS5607 baros
1607 d) SpeedbyBee F405v3 support
1608 2) DroneCAN Airspeed sensor support including hygrometer (aka water vapour) readings
1609 3) EFI support (electronic fuel injection engines)
1610 4) Pre-arm warning if multiple UARTs with SERIALx_PROTOCOL = RCIN
1611 5) Siyi gimbal support
1613 a) Arm check warning loses duplicate "AHRS" prefix
1614 b) AtomRCF405NAVI bootloader file name fixed
1615 c) BRD_SAFETY_MASK fixed on boards with both FMU safety switch and IOMCU
1616 d) Compass calibration continues even if a single compass's cal fails
1617 e) Gremsy gimbal driver sends autopilot info at lower rate to save bandwidth
1618 f) Invensense 42605 and 42609 IMUs use anti-aliasing filter and notch filter
1619 g) Mode change to AUTOTUNE message shortened
1620 h) OSD stats screen fix
1621 i) RC input on serial port uses first UART with SERIALx_PROTOCOL = 23 (was using last)
1622 j) RunCam caching fix with enablement and setup on 3-pos switch
1623 k) RTK CAN GPS fix when GPSs conneted to separate CAN ports on autopilot
1625 m) Turtle mode safety fixes (e.g. can only enter Tutle mode with at zero throttle)
1626 ------------------------------------------------------------------
1627 Copter 4.3.0 31-Oct-2022 / 4.3.0-beta4 24-Oct-2022
1628 Changes from 4.3.0-beta3
1629 1) Scripting supports implementing AUX functions
1631 a) BMI085 accel scaling fixed
1632 b) Build with gcc 11.3 fixed (developer only)
1633 c) EKF3 alt discrepancy if GPS or baro alt changed soon after startup fixed
1634 d) Harmonic Notch and ESC telem fix when motor outputs are non-contiguous
1635 e) NMEA GPS's KSXT message parsing fixed (affected position accuracy)
1636 f) Scripting random number generator fix
1637 ------------------------------------------------------------------
1638 Copter 4.3.0-beta3 14-Oct-2022
1639 Changes from 4.3.0-beta2
1640 1) Pixhawk1-1M, fmuv2, fmuv3 display warning if firmware mismatches board's flash size (1M and 2M)
1641 2) Scripting support for multi-byte i2c reads
1643 a) Airspeed CAN sensor ordering fixed (ordering could change if using multiple airspeed sensors)
1644 b) BRD_SAFETY_MASK fix for enabling outputs when safety is on
1645 c) Defaults.parm file processing fixed when a line has >100 characters and/or no new line (developer only)
1646 d) NMEA serial output precision fixed (was only accurate to 1m, now accurate to 1cm)
1647 ------------------------------------------------------------------
1648 Copter 4.3.0-beta2 4-Oct-2022
1649 Changes from 4.3.0-beta1
1650 1) Autopilot specific fixes and enhancements
1651 a) AIRLink autopilot supports UART2
1652 b) CUAV V6X supports CAN battery monitor by default
1653 c) MatekF405-CAN board uses less memory to fix compass calibration issues
1654 d) Pixhawk1-1M only supports uBlox and NMEA GPSs to save flash space
1655 e) SkystarsH7HD-bdshot (allows Bi-directional DShot)
1656 f) SkystarsH7HD supports VTX power by default
1658 a) Currawong ECU support (added as Electronic Fuel Injection driver)
1659 b) Scripting support for EFI drivers (allows writing EFI drivers in Lua)
1660 c) SkyPower and HFE CAN EFI drivers (via scripting)
1662 a) Arming check that SPIN_MIN less than 0.3 and greater than SPIN_ARM
1663 4) Minor enhancements
1664 a) Autopilot board names max length increased to 23 characters (was 13)
1665 b) CAN actuators can report PWM equivalent values (eases debugging)
1666 c) Log download speed improved for boards with "block" backends
1667 d) Notch filter slew limit reduces chance of notch freq moving incorrectly
1668 e) SLCAN disabled when vehicle is armed to reduce CPU load
1670 a) DO_JUMP mission command fixed if active command changed before changing to Auto mode
1671 b) EKF3 altitude error fix when using dual GPSs and affinity enabled
1672 c) FFT indexing bug fixed
1673 d) Gimbal mount fix to default mode (see MNTx_DEFLT_MODE parameter)
1674 e) MSP fix to report arm status to DJI FPV goggles
1675 f) Notch fix for non-throttle notch (was being incorrectly disabled)
1676 g) OSD fixes for params, font and resolution
1677 h) RPM reporting from harmonic notch fixed
1678 i) "Sending unknown message (50)" warning removed
1679 j) SBF/GSOF/NOVA GPS auto detction of baud rate fixed
1680 k) VideoTX fixes for buffer overruns and Tramp video transmitter support
1681 ------------------------------------------------------------------
1682 Copter 4.3.0-beta1 14-Sep-2022
1684 1) New autopilot support
1686 b) CubeOrange-SimOnHardWare
1688 d) KakuteH7Mini-Nand
1692 h) bi-directional dshot (aka "bdshot") versions for CubeOrange, CubeYellow, KakuteF7, KakuteH7, MatekF405-Wing, Matek F765, PH4-mini, Pixhawk-1M
1693 2) EKF enhancements and fixes
1694 a) EK3_GPS_VACC_MAX threshold to control when GPS altitude is used as alt source
1695 b) EKF ring buffer fix for very slow sensor updates (those that update once every few seconds)
1696 c) EKF3 source set change captured in Replay logs
1697 3) Gimbal enhancements
1698 a) Angle limit params renamed and scaled to degrees (e.g. MNT1_ROLL_MIN, MNT1_PITCH_MIN, etc)
1699 b) BrushlessPWM driver (set MNT1_TYPE = 7) is unstabilized Servo driver
1700 c) Dual mount support (see MNT1_, MNT2 params)
1701 d) Gremsy driver added (set MNT1_TYPE = 6)
1702 e) MAVLink gimbalv2 support including sending GIMBAL_DEVICE_STATUS_UPDATE (replaces MOUNT_STATUS message)
1703 f) "Mount Lock" auxiliary switch supports follow and lock modes in RC targetting (aka earth-frame and body-frame)
1704 g) RC channels to control gimbal set using RCx_OPTION = 212 (Roll), 213 (Pitch) or 214 (Yaw)
1705 h) RC targetting rotation rate in deg/sec (see MNT1_RC_RATE which replaces MNT_JSTICK_SPD)
1706 i) Yaw can be disabled on 3-axis gimbals (set MNTx_YAW_MIN = MNTx_YAW_MAX)
1707 4) Navigation and Flight mode enhancements
1708 a) Auto mode ATTITUDE_TIME command allows specifying lean angle for specified number of seconds (GPS not required)
1709 b) Auto mode support of DO_GIMBAL_MANAGER_PITCHYAW command
1710 c) Auto mode LOITER_TURNS command max radius increased to 2.5km
1711 d) AutoTune allows higher ANGLE_P gains
1712 e) Guided mode support DO_CHANGE_SPEED commands
1713 f) Manual modes throttle mix reduced (improves landing)
1714 g) Payload touchdown detection reliability improved
1715 h) Takeoff detection improved to reduce chance of flip before takeoff if GPS moves
1716 i) TKOFF_SLEW_TIME allows slower takeoffs in Auto, Guided, etc
1717 5) Notch filter enhancements
1718 a) Attitude and filter logging at main loop rate
1719 b) Batch sampler logging both pre and post-filter
1720 c) FFT frame averaging
1721 d) In-flight throttle notch parameter learning using averaged FFTs
1722 e) Triple harmonic notch
1723 5) RemoteId and SecureBoot enhancements
1724 a) Remote update of secure boot's public keys (also allows remote unlocking of bootloader)
1725 6) Safety enhancements
1726 a) Arming checks of FRAME_CLASS/TYPE made mandatory (even if ARMING_CHECK=0)
1727 b) crash_dump.bin file saved to SD Card on startup (includes details re cause of software failures)
1728 c) Dead-reckoning for 30sec on loss of GPS (requires wind estimation be enabled)
1729 d) Dead-reckoning Lua script (On loss of GPS flies towards home for specified number of seconds)
1730 e) Disabling Fence clears any active breaches (e.g. FENCE_TYPE = 0 will clear breaches)
1731 f) "GPS Glitch" message clarified to "GPS Glitch or Compass error"
1732 g) Pre-arm check that configured AHRS is being used (e.g. checks AHRS_EKF_TYPE not changed since boot)
1733 h) Pre-arm check that gimbals are healthy (currently only for Gremsy gimbals, others in future release)
1734 i) Pre-arm check that all motors are setup
1735 j) Pre-arm check that scripts are running
1736 k) Pre-arm check that terrain data loaded if RTL_ALT_TYPE set to Terrain
1737 l) Pre-arm messages are correctly prefixed with "PreArm:" (instead of "Arm:")
1738 m) RC auxiliary switch option for Arm / Emergency Stop
1739 n) RC failsafe made pre-arm check (previously only triggered at arming)
1740 o) RC failsafe option (see FS_OPTIONS) to continue in Guided obeyed even if GCS failsafe disabled
1741 p) TKOFF_RPM_MIN checks all motors spinning before takeoff
1742 q) Vibration compensation disabled in manual modes
1743 7) Scripting enhancements
1744 a) CAN2 port bindings to allow scripts to communicate on 2nd CAN bus
1745 b) ESC RPM bindings to allow scripts to report engine RPM
1746 c) Gimbal bingings to allow scripts to control gimbal
1747 d) Pre-arm check bindings (allows scripts to check if pre-arm checks have passed)
1748 e) Semicolon (:) and period (.) supported (e.g both Logger:write() and Logger.write will work)
1749 8) Sensor driver enhancements
1750 a) Benewake H30 radar support
1751 b) BMI270 IMU performance improvements
1752 c) IRC Tramp VTX suppor
1753 d) Logging pause-able with auxiliary switch. see RCx_OPTION = 165 (Pause Stream Logging)
1754 e) Proximity sensor support for up to 3 sensors
1755 f) Precision Landing consumes LANDING_TARGET MAVLink message's PositionX,Y,Z fields
1756 g) RichenPower generator maintenance-required messages can be suppressed using GEN_OPTIONS param
1757 h) TeraRanger Neo rangefinder support
1758 i) GPS support to provide ellipsoid altitude instead of AMSL (see GPS_DRV_OPTIONS)
1759 j) W25N01GV 1Gb flash support
1761 a) Accel calibration throws away queued commands from GCS (avoids commands being run long after they were sent)
1762 b) Airmode throttle mix at zero throttle fix
1763 c) Cygbot proximity sensor fix to support different orientations (see PRXx_ORIENT)
1764 d) Loiter fix to avoid potential wobble on 2nd takeoff (was not clearing non-zero attitude target from previous landing)
1765 e) Lutan EFI message flood reduced
1766 f) Missions download to GCS corruption avoided by checking serial buffer has space
1767 g) Payload place fix so vehicle flies to specified Lat,Lon (if provided). Previously it could get stuck
1768 h) Safety switch disabled if IOMCU is disabled (see BRD_IO_ENABLE=0)
1769 i) Script restart memory leak fixed
1770 j) Takeoff vertical velocity limits enforced correctly even if PILOT_TKOFF_ALT set to a significant height
1772 a) Custom controller support
1773 b) Fast loop task list available in real-time using @SYS/tasks.txt
1774 c) Parameter defaults sent to GCS with param FTP and recorded in onboard logs
1775 d) ROS+ArduPilot environment installation script
1776 e) Sim on Hardware allows simulator to run on autopilot (good for exhibitions)
1777 f) Timer info available in real-time using @SYS/timers.txt
1778 ------------------------------------------------------------------
1779 Copter 4.2.4 16-Aug-2023
1780 1) Loiter fix to avoid potential wobble or flip on takeoff
1781 ------------------------------------------------------------------
1782 Copter 4.2.3 30-Aug-2022
1783 Changes from 4.2.3-rc3
1784 1) OpenDroneId bug fix to consume open-drone-id-system-update message
1785 ------------------------------------------------------------------
1786 Copter 4.2.3-rc3 20-Aug-2022
1787 Changes from 4.2.3-rc2
1788 1) OpenDroneId improvements including reporting if operator location is lost
1789 2) Firmware ID and CRC check (disabled by default)
1791 a) Auto takeoff with terrain altitude frame fix (could cause climb away if rangefinder became out of range)
1792 b) Revert Notch filter ordering on loss of RPM source (see 4.2.3-rc1's 3g below) because fix is incomplete
1793 ------------------------------------------------------------------
1794 Copter 4.2.3-rc2 13-Aug-2022
1795 Changes from 4.2.3-rc1
1796 1) BlueRobotics Navigator autopilot filesystem fix
1797 ------------------------------------------------------------------
1798 Copter 4.2.3-rc1 12-Aug-2022
1800 1) OpenDroneId support (aka RemoteID)
1801 2) New autopilot support
1803 b) Foxeer Reaper F745
1805 d) Pixhawk6C and Pixhawk6X
1806 3) Bug Fixes and minor enhancements
1807 a) Battery monitor health check fixed to check all enabled monitors
1808 b) ICE Lutan EFI update serial flood fixed
1809 c) ICM42xxx IMU filter settings improved and allow for faster sample rates
1810 d) INA2xx batteries may init after startup
1811 e) KakuteH7 OSD parameter menu enabled
1812 f) Lua script support to set desired speed in Auto mode
1813 g) Notch filter ordering bug on loss of RPM source fixed
1814 h) Payload Place mission command obeys specified altitude type (was always terrain alt)
1815 i) PreArm check that MOT_PWM_MIN/MAX are non-zero
1816 j) PreArm check of Rangefinder pin conflict and servo outputs
1817 k) SCurve logs debug if internal error occurs
1818 l) WSL2 upload fixed (developer issue only)
1819 ------------------------------------------------------------------
1820 Copter 4.2.2 18-Jul-2022 / 4.2.2-rc2 04-Jul-2022
1821 No changes from 4.2.2
1822 ------------------------------------------------------------------
1823 Copter 4.2.2-rc1 21-Jun-2022
1825 1) MambaH743v4 and MambaF405 MK4 autopilot support
1826 2) Second full harmonic notches available (see INS_HNTC2_ parameters)
1827 3) UAVCAN memory usage reduced (see CAN_Dn_UC_POOL parameter to control DroneCAN pool size)
1828 4) VTOL QuikTune lua script added
1829 5) Watchdog (caused by hardfault) saves crash dump logs to SD card
1831 a) Circle mode stops below altitude fence
1832 b) CRSF protection against watchdog on bad frames
1833 c) CRSF reset in flight handled
1834 d) FFT init watchdog fix when ARMING_REQUIRE=0 (not actually possible on Copter)
1835 e) OSD flight modes menu includes newer flight modes
1836 f) Param download (via MAVFTP) fixed for params with overlapping names
1837 g) PWM rangefinder bug fix and added SCALING parameter support
1838 h) Replay bug fix when EK3_SRCs changed
1839 i) SERIALx_OPTION fix when "Don't forward mavlink to/from" selected (resolves MAVLink gimbal detection)
1840 j) TradHeli Autotune fix which could cause incorrect gains to be loaded
1841 k) VL53L1X rangefinder preserves addresses
1842 ------------------------------------------------------------------
1843 Copter 4.2.1 07-Jun-2022 / 4.2.1-rc1 28-May-2022
1845 1) CAN ESCs bus bandwidth efficiency improvements (see CAN_Dx_UC_ESC_OF parameter)
1846 2) DShot timing improvements to support for ESC variants
1847 3) LOITER_TURNS command radius max increased from 255m to 2550m (but only 10m accuracy when over 255)
1848 4) Luftan EFI measures fuel consumption (see EFI_COEF1, EFI_COEF2)
1850 a) CAN ESCs work on boards with no safety switch (e.g. MatekH743)
1851 b) Inflight Compass calibration checks GSF yaw estimate is good
1852 c) LOITER_TURNS command's Turns field limited to 255 (previously would wrap to lower number)
1853 d) NeoPixel colour fix
1854 e) Precision Landing maintains yaw during retries
1855 ------------------------------------------------------------------
1856 Copter 4.2.0 23-May-2022 / 4.2.0-rc4 14-May-2022
1857 Changes from 4.2.0-rc3
1858 1) FlyingMoon F407 and F427 autopilots supported
1859 2) Vibration failsafe disabled in manual modes
1861 a) Log file list with over 500 logs fixed
1862 b) Loiter mode ignores ATC_SLEW_YAW parameter
1863 c) RSSI when using IOMCU pin 103 fixed
1864 d) TradHeli internal error during takeoff fixed
1865 ------------------------------------------------------------------
1866 Copter 4.2.0-rc3 07-May-2022
1867 Changes from 4.2.0-rc2
1869 a) Blended Z axis accel calculation fix when not using first IMU
1870 b) Custom compass orientation for DroneCAN compasses
1871 ------------------------------------------------------------------
1872 Copter 4.2.0-rc2 29-Apr-2022
1873 Changes from 4.2.0-rc1
1874 1) Minor Enhancements
1875 a) Button, Relay and RPM GPIO pin conflict pre-arm check improved
1876 b) DShot uses narrower bitwidths for more accurate timing (allows BLHeli BlueJay to work)
1877 c) iFlight Chimera default parameters file added
1878 d) INS_NOTCH parameters renamed to INS_HNTC2
1879 e) Matek F765-Wing-bdshot firmware added
1880 f) Matek H743 supports ICM42688
1881 g) QiotekZealot H743 supports ICM4xxxx
1882 h) Scripting heap size increased to 100k on F7/H7
1883 i) SPRacingH7 improvements including external flash performance improvements
1885 a) BMI088 IMU FIFO overruns fixed
1886 b) DO_SET_SERVO with SERVOn_FUNCTION=0 fixed, added pre-arm check of servo functions configured on disabled channels
1887 c) Log file descriptor init fixed (issues only seen on Linux autopilots)
1888 d) Log list cope with gaps, performance improvement to reduce impact on EKF and some ESCs
1889 e) Proximity sensor fix when using MAVLink lidars in non-forward orientations
1890 f) RPM sensor fix to avoid "failed to attach pin" spam to GCS
1891 g) STM32 DMA fatal exceptions disabled (caused watch dogs reboots with zero information)
1892 h) SysID mode bug fix (was not restoring body-frame feedforward setting upon exit)
1893 i) Tradheli autotune fix when max frequency is exceeded
1894 ------------------------------------------------------------------
1895 Copter 4.2.0-rc1 10-Apr-2022
1896 Changes from 4.2.0-beta3
1897 1) Minor Enhancements
1898 a) Log and monitor threads stack size increased
1899 b) SPro H7 Extreme QSPI support improved
1901 a) EKF3 accel bias fixed when an IMU is disabled
1902 b) MatekH743 buzzer fixed by reverting to 16 bit timer
1903 c) STM32 H7 flash storage bug fixed that caused re-init on overflow
1904 d) @SYS file logging fixed
1905 e) Timer bug fixed that could cause a watchdog on boards using flash storage
1906 f) UART driver incorrect lock class fixed
1907 ------------------------------------------------------------------
1908 Copter 4.2.0-beta3 30-Mar-2022
1909 Changes from 4.2.0-beta2
1910 1) Minor Enhancements
1911 a) BATT_OPTIONS supports sending resting voltage (corrected for internal resistance) to the ground station
1912 b) KakuteH7-bdshot support
1913 c) MatekH743 uses a 32 bit timer to resolve occasional 68ms timing glitch
1914 d) RC input protocol text message sent to GCS (helps pilot awareness during RC handover)
1915 e) Autotune code changes to reduce flash size (no functional impact)
1917 a) Battery remaining percentage fixed when using Sum battery
1918 b) DShot reversal bug with IOMCU based boards (see SERVO_BLH_RVMASK)
1919 c) GPS blending fix that could have resulted in the wrong GPS being used for a short time
1920 d) Param conversion bug (impacted airspeed enable)
1921 e) RC handover between IOMCU RC input and a secondary RC input on a serial port fixed
1922 f) Terrain reference adjustment ensures alt-above-terrain is zero at takeoff (see TERRAIN_OFS_MAX)
1923 g) QioTek Zealot H743 SLCAN port and relays fixed
1924 ------------------------------------------------------------------
1925 Copter 4.2.0-beta2 10-Mar-2022
1926 Changes from 4.2.0-beta1
1927 1) Auto and Guided mode changes
1928 a) Delay removed when waypoints are very close together
1929 b) Pause and continue support (GCS changes are still pending)
1930 c) Takeoff and landing use position controller with slower reposition speed (also affects RTL, Land modes)
1931 d) Waypoint navigation will make use of maximum waypoint radius to maximize speed through corners
1932 2) Follow mode supports FOLLOW_TARGET message (sent by QGC ground station)
1934 a) Arming checks ignore SERVOx_MIN, MAX if setup as GPIO pin
1935 b) BeastH7v2 BMI270 baro support
1936 c) DShot prescaler fix (ESCs were not initialising correctly)
1937 d) EKF3 variance constraint fix used to prevent "ill-conditioning"
1938 e) POWR log message MCU voltage fix (min and max voltage were swapped)
1939 f) SPRacingH7 firmware install fix
1940 ------------------------------------------------------------------
1941 Copter 4.2.0-beta1 28-Feb-2022
1943 1) AHRS/EKF improvements
1944 a) EKF startup messages reduced
1945 b) GPS<->Opticalflow automatic switching improved (see ahrs-source-gps-optflow.lua script)
1946 c) LORD Microstrain CX5/GX5 external AHRS support
1947 d) ModalAI VOXL non-GPS system supported (set VISO_TYPE=3, uses ODOMETRY mavlink msg)
1948 2) Control and flight mode enhancements
1949 a) Acro max rate params renamed and improved (see ACRO_RP_RATE, ACRO_Y_RATE, PILOT_Y_RATE, PILOT_Y_EXPO)
1950 b) Airmode NOT enabled when arming with switch (see ACRO_OPTIONS and "ArmDisarm with AirMode" RCx_OPTION)
1951 c) Auto and Guided support pausing (uses DO_PAUSE_CONTINUE mavlink command)
1952 d) Auto supports up to 100 DO_JUMP commands on high memory boards
1953 e) Autotune reporting improved (less spam, prints final tune)
1954 f) FLIGHT_OPTIONS to release gripper on thrust loss
1955 g) ForceFlying auxiliary switch allows pilot to disable land-detector
1956 h) Guided mode acceleration target support
1957 i) Guided mode logging of targets improved (GUID msg split into GUIP, GUIA)
1958 j) Harmonic notch filter on more than four motors
1959 k) Land mode pilot controlled repositioning max speed reduced (also affects RTL and Auto)
1960 l) Precision landing improvements esp when using PLAND_EST_TYPE = 1/KalmanFilter
1961 m) RTL's safe altitude (RTL_ALT) increased 85km (was 325m)
1962 n) Simple mode heading reset via auxiliary switch
1963 o) Sport mode deprecated
1964 p) SURFTRAK_MODE allows disabling surface tracking in Loiter, AltHold, etc
1965 q) Turtle mode (allows righting a copter while on the ground)
1966 3) Custom build server support (see https://custom.ardupilot.org)
1967 4) Lua scripting improvements
1968 a) ahrs::get_location replaces get_position (get_position still works for now)
1969 b) Auto support for NAV_SCRIPT_TIME commands (Lua within Auto)
1970 c) Frame string support (allows scripting based frame to display custom description after startup)
1971 d) Parameter support (no need to always use SCR_USERx)
1972 e) Servo output control by channel number (previously was only possibly by specifying the SERVOn_FUNCTION value)
1973 f) Script logged to onboard log (can be disabled by setting SCR_DEBUG_OPTS)
1974 5) New autopilots supported
1976 b) BeastF7v2, BeastH7v2
1978 d) KakuteH7, KakuteH7Mini
1986 l) SPRacingH7 Extreme
1988 6) Safety improvements
1989 a) Dijkstra's avoidance performance improvements including converting to A*
1990 b) Motor PWM range always uses MOT_PWM_MIN/MAX (if these are not set, they are defaulted to RC3_MIN/MAX values)
1991 c) Parachute option to leave servo in open position (see CHUTE_OPTIONS parameter)
1992 d) Parachute released arming check added
1993 e) Pre-arm check of IMU heater temp
1994 f) Pre-arm check of rangefinder health
1995 g) Pre-arm check of throttle position skipped if PILOT_THR_BHV is "Feedback from mid stick"
1996 7) Sensor driver enhancements
1997 a) ADIS16470, ADIS16507 and BMI270 IMU support
1998 b) Airspeed sensor support (reporting only, not used for estimation or control)
1999 c) AK09918 compass support
2000 d) Battery monitor supports voltage offset (see BATTx_VLT_OFFSET)
2001 e) Benewake TFMiniPlus I2C address defaults correctly
2002 f) Buzzer can be connected to any GPIO on any board
2003 g) Compass calibration (in-flight) uses GSF for better accuracy
2004 h) CRSFv3 support, CSRF telemetry link reports link quality in RSSI
2006 j) DroneCan (aka UAVCAN) battery monitors support scaling (see BATTx_CURR_MULT)
2007 k) DroneCan (aka UAVCAN) GPS-for-yaw support
2008 l) Electronic Fuel Injection support incl Lutan EFI
2009 m) FETtecOneWire resyncs if EMI causes lost bytes
2010 n) IMU heater params renamed to BRD_HEAT_xxx
2011 o) Landing gear enable parameter added (see LGR_ENABLE)
2012 p) Lightware SF40C ver 0.9 support removed (ver 1.0 and higher still supported)
2013 q) Maxbotix serial sonar driver support RNGFNDx_SCALING parameter to support for varieties of sensor
2014 r) MPPT solar charge controller support
2015 s) MTK GPS driver removed
2016 t) Optical flow in-flight calibration
2018 v) Proximity sensor min and max range (see PRX_MIN, PRX_MAX)
2019 w) QSPI external flash support
2020 x) uLanding (aka USD1) radar provides average of last few samples
2021 y) Unicore NMEA GPS support for yaw and 3D velocity
2022 8) TradHeli enhancements
2023 a) Attitude control default gains improved
2024 - ATC_RAT_RLL_FF, _I, _IMAX, _ILMI, _FLTT
2025 - ATC_RAT_PIT_FF, _I, _IMAX, _ILMI, _FLTT
2026 - ATC_RAT_YAW_IMAX, _FLTT
2028 c) Collective setup (users will be forced to setup new collective parameters)
2029 d) Rotor Speed Controller Internal Governor improvements (users required to retune governor)
2030 e) Rotor Speed Controller Cooldown timer added for ICE and turbine engines
2031 f) _VFF params renamed to _FF
2032 9) Other System enhancements
2033 a) Board ID sent in AUTOPILOT_VERSION mavlink message
2034 b) Compass calibration stick gestures removed
2035 c) DO_SET_CAM_TRIG_DIST supports instantly triggering camera
2036 d) DJI FPV OSD multi screen and stats support
2037 e) GPIO pins configured by setting SERVOx_FUNCTION to -1 (also see SERVO_GPIO_MASK. BRD_PWM_COUNT removed)
2038 f) GPIO pin support on main outputs on boards with IOMCU
2039 g) GyroFlow logging (see LOG_BITMASK's "VideoStabilization" option)
2040 h) Firmware version logged in VER message
2041 i) SD card format via MAVLink
2042 j) Serial port option to disable changes to stream rate (see SERIALx_OPTIONS)
2043 k) VIBE logging units to m/s/s
2045 a) Auto and Guided mode takeoff alt fixed if taking off from below home or frame set to absolute (aka AMSL)
2046 b) Auto mode CONDITION_YAW command completion fix
2047 c) Auto mode infinite loop with nav commands that fail to start fixed
2048 d) AutoTune disables ATC_RAT_xxx_SMAX during twitch (SMAX may limit gains to reduce oscillation)
2049 e) BLHeli passthrough reliability improvements
2050 f) Compass learning (inflight) fixed to ignore unused compasses (e.g. those with COMPASS_USE = 0)
2051 g) EKF optical flow terrain alt reset fixed (large changes in rangefinder alt might never be fused)
2052 h) EKF resets due to bad IMU data occur at most once per second
2053 i) GPIO pin fix on CubeOrange, F4BY, mRoControlZeroF7, R9Pilot
2054 j) Guided mode yaw rate timeout fix (vehicle could keep yawing even if companion computer stopped sending target)
2055 k) MAVlink2 serial ports always send MAVLink2 messages (previously waited until other side sent MAVLink2)
2056 l) Motor Test, Turtle mode respect emergency stop switch
2057 m) Omnibusf4pro bi-directional dshot fix
2058 n) PosHold braking fix if SCHED_LOOP_RATE set to non-default value
2059 o) Precision landing in RTL activates even if pilot had earlier deactivated by repositioning in Land
2060 p) Real-Time-Clock (RTC) oldest possible date updated to Jan-2022
2061 q) Tricopter, Coax copter fin trim fix when using DShot/BLheli
2062 ------------------------------------------------------------------
2063 Copter 4.1.6 16-Mar-2023
2065 1) Loiter fix to avoid potential wobble or flip on takeoff
2066 ------------------------------------------------------------------
2067 Copter 4.1.5 19-Feb-2022 / 4.1.5-rc1 10-Feb-2022
2070 a) attitude control I-term always reset when landed (previously only reset after spool down)
2071 b) revert SBUS RC frame gap change from 4.1.4
2072 ------------------------------------------------------------------
2073 Copter 4.1.4 08-Feb-2022 / 4.1.4-rc1 27-Jan-2022
2075 1) Benewake CAN Lidar support
2076 2) CAN GPS default lag dropped to 0.1 seconds (was 0.22 seconds)
2078 a) Compass custom orientation is never overwritten during calibration
2079 b) EKF logging gaps fixed (some messages were occasionally being skipped)
2080 c) Guided mode cornering improvements
2081 d) IMU logging fix for IREG message (records IMU register changes)
2082 e) LOITER_TO_ALT mission command's climb rate fixed (could climb or descend too quickly)
2083 f) Position controller init fix to avoid twitch on vehicles with high vibrations
2084 g) Position controller init fix to better handle high speed entry to flight mode
2085 h) Position controller prioritises reducing cross track error
2086 i) Position controller relax fix
2087 j) SBUS RC frame gap increased to better handle some new receivers
2088 k) SERVOx_FUNCTION protection to avoid memory overwrite if set too high
2089 l) SD card init triggering watchdog fixed
2090 m) Spline path max lateral acceleration reduced (vehicle stays on path better but may be slower)
2091 n) Takeoff bug fix if taking off below home or frame specified as MSL
2092 ------------------------------------------------------------------
2093 Copter 4.1.3 31-Dec-2021 / 4.1.3-rc2 21-Dec-2021
2094 Changes from 4.1.3-rc1
2095 1) Suport for IIM-42652, ICM-40605 and ICM-20608-D IMUs
2097 a) Autotune twitches at no more than ATC_RATE_R/P/Y_MAX param value
2098 b) SmartAudio high CPU load fix (previously it could starve other threads of CPU)
2099 c) Debug pins disabled by default to prevent rare inflight reset due to electrostatic discharge
2100 d) EKF3 reset causing bad accel biases fixed
2101 e) RC protocol detection fix that forced PH4-mini users to powerup autopilot before transmitter
2102 ------------------------------------------------------------------
2103 Copter 4.1.3-rc1 18-Dec-2021
2106 a) CUAV-X7 servo voltage detection support
2108 a) Main loop delay fix for boards with 16 bit timers (affects KakuteF4, MatekH743, MatekF405, MatekF765, SpeedybeeF4)
2109 b) MOT_MIX_MAX constrained between 0.1 and 4.0 (would previously reset to 0.5 if set too high or low)
2110 c) Polygon Fence upload fix when replacing fence with one that has fewer points
2111 d) TradHeli fix for missions which continue after a Land command
2112 ------------------------------------------------------------------
2113 Copter 4.1.2 07-Dec-2021 / 4.1.2-rc1 22-Nov-2021
2115 1) CAN_Dn_UC_OPTION param added to help resolve DroneCAN DNA conflicts
2116 2) Durandal with alternative ICM-20602 IMU
2117 3) OBAL autopilot support (Open Board Architecture for Linux)
2118 4) FETtec One ESC protocol support
2120 a) ADSB vertical velocity reporting fix
2121 b) APM/LOGS directory creation fixed on some boards
2122 c) AutoTune fix to disable SMAX limits that could interfere with tune
2123 d) EKF3 fix to switch to non-zero primary core when disarmed
2124 e) Notch filter update rate fix
2125 f) Surface tracking fix if rangefinder glitches
2126 g) TradHeli rename of H_COLL_HOVER to H_COL_HOVER
2127 ------------------------------------------------------------------
2128 Copter 4.1.1 10-Nov-2021 / 4.1.1-rc1 16-Oct-2021
2130 1) EK3_PRIMARY allows selection of which EKF core/IMU to use on startup
2131 2) ESC telemetry sent during compassmot
2132 3) TradHeli landing detector improvement
2134 a) Auto/Guided mode fix to EXTENDED_SYS_STATE message's "landed state" field after takeoff
2135 b) MAVFTP init fix (could cause slow parameter download)
2136 c) Scripting fix when logging strings
2137 d) Serial flow control fix (affected at least Lightware LW20 serial lidar)
2138 e) QiotekZealotF427 IMU (ICM42605) orientation fixed
2139 ------------------------------------------------------------------
2140 Copter 4.1.0 08-Oct-2021 / 4.1.0-rc4 01-Oct-2021
2141 Changes from 4.1.0-rc3
2142 1) Position controller PSC/Z logging changed to PSCN/E/D and includes "desired"
2144 a) Position Controller init fix (could cause unexpected movement after entering Guided)
2145 b) Serial8 parameter description fixed
2146 ------------------------------------------------------------------
2147 Copter 4.1.0-rc3 27-Sep-2021
2148 Changes from 4.1.0-rc2
2150 a) Guided mode supports yaw control during takeoff
2151 b) MatekH743 supports icm42605 IMU
2153 a) CSRF fix to avoid intermittent loss of telemetry
2154 b) EKF3 fix to init of wind speed variance
2155 c) Guided mode fix to yaw change after takeoff completes
2156 d) Guided mode uses GUID_OPTIONS to ignore pilot yaw during takeoff
2157 e) Lightware SF45b jumpy readings fixed by using lower update rate
2158 ------------------------------------------------------------------
2159 Copter 4.1.0-rc2 15-Sep-2021
2160 Changes from 4.1.0-rc1
2162 a) Guided mode supports using SCurves and OA for position control
2164 a) Serial port auto detection of flow control fix
2165 ------------------------------------------------------------------
2166 Copter 4.1.0-rc1 10-Sep-2021
2167 Changes from 4.1.0-beta8
2169 a) Log download speeds improved on F765 and F777 based boards (USB buffers increased)
2170 b) Serial port DMA contention heuristics improved (reduces chance of delays writing to serial devices)
2171 c) WPNAV_SPEED param changes take immediate effect in Auto
2173 a) Airmode fix if throttle held at zero for long time
2174 b) Auto mode SCurve jerk time calculation fix (prevents jerk from being set too high)
2175 c) CRSF frame timeout increased to reduce RC failsafes
2176 d) Declination automatic lookup rounding fix (caused inaccurate declination in some parts of world)
2177 e) DShot (bi-directional) support on Pixhawk4, CUAVv5, CUAVv5-Nano
2178 f) IMU semaphore fix to avoid occasional corruption
2179 g) QioTek Zealot F427 GPIO pin fix
2180 h) Replay/DAL RMGH log message format fix
2181 i) Rangefinder initial buffer size and baudrate fix (affected Aintein US-D1 radar)
2182 j) Surface tracking fix to reduce lag and overshoot
2183 k) WPNAV_SPEED change with ch6 tuning knob feature gets divide-by-zero protection
2184 l) WPNAV_SPEED_DN handles negative values
2185 ------------------------------------------------------------------
2186 Copter 4.1.0-beta8 28-Aug-2021
2187 Changes from 4.1.0-beta7
2189 a) Flywoo F745 Goku Nano support
2190 b) MatekF765-Wing support
2191 c) Scripting support for getting circle mode radius and setting rate
2192 d) Scripting support for new Guided mode controls including acceleration control
2194 a) ATC_RATE_Y_MAX applies to all modes including Loiter
2195 b) ChibiOS scheduling slip workaround to avoid occasional 60ms delays found on MatekH7
2196 c) EKF2 divide-by-zero protection when using optical flow (issue only found in simulator)
2197 d) External AHRS (e.g. VectorNav driver) init fix
2198 e) KakuteF4Mini SBUS fix
2199 f) Pixhawk4 blue and red LEDs swapped
2200 g) Position control fixes to limit initial desired accel (horizontal and vertical) which could lead to an excessive climb or descent
2201 h) TradHeli takeoff in Guided fix
2202 ------------------------------------------------------------------
2203 Copter 4.1.0-beta7 14-Aug-2021
2204 Changes from 4.1.0-beta6
2206 a) Attitude and altitude control changes to support higher lean angles
2207 b) Flywoo F745 supports external I2C compasses
2208 c) GPS-for-yaw arming check added
2209 d) GPS_DRV_OPTIONS allows forcing UBlox GPS to 115200 baud
2210 e) Guided mode accepts higher speed and accel targets (no longer limited by WPNAV_ parameters)
2211 f) Lua scripts can be placed in root of ROMFS (only relevant for developers)
2212 g) PSC_VELXY_FILT renamed to _FLTE, PSC_VELXY_D_FILT renamed to _FLTD
2214 a) Beacon driver protected from requests for data for non-existant beacons
2215 b) CAN threading fix to resolve potential lockup when lua scripts use CAN
2216 c) EKF3 GSF can be invoked multiple times with source switching (no longer limited by EK3_GSF_RST_MAX)
2217 d) EKF3 IMU offset fix (vehicle's reported position was slightly incorrect if INS_POS_XYZ params set)
2218 e) Guided mode terrain following init fix (might fly at incorrect alt on second use)
2219 f) Guided mode yaw rate target timeout fix (vehicle could keep spinning even after targets stopped arriving)
2220 g) OSD overwrite and nullptr check fix
2221 h) Proximity Avoidance auxiliary switch also disables avoidance using upward facing lidar
2222 i) Proximity sensor pre-arm check disabled if avoidance using proximity sensors is disabled
2223 j) RCOut banner displayed at very end of startup procedure to avoid invalid output
2224 k) Tricopter tail servo alway uses regular PWM (fixes use with BLHeli motors)
2225 ------------------------------------------------------------------
2226 Copter 4.1.0-beta6 23-Jul-2021
2227 Changes from 4.1.0-beta5
2229 a) ACRO_Y_EXPO supports negative numbers (-0.5 to +1)
2230 b) GPS-for-yaw enhancements including using position and yaw from different GPSs
2231 c) Guided mode acceleration control
2232 d) Long distance travel supported (thousands of km) including double precision EKF and moving origin
2234 a) Auto and Guided mode terrain following fixed (could impact terrain if terrain was very steep. see WPNAV_TER_MARGIN)
2235 b) BendyRuler avoidance fixed (was slow and jerky)
2236 c) BLHeli fix that could cause failure to boot
2237 d) Crosstrack reporting fixed
2238 e) CRSF message spamming and firmware string length fixed
2239 f) Display re-enabled on 1MB boards
2240 g) DShot always sends 0 when disarmed (protects against motors spin while disarmed due to misconfiguration)
2241 h) DShot fix that could cause main loop jitter
2242 i) DShot buzzer tone disabled during motor test to remove bad interation
2243 j) Guided mode accepts position targets at high rate
2244 k) Longitude wrap fix (allows autonomous flights as longitude wraps between -180 and 180 deg)
2245 l) Log created on forced arm
2246 m) MatekF405-bdshot NeoPixel LEDs re-enabled on PWM5
2247 n) Precision landing init fix (if pilot took control, subsequent landings might not trying to land on target)
2248 o) Serial port performance improvements using FIFO on H7 boards
2249 p) TradHeli ground check of yaw fixed (yaw servo was not moving when landed)
2250 q) Throw mode waits for throttle up to improve reliability
2251 ------------------------------------------------------------------
2252 Copter 4.1.0-beta5 30-Jun-2021
2253 Changes from 4.1.0-beta4
2255 a) Arming check of distance from EKF origin increased to 250km horizontally (was 50km), 50km vertically (was 500m)
2256 b) Position control accuracy improved at very long distances (aka "Loiter bucketing")
2257 c) Pre-arm check of FLTMODE_CH and RCx_OPTION conflict
2258 d) QioTekZealotH743 autopilot support
2259 e) Scripting support for set home and get EKF origin
2261 a) Autonomous mode (Auto, RTL, etc) stopping point calculation fixed (could cause alt drop entering RTL)
2262 b) Auto mode Internal Error fixed when origin and destination are very close
2263 c) Auto mode Terrain following less bouncy and RNGFND_FILT param added for configurable filtering
2264 d) EKF alt estimate more robust when using GPS-for-yaw
2265 e) EKF origin altitudes consistent across cores even if user takes off with no GPS lock
2266 f) Logging start does not affect EKF (EKF could become unhealthy due to timing delays)
2267 g) Loiter rocking while landing fixed
2268 h) Loiter speed fixed with low LOIT_ACC_MAX values
2269 i) Loiter aggressive deceleration fixed (occured if vehicle was previously switched out of Loiter during decleration)
2270 j) Longitude wrap fixed (allows flying across international date line)
2271 k) MOT_THST_EXPO limits fixed to allow values between -1 and +1 (was 0.25 to +1)
2272 l) Position jump fixed during GPS glitch and GPS/Non-GPS transitions
2273 m) Proximity sensor status (used for object avoidance) fixed when using only upward facing lidar
2274 n) Vibration failsafe fixed
2275 o) 6DOF copter fixed
2276 ------------------------------------------------------------------
2277 Copter 4.1.0-beta4 14-Jun-2021
2278 Changes from 4.1.0-beta3
2279 1) Minor enhancements (or changes)
2280 a) CSRF telemetry improvements to power setting and pass param requests more quickly
2281 b) CUAV X7/Nora supports ICM42688P IMU
2282 c) Pix32v5 USB product string fixed and IMU heater enabled
2283 d) RunCam Hybrid supported (see RUNCAM_TYPE parameter)
2284 e) VisualOdom feature removed from 1MB boards
2286 a) BLHeli Auto only affects telemetry passthrough to ease setup
2287 b) Circular complex fence radius not truncated
2288 c) CubeOrange serial1/2 DMA fixed
2289 d) EKF ground effect compensation fixed
2290 e) ESC telemetry fixes including motor index on boards with I/O mcu
2291 f) I/O MCU reset fix if user had disabled safety switch (recovery from reset would leave motors not spinning)
2292 g) MSP temperature scaling fixed
2293 h) Pilot yaw rate input during arming ignored
2294 i) PreArm check of roll/pitch and yaw angle difference fixed
2295 j) Serial port info file (@SYS/uarts.txt) easier to understand
2296 k) Scheduler fix of premature run of tasks every 163 seconds
2297 l) Visual odometry yaw alignment fixed
2298 m) WPNAV_RADIUS never less than 5cm
2299 ------------------------------------------------------------------
2300 Copter 4.1.0-beta3 24-May-2021
2301 Changes from 4.1.0-beta2
2302 1) Dshot bug fix for autopilots with I/O boards (CubeBlack, CubeOrange, etc)
2303 ------------------------------------------------------------------
2304 Copter 4.1.0-beta2 19-May-2021
2305 Changes from 4.1.0-beta1
2306 1) Attitude control and Navigation
2307 a) Auto mode Spline command fix when using terrain altitudes
2308 b) Drift after takeoff fix if GPS position has moved
2309 c) Feed forward angular velocity calculation fix
2310 d) Guided mode option (GUID_OPTIONS) to configure how SET_ATTITUDE_TARGET's thrust field is interpreted
2311 e) Improved position control during loss of yaw control by using thrust vector with heading
2312 f) Standby mode disables hover learning
2313 2) BLHeli improvements and fixes
2314 a) Bi-directional ESC telemetry fixes
2315 b) Bi-directional dshot 1200 supported
2316 c) Control of digital with non-digital outputs fixed
2317 d) Support dshot commands for LED, buzzer and direction control
2318 e) Passthru reliability improved
2319 3) New autopilot boards
2320 a) PixC4-Pi and PixC4-Jetson
2322 a) OBSTACLE_DISTANCE_3D boundary cleared after 0.75 seconds, allows easier multi-camera support
2323 b) Simple avoidance logging re-enabled
2324 5) Other enhancements
2325 a) Auxiliary function logging shows how it was invoked (switch, button or scripting)
2326 b) External IST8308 compass supported on CubeBlack
2327 c) FLOW_TYPE parameter hides/displays other FLOW_ parameters
2328 d) FrSky telem reports failsafe, terrain alt health and fence status
2329 e) Harmonic notch support for CAN ESCs (KDECAN, PiccoloCAN, ToshibaCAN, UAVCAN)
2330 f) OSD gets fence icon
2331 g) RunCam OSD and camera control
2332 h) Septentrio GPSs support GPS_SBAS_MOD parameter
2334 a) Barometer averaging fixes for BMP380, BMP280, LPS2XH, SPL06 drivers
2335 b) EKF3 fix to reset yaw after GPS-for-yaw recovers
2336 c) KDECAN output range, motor order and pre-arm check messages fixed
2337 d) Logging memory leak when finding last log fixed
2338 e) Pixhawk4 mini safety switch fix
2339 f) SD card slowdown with early mounts fixed
2340 ------------------------------------------------------------------
2341 Copter 4.1.0-beta1 14-Apr-2021
2344 a) EKF3 is default estimator (EKF2 is available as an option)
2345 b) External AHRS/IMU support (e.g. VectorNav)
2346 c) Gaussian Sum Filter (GSF) allows emergency yaw correction using GPS
2347 d) GPS-for-yaw (dual F9 UBlox, Septentrio, NMEA GPS can provide yaw)
2348 e) Lane switching logic improvements
2349 f) Sensor affinity (improves sensor failure redundancy)
2350 g) Source switching for GPS/Non-GPS transitions (see EK3_SRCx_ parameters)
2351 h) Yaw estimation and reliability improvements
2352 i) Wind speed estimation and barometer interference compensation
2353 2) Control and Navigation improvements:
2354 a) Acro "air mode" support (see ACRO_OPTIONS)
2355 b) Auto mode arming and takeoff (see AUTO_OPTIONS)
2356 c) Circle options to face direction of travel and/or init at circle center (see CIRCLE_OPTIONS)
2357 d) DO_LAND_START command support for landing sequences
2358 e) Horizontal Velocity controller gets feed forward and logging
2359 f) Position controller update to remove hard-coded Alt Hold velocity derivative and other enhancements
2360 g) Rate PID slew limiting to to detect and suppress oscillations
2361 h) SCurves for waypoint navigation
2362 i) Yaw imbalance check
2363 3) TradHeli improvements:
2364 a) Conventional and compound helicopter SITL dynamic models improved
2365 b) Intermeshing rotor and coaxial rotor support added to Dual heli frame
2366 4) 6DoF frame support
2367 5) Object avoidance:
2368 a) BendyRuler hesitancy improvements
2369 b) Intel Realsense 435/455 camera support (companion computer required)
2370 c) Obstacle database now 3D
2371 d) Obstacle filtering improvements
2372 e) Obstacles ignored in cylinder around home (see OA_DB_ALT_MIN)
2373 f) Obstacles ignored near ground (see PRX_IGN_GND)
2374 g) Vertical BendyRuler
2375 h) Simple avoidance backs away from obstacles (see AVOID_BACKUP_SPD parameter)
2376 i) Simple avoidance accel limited (see AVOID_ACCEL_MAX parameter)
2377 j) Simple avoidance enabled above min altitude (see AVOID_ALT_MIN)
2378 k) Simultaneous Dijkstra and BendyRuler path planning
2379 6) Compass enhancements
2380 a) Custom orientations
2381 b) In-flight learning improvements (see COMPASS_LEARN = 3)
2382 c) Large vehicle calibration support (e.g. point vehicle north and push button in MP)
2383 7) Intel RealSense T265 support (see VISO_TYPE = 2, companion computer required)
2384 a) Position and velocity from external sources accepted at up to 50hz
2385 b) Resets from external sources accepted
2386 8) New autopilot boards
2388 b) iFlight BeastF7 and BeastH7
2391 9) IMU improvements:
2392 a) temperature calibration
2393 b) faster gyro sampling on high performance autopilots (F7 and faster, see INS_GYRO_RATE)
2395 a) AllyStar NMEA GPS
2396 b) BMM150 as external compass
2397 c) CRSF and SRXL2 RC protocols
2398 d) Dshot (bi-directional) for RPM telemetry
2401 g) Intelligent Energy hydrogen fuel cell
2402 h) Lightware SF45b lidar
2403 i) MSP protocol support (and DJI DPV systems)
2404 j) RichenPower generator
2405 k) Rotoye smart battery
2406 l) RunCam Split 4 and RunCam hybrid support
2408 n) SMBus batteries up to 12 cells
2410 11) Harmonic Notch Improvements
2411 a) Bi-directional dshot support
2412 b) Double notch support (see INS_HNTCH_OPTS = 1)
2413 c) In-flight FFT (see INS_HNTCH_MODE = 4, FFT_* params)
2414 d) In-flight learning of throttle notch using in-flight FFT
2415 e) Notch per motor support using ESC telemetry and notch-per-peak with FFT (INS_HNTCH_OPTS = 2)
2416 f) Notch slewing and increased update rate to avoid "shot" noise
2417 g) RPM status driven from harmonic notch input
2418 12) Scripting enhancements:
2419 a) Button, Proximity, RPM sensor support
2420 b) DO_ mission commands can be triggered from scripts
2421 c) I2C sensor driver support (i.e. allows writing sensor drivers in Lua)
2422 d) Logging (i.e. allows Lua scripts to write to onboard logs)
2423 e) Mission item read support
2424 f) Motor drivers support allowing custom frame types and 6DOF
2425 g) Pre-arm checks (i.e. allows writing custom pre-arm checks in Lua)
2426 h) ROMFS support (allows writing scripts to ROMFS instead of SD Card)
2427 i) Serial port support (allows reading/writing to serial port from Lua)
2428 j) ToshibaCAN ESC usage time read support
2429 13) Other enhancements:
2430 a) Baro parameters start with BARO_ (was GND_)
2431 b) Barometers get device id for easier identification
2432 c) ChibiOS upgrade to 20.3
2433 d) CRSF passthrough for Yaapu widget
2434 e) DShot rates increased (see SERVO_DSHOT_RATE)
2435 f) Filesystem/MAVFTP expansion including @SYS for performance monitoring
2436 g) GCS failsafe timeout configurable
2437 h) MAV_CMD_DO_REPOSITION support
2438 i) MAVFTP performance improvements
2439 j) Serial option to disable forwarding of mavlink to/from a port
2440 k) Serial ports may use shared DMA for better performance
2441 l) Spektrum VTX control
2442 m) Spektrum SRXL2 listen-only device support
2443 n) Vibration logged for all IMUs
2444 o) @SYS/tasks.txt, dma.txt, uart.txt for near real-time inspection of system performance
2446 a) CAN GPS ordering fix (previously order could switch meaning GPS_POS_ params were used on the wrong GPS)
2447 ------------------------------------------------------------------
2448 Copter 4.0.8 12-Oct-2021 (TradHeli only release)
2450 1) TradHeli landing detector fix
2451 2) Proximity sensor distance validity checked before pushing to object database
2452 ------------------------------------------------------------------
2453 Copter 4.0.7 22-Feb-2021
2454 Changes from 4.0.7-rc1
2455 1) fixed build on Durandal board
2456 2) multiple fixes for mRo boards: ControlZero*, PixracerPro
2457 ------------------------------------------------------------------
2458 Copter 4.0.7rc1 6-Feb-2021
2460 1) added automatic backup/restore of parameters in case of FRAM corruption for F7/H7 boards with 32k FRAM parameter storage
2461 2) fixed a bug in EKF2/EKF3 that could cause memory corruption if external naviagtion sources (such as vision based position and velocity data) is supplied before the EKF has initialised
2462 3) fixed a problem with low accuracy data from UAVCAN GPS modules when GPS blending is enabled
2463 4) fixed an arming check failure with u-blox M9 based GPS modules
2464 5) fixed a race condition in SmartRTL which could cause a LAND mode to be triggered
2465 ------------------------------------------------------------------
2466 Copter 4.0.6 25-Jan-2021 / 4.0.6-rc2 16-Jan-2021
2467 Changes from 4.0.6-rc1
2468 1) Add support for keeping a backup of storage for last 100 boots
2470 a) Fix support for BLHeli_S passthru
2471 ------------------------------------------------------------------
2472 Copter 4.0.6-rc1 23-Dec-2020
2475 a) Fix vertical flyaways when rangefinder stops providing data and the user has configured EK*_ALT_SOURCE=1
2476 b) Correct units on raw accel data
2477 c) Fport RSSI value fix
2478 d) Correct compilation when Advanced Failsafe compile time option is enabled
2479 e) Correct time wrap in RAW_IMU mavlink message
2480 f) PixracerPro - Fix analog volt pin assignments
2481 g) fix landing detector for tradheli in acro mode
2482 2) Small enhancements:
2483 a) Parameter documentation enhancements and corrections
2484 b) Improve harmonic notch filter parameter documentation
2485 c) Report prearm check status in the MAV_SYS_STATUS_PREARM_CHECK flag of the SYS_STATUS mavlink message
2486 d) Smooth I term reset over 0.5 seconds
2487 3) TradHeli enhancements:
2488 a) Differential Collective Pitch (DCP) trim support for Dual Heli
2489 b) Incorporate hover collective learning
2490 c) Option for pitch, roll and yaw I term to be based on takeoff/landing
2491 ------------------------------------------------------------------
2492 Copter 4.0.5 27-Oct-2020 / 4.0.5-rc2 08-Oct-2020
2493 Changes from 4.0.5-rc1
2495 a) Serial/UART DMA race condition that could cause watdog reset fixed (Critical fix)
2496 b) SBUS output when no RC input fixed (Critical fix)
2497 ------------------------------------------------------------------
2498 Copter 4.0.5-rc1 02-Oct-2020
2501 a) Acro expo calculation fix (fixes sluggish behaviour)
2502 b) F32Lightening board IMU fast sampling fix
2503 c) GPS minimum accuracy added to protect EKF from unrealistic values
2504 d) KakuteF7/mini DShot glitch fix
2505 e) RC input gets additional protection against out-of-range inputs (<RCx_MIN or >RCx_MAX)
2506 f) RC_OPTION = 4 fix on boards with IOMCU (Pixhawk, etc). This allows ignoring SBUS failsafes
2507 2) Small enhancements:
2508 a) Linux boards accept up to 16 RC inputs when using UDP
2509 b) Protect against two many interrupts from RPM sensor, etc
2510 c) RM3100 compass support for probing all four I2C addresses
2511 d) Durandal telem3 port enabled
2512 ------------------------------------------------------------------
2513 Copter 4.0.4 16-Sep-2020
2514 Changes from 4.0.4-rc4
2515 1) Matek H743, 765-Wing and F405-Wing get DPS310 Baro support
2516 ------------------------------------------------------------------
2517 Copter 4.0.4-rc4 28-Aug-2020
2518 Changes from 4.0.4-rc3
2520 a) Compass startup reordering based on compass priorities fix
2521 b) TradHeli servo test fix
2522 c) Precision landing logging fix
2523 d) Mavlink commands ignored after reboot request
2524 ------------------------------------------------------------------
2525 Copter 4.0.4-rc3 30-Jul-2020
2526 Changes from 4.0.4-rc2
2527 1) Bug Fixes and minor enhancements:
2528 a) Compass ids from missing compasses reset after compass cal
2529 b) LIS3MDL compass enabled on all boards
2530 c) Lightware I2C lidar fix when out-of-range
2531 d) Parameter erase fix for revo-mini and other boards that store to flash
2532 ------------------------------------------------------------------
2533 Copter 4.0.4-rc2 16-Jun-2020
2534 Changes from 4.0.4-rc1
2536 a) Watchdog monitor memory increased (may have caused watchdog reset)
2537 b) Compass ordering fix when COMPASS_PRIOx_ID is 0
2538 c) Hex CubeOrange 2nd current sensor pin correction
2539 d) Hott telemetry fix
2540 e) Lightware I2C driver fix when out-of-range
2541 f) MatekF765-Wing voltage and scaling fixed
2542 g) MatekH743 baro on I2C2 bus
2543 h) Proximity (360 lidar) ignore zone fix
2544 2) Flight controller support:
2545 a) Bitcraze Crazyflie 2.1
2549 3) Minor enhancements:
2550 a) Benewake RangeFinder parameter descriptions clarified
2551 b) Pre-arm check of attitude ignores DCM if multiple EKF cores present
2552 ------------------------------------------------------------------
2553 Copter 4.0.4-rc1 26-May-2020
2556 a) I/O CPU fix so safety remains off after inflight reboot (Critical fix)
2557 b) Acro mode yaw expo supports values under 0.5 (see ACRO_Y_EXPO param)
2558 c) Auto mode Loiter-Turn commands points towards center
2559 d) Change-Speed commands applied smoothly
2560 e) Compass scaling factor threshhold increased
2561 f) EKF compass variance reporting to GCS made consistent with onboard logs
2562 g) Gimbal control using RC input ignores RCx_TRIM param
2563 h) Holybro Durandal buzzer fix
2564 i) Parameter reset fix caused by Eeprom race condition
2565 j) Read-only parameter write failure msg only sent once to GCS
2566 k) Compass declination can be overriden with COMPASS_DEC param (and EKF stops using world magnetic tables)
2567 l) Terrain database (SRTM) file fix (will cause all terrain to be reloaded after upgrade)
2568 2) Bootloader update to reduce chance of param resets during firmware load
2569 3) Compass ordering and prioritisation improvements
2570 4) Flight controller support:
2576 5) GPS moving baseline (aka Yaw from GPS) for UBlox F9 GPSs
2577 6) Graupner Hott telemetry support
2578 7) Landing detector filter improvement improves detection on hard surfaces
2579 8) Object Avoidances Fixes and improvements:
2580 a) BendyRuler runs more slowly to reduce CPU load and reduce timeouts
2581 b) Dijkstra's avoidance works with more fence points
2582 c) Proximity drivers (i.e. 360deg lidar) simplified to reduce CPU load
2583 9) ProfiLED LEDs support
2584 10) Smart Battery improvements:
2585 a) Cycle count added
2586 b) NeoDesign battery support
2587 c) SUI battery support
2588 11) Other enhancements:
2589 a) Betaflight X frame type support
2590 b) Landing gear auto deploy/retract configurable using LGR_OPTIONS param
2591 c) MOT_PWM_MIN/MAX pre-arm check (checks fail if only one has been set)
2592 d) Solo gimbal and camera control improvements
2593 e) USB IDs updated to new ArduPilot specific IDs
2594 ------------------------------------------------------------------
2595 Copter 4.0.3 28-Feb-2020 / 4.0.3-rc1 20-Feb-2020
2598 a) "RCInput: decoding" message watchdog reset when using MAVLink signing (Critical Fix)
2599 b) HeliQuad yaw control fix
2600 c) Do-Set-Servo commands can affect sprayer, gripper outputs
2601 d) BLHeli passthrough fix for H7 boards (CubeOrange, Holybro Durandal)
2602 2) USB IDs updated for "composite" devices (fixes GCS<->autopilot connection issues for boards which present 2 USB ports)
2603 3) RCOut banner helps confirm correct setup for pwm, oneshot, dshot
2604 4) ZigZag mode supports arming, takeoff and landing
2605 ------------------------------------------------------------------
2606 Copter 4.0.2 11-Feb-2020
2607 Changes from 4.0.2-rc4
2608 1) MAVFTP stack size increased to 3k (fixes reboot when using MAVFTP)
2609 ------------------------------------------------------------------
2610 Copter 4.0.2 11-Feb-2020 / 4.0.2-rc4 05-Feb-2020
2611 Changes from 4.0.2-rc3
2613 a) Spektrum receivers decoding fix for Pixracer
2614 b) Current Alt frame always relative to home (RTL could return at wrong alt)
2615 c) Circle mode pitch control direction fixed
2616 d) EKF only uses world magnetic tables if COMPASS_SCALE is set
2617 e) Logging reliability improvements especially for FRAM logs
2618 f) RangeFinders using PWM interface use RNGFNDx_OFFSET param (attempt2)
2619 g) SpeedyBeeF5 probes all I2C ports for external baro
2620 2) Rangefinder fallback support (both must have same _ORIENT)
2621 ------------------------------------------------------------------
2622 Copter 4.0.2-rc3 01-Feb-2020
2623 Changes from 4.0.2-rc2
2625 a) AutoTune fix to restore original gains when AutoTune completes
2626 ------------------------------------------------------------------
2627 Copter 4.0.2-rc2 31-Jan-2020
2630 b) IO CPU timing fix which reduces ESC sync issues
2631 c) PX4Flow driver probes all I2C ports on Hex Cubes
2632 d) RangeFinders using PWM interface (like Garmin LidarLite) use RNGFNDx_OFFSET param
2633 e) RC override fix when RC_OVERRIDE_TIME=-1 (allows disabling timeout when using joystick)
2634 f) TradHeli attitude control parameter description fixes (does not affect flight)
2635 g) cygwin compiler fix (affects developers only)
2636 2) Minor enhancements:
2637 a) GCS failsafe warning lights and tones
2638 b) Circle mode pitch control direction swapped
2639 ------------------------------------------------------------------
2640 Copter 4.0.1 25-Jan-2020 / 4.0.1-rc3 19-Jan-2020
2641 Changes from 4.0.1-rc2
2643 a) Semaphore fixes for Logging, Filesystem and UAVCAN Dyanmic Node Allocation
2644 b) RangeFinder parameter fix (4th rangefinder was using 1st rangefinder's params)
2645 c) TradHeli STB_COL_x parameter description fixed
2646 2) Minor Enhancements:
2647 a) Autorotate flight mode renamed to Heli_Autorotate
2648 b) Solo default parameters updated
2649 c) "Prepared log system" initialisation message removed
2650 ------------------------------------------------------------------
2651 Copter 4.0.1-rc2 10-Jan-2020
2652 Changes from 4.0.1-rc1
2653 1) FrSky telemetry status text handling fix (Critical Fix)
2654 ------------------------------------------------------------------
2655 Copter 4.0.1-rc1 10-Jan-2020
2657 1) Circle mode allows pilot control of radius and rotation speed
2658 2) CAN servo feedback logged
2659 3) Magnetic declination tables updated
2660 4) Serial0 protocol forced to MAVLink (avoids accidental disabling of USB port)
2662 a) TradHeli RSC RC passthrough fixed
2663 b) CubeOrange and Durandal I2C timing fixed (was running slow)
2664 c) Compass calibration auto orientation skips "pitch 7" which could cause cal to fail
2665 d) Durandal's fourth I2C port fixed
2666 e) Linux boards with CAN support fixed
2667 f) Neopixel added to SERVOx_FUNCTION param description
2668 g) NMEA Output fixed (was sending an extra CR)
2669 h) Optflow messages sent even if EKF has no height estimate
2670 i) SkyViper build fixed
2671 j) Spektrum/DSM 22ms RC input fixed
2672 k) "UC Node Down" message removed (was unnecessarily scary)
2673 ------------------------------------------------------------------
2674 Copter 4.0.0 29-Dec-2019 / 4.0.0-rc6 28-Dec-2019
2675 Changes from 4.0.0-rc5
2676 1) Compiler updated to gcc 6.3.1 (2nd attempt)
2677 ------------------------------------------------------------------
2678 Copter 4.0.0-rc5 23-Dec-2019
2679 Changes from 4.0.0-rc4
2680 1) RM3100 compass enabled on all boards
2681 2) GCS failsafe disabled by default (see FS_GCS_ENABLE parameter)
2683 a) Bootloader fix for H7 boards (could brick CubeOrange, CUAV V5 Nano, etc)
2684 b) OmnibusF4pro GPS fix
2685 c) MatekF405-Wing missing serial ports restored
2686 d) MatekF765-Wing RTSCTS parameter defaults set correctly
2687 e) CUAV V5 Nano battery monitor param defaults improved
2688 ------------------------------------------------------------------
2689 Copter 4.0.0-rc4 20-Dec-2019
2690 Changes from 4.0.0-rc3
2691 1) Compiler updated to gcc 6.3.1
2692 2) Solo default parameters updated
2693 3) Bug Fix to RCMAP channel number sanity check
2694 ------------------------------------------------------------------
2695 Copter 4.0.0-rc3 16-Dec-2019
2696 Changes from 4.0.0-rc2
2697 1) Flight mode and control improvements:
2698 a) Auto mode Takeoff getting stuck fixed (very rare)
2699 b) AutoTune protection against ESC sync loss at beginning of a twitch
2700 c) SystemID mode parameters hidden by default (set SID_AXIS to non-zero to see all)
2701 d) Takeoff from slanted surfaces improved by reducing I-term build-up in attitude controllers
2702 2) Lua Script related enhancements:
2703 a) MAV FTP support to ease uploading and downloading Lua scripts
2704 b) NeoPixel/WS2812 LED control from Lua scripts
2705 c) Pre-arm check that Lua scripting feature has enough memory
2706 3) TradHeli enhancements:
2707 a) Autonomous autorotation (compile time option, not available in stable firmware)
2708 b) CCW Direct Drive Fixed Pitch tail support (see H_TAIL_TYPE parameter)
2709 c) Parameter description improvements
2710 d) STAB_COL_1/2/3 param range changed to 0 to 100 (was 0 to 1000)
2711 4) Lightware SF40c driver for latest sensors with "streaming" protocol
2712 5) Board/Frame specfic fixes:
2713 a) Hex CubeOrange IMU heater control gain tuning improvement
2714 b) Holybro Durandal IMUs ordering fix so EKx_IMU_MASK bits are intuitive
2715 c) Holybro Pixhawk4 B/E LED fix (was flickering)
2716 d) MatekF765 PWM outputs 5 and 6 now functional
2717 e) MatekF765, MatekF405 time wrap CRITICAL fix for vehicles flying more than 72min
2718 f) MatekF765 LED fixes
2719 g) mRobotics ControlZeroF7 I2C bus numbering fix
2720 h) Solo default params updated for 4.0.0
2721 i) Bootloaders for boards using STM32H7 CPUs
2722 j) Bootloader protection against line noise that could cause the board to get stuck during bootup
2723 k) LED timing fix for FMUv5 boards with LEDs on one of first four auxiliary PWM outputs
2724 6) Minor Enhancements and Bug Fixes
2725 a) I2C storm High level protection
2726 b) Internal errors (like I2C storms) reported to GCS by setting Heartbeat status to Critical
2727 c) Dataflash Logging CTUN.TAlt and SAlt scaling fixed
2728 d) DO_DIGICAM_CONTROL messages are sent using Mavlink1/2 as specified by SERIALx_PROTOCOL
2729 e) DO_SET_SPEED sanity check fixed to protect against negative speeds
2730 f) FrSky telemetry scheduling improvement (fixes issue in which GPS data would not be sent)
2731 g) GPS auto configuration fix for non-Ublox-F9 (F9 config was interfering with other Ublox GPSs)
2732 h) Landing gear DEPLOY message fix (could be displayed multiple times or when gear not configured)
2733 i) Pre-arm check of position estimate when arming in Loiter even if arming is "forced"
2734 j) Pre-arm check that Terrain database has enough memory
2735 k) RangeFinder parameter conversion fix (some parameters were not upgraded from 3.6.x to 4.0.0)
2736 l) RangeFinder TYPE parameter descriptions clarified for LidarLite and Benewake Lidars
2737 m) Serial parameters hidden if they do not exist on the particular board
2738 n) UAVCAN GPS fix for GPSs that don't provide "Aux" message (like the Here2)
2739 o) NMEA Output bug fix (output was stopping after 90 seconds)
2740 ------------------------------------------------------------------
2741 Copter 4.0.0-rc2 04-Nov-2019
2742 Changes from 4.0.0-rc1
2743 1) Failsafe changes:
2744 a) GCS failsafe triggers when telemetry connection is lost (previously only triggered when using joystick)
2745 b) FS_OPTION parameter allows continue-in-auto and continue-in-pilot-modes for RC/Radio and GCS failsafe
2746 2) Dynamic Notch Filter supports filter range based on BLHeli ESC feedback
2747 3) Improved protection against high roll/pitch gains affecting altitude control
2749 a) Altitude control param conversion fix (PSC_ACCZ_FILT converted to PSC_ACCZ_FLTE)
2750 b) BLHeli fix to RPM calcs and telemetry (aka 0x8000 error)
2751 c) ChibiOS SPI timeout fix (non-critical)
2752 d) Fence upload is less strict about altitude types (fences don't have altitudes)
2753 e) Motor loss detection bug fix (would sometimes think the wrong motor had failed)
2754 f) Pre-arm message fix to reports AHRS/EKF issue (was blank)
2755 g) Sparky2 autopilot firmware available
2756 h) Startup message "AK09916: Unable to get bus semaphore" removed (was not an error)
2757 i) Yaw control fix for fast descent and after large attitude disturbances
2758 ------------------------------------------------------------------
2759 Copter 4.0.0-rc1 25-Oct-2019
2761 1) Path Planning for Object Avoidance (aka Bendy Ruler and Dijkstra's) replaces "Dodge" avoidance
2762 2) Complex Fence support (aka stay-out zones)
2763 3) Lua scripting support on the flight controller
2764 4) New flight controllers:
2767 5) Attitude Control changes:
2768 a) Attitude Control filters on target, Error and D-term (see ATC_RAT_x_FLTT/FLTE/FLTD)
2769 b) Harmonic notch filter
2770 6) Flight mode changes:
2771 a) ZigZag mode (designed for crop spraying)
2772 b) SystemId for "chirping" attitude controllers to determine vehicle response
2773 c) StandBy mode for vehicles with multiple flight controllers
2774 d) SmartRTL provides warnings when buffer is nearly full
2775 e) Follow mode offsets reset to zero when vehicle leaves follow mode
2776 f) Upward facing surface tracking using lidar
2777 g) Circle mode points more accurately towards center
2778 7) Traditional Heli:
2779 a) Removed the parameter H_LAND_COL_MIN and functionality now uses H_COL_MID. CAUTION: ensure H_COL_MID is set to collective blade pitch that produces zero thrust
2780 b) Incorporated a rotor speed governor in rotor speed control (RSC)
2781 c) Moved all RSC parameters to the RSC library
2782 d) Converted throttle curve parameters to percent
2783 e) Converted RSC_CRITICAL, RSC_IDLE, and RSC_SETPOINT to percent
2784 f) Created swashplate library that has presaved swashplate types for use with Heli_Single and Heli_Dual frames
2785 g) Motor interlock with passthrough settable through RC option feature
2786 h) Removed collective too high pre-arm check
2787 i) Added virtual flybar for Acro flight mode
2788 j) Fixed H_SV_MAN minimum and maximum settings for Heli_Dual
2791 b) OctoV mixing improvements
2792 9) RC input/output changes:
2793 a) Serial protocols supported on any serial port
2794 b) IBUS R/C input support
2795 c) DO_SET_SERVO and manual passthrough can operate on the same channel
2796 10) Battery improvements:
2797 a) Up to 10 batteries can be monitored
2798 b) "Sum" type consolidates monitoring across batteries
2799 c) Fuel flow battery (for use with gas tanks)
2800 11) Sensor/Accessory changes:
2801 a) Robotis servo support
2804 d) BenewakeTF03 lidar
2805 e) SD Card reliability improvements (if card removed, logging restarts)
2806 f) Yaw from some GPS (including uBlox RTK GPS with moving baseline)
2807 g) WS2812 LEDs (aka NeoPixel LEDs)
2808 h) NTF_BUZZ_VOLUME allows controlling buzzer volume
2810 a) Retracts automatically after Takeoff in Auto completes
2811 b) Deployed automatically using SRTM database or Lidar
2812 13) UAVCAN improvements:
2813 a) dynamic node allocation
2814 b) SLCAN pass-through
2815 c) support for UAVCAN rangefinders, buzzers, safety switch, safety LED
2816 14) Serial and Telemetry:
2817 a) MAVLink Message-Interval allows reducing telemetry bandwidth requirements
2818 b) SERIALn_OPTIONS for inversion, half-duplex and swap
2819 15) Safety Improvements:
2820 a) Vibration failsafe (switches to vibration resistant estimation and control)
2821 b) Independent WatchDog gets improved logging
2822 c) EKF failsafe triggers slightly more quickly
2823 ------------------------------------------------------------------
2824 Copter 3.6.12 13-Dec-2019 / 3.6.12-rc1 06-Dec-2019
2826 1) More ChibiOS fixes for I2C storm
2827 2) COMPASS_SCALE param to allow manual correction of compass scaling
2828 ------------------------------------------------------------------
2829 Copter 3.6.11 01-Oct-2019 / 3.6.11-rc1 16-Sep-2019
2831 1) EKF and IMU improvements:
2832 a) IMU3 enabled by default if present
2833 b) IMU3 fast sampling enabled by default on Cube autopilots
2834 c) EKF protection against large baro spikes causing attitude error
2835 d) EKF origin fixes (consistent across cores, set externally only when not using GPS)
2836 e) EKF logging of 3rd core
2837 2) Minor enhancements:
2838 a) Land mode supports heading requests (ie. ROI)
2839 b) Support Hexa-H frame
2840 c) MatekF405-STD binaries created
2841 d) Benewake TFminiPlus lidar support
2843 a) Barometer health checks include sanity check of temperature
2844 b) Lightware serial driver handles invalid distances
2845 c) IO firmware fix involving delayed writes to serial ports (ChibiOS only)
2846 d) CAN Compass fis to for unintialised device IDs
2847 e) mRo x2.1-777 USB ID fix
2848 f) ChibiOS fix for I2C storm
2849 ------------------------------------------------------------------
2850 Copter 3.6.10 29-Jul-2019 / 3.6.10-rc2 2-Jul-2019
2851 Changes from 3.6.10-rc1
2852 1) mRobotics ControlZeroF7 board support
2853 2) Motor Test fixed by removing delay that triggered CPU Watch Dog
2854 ------------------------------------------------------------------
2855 Copter 3.6.10-rc1 08-Jul-2019
2857 1) EKF improvements:
2858 a) learns biases even for inactive IMUs
2859 b) EKF uses earth magnetic field model to reduce in-flight compass errors
2860 c) EKF switches to first healthy IMU when disarmed
2861 d) IMU fix for dropped samples during high CPU usage
2862 e) Optical flow fusion start fix when some gyros disabled
2863 2) Ublox F9 GPS support
2864 3) Integrated CPU Watch Dog for STM boards including logging of reset reason
2865 4) ChibiOS I/O firmware for ChibiOS builds to support Spektrum binding
2866 5) Auxiliary switch changes always logged
2867 6) CUAVv5 Nano LED fix
2868 7) Solo Gimbal fix when some gyros disabled
2869 ------------------------------------------------------------------
2870 Copter 3.6.9 27-May-2019 / 3.6.9-rc1/rc2 30-Apr-2019
2872 1) CX-OF flow sensor enabled on all boards
2873 2) CUAVv5 Nano board support added
2874 3) RangeFinders supported on all I2C ports
2875 4) Compass maximum acceptable offsets increased
2876 5) Septentrio GPS driver loses logging of camera feedback which could cause lag
2878 a) Acro mode leveling fix for when ACRO_TRAINER was 1
2879 b) Tradheli collective position pre-arm check removed
2880 c) Fallback to microSD for storage fixed
2881 d) GPS blending memory access fix that could lead to unhealthy GPS
2882 e) fixed POWR flags for 2nd power module on fmuv3 boards
2883 7) bootloader binary update for many boards
2884 ------------------------------------------------------------------
2885 Copter 3.6.8 26-Apr-2019 / 3.6.8-rc1 24-Apr-2019
2888 a) Prevent loss of active IMU from causing loss of attitude control
2889 b) Added startup check for Hex CubeBlack sensor failure
2890 c) don't reset INS_ENABLE_MASK based on found IMUs
2891 ------------------------------------------------------------------
2892 Copter 3.6.7 06-Mar-2019 / 3.6.7-rc1 28-Feb-2019
2894 1) Bug fixes and minor enhancements
2895 a) Matek405-Wing compass fix (thread initialisation fix)
2896 b) Landing flips reduced by reducing I-term build-up
2897 c) Land mission command slows down less aggressively
2898 d) Lightware LW20 lidar more reliably switches to serial mode
2899 ------------------------------------------------------------------
2900 Copter 3.6.6 15-Feb-2019 / Copter 3.6.6-rc2 09-Feb-2019
2901 Changes from 3.6.6-rc1
2903 a) EKF compass switching fix for vehicles with 3 compasses
2904 b) CAN fixed on Pixhawk4 and PH4-mini
2905 c) Mini-pix uart telem1 and telem2 reversed
2906 d) Divide-by-zero protection if _FILT_HZ params set to zero
2907 e) Guided_NoGPS skips GPS pre-arm check
2908 ------------------------------------------------------------------
2909 Copter 3.6.6-rc1 02-Feb-2019
2911 1) AP_RSSI fixes and minor enhancements
2912 a) RSSI pwm input driver for ChibiOS
2913 b) add V5 Nano to RSSI_ANA_PIN parameter description
2914 2) Bug fixes and minor enhancements
2915 a) TradHeli roll trim ramp time fix
2916 b) First Spline waypoint no longer skipped
2917 c) RC override (from GCS Joystick) disable fix (command to disable overrides could be interpreted as real input)
2918 ------------------------------------------------------------------
2919 Copter 3.6.5 24-Jan-2019 / 3.6.5-rc3 21-Jan-2019
2920 Changes from 3.6.5-rc2
2922 a) Pixhawk4 SBUS input and Serial6 pin mapping conflict resolved
2923 ------------------------------------------------------------------
2924 Copter 3.6.5-rc2 15-Jan-2019
2925 Changes from 3.6.5-rc1
2926 1) Bug fixes and minor enhancements
2927 a) RC DSM sync bug fix (channel 8 could temporarily become zero, ChibiOS only)
2928 b) Pixhawk board LED fix (ChibiOS only)
2929 ------------------------------------------------------------------
2930 Copter 3.6.5-rc1 11-Jan-2019
2932 1) Bug fixes and minor enhancements
2933 a) SD Card reliability improvement (BRD_SD_SLOWDOWN param) and allow re-inserting card after boot
2934 b) Mode and Auxiliary switch range check to protect during FrSky SBUS failsafe recovery
2935 c) Follow mode reports target distance and heading to ground station
2936 d) Pixhawk4-mini safety switch and LED fix
2938 2) RC protocol decoding for SRXL, SUMD and ST24 extended to all boards including pixracer and ChibiOS-only boards
2939 3) DrotekP3 Pro support
2940 4) Cube Purple support
2941 ------------------------------------------------------------------
2942 Copter 3.6.4 27-Dec-2018 / 3.6.4-rc1 20-Dec-2018
2944 1) Bug fixes and minor enhancements
2945 a) Detect and clear stuck I2C bus when using ChibiOS
2946 b) Pixhawk4 fix for battery monitor voltage scaling
2947 c) TradHeli Dual (aka Chinook) fix for scaling of second swashplate movement
2948 d) Omnibus F7 IMU orientation fix
2949 e) Gimbal fix to avoid extreme movement if pilot's transmitter is off at startup
2950 f) Follow mode fix to obey FOLL_SYSID parameter (controls which vehicle to follow)
2951 2) Cheerson CX-OF optical flow sensor support
2952 ------------------------------------------------------------------
2953 Copter 3.6.3 04-Dec-2018 / 3.6.3-rc1 01-Dec-2018
2955 1) Bug fixes and minor enhancements
2956 a) Pixhawk4 RC input fix
2957 b) TradHeli parameter default fixes for Loiter and PosHold
2958 c) Onboard OSD fix for MatekSys 405
2959 d) Solo power off button delay time increased
2960 ------------------------------------------------------------------
2961 Copter 3.6.2 24-Nov-2018 / 3.6.2-rc4 22-Nov-2018
2962 Changes from 3.6.2-rc3
2963 1) Bug fixes and minor changes:
2964 a) Benewake TFmini short range scaling fix
2965 b) Fix alt drop after quick switch from RTL to stabilize to RTL
2966 c) Winch removed from build by default
2967 ------------------------------------------------------------------
2968 Copter 3.6.2-rc3 19-Nov-2018
2969 Changes from 3.6.2-rc2
2971 a) Benewake TFmini and TF02 driver reliability fix
2972 b) Spektrum RC parsing fix when more than 7 channels
2973 2) remove bootloader from px4-v2 builds (reduces firmware size)
2974 ------------------------------------------------------------------
2975 Copter 3.6.2-rc1/rc2 15-Nov-2018
2978 a) Benewake TFmini and TF02 driver checksum fix (was missing many sensor readings)
2979 b) Range finders report healthy to GCS when out-of-range
2980 c) RPM sensor reliability fix by initialising analog input pin
2981 ------------------------------------------------------------------
2982 Copter 3.6.1 10-Nov-2018 / 3.6.1-rc1 06-Nov-2018
2984 1) Garmin LidarLite V3HP support
2985 2) VFR HUD messages send relative altitude if DEV_OPTIONS = 2. Useful for older OSDs and GCSs
2987 a) Battery failsafe voltage parameter conversion fix
2988 b) Safety switch startup fix (was occasionally not initialised properly)
2989 c) Benewake TFmini and TF02 driver discards distances over 327m (avoids reporting 655m when can't read distance)
2990 d) Dataflash erase only availabled when disarmed (avoids crash if user attempted to erase logs while flying)
2991 4) ChibiOS fixes and enhancements:
2992 a) Pixracer LEDs colours fixed
2993 b) Terrain support fixed on Pixracer, MindPx-v2, Radiolink mini-pix
2994 c) RC input processing fix to avoid memory corruption in some rare cases
2995 d) FuriousFPV F-35 Lightning board support
2996 e) SpeedyBee F4 board support
2997 f) Bootloaders for OmnibusF4v6, mRoX2.1-777, Radiolink mini-pix
2998 g) Revo-mini support for external barometer
2999 h) Pins numbers made consistent across boards (setup of some features now more consistent across boards)
3000 i) enable safety switch on Pixhawk family f7 boards
3001 ------------------------------------------------------------------
3002 Copter 3.6.0 26-Oct-2018
3003 Changes from 3.6.0-rc12
3005 a) Object avoidance fix when using 360 Lidar (mini fence was not including first distance)
3006 b) Flowhold mode descending fix
3007 2) ChibiOS related fixes:
3008 a) Kakutef7 support pin mapping fixes
3010 c) I2C Lidar driver fix to avoid freeze at startup if sensor not connected
3011 ------------------------------------------------------------------
3012 Copter 3.6.0-rc12 05-Oct-2018
3013 Changes from 3.6.0-rc11
3015 a) DSHot ESC driver race condition fix (could result in board freezing up)
3016 b) EKF fix to rounding off home altitude (could result in slightly inaccurate home altitude)
3017 c) Pixracer safety switch fix (BRD_SAFETYOPTION parameter was handled incorrectly)
3018 ------------------------------------------------------------------
3019 Copter 3.6.0-rc11 01-Oct-2018
3020 Changes from 3.6.0-rc10
3022 a) PosHold fix to initialise desired accelerations
3023 b) Automatic compass orientation fix to account for equivalent rotations
3024 c) ChibiOS fix to RSSI voltage reading
3025 ------------------------------------------------------------------
3026 Copter 3.6.0-rc10 15-Sep-2018
3027 Changes from 3.6.0-rc9
3028 1) Arming/disarming from transmitter can be disabled with ARMING_RUDDER parameter
3030 a) UART baud rate rounding fix (allow 921600 baud to work)
3031 b) ADC fix to allow more simultaneous channels
3033 a) Lean angle limit (to maintain altitude) always allows at least 10deg of lean
3034 b) Attitude Control and PID initialisation fix to reduce twitches when switching modes
3035 ------------------------------------------------------------------
3036 Copter 3.6.0-rc9 08-Sep-2018
3037 Changes from 3.6.0-rc8
3038 1) Landing gear can be operated using AIRFRAME_CONFIGURATION mavlink messages
3039 2) Support playing tunes received via MAVLink (i.e. from GCS)
3041 a) Twitch reduced when entering Loiter at high speed
3042 b) Safety switch state fix when Pixhawk/Cube I/O board reset in flight
3043 c) External display fix to allow plugging into either I2C port
3044 ------------------------------------------------------------------
3045 Copter 3.6.0-rc8 28-Aug-2018
3046 Changes from 3.6.0-rc7
3047 1) TeraRanger Tower EVO lidar support added
3048 2) PCA9685 and NCA5623 LED support added (replacements for Toshiba LED that is becoming end-of-life)
3049 3) Missions can start with DO_ commands (first NAV command must still be takeoff)
3051 a) DShot and BLHeli stability improvements
3052 b) added OmnibusNanoV6 bootloader
3054 a) AP_Stat only saves values to eeprom if they change (reduces CPU impact)
3055 b) boost throttle respects safety switch
3056 c) TradHeli reduce chance of tip-over when landed in Loiter
3057 ------------------------------------------------------------------
3058 Copter 3.6.0-rc7 01-Aug-2018
3059 Changes from 3.6.0-rc6
3060 1) Compass rotation detection during calibration (see COMPASS_AUTO_ROT param)
3061 2) Tone alarm system consistent on all boards and support for playing tones from GCS
3062 3) OnBoard OSD improvements including showing dir to home (ChibiOS only)
3063 4) External compass support and microSD improvements for many ChibiOS-only boards including Kakute F4, Mateksys F405-Wing, Airbot F4, Crazyflie2, MindPXv2, Mini-PIX, Omnibus F7
3065 a) Battery monitor parameter fix to support BLHeli ESCs
3066 b) Ch12 auxiliary function fixed
3068 d) Pixracer external compass fix
3069 e) Pre-arm failure regarding RCx_TRIM removed for non critical channels
3070 f) SBUS failsafe fix when receiver configured to "hold"
3071 g) UART flow control fixes (ChibiOS only)
3072 h) VL53L0X lidar fix
3073 6) Minor enhancements:
3074 a) Compass device IDs (i.e. COMPASS_DEVID) set to zero if no compass detected
3075 b) Fence action "Always Land" option added
3076 c) Motor test maximum time extended to 10min
3077 d) Receiver RSSI pwm input on AUX5,6
3078 e) USB Serial port protocol default set to Mavlink2
3080 a) "Channel already assigned" message fixed
3081 b) External gyro output method PWM based
3082 c) Swash servo output properly accounts for servo trim
3083 ------------------------------------------------------------------
3084 Copter 3.6.0-rc6 16-Jul-2018
3085 Changes from 3.6.0-rc5
3086 1) ChibiOS small enhancement and fixes:
3087 a) KakuteF4 UART order fix
3088 b) mRobotics bootloader and autobuild of binaries for AUAV2.1 and Pixracer
3089 c) Mateksys F405-Wing uart reorder to better match labels on board
3090 2) Improve telemetry/GPS detection by only clearing UART when baud rate changes
3091 ------------------------------------------------------------------
3092 Copter 3.6.0-rc5 07-Jul-2018
3093 Changes from 3.6.0-rc4
3094 1) Support new boards CubeBlack and HolyBro Pixhawk4-mini
3095 2) ChibiOS small enhancement and fixes:
3096 a) make board serial number match NuttX
3097 b) relay fix for Pixhawk boards by defaulting BRD_PWM_COUNT to 4 (same as NuttX)
3098 c) MatekF405-Wing default compass orientation fix
3099 d) Pixhawk4 default compass orientation fix
3100 e) Omnibus F4 Pro I2C fix
3102 a) Telemetry baud rate fix
3103 b) RC failsafe fix to RTL in all modes except Auto when FS_THR_ENABLE is continue-with-mission
3104 c) waypoint navigation related safety check that PSC_POS_XY_P is non-zero
3105 d) aerofc-v1 update bootloader utility fix
3106 ------------------------------------------------------------------
3107 Copter 3.6.0-rc4 05-Jul-2018
3108 Changes from 3.6.0-rc3
3109 1) add support for Cube Black and Cube Orange
3110 2) Built-in OSD improvements including home direction fix, altitude fix
3112 a) ESC Telemetry current scaling fix
3113 b) LED pre-arm GPS colour fix if glitch occurs
3114 ------------------------------------------------------------------
3115 Copter 3.6.0-rc3 02-Jul-2018
3116 Changes from 3.6.0-rc2
3118 a) airbotf4, matekF405, matekF405-wing, omnibusf4pro, mini-pix, omnibusf7v2, revo-mini, sparky2 binaries built on firmware.ardupilot.org
3119 b) STM32F7 support including the CUAV v5 Autopilot and the PixHawk 4 (aka fmuv5)
3120 c) fixed dataflash logfile dates
3121 d) bootloader included in firmware for easier uploading
3122 e) additional UART added to fmuv4 and fmuv5 (STM32 F7 boards)
3123 f) ChibiOS version written to dataflash log files
3125 a) fix collective jump on rotor shutdown in AltHold and Loiter
3126 b) fix interlock pre-arm check
3127 3) Follow uses relative altitudes (FOLL_ALT_TYPE param allows specifying relative or absolute alts)
3128 4) Auxiliary switch de-bounced to avoid false positives
3129 5) Bug fixes and minor enhancements:
3130 a) ESC calibration fix
3131 b) ESC_TELEMETRY messages sent to ground station
3132 ------------------------------------------------------------------
3133 Copter 3.6.0-rc2 01-Jun-2018
3134 Changes from 3.6.0-rc1
3135 1) ChibiOS support for Holybro Kakute F4
3137 a) Benewake TFmini and TF02 support
3138 b) WASP200 laser range finder support
3139 3) D-Shot and ESC telemetry support
3140 4) Vision-position-estimate support for use with ROS
3141 5) Bug fixes and minor enhancements:
3142 a) TradHeli swash plate servo trim fixes
3143 b) SmartRTL gives pilot yaw control
3144 c) marvelmind reliability improvements
3145 d) CoaxCopter and SingleCopter output fixes
3146 e) Maxbotics I2C sonar health fix
3147 6) Safety fixes/improvements:
3148 a) GPS/EKF failsafe disabled in Acro/Stabilize modes
3149 b) interlock switch arming check fixed
3150 c) Auxiliary switch de-bouncing
3151 d) pre-arm check for GPS/AHRS difference changed to 2D (to avoid false positives)
3152 e) startup crash fixed when VL53L0X lidar configured but not connected
3153 ------------------------------------------------------------------
3154 Copter 3.6.0-rc1 19-Apr-2018
3156 1) ChibiOS support including F4BY, OpenPilot Revo Mini, TauLabs Sparky2 boards
3157 2) Flight mode changes:
3158 a) New Loiter with faster roll and pitch response, braking
3159 b) SmartRTL (returns home using outgoing path)
3160 c) Follow mode (allows following without relying on ground station commands)
3161 d) FlowHold (position hold with optical flow without lidar)
3162 3) Battery failsafe allows two stages of actions and monitoring of multiple batteries
3163 4) New sensors/drivers:
3164 a) Marvelmind for Non-GPS navigation
3165 b) RPLidarA2/A3 for object avoidance
3166 c) Winch for lowering packages without landing
3167 d) Septentrio GPS driver robustness improved
3169 a) dodeca-hexa copter (12 motors on 6 arms)
3170 b) Variable pitch quadcopter support (aka HeliQuad)
3171 c) multicopters with vertical boosting motor (see MOT_BOOST_SCALE parameter)
3172 6) Miscellaneous changes and enhancements:
3173 a) Auxiliary switch to enable/disable RC overrides from ground station joystick
3174 b) Barometer temperature calibration learning (see TCAL_ENABLED parameter)
3175 c) Camera triggering by distance only in Auto mode if CAM_AUTO_ONLY set to 1
3176 d) Compass noise rejection using COMPASS_FLTR_RNG parameter
3177 e) Compass interference compensation for up to 4 motors (see COMPASS_PMOT parameters)
3178 f) Command Line Interface (aka CLI) removed to reduce firmware size
3179 g) Flight mode channel can be changed using FLTMODE_CH parameter
3180 h) IMU notch filter to ignore specific frequencies (use INS_NOTCH_ENABLE parameter)
3181 i) LAND_ALT_LOW parameter allows setting altitude at which vehicle slows to LAND_SPEED in Land and RTL modes
3182 j) Mission cleared automatically on each reboot if MIS_OPTIONS parameter set to 1
3183 k) Object avoidance configurable to "stick" to barriers (previously would always slide past)
3184 l) PILOT_SPEED_UP, PILOT_SPEED_DN allow different max climb and descent rates in AltHold, Loiter, PosHold
3185 m) Safety switch configurable (i.e. only allow arming but not disarming via switch)
3186 n) Servo output rate configurable (see SERVO_RATE parameter)
3187 o) Vehicle rotation rate limits (see ATC_RATE_P/R/Y_MAX parameters)
3188 p) SI units in parameters, mavlink messages and dataflash logs
3189 7) TradHeli improvements:
3190 a) H3-135/140 swashplate support
3191 b) Reversed collective option for leading/trailing edge control
3192 c) AltHold angle limiter fix
3193 d) Five point spline-smoothed throttle curve
3194 8) parameter and log message name changes:
3195 a) ACCEL_Z_ renamed to PSC_ACCZ_
3196 b) ACC_ parameters renamed to PSC_ACC
3197 c) POS_ parameters renamed to PSC_POS
3198 d) VEL_ parameters renamed to PSC_VEL
3199 e) FS_BATT_ renamed to BATT_FS_
3200 f) BATT_AMP_PERVOLT renamed to BATT_AMP_PERVLT
3201 g) PILOT_VELZ_MAX to PILOT_SPEED_UP (and PILOT_SPEED_DN)
3202 h) RC_FEEL_RP replaced with ATC_INPUT_TC (functionality is same, scaling is different)
3203 i) WPNAV_LOIT_ params renamed to LOIT_
3204 j) NTUN dataflash message renamed to PSC
3205 ------------------------------------------------------------------
3206 Copter 3.5.7 17-Jul-2018 / 3.5.7-rc1 12-Jul-2018
3208 1) Bug fix to ESC calibration safety switch issue
3209 ------------------------------------------------------------------
3210 Copter 3.5.6 11-Jul-2018 / 3.5.6-rc1 07-Jul-2018
3212 1) Safety switch fix to refuse presses once armed (BRD_SAFETYOPTION controls behaviour)
3213 ------------------------------------------------------------------
3214 Copter 3.5.5 31-Jan-2018 / 3.5.5-rc1 24-Jan-2018
3216 1) ICM20948 compass orientation fix
3217 2) LIS3MDL compass support on Pixracer
3218 3) support for easy embedding of defaults in firmware binary
3219 4) do-mount-control control command sets copter yaw when using 2-axis gimbal
3220 5) TradHeli fix for direct drive variable pitch tail rotors
3221 ------------------------------------------------------------------
3222 Copter 3.5.4 23-Nov-2017 / 3.5.4-rc2 17-Nov-2017
3224 1) Compass improvements / bug fixes:
3225 a) probe for LIS3MDL on I2C address 0x1e
3226 b) bug fix pixracer compass detection
3227 ------------------------------------------------------------------
3228 Copter 3.5.4-rc1 08-Nov-2017
3230 1) Compass improvements:
3231 a) support added for QMC5883L, LIS3MDL, IST8310
3232 b) COMPASS_TYPEMASK parameter allows enabling/disabling individual compass drivers
3233 2) LightWare and MaxBotix range finders supported on both I2C buses
3234 3) Serial port 5 can be used for telemetry or sensors (previously was only for NuttX console)
3235 4) px4pro flight controller supported
3237 a) motor runup check applies to all flight modes (previously only loiter, poshold, althold)
3238 b) swashplate behaviour changes when on ground in acro, stabilize and althold
3239 c) servo test function fixed
3240 d) direct drive fixed pitch tail fix
3241 e) Z-axis Accel P gain default lowered to 0.3
3242 6) EKF origin set using SET_GPS_GLOBAL_ORIGIN mavlink message instead of SET_HOME_POSITION
3243 7) Intel Aero supports 921600 baud rate between main flight controller and companion computer
3244 8) Bug fix to I2C race condition on Pixhawk that could occasionally cause I2C device to not be detected
3245 ------------------------------------------------------------------
3246 Copter 3.5.3 21-Sep-2017 / Copter 3.5.3-rc1 12-Sep-2017
3248 1) Guided mode support yaw and yaw-rate fields from set-position-target message
3249 2) Optical Flow startup retries 10 times
3251 a) Septentrio RTK GPS driver robustness improvements for long messages
3252 b) dataflash not-logging checks if not initialised
3253 c) fix reporting of relative-position-NE-to-home (most users will not notice this difference)
3254 ------------------------------------------------------------------
3255 Copter 3.5.2 14-Aug-2017 / Copter 3.5.2-rc1 05-Aug-2017
3257 1) GPS glitch arming check and notification (flashing blue-yellow LED, message on HUD)
3258 2) Arming check for minimum voltage (see ARMING_VOLT_MIN parameter)
3259 3) Landing Gear startup behaviour now configurable (see LGR_STARTUP parameter)
3260 4) Solo LED fix when using "boat" mode
3261 5) Intel Aero RTF gets one more I2C bus
3263 a) resolve barometer floating point exception when ground pressure set to be negative
3264 b) resolve freeze if SERVOx_FUNCTION is set above 80
3265 ------------------------------------------------------------------
3266 Copter 3.5.1 31-July-2017 / 3.5.1-rc1 24-July-2017
3268 1) fix to RC input corruption when using Spektrum DSMx with Pixracer
3269 ------------------------------------------------------------------
3270 Copter 3.5.0 17-July-2017 / 3.5.0-rc11 12-July-2017
3271 Changes from 3.5-rc10
3273 a) Re-enable auto detection of NMEA GPS (revert change from -rc9)
3274 b) Fix SBF race condition on start (this should resolve SBF GPS detection issues for some users)
3275 2) SF40c driver fix to ignore zero distances
3276 ------------------------------------------------------------------
3277 Copter 3.5.0-rc10 08-July-2017
3278 Changes from 3.5-rc9
3279 1) Intel Aero build and default parameter updates
3280 2) EKF final yaw reset lowered from 5m to 2.5m to speed up bad compass detection after takeoff
3281 ------------------------------------------------------------------
3282 Copter 3.5.0-rc9 03-July-2017
3283 Changes from 3.5-rc8
3284 1) AutoTune improvement when using position hold (twitches in body-frame instead of earth-frame)
3286 a) RTK GPS fix when large RTK correction messages are sent
3287 b) auto-detection for NMEA disabled (NMEA users must explicitly set GPS_TYPE to 5)
3289 a) fix bug preventing use of optical flow for terrain height estimation
3290 b) fix bug affecting accuracy of optical flow estimated height during climb/descent
3291 c) fix range beacon fusion bugs
3292 4) return accel filter (INS_ACCEL_FILT) to 20hz (some users were seeing oscillations at 10hz)
3293 ------------------------------------------------------------------
3294 Copter 3.5.0-rc8 15-Jun-2017
3295 Changes from 3.5-rc7
3297 a) add/fix tones and LED support
3298 b) resolve dataflash health reporting issue
3299 2) Allow flight controller to boot even if critical sensors fail (previously stopped at startup and displayed message people could rarely see)
3300 3) Minor enhancements:
3301 a) Landing Gear retracts/deploys only when pilot first moves switch (previously would always deploy on startup)
3302 b) BeagleBoneBlue supports external compass, OLED display
3304 a) increase pilot stick dead zones for roll, pitch and yaw (still slightly more narrow than AC3.4)
3305 b) increase default roll, pitch and yaw rate IMAX values to 0.5, reduce default yaw rate filter to 2.5hz
3306 c) reduce accel filter from 20hz to 10hz (smoothes throttle in AltHold)
3307 d) fix EKF declination fusion
3308 e) object avoidance fix to ignore old distance measurements and out-of-range distances from range finder
3309 f) fix poxyz west-east processing (it was backwards)
3310 ------------------------------------------------------------------
3311 Copter 3.5-rc7 25-May-2017
3312 Changes from 3.5-rc6
3313 1) Bug fixes and minor enhancements:
3314 a) fix OneShot ESC calibration and compass-mot calibration
3315 b) fix Navio2 and ErleBrain crashes caused by insufficient memory allocated to scheduler
3316 c) AutoTune with position hold only resets target position when roll and/or pitch sticks moved
3317 d) fix Acro, Sport trainer mode to stop attitude targets going beyond angle limits
3318 e) sanity check WPNAV_RADIUS is non-zero
3319 f) MarvelMind driver fixes (still a work-in-progress)
3320 g) Sanity check command when resuming mission in Auto
3321 ------------------------------------------------------------------
3322 Copter 3.5-rc6 15-May-2017
3323 Changes from 3.5-rc5
3324 1) Bug fixes and minor enhancements:
3325 a) ESC calibration fix when not using safety switch (was waiting for safety switch to be pushed)
3326 b) Parameter loading improvements (responds sooner after startup, counts parameters in separate thread)
3327 c) Pilot radio passthrough fix for tradheli, single copter, coax copter
3328 ------------------------------------------------------------------
3329 Copter 3.5-rc5 03-May-2017
3330 Changes from 3.5-rc4
3331 1) Intel Aero RTF support
3332 2) Smart battery fetches serial number, temperature and individual cell voltages
3333 3) Vehicle heads towards target point instead of next waypoint during straight line waypoint mission commands in AUTO
3334 4) Visual Odometry supported using VISION_POSITION_DELTA mavlink message
3335 5) Do-Set-Home sets EKF origin allowing user to specify vehicle starting position without GPS
3336 6) Object avoidance parameter (AVOID_MARGIN) allows configuring distance to maintain from objects
3337 7) Motor output can be duplicated to multiple channels
3338 8) IRLock can be connected to any I2C bus
3339 9) Piksi "Multi" GPS support
3340 10) Performance Improvements:
3341 a) inter-EKF scheduling cooperation (improves load balancing when using multiple EKFs)
3342 b) parameter requests from GCS processed asynchronously (resolves bad flight behaviour when fetching params in-flight)
3343 c) display performance improvements
3344 1) Bug fixes including:
3345 a) LSM303D (Pixhawk's backup IMU) timing fixes
3346 b) auxiliary PWM outputs update even when RC input stops
3347 c) dataflash log over mavlink fixes
3348 d) EKF recovery from severe errors
3349 e) reduce twitch when transitioning from spline to straight line waypoints in AUTO
3350 f) enable motors after initialisation completes (resolves some BLHeli ESC initialisation and calibration issues)
3351 ------------------------------------------------------------------
3352 Copter 3.5-rc4 08-Apr-2017
3353 Changes from 3.5-rc3
3354 1) Bug fixes including:
3355 a) Baro based altitude estimate fixes including limiting ground temperature to reasonable value
3356 b) Fix 0.6ms lag reduction
3357 c) Fix Invensense IMU driver temperature reading
3358 d) Fix semaphore take during interrupts that may have caused very occasional main loop rate issues
3359 e) Return Home if GCS asks for first (i.e. zero-ith) mission command (required for Solo)
3360 ------------------------------------------------------------------
3361 Copter 3.5-rc3 24-Mar-2017
3362 Changes from 3.5-rc2
3363 1) OLED Display fixes:
3364 a) can be connected to either I2C bus
3365 b) last character on line correctly cleared
3366 2) bug fix to detect SBUS failsafe on Pixracer
3367 3) bug fix to Gimbal servo reversing
3368 4) ensure WPNAV_LOIT_SPEED is non-zero to avoid divide-by-zero
3369 5) Fence pre-arm check failure messages clarified
3370 ------------------------------------------------------------------
3371 Copter 3.5-rc2 13-Mar-2017
3372 Changes from 3.5-rc1
3373 1) Improved dual GPS support including blending (set GPS_TYPE2=1, GPS_AUTO_SWITCH=2)
3374 2) AutoTune with position hold (enter AutoTune from Loiter or PosHold modes to enable light position hold)
3375 3) New boards/drivers:
3376 a) PixhawkMini support
3377 b) AUAV2.1 board support (for AUAV2.1 set BRD_TYPE to 20 to distinguish from PixhawkMini)
3378 c) Garmin LidarLiteV3 support
3379 d) Maxell Smart Battery support
3380 e) Invensense ICM-20602 IMU and ST L3GD20H gyro drivers added
3381 4) IMU to Motor lag reduced by 0.6ms
3382 5) Object Avoidance:
3383 a) support TeraRanger Tower sensor
3384 b) support using normal (1-dimensional lidar/sonar)
3385 6) Minor changes/enhancements:
3386 a) add MOT_SPOOL_TIME parameter to allow users to control spool-up time of motors
3387 b) remove Solo gimbal from -v2 because of 1MB Flash limit on many Pixhawk1s
3388 c) altitude check for Guided mode takeoff (must be at least 1m)
3389 d) auxiliary switch to arm/disarm vehicle (set CH7_OPT to 41)
3390 e) change battery alarm tone to reduce impact on IMU
3391 f) add battery monitor health reporting
3392 g) support DO-FENCE-ENABLE mission command to enable/disable fence during missions
3394 a) OLED Display clears messages after 10seconds
3395 b) Servo Gimbal output range fix (could attempt to push servos beyond their limits)
3397 d) fix dataflash log time (was always appearing as 1970)
3398 ------------------------------------------------------------------
3399 Copter 3.5-rc1 28-Jan-2017
3401 1) Multicopter firmware consolidated into single binary, users must set FRAME_CLASS parameter (1:Quad, 2:Hexa, 3:Octa, 4:OctaQuad, 5:Y6, 7:Tri)
3402 2) PixRacer specific items:
3403 a) board LEDs supported
3404 b) ESC calibration start problem resolved (was sometimes not detecting high throttle from pilot)
3405 3) Relaxed compass calibration and compass consistency checks
3406 4) Sensor and Optional Hardware Improvements:
3407 a) IMU sampling rate for MPU9250, ICM20608 IMUs to 8kHz for improved vibration resistance (Pixracer, Pixhawk2)
3408 b) Onboard Display (http://ardupilot.org/copter/docs/common-display-onboard.html)
3409 c) Here+ RTK GPS (UBlox M8P RTK) support
3410 d) LightWare I2C drivers usable on Copter (thanks to in-tree drivers below)
3411 e) MaxBotix sonar with serial interface now supported
3412 f) Bebop optical flow (but sonar not yet operational making this feature currently impossible to use)
3413 5) Precision Loiter using IRLock sensor (set CH7_OPT to 39)
3414 6) Delivery improvements:
3415 a) Servo gripper (http://ardupilot.org/copter/docs/common-gripper-servo.html)
3416 b) Package_Place mission command (drops package without vehicle landing)
3417 7) Pozyx support for Non-GPS flight (http://ardupilot.org/copter/docs/common-pozyx.html)
3418 8) EKF improvements:
3419 a) improved blending of optical flow and GPS
3420 b) EKF3 added in ride-along. Enable by setting EK3_ENABLE=1
3421 c) improvements when using range finder as primary height reference
3422 9) Object Avoidance improvements (http://ardupilot.org/dev/docs/code-overview-object-avoidance.html):
3424 b) accepts MAVLink distance-sensor messages
3425 c) simple avoidance in AltHold mode
3426 10) Other improvements:
3427 a) pre-arm check that logging is working
3428 b) better reporting of battery failsafe to ground stations
3429 c) reduced minimum waypoint speed to 20cm/s
3430 d) Flight time recorder (http://ardupilot.org/copter/docs/common-flight-time-recorder.html)
3431 e) UBlox GPS baud rate fix (was occasionally selecting wrong rate)
3432 11) Technical improvements (users may not see a functional change):
3433 a) in-tree drivers lead to improved sharing of drivers with Linux boards
3434 b) copter arming checks consolidated with other vehicles
3435 ------------------------------------------------------------------
3436 Copter 3.4.6 15-Mar-2017
3438 1) ensure WPNAV_LOIT_SPEED is non-zero to avoid divide-by-zero
3439 ------------------------------------------------------------------
3440 Copter 3.4.5 11-Feb-2017
3442 1) Bug fix to Guided mode that could lead to crash after take-off completes if MOT_THST_HOVER too high
3443 ------------------------------------------------------------------
3444 Copter 3.4.4 06-Jan-2017 / Copter 3.4.4-rc1 21-Dec-2016
3446 1) Bug Fixes / Minor Enhancements:
3447 a) prevent unwanted EKF core switching at startup
3448 b) helicopter prevented from taking off in position hold mode before rotors at full speed
3449 c) battery resistance calculations fixed
3450 d) avoid unnecessary parameter change notifications to ground station
3451 e) default power module definitions for Navio boards
3452 f) on-board compass calibration capability bit added (tells ground stations that onboard calibration is supported)
3453 ------------------------------------------------------------------
3454 Copter 3.4.3 08-Dec-2016 / Copter 3.4.3-rc1 01-Dec-2016
3457 a) reduce unnecessary EKF core switching and fix position reset
3458 b) attitude control does not limit rate if ATC_ACCEL_MAX is zero
3459 c) ignore arm command from GCS if already armed
3460 d) set land-complete to false during auto takeoff
3461 e) onboard compass calibration memory init fix that could lead to failure to complete
3462 2) Minor Improvements:
3463 a) LeddarOne driver robustness improvements
3464 b) allow MOT_THR_MIX_MAX to be as high as 2.0
3465 c) uavcan bus settle time increased to 2sec
3466 d) helicopters do not hold position during auto takeoff until rotor is at full speed
3467 ------------------------------------------------------------------
3468 Copter 3.4.2 16-Nov-2016 / Copter 3.4.2-rc1/rc2 07-Nov-2016
3470 1) Minor Improvements:
3471 a) ACRO_Y_EXPO applies to all flight modes (but is defaulted to zero)
3472 b) Autotune timeout increased (helps with large copters)
3473 c) AltHold filter applied to P (was previously only for D)
3474 d) arming check for compass health (was previously only a pre-arm check)
3476 a) compass calibration (onboard) fix to return completion status
3477 b) LeddarOne driver busy-wait fix
3478 c) SBF GPS altitude and accuracy reporting fix
3479 d) MAV GPS uses existing configured baud rate instead of auto detecting
3480 ------------------------------------------------------------------
3481 Copter 3.4.1 01-Nov-2016
3483 1) Pixracer PPM RC input fix
3484 ------------------------------------------------------------------
3485 Copter 3.4.0 31-Oct-2016
3486 Changes from 3.4.0-rc7
3487 1) Disabled LeddarOne driver (will be fixed in AC3.4.1 within a couple of weeks)
3488 ------------------------------------------------------------------
3489 Copter 3.4.0-rc7 25-Oct-2016
3490 Changes from 3.4.0-rc6
3491 1) Bug fixes, minor improvements:
3492 a) more DSM binding fixes for pixracer
3493 b) allow non-motor channels to move before safety switch is pressed
3494 c) fix Bebop motor order
3495 d) fix MAVLink system id for first few messages
3496 e) fix throw mode throttle while rotating to level
3497 ------------------------------------------------------------------
3498 Copter 3.4.0-rc6 15-Oct-2016
3499 Changes from 3.4.0-rc5
3500 1) Object Avoidance with SF40c 360 lidar
3501 2) ACRO_Y_EXPO parameter allows exponential yaw in ACRO mode (slow yaw at mid stick but fast response at full stick)
3502 3) ACRO_THR_MID parameter allows custom mid throttle for ACRO mode
3503 4) Precision Landing reliability and accuracy improvements using mini EKF and adding IRLock lens distortion correction
3504 5) Bug fixes, minor improvements:
3505 a) fix DSM binding on Pixracer
3506 b) resolved position jump caused by EKF core change (also added logging and reporting to GCS)
3507 c) EKF failsafe while in LAND triggers non-GPS LAND
3508 d) small throttle jump removed when switching between AltHold, Loiter
3510 a) EKF falls back to optical flow if GPS fails
3511 b) pre-arm check that GPS configuration has completed
3512 ------------------------------------------------------------------
3513 Copter 3.4.0-rc5 14-Sep-2016
3514 Changes from 3.4.0-rc4
3515 1) Sprayer enabled by default
3516 2) Bug fixes, minor improvements:
3517 a) EKF fix for yaw angle reset fix when switching between cores (AC3.4 runs multiple EKFs simultaneously)
3518 b) EKF fixes when fusing range finder into height estimate
3519 c) pixracer clone board IMU hardware issue work around
3520 d) dataflash time-going-backwards fix
3521 e) fix rate PID conversion (AC3.3->AC3.4) for single, coax and tricopters
3522 ------------------------------------------------------------------
3523 Copter 3.4.0-rc4 06-Sep-2016
3524 Changes from 3.4.0-rc3
3525 1) Intel Aero flight controller support (not Intel Aero RTF, that was done in a later release)
3526 2) Bug fixes, minor improvements:
3527 a) resolve unlikely endless-climb in AltHold, Loiter by ensuring Z-axis accelerometer IMAX can always overpower hover throttle
3528 b) fix auto build issue that could lead to parameter corruption
3529 c) fix EKF2 gyro estimation error when switching between IMUs
3530 d) sanity check MOT_THST_MIX_MIN, MAX parameters
3531 e) increase likelihood that parachute will release by reducing counter instead of resetting counter if vehicle becomes temporarily upright
3532 ------------------------------------------------------------------
3533 Copter 3.4.0-rc3 31-Aug-2016
3534 Changes from 3.4.0-rc2
3535 1) Landing detector improvements:
3536 a) checks that descent rate is less than 1m/s (avoids disarms when vehicle is obviously still descending)
3537 b) tradheli fix for landing detector
3538 2) WP_NAVALT_MIN parameter limits maximum lean angle when vehicle is below the specified alt while taking off or landing. Only applies in LAND mode, final stage of RTL and during take-off in AUTO mode
3539 3) GND_EFFECT_COMP parameter allows turning on EKF compensation for ground effect during take-off and landing
3540 4) Advanced Failsafe for use in OutBack challenge (see http://ardupilot.org/plane/docs/advanced-failsafe-configuration.html)
3541 5) AutoTune minor improvement to reduce step size on vehicles with very low hover throttle (i.e. high power-to-weight ratio)
3542 6) Bug fixes, minor improvement:
3543 a) OneShot ESC calibration fix
3544 b) LAND_SPEED_HIGH allows specifying vertical descent speed separate from WPNAV_SPEED_DN during the initial descent in LAND mode (and final stage of RTL)
3545 c) improved USB driver reliability for windows users (NuttX change)
3546 d) report dataflash logging health to ground station
3547 e) Guided mode accepts yaw rate from SET_ATTITUDE_TARGET message
3548 ------------------------------------------------------------------
3549 Copter 3.4.0-rc2 08-Aug-2016
3550 Changes from 3.4.0-rc1
3551 1) ADSB based avoidance of manned aircraft
3552 2) Polygon fence (works seamlessly with circular and altitude fences)
3553 3) Throttle related changes:
3554 a) motors speed feedback to pilot while landed - motors only spin up to minimum throttle as throttle stick is brought to mid (previously spun up to 25%)
3555 b) MOT_HOVER_LEARN allows MOT_THST_HOVER to be learned in flight
3556 c) THR_MIN becomes MOT_SPIN_MIN
3557 d) THR_MID becomes MOT_THST_HOVER
3558 4) Precision landing:
3559 a) control improved by reducing lag from sensor and correcting math errors
3560 b) descent rate slows to allow time to correct horizontal position error
3562 a) velocity controller accelerates/decelerates smoothly to target
3563 b) Guided_NoGPS flight mode added to allow companion computer control in non-GPS environments
3564 c) stop at fence if using velocity controller, reject points outside fence if using position controller
3566 a) THROW_NEXTMODE parameter allows copter to switch to Auto, Guided, RTL, Land or Brake after throw is complete
3567 b) Throw mode fixes so motors reliably start
3568 7) Attitude controller:
3569 a) use Quaternions instead of Euler angles
3570 b) ATC_ANG_LIM_TC allows controlling rate at which lean angles are limited to preserve altitude in AltHold, Loiter
3571 8) EKF can use range finder as primary height source if EKF2_RNG_USE_HGT parameter is set to 70
3573 a) AutoTune fix so that gains don't fall too low
3574 b) Rally points with altitudes no longer cause vehicle to climb above fence during RTL
3575 c) various EKF fixes including bug in initialisation of declination co-variances
3576 d) SingleCopter, CoaxCopter flag gains
3577 10) Small enhancements:
3578 a) Rally points outside fence are ignored
3579 b) AP_Button support added to allow ground station to see if user has pushed a button on the flight controller
3580 c) support for PLAY_TUNE and LED_CONTROL mavlink messages to cause vehicle to play tune or change colour of LED
3581 d) support for GPS_INPUT mavlink message to allow supplying vehicle position data from other sources
3582 e) NAV_DELAY mission command to delay start of mission (or individual command) until a specified absolute time
3583 e) TKOFF_NAV_ALT param allows take-off with no horizontal position hold until vehicle reaches specified altitude (intended mostly for helicopters)
3584 f) SCHED_LOOP_RATE param allows slowing main loop rate from default of 400 (intended for developers only)
3585 11) Safety (in addition to Fence improvements above):
3586 a) Motors begin spinning 2 seconds after arming (previously motors spun immediately)
3587 ------------------------------------------------------------------
3588 Copter 3.4.0-rc1 28-May-2016
3590 1) EKF2 allows "boat mode" (attitude initialisation without gyro calibration)
3592 3) Terrain following:
3593 a) support terrain altitudes during missions using GCS's map data or rangefinder (i.e. Lidar)
3594 b) LightWare range finder driver fixes (I2C works)
3595 c) Bebop sonar support
3596 4) Precision Landing using IRLock sensor
3597 5) Attitude controller re-organisation (all parameter changes automatically moved and scales adjusted)
3598 a) RATE_ parameters become ATC_RAT_ (i.e. RATE_RLL_P becomes ATC_RAT_RLL_P)
3599 b) Rate Roll, Pitch, Yaw P, D are reduced by 10% for X, V, H frames, increased by 27% for all other frames
3600 c) STB_ parameters becomes ATC_ANG_ (i.e. STB_RLL_P becomes ATC_ANG_RLL_P)
3601 6) Motors library improvements:
3602 a) support OneShot ESCs (set MOT_PWM_TYPE to 0 for Normal, 1 for OneShot or 2 for OneShot125)
3603 b) TriCopter compensates for tail servo angle
3604 c) SingleCopter, CoaxCopter adjust control surfaces based on throttle output
3605 d) MOT_PWM_MIN, MAX allow specifying output ranges to ESCs which are difference from throttle input channel (i.e. RC3)
3606 e) TradHeli servo objects moved into heli class (HSV_ parameters become H_SV_)
3607 7) uAvionix Ping sensor support (ADS-B vehicles appear on GCS, avoidance will come in future release)
3609 a) warning if GPS update rate is slow (under 5hz, does not stop arming)
3610 ------------------------------------------------------------------
3611 Copter 3.3.3 24-Feb-2016 / 3.3.3-rc2 27-Jan-2016
3612 Changes from 3.3.3-rc1
3613 1) bug fix to Guided mode's velocity controller to run at 400hz
3614 2) bug fix to MAVLink routing to allow camera messages to reach MAVLink enabled cameras and gimbals (including SToRM32)
3615 ------------------------------------------------------------------
3616 Copter 3.3.3-rc1 4-Jan-2016
3618 1) Restrict mode changes in helicopter when rotor is not at speed
3619 2) add ATC_ANGLE_BOOST param to allow disabling angle boost for all flight modes
3620 3) add LightWare range finder support
3621 ------------------------------------------------------------------
3622 Copter 3.3.2 01-Dec-2015 / 3.3.2-rc2 18-Nov-2015
3623 Changes from 3.3.2-rc1
3624 1) Bug fix for desired climb rate initialisation that could lead to drop when entering AltHold, Loiter, PosHold
3625 2) Fix to hard landings when WPNAV_SPEED_DN set high in RTL, Auto (resolved by using non-feedforward alt hold)
3626 3) Reduce Bad AHRS by filtering innovations
3627 4) Allow arming without GPS if using Optical Flow
3628 5) Smoother throttle output in Guided mode's velocity control (z-axis now 400hz)
3629 ------------------------------------------------------------------
3630 Copter 3.3.2-rc1 4-Nov-2015
3632 1) Helicopter Improvements:
3633 a) Fix Arming race condition
3634 b) Fix servos to move after arming in Stabilize and Acro
3635 c) Implement Pirouette Compensation
3636 d) Add Rate I-Leak-Min functionality
3637 e) Add new Stab Collective and Acro Expo Col functions
3638 f) Add circular swashplate limits (Cyclic Ring)
3639 g) Add new H_SV_Man functions
3640 h) Add Hover Roll Trim function
3641 i) Add Engine Run Enable Aux Channel function
3642 j) Add servo boot test function
3643 h) Add Disarm Delay parameter
3644 ------------------------------------------------------------------
3645 Copter 3.3.1 26-Oct-2015 / 3.3.1-rc1 20-Oct-2015
3647 1) Bug fix to prevent potential crash if Follow-Me is used after an aborted takeoff
3648 2) compiler upgraded to 4.9.3 (runs slightly faster than 4.7.2 which was used previously)
3649 ------------------------------------------------------------------
3650 Copter 3.3 29-Sep-2015 / 3.3-rc12 22-Sep-2015
3651 Changes from 3.3-rc11
3652 1) EKF recovers from pre-arm "Compass variance" failure if compasses are consistent
3653 ------------------------------------------------------------------
3654 Copter 3.3-rc11 10-Sep-2015
3655 Changes from 3.3-rc10
3656 1) PreArm "Need 3D Fix" message replaced with detailed reason from EKF
3657 ------------------------------------------------------------------
3658 Copter 3.3-rc10 28-Aug-2015
3659 Changes from 3.3-rc9
3660 1) EKF improvements:
3661 a) simpler optical flow takeoff check
3662 2) Bug Fixes/Minor enhancements:
3663 a) fix INS3_USE parameter eeprom location
3664 b) fix SToRM32 serial protocol driver to work with recent versions
3665 c) increase motor pwm->thrust conversion (aka MOT_THST_EXPO) to 0.65 (was 0.50)
3666 d) Firmware version sent to GCS in AUTOPILOT_VERSION message
3668 a) pre-arm check of compass variance if arming in Loiter, PosHold, Guided
3669 b) always check GPS before arming in Loiter (previously could be disabled if ARMING_CHECK=0)
3670 c) sanity check locations received from GCS for follow-me, do-set-home, do-set-ROI
3671 d) fix optical flow failsafe (was not always triggering LAND when optical flow failed)
3672 e) failsafe RTL vs LAND decision based on hardcoded 5m from home check (previously used WPNAV_RADIUS parameter)
3673 ------------------------------------------------------------------
3674 Copter 3.3-rc9 19-Aug-2015
3675 Changes from 3.3-rc8
3676 1) EKF improvements:
3677 a) IMU weighting based on vibration levels (previously used accel clipping)
3678 b) fix blended acceleration (used for altitude control) in cases where first IMU fails
3679 c) ensure unhealthy barometer values are never consumed
3680 2) TradHeli: remove acceleration feed forward
3682 a) check accel, gyro and baro are healthy when arming (previously was only checked pre-arm)
3683 b) Guided mode velocity controller timeout (vehicle stops) after 3 seconds with no update from GCS
3684 4) Minor enhancements:
3685 a) fix for AUAV board's usb-connected detection
3686 b) add Lidar-Lite-V2 support
3687 c) MOT_THR_MIN_MAX param added to control prioritisation of throttle vs attitude during dynamic flight
3688 d) RALLY_INCL_HOME param allows always including home when using rally points
3689 e) DO_FLIGHT_TERMINATION message from GCS acts as kill switch
3691 a) fix to ensure motors start slowly on 2nd spin-up
3692 b) fix RTL_CLIMB_MIN feature (vehicle climbed too high above home)
3693 ------------------------------------------------------------------
3694 Copter 3.3-rc8 25-Jul-2015
3695 Changes from 3.3-rc7
3696 1) EKF improvements:
3697 a) de-weight accelerometers that are clipping to improve resistance to high vibration
3698 b) fix EKF to use primary compass instead of first compass (normally the same)
3699 2) UBlox "HDOP" corrected to actually be hdop (was pdop) which leads to 40% lower value reported
3701 a) Motors library split into "Multicopter" and "TradHeli" so TradHeli does not see multicopter parameters
3702 b) Heading target reset during landing to reduce vehicle fighting to rotate while on the ground
3703 4) Minor enhancements:
3704 a) SToRM32 gimbal can be connected to any serial port
3705 b) log when baro, compass become unhealthy
3706 c) ESC_CALIBRATION parameter can be set to "9" to disable esc calibration startup check
3707 d) Circle rate adjustment with ch6 takes effect immediately
3708 e) log home and origin
3709 f) pre-arm check of battery voltage and fence
3710 g) RTL_CLIMB_MIN parameter forces vehicle to climb at least this many cm when RTL is engaged (default is zero)
3712 a) fix THR_MIN being incorrectly scaled as pwm value during low-throttle check
3713 b) fence distance calculated from home (was incorrectly calculated from ekf-origin)
3714 c) When flying with joystick and joystick is disconnected, control returns immediately to regular TX
3715 d) dataflash's ATT yaw fixed to report heading as 0 ~ 360
3716 e) fix to mission's first command being run multiple times during mission if it was a do-command
3717 f) ekf-check is enabled only after ekf-origin is set (stops red-yellow flashing led when flying without GPS lock)
3718 g) fix initialisation of mount's mode
3719 h) start-up logging so parameters only logged once, mission always written
3722 ------------------------------------------------------------------
3723 Copter 3.3-rc7 28-Jun-2015
3724 Changes from 3.3-rc6
3725 1) reduce EKF gyro bias uncertainty that caused attitude estimate errors
3726 2) force 400hz IMU logging on (temporary for release candidate testing)
3727 ------------------------------------------------------------------
3728 Copter 3.3-rc6 25-Jun-2015
3729 Changes from 3.3-rc5
3730 1) EKF related changes:
3731 a) reset altitude even when arming without GPS lock
3732 b) fix yaw twitch caused by EKF heading estimate reset
3733 c) fix IMU time scaling bug that caused height estimate to deviate from the baro
3734 2) AutoTune improvements:
3735 a) improved yaw tuning by increasing yaw step magnitude
3736 b) added logging of accelerations
3737 c) improvements to step tests
3738 3) Improved crash check:
3739 a) allow triggering even if pilot doesn't move throttle to zero
3740 b) easier triggering by removing baro check and using angle error instead of absolute tilt angle
3742 a) swash moves while landed in AltHold mode
3743 b) improvements to land detector
3744 c) fixed RSC Runup Time calculation
3745 d) Rate FF Low-pass Filter changed from 5Hz to 10Hz, more responsive
3746 5) support Linux builds for NAVIO+ and Erle-Brain (http://firmware.diydrones.com/Copter/beta/)
3747 6) Other improvements / Bug Fixes:
3748 a) sonar pre-arm checks only enforced if using optical flow
3749 b) fix EKF failsafe bug that would not allow recovery
3750 c) full rate IMU logging for improved vibration analysis (set LOG_BITMASK to All+FullIMU)
3751 d) new VIBE dataflash message records vibration levels
3752 e) default MNT_TYPE to "1" if servo gimbal rc outputs were defined
3753 f) RC_FEEL defaults to medium
3754 g) addition of SToRM32 serial support (supports mount angle feedback to GCS)
3755 h) new tricopter's tail servo parameters (MOT_YAW_SV_MIN, MAX, TRIM, REV)
3756 ------------------------------------------------------------------
3757 Copter 3.3-rc5 23-May-2015
3758 Changes from 3.3-rc4
3759 1) Fix AHRS bad gyro health message caused by timing jitter and log IMU health
3761 a) better default rate PIDs
3762 b) Collective pitch output now operates even when disarmed
3763 3) Small changes/fixes:
3764 a) GCS can use MAV_CMD_MISSION_START to start mission in AUTO even without pilot raising throttle
3765 b) GCS can force disarming even in flight by setting param2 to "21196"
3766 c) rc-override timeout reduced from 2 seconds to 1 (applies when using GCS joysticks to control vehicle)
3767 d) do-set-speed fix so it takes effect immediately during missions
3768 e) GCS failsafe disarms vehicle if already landed (previously it could RTL)
3769 ------------------------------------------------------------------
3770 Copter 3.3-rc4 17-May-2015
3771 Changes from 3.3-rc3
3773 a) save roll, pitch, yaw rate acceleration limits along with gains
3774 b) more conservative gains
3775 2) Roll, pitch rate control feed-forward now on by default (set ATC_RATE_FF_ENAB to "0" to disable)
3776 3) Serial ports increased to maximum of 4 (set SERIALX_PROTOCOL to 1)
3777 4) MOT_THR_MIX_MIN param to control minimum throttle vs attitude during landing (higher = more attitude control but bumpier landing)
3778 5) EKF fixes/improvements
3779 a) prevent yaw errors during fast spins
3780 b) bug fix preventing external selection of optical flow mode
3782 a) servo/relay held open for 2sec when deploying (was 1sec)
3783 b) fix altitude check to be alt-above-home (was alt-above ekf origin which could be slightly different)
3785 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.
3786 b) H_COLYAW param can be float
3787 8) Small Improvements / Bug Fixes:
3788 a) reduced spline overshoot after very long track followed by very short track
3789 b) log entire mission to dataflash whenever it's uploaded
3790 c) altitude reported if vehicle takes off before GPS lock
3791 d) high speed logging of IMU
3792 e) STOP flight mode renamed to BRAKE and aux switch option added
3793 ------------------------------------------------------------------
3794 Copter 3.3-rc2/rc3 02-May-2015
3795 Changes from 3.3-rc1
3796 1) AutoTune reliability fixes (improved filtering to reduce noise interference)
3797 2) Optical flow improvements:
3798 a) Range Finder pre-arm check - lift vehicle between 50cm ~ 2m before arming. Can be disabled by setting ARMING_CHECK to "Skip Params/Sonar"
3799 b) Vehicle altitude limited to range finder altitude when optical flow is enabled
3800 3) AltHold & Take-off changes:
3801 a) feed-forward controller and jerk limiting should result in slightly snappier performance and smoother take-offs
3802 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)
3803 c) PILOT_THR_FILT allows enforcing smoother throttle response in manual flight modes (defaults to 0 = off)
3804 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
3805 e) GCS can initiate takeoff even in Loiter, AltHold, PosHold and sport by issuing NAV_TAKEOFF mavlink command
3806 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.
3807 5) Aux channel features:
3808 a) Emergency Stop - stops all motors immediately and disarms in 5 seconds
3809 b) Motor Interlock - opposite of Emergency Stop, must be on to allow motors to spin motors, must be off to arm
3810 6) Air pressure gain scaling (of roll, pitch, yaw) should mostly remove need to re-tune when flying at very different altitudes
3811 7) landing detector simplified to only check vehicle is not accelerating & motors have hit their lower limit
3812 8) Loiter tuning params to remove "freight train" stops:
3813 raising WPNAV_LOIT_MAXA makes vehicle start and stop faster
3814 raising WPNAV_LOIT_MINA makes vehicle stop more quickly when sticks centered
3816 a) faster EKF startup
3817 b) Camera control messages sent via MAVLink to smart cameras. Allow control of camera zoom for upcoming IntelEdison/Sony QX1 camera control board
3818 c) Lost Copter Alarm can be triggered by holding throttle down, roll right, pitch back
3820 a) Home position set to latest arm position (it was being set to previous disarm location or first GPS lock position)
3821 b) bug fix to mission Jump to command zero
3822 ------------------------------------------------------------------
3823 Copter 3.3-rc1 11-Apr-2015
3825 1) Only support fast CPUs boards (Pixhawk, VRBrain, etc) and drop support for APM1, APM2 (sorry!)
3827 3) Smooth throttle curve which should reduce wobbles during fast climbs and descents
3828 4) ch7/ch8 aux switches expanded to ch9 ~ ch12 (see CH9_OPT ~ CH12_OPT params)
3829 5) PX4Flow support in Loiter mode (still somewhat experimental)
3831 a) EKF on by default replacing DCM/InertialNav which should improve robustness
3832 b) increased accelerometer range from 8G to 16G to reduce chance of climb due to high vibrations (requires accel calibration)
3833 7) Landing features:
3834 a) improved landing on slopes
3835 b) retractable landing gear (see LGR_ parameters)
3836 8) Camera Gimbal features:
3837 a) SToRM32 gimbal support (using MAVLink)
3838 b) AlexMos gimbal support (using AlexMos serial interface)
3839 c) do-mount-control commands supported in missions (allows controlling gimbal angle in missions)
3840 9) Battery related features:
3841 a) PID scaling for battery voltage (disabled by default, see MOT_THST_BAT_ parameters)
3842 b) smart battery support
3844 a) support do-set-home command (allows return-to-me and locked home position once GCS enhancements are completed)
3845 b) performance improvements for Pixhawk reduce CPU load from 80% to 15%
3846 c) firmware string name changed from ArduCopter to APM:Copter
3847 ------------------------------------------------------------------
3848 ArduCopter 3.2.1 11-Feb-2015 / 3.2.1-rc2 30-Jan-2015
3849 Changes from 3.2.1-rc1
3851 a) prevent infinite loop with linked jump commands
3852 b) Pixhawk memory corruption fix when connecting via USB
3853 c) vehicle stops at fence altitude limit in Loiter, AltHold, PosHold
3854 d) protect against multiple arming messages from GCS causing silent gyro calibration failure
3855 ------------------------------------------------------------------
3856 ArduCopter 3.2.1-rc1 08-Jan-2015
3859 a) reduced twitch when passing Spline waypoints
3860 b) Faster disarm after landing in Auto, Land, RTL
3861 c) Pixhawk LED turns green before arming only after GPS HDOP falls below 2.3 (only in flight modes requiring GPS)
3863 a) Add desired descent rate check to reduce chance of false-positive on landing check
3864 b) improved MPU6k health monitoring and re-configuration in case of in-flight failure
3865 c) Rally point distance check reduced to 300m (reduces chance of RTL to far away forgotten Rally point)
3866 d) auto-disarm if vehicle is landed for 15seconds even in Auto, Guided, RTL, Circle
3867 e) fence breach while vehicle is landed causes vehicle to disarm (previously did RTL)
3869 a) Check flight mode even when arming from GCS (previously it was possible to arm in RTL mode if arming was initiated from GCS)
3870 b) Send vehicle target destination in RTL, Guided (allows GCS to show where vehicle is flying to in these modes)
3871 c) PosHold wind compensation fix
3872 ------------------------------------------------------------------
3873 ArduCopter 3.2 07-Nov2014 / 3.2-rc14 31-Oct-2014
3874 Changes from 3.2-rc13
3876 a) fail to arm if second gyro calibration fails (can be disabled with ARMING_CHECK)
3878 a) DCM-check to require one continuous second of bad heading before triggering LAND
3879 b) I2C bug that could lead to Pixhawk freezing up if I2C bus is noisy
3880 c) reset DCM and EKF gyro bias estimates after gyro calibration (DCM heading could drift after takeoff due to sudden change in gyro values)
3881 d) use primary GPS for LED status (instead of always using first GPS)
3882 ------------------------------------------------------------------
3883 ArduCopter 3.2-rc13 23-Oct-2014
3884 Changes from 3.2-rc12
3885 1) DCM check triggers LAND if yaw disagrees with GPS by > 60deg (configure with DCM_CHECK_THRESH param) and in Loiter, PosHold, Auto, etc
3887 a) landing detector checks baro climbrate between -1.5 ~ +1.5 m/s
3888 b) sanity check AHRS_RP_P and AHRS_YAW_P are never less than 0.05
3889 c) check set-mode requests from GCS are for this vehicle
3891 a) fix ch6 tuning of wp-speed (was getting stuck at zero)
3892 b) parachute servo set to off position on startup
3893 c) Auto Takeoff timing bug fix that could cause severe lean on takeoff
3894 d) timer fix for "slow start" of motors on Pixhawk (timer was incorrectly based on 100hz APM2 main loop speed)
3895 4) reduced number of relays from 4 to 2 (saves memory and flash required on APM boards)
3896 5) reduced number of range finders from 2 to 1 (saves memory and flash on APM boards)
3897 6) allow logging from startup when LOG_BITMASK set to "All+DisarmedLogging"
3898 ------------------------------------------------------------------
3899 ArduCopter 3.2-rc12 10-Oct-2014
3900 Changes from 3.2-rc11
3901 1) disable sonar on APM1 and TradHeli (APM1 & APM2) to allow code to fit
3902 2) Add pre-arm and health check that gyro calibration succeeded
3903 3) Bug fix to EKF reporting invalid position and velocity when switched on in flight with Ch7/Ch8 switch
3904 ------------------------------------------------------------------
3905 ArduCopter 3.2-rc11 06-Oct-2014
3906 Changes from 3.2-rc10
3907 1) reduce lean on take-off in Auto by resetting horizontal position targets
3908 2) TradHeli landing check ignores overall throttle output
3909 3) reduce AHRS bad messages by delaying 20sec after init to allow EKF to settle (Pixhawk only)
3911 a) fix THR_MIN scaling issue that could cause landing-detector to fail to detect landing when ch3 min~max > 1000 pwm
3912 b) fix Mediatek GPS configuration so update rate is set correctly to 5hz
3913 c) fix to Condition-Yaw mission command to support relative angles
3914 d) EKF bug fixes when recovering from GPS glitches (affects only Pixhawks using EKF)
3915 ------------------------------------------------------------------
3916 ArduCopter 3.2-rc10 24-Sep-2014
3917 Changes from 3.2-rc9
3918 1) two-stage land-detector to reduce motor run-up when landing in Loiter, PosHold, RTL, Auto
3919 2) Allow passthrough from input to output of channels 9 ~ 14 (thanks Emile!)
3920 3) Add 4hz filter to vertical velocity error during AltHold
3922 a) increase Alt Disparity pre-arm check threshold to 2m (was 1m)
3923 b) reset battery failsafe after disarming/arming (thanks AndKe!)
3924 c) EKF only apply centrifugal corrections when GPS has at least 6 satellites (Pixhawk with EKF enabled only)
3926 a) to default compass devid to zero when no compass connected
3927 b) reduce motor run-up while landing in RTL
3928 ------------------------------------------------------------------
3929 ArduCopter 3.2-rc9 11-Sep-2014
3930 Changes from 3.2-rc8
3931 1) FRAM bug fix that could stop Mission or Parameter changes from being saved (Pixhawk, VRBrain only)
3932 ------------------------------------------------------------------
3933 ArduCopter 3.2-rc8 11-Sep-2014
3934 Changes from 3.2-rc7
3935 1) EKF reduced ripple to resolve copter motor pulsing
3936 2) Default Param changes:
3937 a) AltHold Rate P reduced from 6 to 5
3938 b) AltHold Accel P reduced from 0.75 to 0.5, I from 1.5 to 1.0
3939 c) EKF check threshold increased from 0.6 to 0.8 to reduce false positives
3940 3) sensor health flags sent to GCS only after initialisation to remove false alerts
3941 4) suppress bad terrain data alerts
3943 a)PX4 dataflash RAM usage reduced to 8k so it works again
3944 ------------------------------------------------------------------
3945 ArduCopter 3.2-rc7 04-Sep-2014
3946 Changes from 3.2-rc6
3948 a) Landing check made more strict (climb rate requirement reduced to 30cm/s, overall throttle < 25%, rotation < 20deg/sec)
3949 b) pre-arm check that accels are consistent (Pixhawk only, must be within 1m/sec/sec of each other)
3950 c) pre-arm check that gyros are consistent (Pixhawk only, must be within 20deg/sec of each other)
3951 d) report health of all accels and gyros (not just primary) to ground station
3952 ------------------------------------------------------------------
3953 ArduCopter 3.2-rc6 31-Aug-2014
3954 Changes from 3.2-rc5
3955 1) Spline twitch when passing through a waypoint largely resolved
3956 2) THR_DZ param added to allow user configuration of throttle deadzone during AltHold, Loiter, PosHold
3957 3) Landing check made more strict (climb rate must be -40~40cm/s for 1 full second)
3958 4) LAND_REPOSITION param default set to 1
3959 5) TradHeli with flybar passes through pilot inputs directly to swash when in ACRO mode
3961 a) EKF check disabled when using inertial nav (caused too many false positives)
3962 b) pre-arm check of internal vs external compass direction (must be within 45deg of each other)
3964 a) resolve NaN in angle targets when vehicle hits gimbal lock in ACRO mode
3965 b) resolve GPS driver buffer overflow that could lead to missed GPS messages on Pixhawk/PX4 boards
3966 c) resolve false "compass not calibrated" warnings on Pixhawk/PX4 caused by missing device id initialisation
3967 ------------------------------------------------------------------
3968 ArduCopter 3.2-rc5 15-Aug-2014
3969 Changes from 3.2-rc4
3970 1) Pixhawk's max num waypoints increased to 718
3971 2) Smoother take-off in AltHold, Loiter, PosHold (including removing initial 20cm jump when taking off)
3972 3) ACRO mode roll, pitch, yaw EXPO added for faster rotation when sticks are at extremes (see ACRO_EXPO parameter)
3973 4) ch7/ch8 relay option replaces ch6 option (ch6 is reserved for tuning not switching things on/off)
3975 a) Baro glitch check relaxed to 5m distance, 15m/s/s max acceleration
3976 b) EKF/INav check relaxed to 80cm/s/s acceleration correct (default remains as 0.6 but this now means 80cm/s/s)
3977 c) When GPS or Baro glitch clears, the inertial nav velocities are *not* reset reducing chance of sudden vehicle lean
3978 d) Baro altitude calculation checked for divide-by-zero and infinity
3980 a) AltHold jump bug fixed (altitude target reset when landed)
3981 b) Rally point bug fix so it does not climb excessively before flying to rally point
3982 c) body-frame rate controller z-axis bug fix (fast rotation in z-axis would cause wobble in roll, pitch)
3983 ------------------------------------------------------------------
3984 ArduCopter 3.2-rc4 01-Aug-2014
3985 Changes from 3.2-rc3
3986 1) Pre-takeoff throttle feedback in AltHold, Loiter, PosHold
3987 2) Terrain altitude retrieval from ground station (informational purposes only so far, Pixhawk only)
3989 a) "EKF check" will switch to LAND mode if EKF's compass or velocity variance over 0.6 (configurable with EKFCHECK_THRESH param)
3990 When EKF is not used inertial nav's accelerometer corrections are used as a substitute
3991 b) Barometer glitch protection added. BAROGLTCH_DIST and BAROGLTCH_ACCEL parameters control sensitivity similar to GPSGLITCH protection
3992 When glitching occurs barometer values are temporarily ignored
3993 c) Throttle/radio and battery failsafes now disarm vehicle when landed regardless of pilot's throttle position
3994 d) auto-disarm extended to Drift, Sport and OF_Loiter flight modes
3995 e) APM2 buzzer notification added for arming failure
3996 f) APM2 arming buzz made longer (now matches Pixhawk)
3997 g) do-set-servo commands cannot interfere with motor output
3999 a) Drift slow yaw response fixed
4000 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)
4001 ------------------------------------------------------------------
4002 ArduCopter 3.2-rc3 16-Jul-2014
4003 Changes from 3.2-rc2
4004 1) Hybrid renamed to PosHold
4005 2) Sonar (analog, i2c) and PulsedLight Range Finders enabled on Pixhawk (Allyson, Tridge)
4007 a) disable pilot repositioning while landing in RTL, Auto (set LAND_REPOSITION to 1 to re-enable) (JonathanC)
4008 b) delay 4 seconds before landing due to failsafe (JonathanC)
4009 4) Secondary compass calibration enabled, pre-arm check that offsets match current devices (Randy, Tridge, MichaelO)
4010 5) Control improvements:
4011 a) use bias adjusted gyro rates - helps in cases of severe gyro drift (Jonathan)
4012 b) bug-fixes when feed-forward turned off (Leonard)
4013 6) TradHeli improvements (RobL):
4014 a) bug fix to use full collective range in stabilize and acro flight modes
4015 b) filter added to main rotor input (ch8) to ensure momentary blip doesn't affect main rotor speed
4017 a) increased default circular Fence radius to 300m to reduce chance of breach when GPS lock first acquired
4018 b) radio failsafe timeout for late frames reduced to 0.5sec for normal receivers or 2.0sec when flying with joystick (Craig)
4019 c) accelerometer pre-arm check for all active accelerometers (previously only checked the primary accelerometer)
4021 a) ch7/ch8 option to retract mount (svefro)
4022 b) Do-Set-ROI supported in Guided, RTL mode
4023 c) Condition-Yaw accepted in Guided, RTL modes (MoussSS)
4024 d) CAMERA dataflash message includes relative and absolute altitude (Craig)
4025 9) Red Balloon Popper support (Randy, Leonard):
4026 a) Velocity controller added to Guided mode
4027 b) NAV_GUIDED mission command added
4029 a) bug fix to flip on take-off in stabilize mode when landing flag cleared slowly (JonathanC)
4030 b) allow disarming in AutoTune (JonathanC)
4031 c) bug fix to unpredictable behaviour when two spline points placed directly ontop of each other
4032 ------------------------------------------------------------------
4033 ArduCopter 3.2-rc2 27-May-2014
4034 Changes from 3.2-rc1
4035 1) Hybrid mode initialisation bug fix
4036 2) Throttle pulsing bug fix on Pixhawk
4037 3) Parachute enabled on Pixhawk
4038 4) Rally Points enabled on Pixhawk
4039 ------------------------------------------------------------------
4040 ArduCopter 3.2-rc1 9-May-2014
4042 1) Hybrid mode - position hold mode but with direct response to pilot input during repositioning (JulienD, SandroT)
4043 2) Spline waypoints (created by David Dewey, modified and integrated by Leonard, Randy)
4044 3) Drift mode uses "throttle assist" for altitude control (Jason)
4045 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.
4046 5) Manual flight smoothness:
4047 a) Smoother roll, pitch response using RC_FEEL_RP parameter (100 = crisp, 0 = extremely soft)
4048 b) Adjustable max rotation rate (ATC_RATE_RP_MAX, ATC_RATE_Y_MAX) and acceleration (ATC_ACCEL_RP_MAX, ATC_ACCEL_Y_MAX)
4049 6) Autopilot smoothness:
4050 a) Vertical acceleration in AltHold, Loiter, Hybrid modes can be configured with PILOT_ACCEL_Z parameter (higher = faster acceleration)
4051 b) Maximum roll and pitch angle acceleration in Loiter mode can be configured with WPNAV_LOIT_JERK (higher = more responsive but potentially jerky)
4052 c) Yaw speed can be adjusted with ATC_SLEW_YAW parameter (higher = faster)
4053 d) smoother takeoff with configurable acceleration using WPNAV_ACCEL_Z parameter
4054 e) Twitches removed during guided mode or when entering Loiter or RTL from high speeds
4055 7) Mission improvements:
4056 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)
4057 b) DO_SET_ROI persistent across waypoints. All-zero DO_SET_ROI command restores default yaw behaviour
4059 d) conditional_distance fixed
4060 e) conditional_delay fixed
4061 f) do-change-speed command takes effect immediately during mission
4062 g) vehicle faces directly at next waypoint (previously it could be about 10deg off)
4063 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)
4064 8) Safety improvements:
4065 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
4066 b) Parachute support including automatic deployment during mechanical failures
4067 9) Other enhancements:
4068 a) V-tail quad support
4069 b) Dual GPS support (secondary GPS output is simply logged, not actually used yet)
4070 c) Electro Permanent Magnet (aka Gripper) support
4071 d) Servo pass through for channels 6 ~ 8 (set RC6_FUNCTION to 1)
4072 e) Remove 80m limit on RTL's return altitude but never let it be above fence's max altitude
4073 10) Other bug fixes:
4074 a) Bug fix for LAND sometimes getting stuck at 10m
4075 b) During missions, vehicle will maintain altitude even if WPNAV_SPEED is set above the vehicle's capabilities
4076 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
4077 11) CLI removed from APM1/2 to save flash space, critical functions moved to MAVLink:
4078 a) Individual motor tests (see MP's Initial Setup > Optional Hardware > Motor Test)
4079 b) compassmot (see MP's Initial Setup > Optional Hardware > Compass/Motor Calib)
4080 c) parameter reset to factory defautls (see MP's Config/Tuning > Full Parameter List > Reset to Default)
4081 ------------------------------------------------------------------
4082 ArduCopter 3.1.5 27-May-2014 / 3.1.5-rc2 20-May-2014
4083 Changes from 3.1.5-rc1
4084 1) Bug Fix to broken loiter (pixhawk only)
4085 2) Workaround to read from FRAM in 128byte chunks to resolve a few users boot issues (Pixhawk only)
4086 ------------------------------------------------------------------
4087 ArduCopter 3.1.5-rc1 14-May-2014
4089 1) Bug Fix to ignore roll and pitch inputs to loiter controller when in radio failsafe
4090 2) Bug Fix to allow compassmot to work on Pixhawk
4091 ------------------------------------------------------------------
4092 ArduCopter 3.1.4 8-May-2014 / 3.1.4-rc1 2-May-2014
4094 1) Bug Fix for Pixhawk/PX4 NuttX I2C memory corruption when errors are found on I2C bus
4095 ------------------------------------------------------------------
4096 ArduCopter 3.1.3 7-Apr-2014
4098 1) Stability patch fix which could cause motors to go to min at full throttle and with large roll/pitch inputs
4099 ------------------------------------------------------------------
4100 ArduCopter 3.1.2 13-Feb-2014 / ArduCopter 3.1.2-rc2 12-Feb-2014
4101 Changes from 3.1.2-rc1
4102 1) GPS Glitch detection disabled when connected via USB
4103 2) RC_FEEL_RP param added for adjusting responsiveness to pilot roll/pitch input in Stabilize, Drift, AltHold modes
4104 ------------------------------------------------------------------
4105 ArduCopter 3.1.2-rc1 30-Jan-2014
4107 1) Pixhawk baro bug fix to SPI communication which could cause large altitude estimate jumps at high temperatures
4108 ------------------------------------------------------------------
4109 ArduCopter 3.1.1 26-Jan-2014 / ArduCopter 3.1.1-rc2 21-Jan-2014
4110 Changes from 3.1.1-rc1
4111 1) Pixhawk improvements (available for APM2 when AC3.2 is released):
4113 b) AHRS_TRIM fix - reduces movement in loiter when yawing
4114 c) AUX Out 5 & 6 turned into general purpose I/O pins
4115 d) Three more relays added (relays are pins that can be set to 0V or 5V)
4116 e) do-set-servo fix to allow servos to be controlled from ground station
4117 f) Motorsync CLI test
4118 g) PX4 parameters moved from SD card to eeprom
4119 h) additional pre-arm checks for baro & inertial nav altitude and lean angle
4120 ------------------------------------------------------------------
4121 ArduCopter 3.1.1-rc1 14-Jan-2014
4123 1) Pixhawk improvements:
4124 a) Telemetry port 2 enabled (for MinimOSD)
4125 b) SD card reliability improvements
4126 c) parameters moved to FRAM
4127 d) faster parameter loading via USB
4128 e) Futaba SBUS receiver support
4130 a) Loiter initialisation fix (Loiter would act like AltHold until flight mode switch changed position)
4131 b) ROI commands were not returning Lat, Lon, Alt to mission planner when mission was loaded from APM
4132 3) TradHeli only fixes:
4133 a) Drift now uses same (reduced) collective range as stabilize mode
4134 b) AutoTune disabled (for tradheli only)
4135 c) Landing collective (smaller than normal collective) used whenever copter is not moving
4136 ------------------------------------------------------------------
4137 ArduCopter 3.1 14-Dec-2013
4138 Changes from 3.1-rc8
4139 1) Pixhawk improvements:
4140 a) switch to use MPU6k as main accel/gyro
4141 b) auto loading of IO-board firmware on startup
4143 a) initialise waypoint leash length (first RTL stop would be more aggressive than 2nd)
4144 b) reduce projected stopping distance for higher speed stops
4145 ------------------------------------------------------------------
4146 ArduCopter 3.1-rc8 9-Dec-2013
4147 Changes from 3.1-rc7
4148 1) add Y6 motor mapping with all top props CW, bottom pros CCW (set FRAME = 10)
4150 a) ignore yaw input during radio failsafe (previously the copter could return home spinning if yaw was full over at time of failsafe)
4151 b) Reduce GPSGLITCH_RADIUS to 2m (was 5m) to catch glitches faster
4153 a) Optical flow SPI bus rates
4154 b) TradHeli main rotor ramp up speed fix
4155 ------------------------------------------------------------------
4156 ArduCopter 3.1-rc7 22-Nov-2013
4157 Changes from 3.1-rc6
4158 1) MOT_SPIN_ARMED default to 70
4159 2) Smoother inertial nav response to missed GPS messages
4160 3) Safety related changes
4161 a) radio and battery failsafe disarm copter if landed in Loiter or AltHold (previously they would RTL)
4162 b) Pre-Arm check failure warning output to ground station every 30 seconds until they pass
4163 c) INS and inertial nav errors logged to dataflash's PM message
4164 d) pre-arm check for ACRO_BAL_ROLL, ACRO_BAL_PITCH
4165 ------------------------------------------------------------------
4166 ArduCopter 3.1-rc6 16-Nov-2013
4167 Improvements over 3.1-rc5
4168 1) Heli improvements:
4169 a) support for direct drive tails (uses TAIL_TYPE and TAIL_SPEED parameters)
4170 b) smooth main rotor ramp-up for those without external govenor (RSC_RAMP_TIME)
4171 c) internal estimate of rotor speed configurable with RSC_RUNUP_TIME parameter to ensure rotor at top speed before starting missions
4172 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)
4173 e) reduced collective while in stabilize mode (STAB_COL_MIN, STAB_COL_MAX) for more precise throttle control
4174 f) external gyro parameter range changed from 1000~2000 to 0~1000 (more consistent with other parameters)
4175 g) dynamic flight detector switches on/off leaky-i term depending on copter speed
4176 2) SingleCopter airframe support (contribution from Bill King)
4177 3) Drift mode replaces TOY
4178 4) MPU6k SPI bus speed decreased to 500khz after 4 errors
4179 5) Safety related changes:
4180 a) crash detector cuts motors if copter upside down for more than 2 seconds
4181 b) INS (accel and gyro) health check in pre-arm checks
4182 c) ARMING_CHECK allows turning on/off individual checks for baro, GPS, compass, parameters, board voltage, radio
4183 d) detect Ublox GPS running at less than 5hz and resend configuration
4184 e) GPSGlitch acceptable radius reduced to 5m (stricter detection of glitches)
4185 f) range check roll, pitch input to ensure crazy radio values don't get through to stabilize controller
4186 g) GPS failsafe options to trigger AltHold instead of LAND or to trigger LAND even if in flight mode that does not require GPS
4187 h) Battery failsafe option to trigger RTL instead of LAND
4188 i) MOT_SPIN_ARMED set to zero by default
4190 a) missing throttle controller initialisation would mean Stabilize mode's throttle could be non-tilt-compensated
4191 b) inertial nav baro and gps delay compensation fix (contribution from Neurocopter)
4192 c) GPS failsafe was invoking LAND mode which still used GPS for horizontal control
4193 ------------------------------------------------------------------
4194 ArduCopter 3.1-rc5 22-Oct-2013
4195 Improvements over 3.1-rc4
4196 1) Pixhawk USB reliability improvements
4197 2) AutoTune changes:
4198 a) enabled by default
4199 b) status output to GCS
4200 c) use 2 pos switch only
4202 4) Tricopter stability patch improvements [thanks to texlan]
4203 5) safety improvements:
4204 a) slower speed up of motors after arming
4205 b) pre-arm check that copter is moving less than 50cm/s if arming in Loiter or fence enabled
4206 ------------------------------------------------------------------
4207 ArduCopter 3.1-rc4 13-Oct-2013
4208 Improvements over 3.1-rc3
4209 1) Performance improvements to resolve APM alt hold issues for Octacopters:
4210 a) SPI bus speed increased from 500khz to 8Mhz
4211 b) Telemetry buffer increased to 512bytes
4212 c) broke up medium and slow loops into individual scheduled tasks and increased priority of alt hold tasks
4213 2) Bug fix for Pixhawk USB connection
4214 3) GPS Glitch improvements:
4215 a) added GPS glitch check to arming check
4216 b) parameters for vehicle max acceleration (GPSGLITCH_ACCEL) and always-ok radius (GPSGLICH_RADIUS)
4217 ------------------------------------------------------------------
4218 ArduCopter 3.1-rc3 09-Oct-2013
4219 Improvements over 3.1-rc2
4220 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.
4221 2) Bug fix for pixhawk SPI bus contention that could lead to corrupted accelerometer values on pixhawk resolved
4222 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)
4223 4) CPU Performance improvement when reading from MPU6k for APM
4224 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)
4226 a) safety button must be pushed before arming on pixhawk
4227 b) RGB LED (aka toshiba led) changed so that disarmed flashes, armed is either blue (if no gps lock) or green (if gps lock)
4228 c) sensor health bitmask sent to groundstations
4229 ------------------------------------------------------------------
4230 ArduCopter 3.1-rc2 18-Sep-2013
4231 Improvements over 3.1-rc1
4232 1) bug fix for MOT_SPIN_ARMED to allow it to be higher than 127
4233 2) PX4/pixhawk auto-detect internal/external compass so COMPASS_ORIENT should be set to ORIENTATION_NONE if using GPS+compass module
4234 ------------------------------------------------------------------
4235 ArduCopter 3.1-rc1 9-Sep-2013
4236 Improvements over 3.0.1
4237 1) Support for Pixhawks board
4238 2) Arm, Disarm, Land and Takeoff in Loiter and AltHold
4240 a) ACRO_RP_P, ACRO_YAW_P parameters added to control speed of rotation
4241 b) ACRO_BAL_ROLL, ACRO_BAL_PITCH controls speed at which copter returns to level
4242 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
4243 d) Ch7 & Ch8 switch to set ACRO_TRAINER options in-flight
4244 4) SPORT mode - equivalent of earth frame Acro with support for simple mode
4245 5) Sonar ground tracking improvements and bug fixes that reduce reaction to bad sonar data
4246 6) Safety improvements
4247 a) motors always spin when armed (speed can be controlled with MOT_SPIN_ARMED, set to 0 to disable)
4248 b) vehicle's maximum lean angle can be reduced (or increased) with the ANGLE_MAX parameter
4249 c) arming check that GPS hdop is > 2.0 (disable by setting GPS_HDOP parameter to 900)
4250 d) slow take-off in AUTO, LOITER, ALTHOLD to reduce chance of motor/esc burn-out on large copters
4252 a) Optical flow sensor initialisation fix
4253 b) altitude control fix for Loiter_turns mission command (i.e. mission version of CIRCLE mode)
4254 c) DO_SET_ROI fix (do not use "ROI")
4255 8) Distribute Loiter & Navigation calcs over 4 cycles to reduce impact on a single 100hz loop
4256 9) RCMAP_ parameters allow remapping input channels 1 ~ 4
4257 ------------------------------------------------------------------
4258 ArduCopter 3.0.1-rc2 / 3.0.1 11-Jul-2013
4259 Improvements over 3.0.1-rc1
4260 1) Rate Roll, Pitch and Yaw I fix when we hit motor limits
4261 2) pre-arm check changes:
4262 a) double flash arming light when pre-arm checks fail
4263 b) relax mag field checks to 35% min, 165% max of expected field
4264 3) loiter and auto changes:
4265 a) reduced Loiter speed to 5 m/s
4266 b) reduced WP_ACCEL to 1 m/s/s (was 2.5 m/s/s)
4267 c) rounding error fix in loiter controller
4268 d) bug fix to stopping point calculation for RTL and loiter during missions
4269 4) Stability Patch fix which was freezing Rate Taw I term and allowing uncommanded Yaw
4270 ------------------------------------------------------------------
4271 ArduCopter 3.0.1-rc1 26-Jun-2013
4272 Improvements over 3.0.0
4273 1) bug fix to Fence checking position after GPS lock was lost
4274 2) bug fix to LAND so that it does not attempt to maintain horizontal position without GPS lock
4275 ------------------------------------------------------------------
4276 ArduCopter 3.0.0 / 3.0.0-rc6 16-Jun-2013
4277 Improvements over 3.0.0-rc5
4278 1) bug fix to Circle mode's start position (was moving to last loiter target)
4279 2) WP_ACCEL parameter added to allow user to adjust acceleration during missions
4280 3) loiter acceleration set to half of LOIT_SPEED parameter value (was hard-coded)
4281 4) reduce AltHold P to 1.0 (was 2.0)
4282 ------------------------------------------------------------------
4283 ArduCopter 3.0.0-rc5 04-Jun-2013
4284 Improvements over 3.0.0-rc4
4285 1) bug fix to LAND flight mode in which it could try to fly to mission's next waypoint location
4286 2) bug fix to Circle mode to allow counter-clockwise rotation
4287 3) bug fix to heading change in Loiter, RTL, Missions when pilot's throttle is zero
4288 4) bug fix for mission sticking at take-off command when pilot's throttle is zero
4289 5) bug fix for parameters not saving when new value is same as default value
4290 6) reduce pre-arm board min voltage check to 4.3V (was 4.5V)
4291 7) remove throttle controller's ability to limit lean angle in loiter, rtl, auto
4292 ------------------------------------------------------------------
4293 ArduCopter 3.0.0-rc4 02-Jun-2013
4294 Improvements over 3.0.0-rc3
4295 1) loiter improvements:
4296 i) repositioning enhanced with feed forward
4297 ii) use tan to convert desired accel to lean angle
4298 2) stability patch improvements for high powered copters or those with roll-pitch rate gains set too high
4299 3) auto mode vertical speed fix (it was not reaching the desired speeds)
4300 4) alt hold smoothed by filtering feed forward input
4301 5) circle mode fix to initial position and smoother initialisation
4302 6) RTL returns to initial yaw heading before descending
4304 i) check for gps lock when entering failsafe
4305 ii) pre-arm check for mag field length
4306 iii) pre-arm check for board voltage between 4.5v ~ 5.8V
4307 iv) beep twice during arming
4308 v) GPS failsafe enabled by default (will LAND if loses GPS in Loiter, AUTO, Guided modes)
4309 vi) bug fix for alt-hold mode spinning motors before pilot has raised throttle
4311 i) fixed position mode so it responding to pilot input
4313 iii) moved cli motor test to test sub menu and minor change to throttle output
4314 iv) guided mode yaw control fix
4315 ------------------------------------------------------------------
4316 ArduCopter 3.0.0-rc3 22-May-2013
4317 Improvements over 3.0.0-rc2
4318 1) bug fix for dataflash erasing unnecessarily
4319 2) smoother transition to waypoints, loiter:
4320 intermediate point's speed initialised from copter's current speed
4321 3) Ch8 auxiliary function switch (same features as Ch7)
4323 Warning to GCS of reason for pre-arm check failure
4324 ARMING_CHECK parameter added to allow disabling pre-arm checks
4325 Added compass health and offset check to pre-arm check
4326 compassmot procedure displays interference as percentage of total mag field
4327 5) WPNAV dataflash message combined into NTUN message
4328 6) allow TriCopters to use ESC calibration
4329 ------------------------------------------------------------------
4330 ArduCopter 3.0.0-rc2 13-May-2013
4331 Improvements over 3.0.0-rc1:
4332 1) smoother transition to waypoints, loiter:
4333 reduced loiter max acceleration to smooth waypoints
4334 bug fix to uninitialised roll/pitch when entering RTL, AUTO, LOITER
4335 2) fast waypoints - copter does not stop at waypoints unless delay is specified
4336 3) WPNAV_LOIT_SPEED added to allow faster/slower loiter repositioning
4337 4) removed speed limits on auto missions
4338 5) enhance LAND mission command takes lat/lon coordinates
4339 6) bug fix for RTL not pointing home sometimes
4340 7) centrifugal correction disabled when copter is disarmed to stop HUD moving
4341 8) centrifugal correction disabled when sat count less than 6 (AHRS_GPS_MINSATS)
4342 9) compass calibration reliability improvements when run from mission planner
4343 10) bug fix to allow compassmot to be run from mission planner terminal screen
4344 11) add support for H-quad frame
4345 12) add COMPASS_ORIENT parameter to support external compass in any orientation
4346 ------------------------------------------------------------------
4347 ArduCopter 3.0.0-rc1 01-May-2013
4348 Improvements over 2.9.1b:
4349 1) Inertial navigation for X & Y axis (Randy/Leonard/Jonathan)
4350 2) 3D waypoint navigation library (Leonard/Randy)
4351 WPNAV_SPEED, WPNAV_SPEED_UP, WPNAV_SPEED_DN control target speeds during missions and RTL
4352 WP_YAW_BEHAVIOR to allow disabling yaw during missions and RTL
4353 3) PX4 support (some features still not available) (Tridge/Pat/PX4Dev Team)
4354 4) Safety improvements:
4355 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)
4356 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)
4357 pre-arm checks to ensure accelerometer and radio calibration has been performed before arming (Randy)
4358 5) motor interference compensation for compass (Jonathan/Randy)
4359 6) Circle mode improvements:
4360 set CIRCLE_RADIUS to zero to do panorama shots in circle mode (copter does not move in a circle but instead slowly rotates)
4361 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)
4362 7) SONAR_GAIN parameter add to allow reducing the response to objects sensed by sonar (Randy)
4363 8) support for trapezoidal quads (aka V shaped or FPV quads) (Leonard/Craig)
4364 9) performance improvements to dataflash logging (Tridge)
4365 10) bug-fix to analog read which could cause bad sonar reads when using voltage or current monitor (Tridge)
4366 11) bug-fix to motors going to minimum when throttle is low while switching into Loiter, AUTO, RTL, ALT_HOLD (Jason/Randy)
4367 12) bug-fix for auto disarm sometimes disarming shortly after arming (Jason/SirAlex)
4368 ------------------------------------------------------------------
4369 ArduCopter 2.9.1b 30-Feb-2013
4370 Improvements over 2.9.1:
4371 1) reduce INS_MPU6K_FILTER to 20hz
4372 2) reduce InertialNav Z-axis time constant to 5 (was 7)
4373 3) increased max InertialNav accel correction to 3 m/s (was 1m/s)
4374 4) bug fix for alt_hold being passed as int16_t to get_throttle_althold_with_slew
4375 5) bug fix for throttle after acro flip (was being kept at min throttle if pilot switched out of ACRO mode while inverted)
4376 6) reduce yaw_rate P default to 0.20 (was 0.25)
4377 ------------------------------------------------------------------
4378 ArduCopter 2.9.1 & 2.9.1-rc2 01-Feb-2013
4379 Improvements over 2.9.1-rc1:
4380 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
4381 2) bug fix for longitude scaling being incorrectly calculated using Next Waypoint instead of home which could lead to scaling being 1
4382 3) ESC calibration change to set update rate to ESCs to 50hz to allow simonk ESC to be calibrated
4383 ------------------------------------------------------------------
4384 ArduCopter 2.9.1-rc1 31-Jan-2013
4385 Improvements over 2.9:
4386 1) THR_MID parameter added to allow users to adjust the manual throttle so that vehicle hovers at about mid stick
4387 2) bug fix for autotrim - roll axis was backwards
4388 3) bug fix to set sonar_alt_health to zero when sonar is disabled
4389 4) capture level roll and pitch trims as part of accel calibration
4390 5) bug fix to ppm encoder false positives
4391 ------------------------------------------------------------------
4392 ArduCopter 2.9 & 2.9-rc5 14-Jan-2013
4393 Improvements over 2.9-rc4:
4394 1) add constraint to loiter commanded roll and pitch angles
4395 2) relax altitude requirement for take-off command to complete
4396 ------------------------------------------------------------------
4397 ArduCopter 2.9-rc4 12-Jan-2013
4398 Improvements over 2.9-rc3:
4399 1) Smoother transition between manual and auto flight modes (Leonard)
4400 2) bug fix for LAND not actually landing when initiated from failsafe (Randy/Craig)
4401 ------------------------------------------------------------------
4402 ArduCopter 2.9-rc3 11-Jan-2013
4403 Improvements over 2.9-rc2:
4404 1) alt hold with sonar improvements - now on by default (Leonard/Randy)
4405 2) performance and memory usage improvements (Tridge/Randy)
4406 3) increase APM1 baro pressure read from 5hz to 8.3hz to improve alt hold (Randy)
4407 4) bug fix: altitude error reported to GCS (Randy)
4408 5) limit inertial nav's max accel offset correction to 100cm/s/s to speed up recovery after hard impacts (Randy)_
4409 6) moved rate controllers to run after ins read (Tridge/Randy)
4410 ------------------------------------------------------------------
4411 ArduCopter 2.9-rc2 31-Dec-2012
4412 Improvements over 2.9-rc1:
4413 1) increased throttle rate gains from 1.0 to 6.0
4414 2) APM1 fix so it works with inertial nav (5hz update rate of baro was beyond the tolerance set in the inav library)
4415 ------------------------------------------------------------------
4416 ArduCopter 2.9-rc1 23-Dec-2012
4417 Improvements over 2.8.1:
4418 1) altitude hold improvements:
4419 a)inertial navigation for vertical axis [Randy/Jonathan/Leonard/Jason]
4420 b)accel based throttle controller [Leonard/Randy]
4421 c)accelerometer calibration routine updated to use gauss-newton method [Randy/Tridge/Rolfe Schmidt]
4422 d)parameters to control climb rate:
4423 AUTO_VELZ_MIN, AUTO_VELZ_MAX - allows you to control the maximum climb and descent rates of the autopilot (in cm/s)
4424 PILOT_VELZ_MAX - allows you to control the maximum climb/descent rate when in alt hold or loiter (in cm/s)
4425 2) landing improvements [Leonard/Randy]
4426 LAND_SPEED - allows you to set the landing speed in cm/s
4427 3) camera related improvements:
4428 a) AP_Relay enabled for APM2 and integrated with AP_Camera [Sandro Benigno]
4429 b) camera trigger with channel 7 switch or DO_DIGICAM_CONTROL mission command [Randy]
4430 c) allow yaw override by pilot or with CONDITIONAL_YAW command during missions [Randy]
4431 YAW_OVR_BEHAVE - Controls when autopilot takes back normal control of yaw after pilot overrides (0=after next wp, 1=never)
4432 4) trad heli improvements [Rob]
4433 a) code tested and brought back into the fold (2.8.1 was never released for trad helis)
4434 b) enabled rate controller (previously only used angle controllers)
4435 c) fix to rotor speed controllers - now operates by switching off channel 8
4436 d) allow wider collective pitch range in acro and alt hold modes vs stabilize mode
4437 e) removed angle boost function because it created more problems than it solved
4438 f) bug fix to allow collective pitch to use the entire range of servos
4439 5) mediatek gps driver improvements [Craig]
4440 a) added support for 1.9 firmware
4441 b) bug fix to start-up routine so sbas can be enabled
4442 6) failsafe improvements (both throttle and battery) [Randy/Craig/John Arne Birkeland]
4443 a) RTL will not trigger if your throttle is zero - reduces risk of accidentally invoking RTL if you switch off your receiver before disarming
4444 b) failsafe triggered in unlikely case of a PPM encoder failure
4445 c) bug fix to resolve motors momentarily reducing to zero after failsafe is triggered
4446 7) mpu6k filtering made configurable and default changed to 42hz for copters [Leonard/Tridge]
4447 8) support ppm sum for transmitters with as few as 5 channels [Randy/John Arne Birkeland]
4448 9) acro trainer - copter will return to be generally upright if you release the sticks in acro mode [Leonard]
4449 ACRO_BAL_ROLL, ACRO_BAL_PITCH - controls rate at which roll returns to level
4450 ACRO_TRAINER - 1 to enable the auto-bring-upright feature
4451 10) other changes and bug fixes:
4452 a) allow >45 degrees when in stabilize mode by adding lines like below to APM_Config (compile time option only) [Jason]
4453 #define MAX_INPUT_ROLL_ANGLE 6000 // 60 degrees
4454 #define MAX_INPUT_PITCH_ANGLE 6000 // 60 degrees
4455 b) bug fix to stop RTL from ever climbing to an unreasonable height (i.e. >80m) [Jason]
4456 c) event and state logging [Jason]
4457 d) allow cli to be used over telemetry link [Tridge]
4458 e) bug fix to allow compass accumulate to run when we have spare cpu cycles [Randy]
4459 f) bug fix so do_set_servo command works [Randy]
4460 g) bug fix to PID controller's so they don't calculate crazy D term on the first call [Tridge]
4461 h) bug fix to initialise navigation parameter to resolve twitch when entering some navigation modes [Jason]
4462 i) performance improvement to copter leds - use DigitalFastWrite and DigitalFastRead instead of native arduino functions [Randy]
4463 j) removed unused stab_d from roll and pitch controller [Jason]
4464 k) bug fix for guided mode not reaching target altitude if it reaches horizontal target first [Randy]
4465 l) code clean-up, parameter documentation improvements [Randy/Jason/Rob/others]
4467 ------------------------------------------------------------------
4468 ArduCopter 2.8.1 22-Oct-2012
4469 Improvements over 2.8:
4470 - 430 bytes of RAM freed up to resolve APM1 level issue and reduce chance of memory corruption on both APM1 and APM2
4472 Improvements over 2.7.3:
4473 - Improved ACRO mode (Leonard Hall)
4474 - Improved stability patch to reduce "climb-on-yaw" problem (Leonard, Rob Lefebvre, Randy)
4475 - Rate controller targets moved to body frames (yaw control now works properly when copter is inverted) (Leonard/Randy)
4476 - Less bouncy Stabilize yaw control (Leonard)
4477 - OpticalFlow sensor support for APM2.5 (Randy)
4478 - 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)
4479 - Watch dog added to shutdown motors if main loop feezes for 2 seconds (Randy)
4480 - Thrust curve added to linearize pwm->thrust. Removes deadzone found above 90% throttle in most ESC/motors (Randy)
4481 - More timing improvements (main loop is now tied to MPU6000s interrupt) (Randy)
4482 - GPS NMEA bug fix (Alexey Kozin)
4483 - Logging improvements (log I terms, dump all settings at head of dataflash log) (Jason)
4485 Bug Fixes / Parameter changes:
4486 - fixed skipping of last waypoint (Jason)
4487 - resolved twitching when no GPS attached (Tridge)
4488 - fixed loss of altitude if alt hold is engaged before first GPS lock (Randy/Jason)
4489 - moved Roll-Pitch I terms from Stabilize controllers to Rate controllers
4490 - TILT_COMPENSATION param tuned for TradHeli (Rob)
4493 - HAL changes for platform portability (Pat Hickey)
4494 - Removed INSTANT_PWM (Randy)
4495 ------------------------------------------------------------------