Copter-4.4.0-beta2 available for beta testing

Copter-4.4.0-beta2 has been released for beta testing and can be installed using MP or QGC’s beta firmwares link. Alternatively it can also be manually downloaded from

Changes vs 4.4.0-beta1 are in the ReleaseNotes and also copied below

  1. Autopilots specific changes
    • FlywooF745 update to motor pin output mapping and baro
    • FoxeerH743 support
    • JFB100 support
    • Mamba-F405v2 supports ICM42688
    • Matek-F405-TE/VTOL support
    • Matek-H743 IMU SPI slowed to 1Mhz to avoid init issues
    • SpeedyBee-405-Wing support
  2. Copter specfic fixes and enhancements
    • RTL speed fix so changes to WPNAV_SPEED have no effect if RTL_SPEED is non-zero
    • RTL mode accepts do-change-speed commands from GCS
  3. AHRS/EKF related fixes and Enhancements
    • EKF allocation failure handled to avoid watchdog
    • EKF3 accel bias calculation fix and tuning for greater robustness
    • Airspeed sensor remains enabled during dead-reckoning (few copters have airspeed sensors)
    • Wind speed estimates updates reduced while dead-reckoning
  4. Other Enhancements
    • Attitude control slew limits always calculated (helps tuning reporting and analysis)
    • INA228 and INA238 I2C battery monitor support
    • LOG_DISARMED=3 logs while disarmed but discards log if never eventually armed
    • LOG_DARM_RATEMAX reduces logging while disarmed
    • Serial LEDs threading enhancement to support longer lengths without dshot interference
  5. Bug fixes
    • Analog battery monitor2 current parameter default fixed
    • AutoTune fix for loading Yaw Rate D gains
    • BRD_SAFETYOPTION parameter documentation fix (ActiveForSafetyEnable and Disable were reversed)
    • Compassmot fix to protect against bad gyro biases from GSF yaw
    • ICE engine fix for starting after reaching a specified altitude
    • LED thread locking fix to avoid watchdog
    • Logging rotation on disarm disabled if Replay logging active (avoids gaps in logs)
    • RC input on IOMCU bug fix (RC might not be regained if lost)
    • Serial passthrough fixed
  6. Custom build server fix to which features are included/excluded

There will definitely be a -beta3 in the coming weeks because we still have some outstanding issues to resolve.

Thank you very much to those who have been helping with the beta testing so far including:

I’m sure I’ve missed a few people but thanks in any case! Beta testing is important and we really appreciate the help!


was this the issue with yaw d term causing instability halfway through the tune and does this mean its good to try yaw d term again?

Yes indeed. You should now get very tight yaw tunes - perhaps too tight.


I guess I might be wrongly mentioned, because my only contribution in last months was to add/test hwdef lines to support for ICM42688 to the FlywooF405S-AIO board. The board is neither listed nor working with the -beta2 version (just tested, the version with ICM42688 is considered), whereas the master branch works.

1 Like

How can I make a custom build. I didn’t find tag name Copter-4.4.0-beta2, which tag am I looking for?

Hi @lida2003,

I’m afraid that the Custom Build Server doesn’t support the beta branches so I’ve added an item to the issues list.

Yes. I have checked this list.

I think i can try anti-gravity. As currently, pitch back, while cutting throttle to zero, improves by setting ATC_THR_MIX_MIN to 0.18

Can I try commit id: 07f1153, which should be ok for me to make a custom build.

ardupilot$ git checkout 07f1153
Note: switching to ‘07f1153’.

You are in ‘detached HEAD’ state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

git switch -c

Or undo this operation with:

git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at 07f11531fd Copter: update 4.4.0-beta2 release notes


Ah, I see. You’re building the code yourself (not using the custom build server) which means you can use “git checkout Copter-4.4”. Alternatively you can use “git checkout ArduCopter-beta”.

It seems antiGravity works pretty cool, 4.4.0-beta2 (commit ID: 07f11531fd )

Detailed info, please check link below.

1 Like

I can confirm KDEcan is working with this release.
Correction- I got to the field to do some testing and it’s not seeing any of the ESCs. Going back to 4.2.7 which is the last version that works.


OK, thanks for the report. I’ve added this to the 4.4 issues list and I hope that TomP can help us investigate the issue.

Actually it looks like TomP’s KDECAN rewrite did not make it into 4.4. If you’re feeling brave perhaps you could test “latest” instead? I’m not sure if you’ll actually want to fly it because “latest” changes each day and sometimes contains bugs but a bench test would be very helpful. It’s possible we may be able to backport this to 4.4.

1 Like

Tom and I chatted on the discord a bit. It does work with the nightly build. I flew a bit without any issues. If it’s possible to backport it to 4.4 that would be very helpful as I have a demo coming up soon. Thanks!

I got out last night right before dark and managed to fly a few batteries. This log here is a 6" pixracer that I tried the yaw dterm autotune on and had no joy getting it to work again. There was little to no wind and I let it run quite a while but in MP is never got above AutoTune: Yaw(D) Rate D Up 0%. Here is the tlog for that flight in case it was useful. I also had a little short radio failsafe on crossfire that cleared but it does to me seem that once I have my radio turned on and crossfire connected mavftp will always fail repeatable multiple times on whenever you connect the battery while having the radio transmitter on. I also got a gps unhealthy the whole time which is the first time I have had that with this quad and I had multiple times where my gps lost contact on testing rtl as can be seen in the above posted log and tlog/log. In general things seems to fly well! The issues with gps can be due to constellation and it seemed the loss of gps on rtl almost always happened at pretty darn close to the same location each time. Who knows I was flying in the LANNC waiver zone (with a valid waiver) right on the approach to our airport runway. I normally fly a lot in uncongested areas so this was my first time with a lot of interference plus one of the hospitals main radiology department is about 1/8 mile from there. Here is another log where I tried autotune but didn’t let it run to long as I think I had a failsafe with the EKF and aborted. And the last log is just me generally flying around and messing around.

I took two quads to fly but did not try autotune on the second as I forgot a antenna for my ground station and I like to monitor it via the messages screen. MP was not wanting to play well with UDP connection and the pixracer wifi module so I didn’t run atuotune. But wanted to test it on the latest beta and didn’t see and issues although I didn’t give it a good workout as it was getting dark, log attached here.

Both quads are 6" with pixracer and tbs crossfire on 6.19. I didn’t get as much of a chance to fly everything I wanted as time was constrained. Also if anyone has any feedback on the notch filters I have enable I am all ears. I will give the new FFT tool a try see what I come up with but this is not a strong skill of mine that and log analysis hahaha!

1 Like

@Leonardthall thinks that YawD might need a non-zero starting point - I haven’t had a chance to test as yet. But you could start by setting it conservatively to something like 0.001 and then try again.

So I would need to set the ATC_RAT_YAW_D to 0.001?

Yes, exactly

More words

1 Like

@andyp1per When I autotune yaw D do I have to previously set ATC_RAT_YAW_FLTD equal to the other axis FLTD or do I leave it at zero?

You should start with it set to the same as the others. So definitely not 0.

Makes sense! I did not see any info about setting that parameter (which is default at zero) so I thought it would be better to confirm. Thanks