Hi Friends,
On a Quadcopter with Black Cube 2.1, AP 3.6.11, there are many occurrences in which we get pre-arm checks failures due to Gyros or Accel. inconsistent.
After enabling logging while disarmed, we see a significant deviation of IMU2 readings from the other IMUs:
We noticed that the IMU2.T is always 0, which may be the reason for IMU2 behaving differently from IMU1 and 3 with temperature changes.
I understand that the IMU2 temperature is deliberately not read due to its proximity to IMU1 (so IMU1.T can be used) - is this correct?
Of course, this only happens on “cold start”, before Cube is heated to to its target Temperature.
Reset after reaching the target Temp. solves the issue, but it is not an acceptable workaround.
This issue happens on different Cubes (identical builds, but different drones) in different locations around the world.
Is this a known feature / issue?
Did you happen to experience this as well?
There was a thread on this about a year ago. The solution is to boot up, wait for the cube to get up to temperature, then reboot. It is not documented anywhere to do this and I doubt it ever will be.
Yes, I saw this thread, and, unfortunately, reboot after the Cube is heated is not an option (from logistical point) …
I read somewhere that it is possible to force the Gyro to re-calibrate after the cube reaches the target temp.
Is anyone familiar with this?
I guess there is always an option to disable the IMU2, but that reduces the redundancy of the system, which is one of the key points here…
Rebooting is the only way I am aware of to re-initialized the EKF. Only by allowing the EKF to measure the bias of the sensor when it is at operating temperature can the EKF properly work. More details are included in the PR linked in the other thread.
In summary, the only way to handle this issue is to reboot after the IMU has reached temperature. At least now IMU temperature is sent over MAVLink (added in Plane 4.0.2) so there should be some indicator as to when the EKF can be re-initialized.
I put the Cube in the freezer waiting for it to cool
Powered it on and waited for it to heat up
Tried to arm it
I got different results with AP Copter 3.5.7, AP Copter 3.6.11.
In all cases IMU2.GyroZ deviated significantly as temperature increased
With AP Copter 3.5.7 there were no problems arming the drone while all IMUs were enabled (INS_USE==1, INS_USE2==1 and INS_USE3==1_)
With AP Copter 3.6.11 I wasn’t able to arm the drone because of Gyros inconsistent warning, all IMUs were enabled (INS_USE==1, INS_USE2==1 and INS_USE3==1_)
With AP Copter 3.6.11 I was able to arm it in the same conditions only when disabling IMU2 (INS_USE2==0).
My goal is to be able fly with AP Copter 3.6.11 without having to reboot the cube after it warms up.