Failed to Calibrate Accelerometer, Motors Receiving Voltage but Not Moving

Equipment:

  • Pixhawk 6X
  • Mission Planner
  • ArduCopter V4.5.3

Hello, I regularly fly drones, but recently I have been experiencing issues where the accelerometer calibration fails, and none of the motors move even when in the armed state. The accelerometer calibration fails with the message “Please place vehicle LEVEL,” and when I press the complete button, it says calibration failed.

Additionally, it seems that the motors are receiving voltage because the three-tone beep sound indicating motor startup is heard immediately after connecting the battery. However, unlike before, the subsequent two-tone beep sound does not occur. Also, when I perform the motor test, the motors do not operate.

I absolutely need to resolve these issues. Please help me. Thank you very much.

The boot/initialization sequence hangs up at awaiting calibration, and, if I’m not mistaken, awaits user intervention to complete calibration before configuring/enabling motors or anything else.

If you can’t calibrate no matter what, even after reflashing firmware and ensuring the autopilot remains as absolutely still as possible during each orientation’s “click when done” step, it may indicate hardware failure. Accelerometer calibration should not be difficult to achieve.

@Yuri_Rage

Thank you for your reply. Even after re-flashing the firmware, I was unable to complete the calibration.

I am not sure if this information is useful, but I will report it. The readings consistently show approximately ax = -15, ay = -8, and az = -1000. Does this indicate that the Pixhawk 6X itself is malfunctioning? Do I need to replace it?

Pretty sure that z value is pegged negative (as in, stuck and failing), though you should get a second opinion to be sure. I don’t recall the exact scaling, and it could be indicating 1.000G, which would be an expected value.

@dkemxr or @xfacta, can you verify my assumption while I’m away from my workbench for a bit?

Was this autopilot involved in a crash or very hard landing?

@Yuri_Rage @dkemxr @xfacta

Thank you for your reply. It once crashed into a wall and fell from a height of about 3 meters, but it was able to fly after that. Now that I think about it, I updated the firmware just before I was unable to calibrate, so could that be the cause?

Accelerometers have tiny little tuning fork-like oscillating bits inside the ICs. If exposed to a sharp impact, they can be damaged.

Do any of the accel values change when you move it around or adjust the orientation? Or, more critically, does one stay stuck at a constant value?

@Yuri_Rage @dkemxr @xfacta

Thank you for your reply.

When I move it or change its orientation, the accelerometer values do change. For example, when I turn the flight controller upside down, the values become approximately ax=20, ay=9, az=994.

Ok, so it seems the scaling is G x 1000, and the z value is following correctly. If you move it through all orientations, it follows that x and y should respectively indicate near +/-1000 when placed on its sides or nose/tail.

@Yuri_Rage @dkemxr @xfacta

Thank you for your reply.

When I turn it to the right, ay=-1000; when I turn it to the left, ay=1000; when I nose it down, ax=-1000; and when I nose it up, ax=1000.

Well that actually seems to indicate things are possibly working properly and sorta shoots down my theory about a stuck value. If you set LOG_DISARMED=1 and then reboot and run through an attempted calibration, the resulting log might be of use to troubleshoot. I won’t be able to do that right away, but if you share it, one of the guys might pitch in some help.

@Yuri_Rage @dkemxr @xfacta

Thank you for your reply.

I set LOG_DISARMED=1 and captured the log.

2024-06-04 13-51-16.tlog (134.9 KB)

@Yuri_Rage @dkemxr @xfacta

It seems I provided the wrong instructions. I will attach the .bin file here.

I had the same accelerometers calibration issue with Pixhawk 6X (ICM42688 & BMI088) and ArduRover V4.5.3. I was finally able to calibrate only after downgrade to V4.5.2.

2 Likes

Found this post with the same problem and downgrading to V4.5.2 fixed it on Pixhawk 6X. At least the calibration, I’m still doing the initial configs for the drone.

1 Like

@artur, thank you for replying. It seems there were issues with the latest version. I’ll try downgrading it.

@febag , thank you for replying. It seems there were issues with the latest version. I’ll try downgrading it.

I am trying to get pixhawk 6C to work with 4 DJI 4114 Pro motors with built in ESC’s. I’ve been able to go through all steps upto MOTOR TEST and despite what I change in the Param list motors just won’t run, when I select cycle anll engines, I can hear that something is happening, but no spin.
Are you using the same configuration?

@febag @Ryo.G During last week I followed up on that issue with the manufacturer, and it is confirmed that for some units such error occurs with V4.5.3. It will be fixed in V4.5.4, until then downgrade to V4.5.2 is the solution. Issue: AP_InertialSensor: fixed ICM42670 by tridge · Pull Request #27264 · ArduPilot/ardupilot · GitHub