DShot300 desync on moto spool-up

Hello there,

I’m using CUAV-X7 with ArduCopter 4.1.0 on a octa-quad X frame.
Motors are T-Motor U7 (420KV) with two FETtec 45A 4-in-1 ESCs running FW2.19 with Dshot300 and sending serial telemetry back to the ESC.

The copter flies, the ESC telemetry is valid and correct, but …

One in every five starts, one or more motors desync during spool-up.

I did increase the spool-up time, and played around with the MOT_SPIN_ARM parameter but the problem persists.

Here is the log file:

  • RCOUT.C1 to RCOUT.C8 do what they should, slowly increase from 1000µs to 1060µs (MOT_SPIN_ARM == 6%)

  • ESC[0].rpm and ESC[6].rpm go nuts.

  • All other ESCs slowly increase their RPM to around 880 rpm like they should.

This happens mostly with ESC[0], could it be that the very first word that AP writes is garbage? and that makes the ESC go crazy? or is that a ESC bug?

This desync is not reproducible with betaflight, not with PX4 (on the same copter with the same ESC/motor/prop combo)

In BLHELI32 you would turn of Low RPM Power Protect, but of course the FETtec ESCs are their own…
What about the slow start setting? On or Off ¯_(ツ)_/¯