"fmuv3" vs "CubeBlack" firmware


I was recently uploading the latest Arduplane firmware (3.9.8) onto a Cube that was purchased in 2017 (hence it is not affected by the latest service bulletin). I observed the following:

When uploading, Mission Planner prompts me whether the board is a CubeBlack. If I click yes, it automatically selects ChiBiOS and the startup message states “CubeBlack”

If I click no, Mission Planner then gives me a choice between ChiBiOS and NuttX. Choosing ChiBiOS gives the startup message “fmuv3”.

Why is there a need for two different ChiBiOS builds for the Cube (fmuv3 vs CubeBlack)? Is there a difference between the two?

Thanks in advance (:

Choosing ChibiOS version will put the latest firmware which is specifically built for CubeBlack Boards. Nuttx firmware will put old firmware from the days when there was unified build for all fmuv3 board types. It is highly recommended to use the latest ChibiOS based build as it is the most stable release and also currently maintained. Nuttx versions are no longer supported for updates and bug fixes.

I believe on the cube black specific build version prams are pre tweaked for that around the specific hardware setting of the Cube like IMU heating temp ect.

The FMU V3 version is more generic setting set for those other boards that would require more specific config depending on each one.

Both can be configured the same it’s just the Cube black versions has the recommendations Profi have set on some of the important things pre done

I could be VERY wrong on this and expect the flame thorower to come out lol.

Also don’t forget to enable all the EKF now your using ChibiOS as per the built in advice for all Cube models.

Do not run FMU v3 on the Cube.

Though originally FMU v3 was for Pixhawk 2, we have moved to a new operating system that allows us to have better controls over the full build system, it allows us to have correct drivers for the cube that do not use the old 3DROBOTICS USB IDs for one, and allows for more stringent safety checks and better parameters that suite our hardware.

FMU v3 supports the old 3DR Pixhawk 2.0 from solo, but even that has been depreciated and replaced by CubeSolo

The main user of FMU v3 now, is Pixhawk 1 clones that have the 2MB flashfixed hardware.

The physical checks for safe IMU behaviour on cube black, will only operate with cube Black firmware, and the check in mission planner will only work with cube Black firmware

So when it asks, alway select Cube Black for a ProfiCNC/Hex CubeBlack

Put simply… fmuv3 is not for the cube black

1 Like

Thank you everyone for the advice.

I understand that we must select CubeBlack firmware for the newest Cube Blacks for the reasons stated above.

But what about the older Cubes? I am working on two older batches of Cubes (which still have the labels “Pixhawk 2” on them):

  • 1st batch was purchased in late 2016/early 2017
  • 2nd batch was purchased in early 2018

Are the older Cubes supposed to run on the CubeBlack firmware as well? I have tried looking around the forums but couldn’t find an answer to this :slight_smile:

All cube Blacks should run CubeBlack firmware and the latest parameters


The older pixhawk 2 is a solo only cube built by 3dr. All the Cubes you are talking about are Cube blacks (aka old not used name pixhawk2.1 Your PR is all wrong

Thanks for the clarification. So to paraphrase what has been discussed so far:

  • If it is a *Hex/Proficnc manufactured Cube Black/Pixhawk 2.1, then it requires the Cube Black firmware (regardless of which batch/year the Cube came from)
  • If it is the old Pixhawk 2 manufactured by 3DR, then it can only run on fmuv3

Please correct me if I am still not getting it right.

after the small edit i made to your comment yes 3dr solo Cube was pixhawk 2 . all hex proficnc Cube,s are Cube Blacks(old name pixhawk 2.1).

Understood. Thank you very much :grinning:

1 Like

hello philip
Can you tell me what this board is?(black,blue,green,solo) MCUs: STM32F427 and STM32F100 , IMU&GYRO: MPU9250,L3GD20,LSM303D and MS5611

Because my board is brick now. I’m looking for the right firmware and bootloader for this board.
I used these (http://firmware.ardupilot.org/Tools/Bootloaders/) bootloader and firmware but it is not working.

thank you.

Why have you opened it?
You risk damaging it!

You have the Wong firmware on this.
You must load CubeBlack firmware.

I wondered!!! :slight_smile: Thank you. I will try CubeBlack firmware.

If the IMU is not plugged in correctly when you reassemble it, you will get this message.

I loaded the latest CubeBlack firmware (arduplane_with_bl.hex) via dfu but I get this message: “Check BRD_TYPE: Failed to init CubeBlack - sensor”

Why are you doing anything with DFU?

I am very confused as to why you have disassembled your cube, and why you are using DFU?

philip The truth is, my friend confused everything. I had to use DFU vs so I am trying to fix it. I wouldn’t do it.

The most likely reason for that error is the plug between the FMU board and the IMU board

Sometimes I’m getting this message “Unexpected state 33”

Philip, thank you very much for your interest.