forked from ArduPilot/ardupilot
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathReleaseNotes.txt
5954 lines (4661 loc) · 235 KB
/
ReleaseNotes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
ArduPilot Plane Release Notes:
------------------------------------------------------------------
Release 4.5.7 08 Oct 2024
Changes from 4.5.7-beta1
1) Reverted Septentrio GPS sat count correctly drops to zero when 255 received
------------------------------------------------------------------
Release 4.5.7-beta1 26 Sep 2024
Changes from 4.5.6
1) Bug fixes and minor enhancements
- VUAV-V7pro support
- CUAV-7-Nano correction for LEDs and battery volt and current scaling
- DroneCAN deadlock and saturation of CAN bus fixed
- DroneCAN DNA server init fix (caused logging issues and spam on bus)
- F4 boards with inverter support correctly uninvert RX/TX
- Nanoradar M72 radar driver fix for object avoidance path planning
- Plane fix to ability to disable the takeoff atititude checks
- RC support for latest version of GHST
- Septentrio GPS sat count correctly drops to zero when 255 received
2) ROS2/DDS and other developer focused enhancements
- AP quaternions normalised for ROS2 to avoid warnings
- Dependencies fixed for easier installation
- ROS2 SITL launch file enhancements including displaying console and map
- ROS_DOMAIN_ID param added to support multiple vehicles or instances of ROS2
- Python 3.12 support
------------------------------------------------------------------
Release 4.5.6 03 Sep 2024
No changes from 4.5.6-beta1
------------------------------------------------------------------
Release 4.5.6-beta1 20 Aug 2024
Changes from 4.5.5
1) Board specific enhancements and bug fixes
- 3DR Control Zero H7 Rev G support
- CUAV-7-Nano support
- FoxeerF405v2 servo outputs increased from 9 to 11
- Holybro Pixhawk6C hi-power peripheral overcurrent reporting fixed
- iFlight 2RAW H7 support
- MFT-SEMA100 support
- TMotorH743 support BMI270 baro
- ZeroOneX6 support
2) Minor enhancements and bug fixes
- Cameras using MAVLink report vendor and model name correctly
- DroneCAN fix to remove occasional NodeID registration error
- GPS NMEA and GSoF driver ground course corrected (now always 0 ~ 360 deg)
- ICP101XX barometer slowed to avoid I2C communication errors
- IMU temp cal param (INSn_ACCSCAL_Z) stored correctly when bootloader is flashed
- IMU gyro/accel duplicate id registration fixed to avoid possible pre-arm failure
- Logging to flash timestamp fix
- OSD displays ESC temp instead of motor temp
- PID controller error calculation bug fix (was using target from prev iteration)
- Relay on MAIN pins fixed
------------------------------------------------------------------
Release 4.5.5 1st Aug 2024
No changes from 4.5.5-beta2
------------------------------------------------------------------
Release 4.5.5-beta2 27 July 2024
Changes from 4.5.5-beta1
1) Board specific enhancements and bug fixes
- CubeRed's second core disabled at boot to avoid spurious writes to RAM
- CubeRed bootloader's dual endpoint update method fixed
------------------------------------------------------------------
Release 4.5.5-beta1 1st July 2024
Changes from 4.5.4
1) Board specific enhancements and bug fixes
- fixed IOMCU transmission errors when using bdshot
- update relay parameter names on various boards
- add ASP5033 airspeed in minimal builds
- added RadiolinkPIX6
- fix Aocoda-RC H743Dual motor issue
- use ICM45686 as an ICM20649 alternative in CubeRedPrimary
2) System level minor enhancements and bug fixes
- correct use-after-free in script statistics
- added arming check for eeprom full
- fixed a block logging issue which caused log messages to be dropped
- enable Socket SO_REUSEADDR on LwIP
- removed IST8310 overrun message
- added Siyi ZT6 support
- added BTFL sidebar symbols to the OSD
- added CRSF extended link stats to the OSD
- use the ESC with the highest RPM in the OSD when only one can be displayed
- support all Tramp power levels on high power VTXs
- emit jump count in missions even if no limit
- improve the bitmask indicating persistent parameters on bootloader flash
- fix duplicate error condition in the MicroStrain7
3) AHRS / EKF fixes
- fix infinite climb bug when using EK3_OGN_HGT_MASK
4) Plane specific changes
- fix rangefinder correction when terrain following is off
- correct description of MIN_GROUNDSPEED parameter
- correct Q_TRIM_PITCH description
- ensure the dshot type gets set at startup
5) Other minor enhancements and bug fixes
- specify pymonocypher version in more places
- added DroneCAN dependencies to custom builds
------------------------------------------------------------------
Release 4.5.4 12th June 2024
Changes from 4.5.3
Disable highres IMU sampling on ICM42670 fixing an issue on some versions of Pixhawk6X
------------------------------------------------------------------
Release 4.5.3 28th May 2024
No changes from 4.5.3-beta1
------------------------------------------------------------------
Release 4.5.3-beta1 16th May 2024
Changes from 4.5.2
1) Board specific enhancements and bug fixes
- correct default GPS port on MambaH743v4
- added SDMODELV2
- added iFlight Blitz H7 Pro
- added BLITZ Wing H743
- added highres IMU sampling on Pixhawk6X
2) System level minor enhancements and bug fixes
- fixed rare crash bug in lua scripting on script fault handling
- fixed Neopixel pulse proportions to work with more LED variants
- fixed timeout in lua rangefinder drivers
- workaround hardware issue in IST8310 compass
- allow FIFO rate logging for highres IMU sampling
3) Plane specific changes
- fixed cancelling of FWD_GAIN setting for tiltrotors
------------------------------------------------------------------
Release 4.5.2 14th May 2024
No changes from 4.5.2-beta1
------------------------------------------------------------------
Release 4.5.2-beta1 29th April 2024
Changes from 4.5.1
1) Board specific enhancements and bug fixes
- FoxeerF405v2 support
- iFlight BLITZ Mini F745 support
- Pixhawk5X, Pixhawk6C, Pixhawk6X, Durandal power peripherals immediately at startup
2) System level minor enhancements and bug fixes
- Camera lens (e.g. RGB, IR) can be selected from GCS or during missions using set-camera-source
- Crashdump pre-arm check added
- Gimbal gets improved yaw lock reporting to GCS
- Gimbal default mode fixed (MNTx_DEFLT_MODE was being overriden by RC input)
- RM3100 compass SPI bus speed reduced to 1Mhz
- SBUS output fix for channels 1 to 8 also applying to 9 to 16
- ViewPro gimbal supports enable/disable rangefinder from RC aux switch
- Visual Odometry delay fixed (was always using 1ms delay, see VISO_DELAY_MS)
- fixed serial passthrough to avoid data loss at high data rates
3) AHRS / EKF fixes
- Compass learning disabled when using GPS-for-yaw
- GSF reset minimum speed reduced to 1m/s (except Plane which remains 5m/s)
- MicroStrain7 External AHRS position quantization bug fix
- MicroStrain7 init failure warning added
- MicroStrain5 and 7 position and velocity variance reporting fix
4) Plane specific changes
- Drop min Q_TRANSITION_MS to 500ms
- FBWB/CRUISE missing zero crossing of elevator input fix
- PTCH_LIM_MIN_DEG param units fixed to be deg
5) Other minor enhancements and bug fixes
- DDS_UDP_PORT parameter renamed (was DDS_PORT)
- Harmonic Notch bitmask parameter conversion fix (see INS_HNTCH_HMNCS)
Release 4.5.1 8th April 2024
----------------------------
This release fixes a critical bug in the CRSF R/C protocol parser that
can lead to a handfault and a vehicle crashing. A similar fix was
applied to the GHST protocol, although we believe that GHST could not
be affected by the bug, so this was just a precaution.
There are no other changes in this release.
Release 4.5.0 2nd April 2024
----------------------------
No changes from beta4
Release 4.5.0-beta4 22nd March 2024
-----------------------------------
Changes from 4.5.0-beta3
1) system changes
- fixed a cache corruption issue with microSD card data on H7 based boards
- rename parameter NET_ENABLED to NET_ENABLE
- fixed FDCAN labels for adding new H7 boards
- avoid logging dma.txt to save CPU
- fixed roll/pitch in viewpro driver
- added band X in VideoTX
- fixed quaternion attitude reporting for Microstrain external AHRS
- add RPLidarC1 proximity support
2) new boards
- added MicoAir405v2
- add Orqa F405 Pro
3) plane specific changes
- fixed flare on TVBS quadplanes with throttle stick input
Release 4.5.0-beta3 14th March 2024
-----------------------------------
Changes from 4.5.0-beta2
1) Board specific changes
- added PixFlamingo F7 board
- support ICM42688 on BlitzF745AIO
- fixed IMU orientation of CubeRedSecondary
- enable all FPV features on SpeedyBeeF405WING
2) System level changes
- improved robustness of CRSF parser
- reduced memory used by DDS/ROS2
- added filesystem crc32 binding in lua scripting
- support visual odometry quality metric and added autoswitching lua script
- allow for expansion of fence storage to microSD for larger pologon fences
- allow FTP upload of fence and rally points
- fixed vehicle type of ship simulation for ship landing
- make severity level depend on generator error level in IE 2400 generator
- speed up initial GPS probe by using SERIALn_BAUD first
- allow NanoRadar radar and proximity sensor to share the CAN bus
- added MR72 CAN proximity sensor
- only produce *_with_bl.hex not *.hex in builds if bootloader available
- fixed check for GPS antenna separation in moving baseline yaw
- added GPS_DRV_OPTIONS options for fully parsing RTCMv3 stream
- fixed logging of RTCM fragments in GPS driver
- fixed video recording while armed
- robostness and logging improvements for ExternalAHRS
- fixed RPM from bdshot on boards with IOMCU
- fixed accel cal simple to remove unused IMUs
3) Plane specific changes
- added support for precision landing of quadplanes
- fixed speed tuning of fixed wing aircraft without an airspeed sensor
- improved pitch control in high speed VTOL flight
- added TECS option for rapid descent in fixed wing aircraft
Release 4.5.0-beta2 14th February 2024
--------------------------------------
Changes from 4.5.0-beta1:
1) New Autopilots supported
- YJUAV_A6Ultra
- AnyLeaf H7
2) System level changes
- fixed float rounding issue in HAL_Linux millis and micros functions
- fixed loading of defaults.parm parameters for dynamic parameter subtrees
- fixed discrimination between GHST and CRSF protocols
- fixed bug in DroneCAN packet parsing for corrupt packets that could cause a crash
- fixed handling of network sockets in scripting when used after close
- fixed bit timing of CANFD buses
3) Plane specific changes
- fixed handling of force arming when safety is enabled for VTOL motor state
4) Camera and gimbal enhancements
- wait for non-zero camera version in SIYI driver
5) Miscellaneous
- do relay parameter conversion for parachute parameters if ever has been used
- broaden acceptance criteria for GPS yaw measurement for moving baseline yaw
Release 4.5.0-beta1 30th January 2024
-------------------------------------
Changes from 4.4.4
1) New autopilots supported
- ACNS-F405AIO
- Airvolute DCS2 onboard FMU
- Aocoda-RC-H743Dual
- BrainFPV RADIX 2 HD
- CAN-Zero
- CM4Pilot
- CubeRed
- Esp32-tomte76, esp32nick, esp32s3devkit
- FlyingMoonH743
- Flywoo F405 Pro
- FlywooF405S-AIO with alternative IMUs
- Here4 GPS as flight controller
- Holybro 6X revision 6
- Holybro6X-45686 with 3x ICM45686 IMUs
- JAE JFB110
- KakuteH7 using ICM42688
- PixFlamingo (uses STM32L4PLUS CPU)
- PixPilot-C3
- PixSurveyA1-IND
- QiotekAdeptF407
- Sierra TrueNavIC
- SPRacing H7RF
- SW-Nav-F405
- YJUAV_A6
- YJUAV_A6SE, YJUAV_A6SE_H743 Plane
2) Autopilot specific changes
- 1MB boards lose features to save flash (Payload Place, some battery monitors, NMEA Output, bootloaders, Turtle mode)
- CubeOrangePlus supports IMU high resolution sampling (works with ICM42688, ICM42652, ICM42670, ICM45686 IMUs)
- F4 processors with only 1 IMU gain Triple Harmonic Notch support
- F765-SE bdshot support on 1st 4 pin
- F7 and H7 boards lose DMA on I2C ports (not required, limited DMA better used elsewhere)
- FlyingMoonH743, FlyingMoonF427 2nd and 3rd IMU order swapped
- HEEWING-F405 supports CRSF
- MatekL431-RC bootloader added, DMA used for RC and GPS
- PH4-mini, PH4-mini-bdshot, Swan-K1 and TBS-Colibri-F7 BRD_SER4_RTSCTS param conflict fixed
- Pixhawk6C supports BMI088 baro
- TMotorH743, Heewing-F405 serial parameter definitions fixed
3) AHRS/EKF enhancements and fixes
- AHRS_OPTIONS supports disabling fallback to DCM
- BARO_ALT_OFFSET slews more slowly (was 20sec, now 1min)
- EKF2 removed (can be re-enabled with Custom build server)
- External AHRS support for multiple GPSs
- InertialLabs INS-U external AHRS support
- Lord external AHRS renamed to MicroStrain5
- MAV_CMD_EXTERNAL_POSITION_ESTIMATE supports setting approximate position during dead-reckoning
- Microstrain7 (aka 3DM-QG7) external AHRS support
4) Driver enhancements
- 3DR Solo supports up to 6S batteries
- Airspeed health checks vs GPS use 3D velocity
- BDshot on the first four channels of boards with F103-based IOMCUs (e.g. Pixhawk 6X)
- Dshot on all IOMCU channels on all boards with an IOMCU (e.g. all CubePilot autopilots)
- Dshot commands (e.g. motor reversal abd beeps) and EDT supported on IOMCU
- DroneCAN battery monitors calculate consumed energy if battery doesn't provide directly
- DroneCAN RC and Ghost RC protocol support
- EFI MAVLink driver
- Extended DShot Telemetry support (requires BLHeli32 ver 32.10 or BlueJay, set SERVO_DSHOT_ESC=3 or 4)
- GPS L5 band health override to enable L5 signal use (see GPS_DRV_OPTIONS)
- GPS-for-yaw works at lower update rate (3hz minimum)
- GSOF GPS supports GPS_COM_PORT parameter
- Hirth ICEngine support
- ICE option to enable/disable starting while disarmed
- ICE support for starter via relay
- IMUDATA serial protocol outputs raw IMU data on serial port (only available using custom build server)
- Innomaker LD06 360deg lidar support
- Intelligent Energy fuel cells new protocol support
- IRC Tramp supports 1G3 bands A and B
- IRC Ghost support
- JAE JRE-30 radar
- KDECAN driver rewrite (params moved to KDE_, works on all vehicles)
- MCP9601 temperature sensor support
- NanoRadar NRA24 rangefinder support
- NeoPixelsRGB support
- NoopLoop TOFSense, TOFSenseF-I2c rangefinder support
- OSD shows flashing horizon when inverted
- OSD2 support (e.g. second OSD)
- QMC5883P compass support
- Relay refactored to support RELAYx_FUNCTION, RELAY_STATUS message support added
- Reventech fuel level support (extends existing analog driver, see BATT_FL_xx parameters)
- RPLidarS1 360 deg lidar support and improved reliability for all RPLidars
- SBF GPS supports yaw from dual antennas
- Temperature sensor using analog voltages supported
- Trimble PX-1 support added as a GPS
- Winch driver enhancements including stuck protection, option for spin-free on startup
5) Control and navigation changes and enhancements
- Auto missions can always be cleared while disarmed (would fail if mission still running)
- DO_ENGINE_CONTROL allows starting engine even when disarmed
- DO_SET_MISSION_CURRENT command can reset mission (see Reset Mission field)
- DO_SET_SERVO, DO_REPEAT_SERVO work with servo outputs set to RCInxScaled
- Fractional Loiter Turn Support in missions
- HarmonicNotch supports up to 16 harmonics
- JUMP command sends improved text msg to pilot (says where will jump to)
- MAV_CMD_AIRFRAME_CONFIGURATION can control landing gear on all vehicles
- MOT_OPTIONS allows voltage compensation to use raw battery voltages (instead of current corrected voltage)
- PID controllers get DFF/D_FF (derivative feed-forward), NTF (target notch filter index) and NEF (error notch filter index)
- PID controllers get PDMX param to limit P+D output (useful for large vehicles and/or slow actuators)
- PID notch filter configured via new filter library using FILT parameters
- VTOLs send ATTITUDE_TARGET messages to GCS
6) Plane specific enhancements
- AUTOTUNE_OPTIONS allows disabling filter updates
- Harmonic Notch frequencies can be logged at full rate
- L1 controller checks heading and ground track agree to improve strong headwind edge case
- Land airspeed default is halfway between min and cruise
- LoiterAltQLand mode re-uses Loiter point if available
- AUTO mode landing abort aux switch renamed
- Q_M_SPOOL_TIM_DN allows slower spool down of motors
- Quadplane use of forward throttle in VTOL modes improved
- Tailsitters use motor I term for pitch control if no pitch surfaces are setup
- Takeoff mode holds down elevator on taildraggers
- Transition time may be no less than 2 seconds (see TRANSITION_MS)
- VTOL angle controller gets feed-forward scaling (see Q_OPTIONS)
7) Parameters renamed and rescaled
- COMPASS_TYPEMASK renamed to COMPASS_DISBLMSK
- SYS_NUM_RESETS replaced by STAT_BOOTCNT
- AIRSPEED_CRUISE replaces TRIM_ARSPD_CM
- AIRSPEED_MIN replaces ARSPD_FBW_MIN
- AIRSPEED_MAX replaces ARSPD_FBW_MAX
- CRUISE_ALT_FLOOR replaces ALT_HOLD_FBWCM
- LAND_FINAL_SPD replaces LAND_SPEED
- LAND_PITCH_DEG replaces LAND_PITCH_CD
- MIN_GROUNDSPEED replaces MIN_GNDSPD_CM
- PTCH_LIM_MAX_DEG replaces LIM_PITCH_MAX
- PTCH_LIM_MIN_DEG replaces LIM_PITCH_MIN
- PTCH_TRIM_DEG replaces TRIM_PITCH_CD
- Q_LAND_FINAL_SPD replaces Q_LAND_SPEED
- Q_PILOT_ACCEL_Z replaces Q_ACCEL_Z
- Q_PILOT_SPD_UP replaces Q_VELZ_MAX
- Q_PILOT_SPD_DN replaces Q_VELZ_MAX_DN
- ROLL_LIMIT_DEG replaces LIM_ROLL_CD
- RTL_ALTITUDE replaces ALT_HOLD_RTL
8) ROS2 / DDS support
- Added support for EProsima MicroXRCEDDS as a transport in SITL and hardware
- Added sensor data topic support such as NavSatStatus and BatteryState
- Added a new AP_ExternalControl library for generic control support in SI units
- Added support for building ArduPilot with the colcon build system
- Added high level goal interface (waypoints) similar to MAVLink global position
- DDS topics comply with ROS REP-147
- Added Gazebo Garden and Gazebo Harmonic simulation with examples
- Added support for ROS 2 services such as Arm and Mode control
- Added high level goal interface for waypoints
- Wiki updated to support ROS 2
- Added ROS 2 launch scripts for SITL, MAVProxy and micro-ROS agent
- Add pytests for DDS client and ROS 2 launch scripts and integrate into CI
9) Camera and gimbal enhancements
- Calculates location where camera gimbal is pointing (see CAMERA_FOV_STATUS)
- CAMx_MNT_INST allows specifying which mount camera is in
- Camera lens (e.g. live video stream) selectable using RC aux function
- Interval timer (for taking pictures at timed intervals)
- Image tracking support (ViewPro only)
- MAVLink Gimbal Protocol v2 support for better GCS integration
- MNTx_SYSID_DFLT allows easier pointing gimbal at another vehicle
- MOUNT_CONTROL, MOUNT_CONFIGURE messages deprecated
- RangeFinder support (only logged, only supported on Siyi, Viewpro)
- Pilot's RC input re-takes manual control of gimbal (e.g. switches to RC_TARGETING mode)
- Siyi driver gets Zoom control, sends autopilot attitude and time (reduces leans)
- Video recording may start when armed (see CAMx_OPTIONS)
- ViewPro driver (replaces equivalent Lua driver)
- Xacti camera gimbal support
- Zoom percentage support (for both missions and GCS commands)
10) Logging and reporting changes
- Battery logging (e.g. BAT) includes health, temperature, state-of-health percentage
- CAM and MNT messages contain camera gimbal's desired and actual angles
- CTUN includes airspeed estimate type (e.g. sensor, EKF3 estimate)
- INS_RAW_LOG_OPT allows raw, pre-filter and post-filter sensor data logging (alternative to "batch logging", good for filtering analysis)
- PID logging gets reset and I-term-set flags
- Rangefinder logging (e.g. RFND) includes signal quality
- RC aux functions sorted alphabetically for GCS
- RC logging (RCI, RCI2) include valid input and failsafe flags
- RTK GPS logging includes number of fragments used or discarded
- TEC2 provides extended TECS controller logging
- TSIT provides tail sitter speed scaling values
11) Scripting enhancements
- Autopilot reboot support
- Baro, Compass, IMU, IOMCU health check support
- Battery cell voltage bindings
- Battery driver support
- BattEsimate.lua applet estimates SoC from voltage
- Camera and Mount bindings improved
- CAN input packet filtering reduces work required by Lua CAN drivers
- DJI RS2/RS3 gimbal driver supports latest DJI firmware version (see mount-djirs2-driver.lua)
- EFI drivers for DLA serial, InnoFlight Inject EFI driver
- EFI bindings improved
- Fence support
- Generator drivers for Halo6000, Zhuhai SVFFI
- GCS failsafe support
- Hobbywing_DataLink driver (see Hobbywing_DataLink.lua)
- is_landing, is_taking_off bindings
- led_on_a_switch.lua sets LED brightness from RC switch
- MAVLink sending and receiving support
- Mission jump_to_landing_sequence binding
- mount-poi.lua upgraded to applet, sends better feedback, can lock onto Location
- Networking/Ethernet support
- Plane dual-aircraft synchronised aerobatics
- Proximity driver support
- Rangefinder drivers can support signal quality
- revert_param.lua applet for quickly reverting params during tuning
- RockBlock.lua applet supports setting mode, fix for battery voltage reporting
- Serial/UART reading performance improvement using readstring binding
- sport_aerobatics.lua rudder control fixed
- Thread priority can be set using SCR_THD_PRIORITY (useful for Lua drivers)
- Wind alignment and head_wind speed bindings
12) Safety related enhancements and fixes
- Advanced GCS failsafe action to switch to Auto mode
- Advanced GCS failsafe timeout configurable (see AFS_GCS_TIMEOUT)
- Arm in AUTO/TAKEOFF modes only after stick returns to center
- Arm/Disarmed GPIO may be disabled using BRD_OPTIONS
- Arming allowed with Fence enabled but without a compass (previously failed)
- Arming check of compass vs world magnetic model to detect metal in ground (see ARMING_MAGTHRESH)
- Arming check of GPIO pin interrupt storm
- Arming check of Lua script CRC
- Arming check of mission loaded from SD card
- Arming check of Relay pin conflicts
- Arming check to allow Tricopter-Plane with no yaw servo
- Arming check of emergency stop skipped if emergency stop aux function configured
- Arming failures reported more quickly when changing from success to failed
- ARMING_OPTIONS allows supressing "Armed", "Disarmed" text messages
- BRD_SAFETY_MASK extended to apply to CAN ESCs and servos
- Buzzer noise for gyro calibration and arming checks passed
- FENCE_OPTIONS supports union OR intersection of all polygon fences
- FLTMODE_GCSBLOCK blocks GCS from changing vehicle to specified modes
- Long failsafe action to switch to Auto mode (see FS_LONG_ACTN)
- Main loop lockup recovery by forcing mutex release (only helps if caused by software bug)
- Parachute releases causes disarm and ICE shutoff
- Rally points supports altitude frame (AMSL, Relative or Terrain)
- RC failsafe does not trigger until RC has been received at least once
- SERVO_RC_FS_MSK allows outputs using RC passthrough to move to SERVOx_TRIM on RC failsafe
- Takeoff mode gets failsafe protections
13) System Enhancements
- CAN port can support a second CAN protocol on the same bus (2nd protocol must be 11 bit, see CAN_Dn_PROTOCOL2)
- CAN-FD support (allows faster data transfer rates)
- Crash dump info logged if main thread locksup (helps with root cause analysis)
- Ethernet/Networking support for UDP and TCP server and client (see NET_ENABLED) and PPP (see SERIALx_PROTOCOL)
- Firmware flashing from SD card
- Linux board SBUS input decoding made consistent with ChibiOS
- Linux boards support DroneCAN
- Parameter defaults stored in @ROMFS/defaults.parm
- SD Card formatting supported on all boards
- Second USB endpoint defaults to MAVLink (instead of SLCAN) except on CubePilot boards
- Serial over DroneCAN (see CAN_D1_UC_SER_EN) useful for configuring F9P DroneCAN GPSs using uCenter
14) Custom Build server include/exclude features extended to include
- APJ Tools
- Bootloader flashing
- Button
- Compass calibration
- DroneCAN GPS
- ExternalAHRS (e.g. MicroStrain, Vectornav)
- Generator
- Highmark Servo
- Hobbywing ESCs
- Kill IMU
- Payload Place
- Plane BlackBox arming allows Plane to be used as logger (see ARMING_BBOX_SPD)
- Plane's TX Tuning
- Precision landing
- Proximity sensor
- RC Protocol
- Relay
- SBUS Output
- ToneAlarm
- Winch
15) Developer specific items
- ChibiOS upgrade to 21.11
- UAVCAN replaced with DroneCAN
- AUTOPILOT_VERSION_REQUEST message deprecated (use REQUEST_MESSAGE instead)
- PREFLIGHT_SET_SENSOR_OFFSETS support deprecated (was unused by all known ground stations)
- MISSION_SET_CURRENT message deprecated (use DO_SET_MISSION_CURRENT command instead)
- MISSION_CURRENT message sends num commands and stopped/paused/running/complete state
- Python version requirement increased to 3.6.9
- mavlink_parse.py shows all suported mavlink messages
- COMMAND_INT messages can be used for nearly all commands (previously COMMAND_LONG)
16) Bug fixes:
- 3DR Solo gimbal mavlink routing fixed
- Airbrakes auxiliary function fixed
- Airspeed health always checked before use (may not have been checked when using "affinity")
- always ignore invalid pilot input throttle
- Bootloop fixed if INS_GYRO_FILTER set too high
- Button Internal Error caused by floating pin or slow device power-up fixed
- CAN Compass order maintained even if compass powered up after autopilot
- Compass device IDs only saved when calibrated to ensure external compasses appear as primary on new boards
- Cruise mode locks in heading only once moving forwards (improves VTOL transition reliability in high winds)
- Currawong ECU EFI does not send exhaust gas temperature
- DO_REPOSITION interprets NaN as zero
- DCM fallback in order to get better GPS is disabled if GPS is not used
- DJI RS2/RS3 gimbal reported angle fix
- DO_SET_ROI, ROI_LOCATION, ROI_NONE bug fix that could lead to gimbal pointing at old target
- Fix throttle going bellow min in fbwa RC failsafe
- Generator parameter init fix (defaults might not always have been loaded correctly)
- GPS_TC_BLEND parameter removed (it was unused)
- Ground speed undershoot correction during loss of GPS fixed
- Guided mode heading control anti windup fix
- Harmonic Notch gets protection against extremely low notch filter frequencies
- Home altitude change while navigating handled correctly (previously led to sudden demanded height change)
- IE 650/800 Generators report fuel remaining
- INS calibration prevents unlikely case of two calibrations running at same time
- LPS2XH Baro supported over I2C fixed
- MatekH743 storage eeprom size fixed
- MAVLink routing fix to avoid processing packet meant for another vehicle
- Mount properly enforces user defined angle limits
- MPU6500 IMU filter corrected to 4k
- nav_roll (aka target roll) calculation improved
- NMEA output time and altitude fixed
- OSD gets labels for all supported serial protocols
- OSD RF panel format fixed
- Reset mission if in landing sequence while also disarmed and on the ground (avoids pre-arm check)
- RTL_AUTOLAND with rally points fix (could skip climb to rally point's altitude)
- RobotisServo initialisation fix
- RPM accuracy and time wrap handling improved
- Sagetech ADSB MXS altitude fix (needs amsl, was sending alt-above-terrain)
- SageTechMXS ADSB climb rate direction fixed
- SBUS out exactly matches SBUS in decoding
- Serial port RTS pins default to pulldown (SiK radios could getting stuck in bootloader mode)
- SERIALx_ parameters removed for ports that can't actually be used
- Servo gimbal attitude reporting fix
- Servo output fix when using scaled RC passthrough (e.g. SERVOx_FUNCTION = RCinXScaled)
- Siyi continuous zoom stutter fixed
- Siyi gimbal upside-down mode fixed (avoid bobbing if upside-down)
- TECS's max deceleration scales properly with vehicle velocity
- ST24 RC protocol fixed
- STM32L496 CAN2 init fix (AP_Periph only?)
- VFR_HUD climb rate reports best estimate during high vibration events (previously it would stop updating)
- Visual Odometry healthy check fix in case of out-of-memory
- VTX_MAX_POWER restored (allows setting radio's power)
Release 4.4.4 19th December 2023
--------------------------------
Changes from 4.4.3:
- CubeOrange Sim-on-hardware compilation fix
- RADIX2HD supports external I2C compasses
- SpeedyBeeF405v4 support
- DroneCAN battery monitor with cell monitor SoC reporting fix
- ProfiLED output fixed in both Notify and Scripting
- NTF_LED_TYPES parameter description fixed (was missing IS31FL3195)
- Scripting bug that could cause crash if parameters were added in flight
- STAT_BOOTCNT param fix (was not updating in some cases)
- don't query hobbywing DroneCAN ESC IDs while armed
- clamp empy version to prevent build errors
Release 4.4.3 14th November 2023
--------------------------------
Changes from 4.4.2:
- fixed setup of ICM45486 IMU on CubeOrangePlus-BG edition
- disable AFSR on IxM42xxx IMUs to prevent gyro bias for "stuck" gyros
- fixed AK09916 compass being non-responsive
- implement GPS_DRV_OPTION for using ellipsoid height in more GPS drivers
- fixed SIYI AP_Mount parsing bug
- configuration fixes for BETAFTP-F405 boards
- fixed origin versus home relative bug in quadplane landing and guided takeoff
- correct mavlink response for no airspeed sensor on preflight calibration
- protect against notch filtering with uninitialised RPM source in ESC telemetry
- allow lua scripts to populate full ESC telemetry data
- added YJUAV_A6SE_H743 support
- fixed uBlox M10 GPS support on boards with 1M flash
Release 4.4.2 23th October 2023
-------------------------------
Changes from 4.4.1
- BETAFPV-F405 support
- MambaF405v2 battery and serial setup corrected
- mRo Control Zero OEM H7 bdshot support
- SpeedyBee-F405-Wing gets VTX power control
- SpeedyBee-F405-Mini support
- T-Motor H743 Mini support
- EKF3 supports baroless boards
- INA battery monitor supports config of shunt resistor used (see BATTx_SHUNT)
- BMI088 IMU error value handling fixed to avoid occasional negative spike
- Dev environment CI autotest stability improvements
- OSD correct DisplayPort BF MSP symbols
- OSD option to correct direction arrows for BF font set
- Sensor status reporting to GCS fixed for baroless boards
- added opendroneid option to auto-store IDs in persistent flash
- fixed TECS bug that could cause inability to climb or descend
- fixed race condition when starting TECS controlled mode
- fixed RTL with rally point and terrain follow
- protect against invalid data in SBUS for first 4 channels
- added build type to VER message
- allow moving baseline rover at 3Hz
- use RC deadzones in stick mixing
Release 4.4.1 26th September 2023
---------------------------------
No changes from beta2
Release 4.4.1-beta2 12th September 2023
--------------------------------------
Changes from 4.4.1-beta1
- Airbotf4 features minimised to build for 4.4
- ChibiOS clock fix for 480Mhz H7 boards (affected FDCAN)
- H750 external flash optimisations for to lower CPU load
- MambaF405Mini fixes to match manufacturer's recommended wiring
- RADIX2 HD support
- RPI hardware version check fix
- YJUAV_A6SE support
Release 4.4.1-beta1 5th September 2023
--------------------------------------
Changes from 4.4.1
- support Himark DroneCAN servos
- support Hobbywing DroneCAN ESCs
- fixed control surface deflection on quadplanes in VTOL takeoff wait
- fixed bug in parameter default handling in SITL
- allow selection of mission sdcard storage on custom.ardupilot.org
- added support for SDMODELH7V1
- fixed battery monitor default for QiotekZealotF427 and QiotekZealotH743
- support 8 bit directional dshot channels on KakuteH7-wing
- improved handling of high vibration in EKF3 with new EK3_GLITCH_RADIUS options
- allow reset of battery SoC for DroneCAN battery monitors
- update GPIOs for Navigator board in HAL_Linux
- pull RTS lines low on Pixhawk6C on startup
- added log_file_content in scripting for aerobatics
- added asymmetry factor for skid steering on rovers
- updated defaults for luminousbee5 boards
Happy flying!
Release 4.4.0 18th August 2023
------------------------------
No changes from beta5
Release 4.4.0-beta5 11th August 2023
------------------------------------
Changes from 4.4.0-beta4
- fixed handling of missing DroneCAN airspeed packet
- fixed reset of target altitude in plane GUIDED mode
- added SIYI N7 flight controller
- fixed auto-enable of fence with forced arm
- fixed race condition that caused notch filter gyro glitches
- fixed bug with RTK injection for DroneCAN
Release 4.4.0 beta4
-------------------
Changes from 4.4.0-beta3
1) flight controller specific changes
- Diatone-Mamba-MK4-H743v2 uses SPL06 baro (was DPS280)
- DMA for I2C disabled on F7 and H7 boards
- Foxeer H743v1 default serial protocol config fixes
- HeeWing-F405 and F405v2 support
- iFlight BlitzF7 support
2) Scripts may take action based on VTOL motor loss
3) Bug fixes
- BLHeli returns battery status requested via MSP (avoids hang when using esc-configurator)
- CRSFv3 rescans at baudrates to avoid RX loss
- EK3_ABIAS_P_NSE param range fix
- Scripting restart memory corruption bug fixed
- Siyi A8/ZR10 driver fix to avoid crash if serial port not configured
Release 4.4.0 beta3
-------------------
This is the third beta of plane 4.4.0. This includes some important
fixes since beta2
1) flight controller specific changes
- Holybro KakuteH7-Wing support
- JFB100 external watchdog GPIO support added
- Pixhawk1-bdshot support
- Pixhawk6X-bdshot support
- SpeedyBeeF4 loses bdshot support
3) Camera and Gimbal related changes
- DO_SET_ROI_NONE command support added
4) Bug fixes
- ADSB sensor loss of transceiver message less spammy
- AutoTune Yaw rate max fixed
- EKF vertical velocity reset fixed on loss of GPS
- GPS pre-arm failure message clarified
- SERVOx_PROTOCOL "SToRM32 Gimbal Serial" value renamed to "Gimbal" because also used by Siyi
- SERIALx_OPTION "Swap" renamed to "SwapTXRX" for clarity
- SBF GPS ellipsoid height fixed
- Ublox M10S GPS auto configuration fixed
- ZigZag mode user takeoff fixed (users could not takeoff in ZigZag mode previously)
- fixed memory corruption bug with scripting restart
5) Device drivers
- added LP5562 I2C LED driver
- added IS31FL3195 LED driver
6) Applet changes
- added QUIK_MAX_REDUCE parameter to VTOL quicktune lua applet
7) Plane specific changes
- fixed takeoff mode to ensure climb to takeoff alt before turning
- fixed error in quadplane wait for rudder neutral
- improved handling of forward throttle during VTOL landing
- fixed TECS state reset in VTOL auto modes
- fixed early exit from loiter to alt
- fixed display of started airspeed wait on forward transition
Release 4.4.0 beta2
-------------------
This is the second beta of plane 4.4.0. This includes some important
fixes since beta1.
The full list of changes is:
- added SpeedyBeeF405WING, JSB100 and FoxeerH743
- added LOG_DISARMED=3 support and LOG_DARM_RATEMAX
- fixed error handling for being out of memory in EKF initialisation
- fixed a bug in RC input handling on the IOMCU
- fixed a bug handling ICE engine start after altitude reached
- adjust EKF3 accel bias process noise for greater robustness
- fixed an EKF3 bug in accel bias calculations
- cope with compassmot impacting GSF yaw numerical stability
- fixed an AUTOTUNE/QAUTOTUNE bug in yaw tuning
- support INA228 and INA238 I2C battery monitors
- always log rate PID slew limiters even when slew limit is zero
- added MambaF4050v2 for new IMU, bdshot and DMA on UART1
- update for FoxeerH743v1 GA release
- reduced IMU init speed on MatekH743
- move LED serial processing to its own thread
- fixed parameter documentation for BRD_SAFETYOPTION
- don't reject airspeed using EKF innovation if dead-reckoning
- fixed USB pass-thru on 2nd USB endpoint
Release 4.3.7 31st May 2023
---------------------------
This stable release is for the 4.3.x stable series and is being done
because of a serious bug that has been found with RC input on boards
that use an IOMCU for RC input (boards with a separate set of 8 "main"
outputs from "aux" outputs).
The bug was that when RC input is lost and the receiver is one that
uses "no pulses" for loss of RC input then there is a chance that when
the RC link is regained that ArduPilot will not regain RC control and
will continue in RC failsafe.
The bug is an old one, first introduced in the 4.0.6 release in
September 2020. The bug does not occur often which is why it has been
such a long time before it was noticed. We would like to thank CUAV
for noticing and reporting the bug!
This release also has some other changes, some of which are to sync
with the Copter 4.3.6 release (which will go to 4.3.7 with this RC
input bug fix) and some are other bugs found since the 4.3.5 plane
release.
This release skips the 4.3.6 number to sync with copter.
The full list of changes is:
- fixed a fault in the INS batch sampler code if you change the INS_LOG_BAT_CNT parameter without rebooting
- fixed the RC input on IOMCU bug explained above
- fixed a bug in ICE engine control if you do a "delay engine start" mission command while flying
- added MCU voltage monitoring for the H757 microcontroller (eg. CubeOrangePlus)
- servo gimbal mount yaw handling fix (only affects 3-axis servo gimbals)
- PiccoloCAN fix for ESC voltage and current scaling
- Gremsy gimbal fix when attached to autopilot's serial3 (or higher)
- added CubeOrangePlus-bdshot build
- fixed a bug in handling bad UART data in the megasquirt serial EFI driver
- added -g option for configuring with debug symbols without full debug (helped with RCIN bug diagnosis)
- fixed airmode switch for QACRO and QSTABILIZE modes
- fixed a rare memory corruption bug in the STM32H757
- fixed an EKF3 bug in accel bias calculations
- adjust EKF3 accel bias process noise for greater robustness
- cope with compassmot impacting GSF yaw numerical stability
Please test and report any issues!
Release 4.4.0 beta1
-------------------
This is the first beta of plane 4.4.0. It is a big release with lots
of changes. Many thanks to all the people who have contributed!
1) New autopilots supported
- ESP32
- Flywoo Goku F405S AIO
- Foxeer H743v1
- MambaF405-2022B
- PixPilot-V3
- PixSurveyA2
- rFCU H743
- ThePeach K1/R1
2) Autopilot specific changes
- Bi-Directional DShot support for CubeOrangePlus-bdshot, CUAVNora+, MatekF405TE/VTOL-bdshot, MatekL431, Pixhawk6C-bdshot, QioTekZealotH743-bdshot
- Bi-Directional DShot up to 8 channels on MatekH743
- BlueRobotics Navigator supports baro on I2C bus 6
- BMP280 baro only for BeastF7, KakuteF4, KakuteF7Mini, MambaF405, MatekF405, Omnibusf4 to reduce code size (aka "flash")
- CSRF and Hott telemetry disabled by default on some low power boards (aka "minimised boards")
- Foxeer Reaper F745 supports external compasses
- OmnibusF4 support for BMI270 IMU
- OmnibusF7V2-bdshot support removed
- KakuteF7 regains displayport, frees up DMA from unused serial port
- KakuteH7v2 gets second battery sensor
- MambaH743v4 supports VTX
- MatekF405-Wing supports InvensenseV3 IMUs
- PixPilot-V6 heater enabled
- Raspberry 64OS startup crash fixed
- ReaperF745AIO serial protocol defaults fixed
- SkystarsH7HD (non-bdshot) removed as users should always use -bdshot version
- Skyviper loses many unnecessary features to save flash
- UBlox GPS only for AtomRCF405NAVI, BeastF7, MatekF405, Omnibusf4 to reduce code size (aka "flash")
- VRBrain-v52 and VRCore-v10 features reduced to save flash
3) Driver enhancements
- ARK RTK GPS support
- BMI088 IMU filtering and timing improved, ignores bad data
- CRSF OSD may display disarmed state after flight mode (enabled using RC_OPTIONS)
- Daiwa winch baud rate obeys SERIALx_BAUD parameter
- EFI supports fuel pressure and ignition voltage reporting and battery failsafe
- ICM45686 IMU support
- ICM20602 uses fast reset instead of full reset on bad temperature sample (avoids occasional very high offset)
- ICM45686 supports fast sampling
- MAX31865 temp sensor support
- MB85RS256TY-32k, PB85RS128C and PB85RS2MC FRAM support
- MMC3416 compass orientation fix
- MPPT battery monitor reliability improvements, enable/disable aux function and less spammy
- Multiple USD-D1-CAN radar support
- NMEA output rate configurable (see NMEA_RATE_MS)
- NMEA output supports PASHR message (see NMEA_MSG_EN)
- OSD supports average resting cell voltage (see OSD_ACRVOLT_xxx params)
- Rockblock satellite modem support
- Serial baud support for 2Mbps (only some hardware supports this speed)
- SF45b lidar filtering reduced (allows detecting smaller obstacles
- SmartAudio 2.0 learns all VTX power levels)
- UAVCAN ESCs report error count using ESC Telemetry
- Unicore GPS (e.g. UM982) support
- VectorNav 100 external AHRS support
- 5 IMUs supported
4) EKF related enhancements
- Baro compensation using wind estimates works when climbing or descending (see BAROx_WCF_UP/DN)
- External AHRS support for enabling only some sensors (e.g. IMU, Baro, Compass) see EAHRS_SENSORS
- Magnetic field tables updated
- Non-compass initial yaw alignment uses GPS course over GSF (mostly affects Planes and Rover)
5) Control and navigation enhancements
- AutoTune of attitude control yaw D gain (set AUTOTUNE_AXES=8)
- DO_SET_ROI_NONE command turns off ROI
- JUMP_TAG mission item support
- Missions can be stored on SD card (see BRD_SD_MISSION)
- NAV_SCRIPT_TIME command accepts floating point arguments
- Pause/Resume returns success if mission is already paused or resumed
- Payload Place support via lua script in quadplanes
7) Filtering enhancements
- FFT notch can be run based on filtered data
- Warn of motor noise at RPM frequency using FFT
- In-flight FFT can better track low frequency noise
- In-flight FFT logging improved
- IMU data can be read and replayed for FFT analysis
8) Camera and gimbal enhancements
- BMMCC support included in Servo driver
- DJI RS2/RS3-Pro gimbal support
- Dual camera support (see CAM2_TYPE)
- Gimbal/Mount2 can be moved to retracted or neutral position
- Gremsy ZIO support
- IMAGE_START_CAPTURE, SET_CAMERA_ZOOM/FOCUS, VIDEO_START/STOP_CAPTURE command support
- Parameters renamed and rescaled
i) CAM_TRIGG_TYPE renamed to CAM1_TYPE and options have changed
ii) CAM_DURATION renamed to CAM1_DURATION and scaled in seconds
iii) CAM_FEEDBACK_PIN/POL renamed to CAM1_FEEBAK_PIN/POL
iv) CAM_MIN_INTERVAL renamed to CAM1_INTRVAL_MIN and scaled in seconds
v) CAM_TRIGG_DIST renamed to CAMx_TRIGG_DIST and accepts fractional values
- RunCam2 4k support
- ViewPro camera gimbal support
9) Logging changes
- BARO msg includes 3-axis dynamic pressure useful for baro compensation of wind estimate
- MCU log msg includes main CPU temp and voltage (was part of POWR message)
- RCOut banner message always included in Logs
- SCR message includes memory usage of all running scripts