2019 Black Cube, Updated Software now not Arming

Hello All,

I have a 2019 Cube and have not flown the drone for several years. I now have to have it working for it to be seen in a documentary shoot in a week. It was flying fine until I updated the Cube firmware and MP. I see that there were issues with the 2019 Cube but from what I can tell they should be resolved with the latest software. I keep getting “IOMCU is unhealthy” but I am not experienced enough to track down the problem. I am willing to pay someone serious money to walk me through a successful fix since I am in a time constraint.

Thanks!
Tom Kaye

Unsure if any of these will help or fix the problem, but we can try…

Is it a Cube Black or Cube Orange?
What firmware have you installed?
Provide a screen shot of the Messages tab from MissionPlanner
Do the bootloader update

Set LOG_DISARMED = 1 and provide a .bin log file , set it back to 0 afterwards.
This log file will tell us a lot of things.

1 Like

Thanks Xfacta! I have the 2019 Black Cube. I updated today with the Black Cube firmware in the list. Working on finding the downloaded .bin file standby.
Message Listing:
/22/2023 4:48:34 PM : PreArm: IOMCU is unhealthy
7/22/2023 4:48:34 PM : PreArm: Gyros inconsistent
7/22/2023 4:48:34 PM : PreArm: Hardware safety switch
7/22/2023 4:48:34 PM : PreArm: Throttle below failsafe
7/22/2023 4:48:04 PM : PreArm: IOMCU is unhealthy
7/22/2023 4:48:04 PM : PreArm: Gyros inconsistent
7/22/2023 4:48:04 PM : PreArm: Hardware safety switch
7/22/2023 4:48:04 PM : PreArm: Throttle below failsafe
7/22/2023 4:47:34 PM : PreArm: IOMCU is unhealthy
7/22/2023 4:47:34 PM : PreArm: Gyros inconsistent
7/22/2023 4:47:34 PM : PreArm: Hardware safety switch
7/22/2023 4:47:34 PM : PreArm: Throttle below failsafe
7/22/2023 4:47:03 PM : PreArm: IOMCU is unhealthy
7/22/2023 4:47:03 PM : PreArm: Gyros inconsistent
7/22/2023 4:47:03 PM : PreArm: Hardware safety switch
7/22/2023 4:47:03 PM : PreArm: Throttle below failsafe
7/22/2023 4:46:33 PM : PreArm: IOMCU is unhealthy
7/22/2023 4:46:33 PM : PreArm: Gyros inconsistent
7/22/2023 4:46:33 PM : PreArm: Hardware safety switch
7/22/2023 4:46:33 PM : PreArm: Throttle below failsafe
7/22/2023 4:46:03 PM : PreArm: IOMCU is unhealthy

Scroll through that list until you find where it started, listing the firmware versions and more, send that info

7/22/2023 4:30:26 PM : PreArm: Throttle below failsafe
7/22/2023 4:29:55 PM : PreArm: IOMCU is unhealthy
7/22/2023 4:29:55 PM : PreArm: heater temp low (38.3 < 40)
7/22/2023 4:29:55 PM : PreArm: Hardware safety switch
7/22/2023 4:29:55 PM : PreArm: Throttle below failsafe
7/22/2023 4:29:25 PM : PreArm: IOMCU is unhealthy
7/22/2023 4:29:25 PM : PreArm: heater temp low (36.4 < 40)
7/22/2023 4:29:25 PM : PreArm: Hardware safety switch
7/22/2023 4:29:25 PM : PreArm: Throttle below failsafe
7/22/2023 4:29:16 PM : Frame: HEXA/X
7/22/2023 4:29:16 PM : IMU2: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 4:29:16 PM : IMU0: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 4:29:16 PM : RCOut: PWM:1-14
7/22/2023 4:29:16 PM : CubeBlack 002F0042 3136510C 34313630
7/22/2023 4:29:16 PM : ChibiOS: a97ccb41
7/22/2023 4:29:16 PM : ArduCopter V4.3.7 (c8506ed4)
7/22/2023 4:29:16 PM : Frame: HEXA/X
7/22/2023 4:29:16 PM : IMU2: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 4:29:16 PM : IMU0: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 4:29:16 PM : RCOut: PWM:1-14
7/22/2023 4:29:16 PM : CubeBlack 002F0042 3136510C 34313630
7/22/2023 4:29:16 PM : ChibiOS: a97ccb41
7/22/2023 4:29:16 PM : ArduCopter V4.3.7 (c8506ed4)
7/22/2023 4:29:16 PM : Frame: HEXA/X
7/22/2023 4:29:16 PM : IMU2: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 4:29:16 PM : IMU0: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 4:29:16 PM : RCOut: PWM:1-14
7/22/2023 4:29:16 PM : CubeBlack 002F0042 3136510C 34313630
7/22/2023 4:29:16 PM : ChibiOS: a97ccb41
7/22/2023 4:29:16 PM : ArduCopter V4.3.7 (c8506ed4)

The .bin file is 1.5 meg but the forum says it is over the max limit of 4.4 meg. Trying to figure out a work around.

Tom

Link to .bin file:

In Config / Full Parameter List, Save the parameters to a file for safe keeping.

I would load stable Rover firmware (rather than just resetting params to defaults), which will produce a whole bunch of warnings about many things not configured or calibrated.
See if the same IOMCU Unhealthy message is present.

If not reload the Copter firmware and we can work on putting back the required settings - hint: don’t just reload all the saved parameters from earlier.

Let us know what happens and we will try to work through each step.

The IOMCU problem went away!

Message window below:
Tom
7/22/2023 5:55:28 PM : Radio Failsafe Cleared
7/22/2023 5:55:28 PM : RCInput: decoding SBUS(1)
7/22/2023 5:54:58 PM : PreArm: Radio failsafe on
7/22/2023 5:54:58 PM : PreArm: Compass not calibrated
7/22/2023 5:54:58 PM : PreArm: 3D Accel calibration needed
7/22/2023 5:54:58 PM : PreArm: Hardware safety switch
7/22/2023 5:54:44 PM : IMU2: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 5:54:44 PM : IMU0: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 5:54:44 PM : RCOut: PWM:1-14
7/22/2023 5:54:44 PM : CubeBlack 002F0042 3136510C 34313630
7/22/2023 5:54:44 PM : ChibiOS: 38022f4f
7/22/2023 5:54:44 PM : ArduRover V4.2.3 (2172cfb3)
7/22/2023 5:54:44 PM : IMU2: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 5:54:44 PM : IMU0: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 5:54:44 PM : RCOut: PWM:1-14
7/22/2023 5:54:44 PM : CubeBlack 002F0042 3136510C 34313630
7/22/2023 5:54:44 PM : ChibiOS: 38022f4f
7/22/2023 5:54:44 PM : ArduRover V4.2.3 (2172cfb3)
7/22/2023 5:54:43 PM : IMU2: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 5:54:43 PM : IMU0: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 5:54:43 PM : RCOut: PWM:1-14
7/22/2023 5:54:43 PM : CubeBlack 002F0042 3136510C 34313630
7/22/2023 5:54:43 PM : ChibiOS: 38022f4f
7/22/2023 5:54:43 PM : ArduRover V4.2.3 (2172cfb3)

OK, reload the copter firmware then run through the mandatory calibrations first - accel, RC calibrations and so on…
Be sure to set the frame type and reboot before anything else.

Then we’ll work on which parameters to put back.

Reloaded and calibrated.

7/22/2023 6:17:39 PM : Arm: Check FS_THR_VALUE
7/22/2023 6:17:26 PM : Frame: HEXA/X
7/22/2023 6:17:26 PM : IMU2: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 6:17:26 PM : IMU0: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 6:17:26 PM : RCOut: PWM:1-14
7/22/2023 6:17:26 PM : CubeBlack 002F0042 3136510C 34313630
7/22/2023 6:17:26 PM : ChibiOS: a97ccb41
7/22/2023 6:17:26 PM : ArduCopter V4.3.7 (c8506ed4)
7/22/2023 6:17:26 PM : Frame: HEXA/X
7/22/2023 6:17:26 PM : IMU2: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 6:17:26 PM : IMU0: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 6:17:26 PM : RCOut: PWM:1-14
7/22/2023 6:17:26 PM : CubeBlack 002F0042 3136510C 34313630
7/22/2023 6:17:26 PM : ChibiOS: a97ccb41
7/22/2023 6:17:26 PM : ArduCopter V4.3.7 (c8506ed4)
7/22/2023 6:17:26 PM : Frame: HEXA/X
7/22/2023 6:17:26 PM : IMU2: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 6:17:26 PM : IMU0: fast sampling enabled 8.0kHz/1.0kHz
7/22/2023 6:17:26 PM : RCOut: PWM:1-14
7/22/2023 6:17:26 PM : CubeBlack 002F0042 3136510C 34313630
7/22/2023 6:17:26 PM : ChibiOS: a97ccb41
7/22/2023 6:17:26 PM : ArduCopter V4.3.7 (c8506ed4)
7/22/2023 6:17:24 PM : PreArm: Check FS_THR_VALUE

What ESC’s and motors and props do you have?
Is your throttle stick spring-centred ?

Ensure that the battery monitor is working for at least voltage, and preferably current too.
Then connect to MissionPlanner / Setup / Mandatory / Initial Parameters
Enter your prop size and battery cell count (for normal Lipos, or pick the chemistry type of your battery)
Select the “Suggested” check box.
Click on the button to write everything to the flight controller, a comparison window will come up - accept everything it offers!
Now set these in the Full Parameter list, some I got from your log file, so if that was not suitable for flight then ignore the ATC_RAT ones.

ATC_INPUT_TC,0.20
ATC_RAT_PIT_D,0.025
ATC_RAT_PIT_I,0.18
ATC_RAT_PIT_P,0.18
ATC_RAT_RLL_D,0.025
ATC_RAT_RLL_I,0.18
ATC_RAT_RLL_P,0.18
ATC_RAT_YAW_I,0.05
ATC_RAT_YAW_P,0.5
ATC_THR_MIX_MAN,0.5
FS_THR_VALUE,950
INS_ACCEL_FILTER,10
INS_LOG_BAT_MASK,1
INS_LOG_BAT_OPT,4
LOG_BITMASK,180222

You can copy/paste these into notepad and save as a .param file then load that via MissionPlanner to avoid typing errors.

EDIT:
I would make those D terms
ATC_RAT_PIT_D,0.011
ATC_RAT_RLL_D,0.011
at least until we see flight.

Note that I didnt say to just reload all the old parameters

Not reloading old params.
Arris 30 amp ESC’s
10" props
will load specific params next.

Thanks!
Tom

All specific params loaded.

Tom

You can set these too

INS_HNTCH_ENABLE,1  // write this then refresh params to see the rest
INS_HNTCH_MODE,1
INS_HNTCH_REF,0.17
INS_HNTCH_FREQ,90
INS_HNTCH_BW,45
INS_HNTCH_FM_RAT,0.7

Then do a test flight starting in Stabilise mode
Move onto AltHold if everything is going OK

Let’s see that .bin log file.

I just realised your motors were in a non-standard order. Did you reload those servo functions?
SERVO1_FUNCTION 35
SERVO2_FUNCTION 36
SERVO3_FUNCTION 33
SERVO4_FUNCTION 34
Only 4 motors set but the frame was set for hex

Use the MissionPlanner motor test extensively before flying.

No idea about that, I am not really familiar with everything we are doing. You are saying I should reload the params from my original setup?

I tried to fly it but it took almost full throttle to just start to get off the ground. It wanted to tip over so that may be from the improper motor setup.
bin file:

Thanks,
Tom

OK, in that log you’ve got it set as a Hex. Good.
Check in the Setup / Mandatory / Servo Output screen to make sure the correct motors are assigned to the correct Main Output (servo) connectors - I’m just showing the defaults here.

image

If you move a motor function in that servo output screen you need to reboot the FC for it to take effect.
It should just be a matter of getting that Motor1, Motor2, Motor3… order correctly lined up with the servo/MainOut connectors and the way they are physically connected, since nothing should have physically changed.

Then use the Optional Hardware / Motor Test screen to verify operation of correct motors and their spin. When you press the button to test motor A it should always operate the motor I’ve labelled as A, and so on around the clock - regardless of the motor numbering!
Hex motor order

So if you press to operate Motor A and a different motor spins, then physically move the servo connectors until pressing A always operates the motor in the A position on my diagram.

The spin directions of the props are a little trickier than setting up a quad, so play close attention to the spin of the props too - and compare with that diagram.

EDIT:
See if you can get the BATT_MONITOR working too. If you are using the “power brick” that came with a Cube Black you should just have to set
BATT_MONITOR,4
and reboot the FC.
You’ll have to run that initial parameters wizard again to set the correct voltage failsafe levels and action.

So my rotations are all correct. The sequence matches your second description which I believe is HEXA CW X from what I see online.

Tom