I’ve been debugging a problem with my F450/Pixhawk configuration running 3.5.3 which frequently causes me to get Bad Gyro Health messages during initialization. I’ve been going down a path assuming bad hardware until I realized something else tonight that I think is causing the problem.
I’m using DJI 430 ESCs and when the FC is powered up I get the normal ESC beep and motor twitch until initialization has completed and the safety switch is pressed. This happens at the time when the red/blue blinking LED pattern is on and from what I understand that is when the Gyros calibrate. When my copter is on a hard surface one of the motors generates enough torque as it twitches to cause a noticeable shake which I believe is throwing off the gyro calibration. Tonight was able to hold the copter steady during initialization and the startup was fast and no Bad Gyro Health messages. I was also able to reproduce the problem repeatedly by adding additional shake at the frequency and direction of the motor twitch. This causes the FC to blink in red/blue mode for a long time (6-7 APM initializing messages) and it eventually fails with a Bad Gyro Health message.
So while I’m pretty sure this is my problem I was hoping to find out if there is a way to get the FC to send a low PWM (~900) to the ESCs during init to bring the ESCs out of their powered/no signal state. It seems PX4 and some other stacks do this.
I couldn’t find any parameters where I could adjust this in Arducopter.
Any suggestions on how to fix this problem short of holding the copter steady during gyro calibration?