Why do I have two sets of vibe data?

Often after a flying session I download the logs and view the vibe data. I note that data is available for souces 0 and 1 but until now I have only looked at source 0. Today I decided to look at source 1 as well and was surprised to see how different it is from the source 0 data, as you can see in the attached screen shot.

So, what are sources 0 and 1 please, and why should their recorded vibes differ so much? My FC is Matek H743WING with a Matek M8N GPS/compass.

Those are data from 2 IMUs this matek has on board.

It’s data from each of the 2 IMU’s on the Flight Controller. What version of that FC do you have? There are several factors that can cause differences. Some FC’s have 1, 2, or 3, different IMU’s, some have one or more isolated IMU’s, some have 2 of the same IMU.

And, there are fake Matek H743-Wings that have who knows what…

The Matek H743 Wing has two IMUs. The vibration levels are recorded for each one.

Rolf

3 answers almost simultaneously :joy:

1 Like

Low hanging fruit :slight_smile:

1 Like

Sorry it was such an easy question :wink: But 2 IMUs in the single FC begs the question; why are they recording significantly different values?

My FCs are from a reputable source so I’m confident as I can be that they’re genuine.

My guess would be assymetric mounting. Not sure where exactly on PCB is each IMU chip, but for example if You has one side mounted stiffer and the other side is a little floppy, the one closer to floppy side will give higher results of acceleration due to vibrations.

1 Like

As also @dkemxr asked, which version of the MATEK 743 Wing you have?

From datasheet the V2 version has two different IMU (MPU6000 & ICM 42605) while the V3 has two identical IMU ICM 42688

1 Like

The board is mounted on a single 3mm 3M pad which is almost the same size as the underside of the lower board of the Matek H743 assembly. Possibly it’s wobbling in the pitch axis because overall the H743 is longer than the gearbox that it’s mounted on, so overhangs.

My 743WING is V3. Sorry, I missed that aspect of Dave’s initial post.

Maybe there is more to this Allan. From the HWDEF for the Matek H743 (all of them)
Two IMUs
H743-V1, ICM20602, MPU6000
H743-V1.5/V2, ICM42605, MPU6000
H743-V3, ICM42688P, ICM42605
IMU Invensensev3 SPI:icm42688 ROTATION_YAW_180
IMU Invensensev3 SPI:icm42605 ROTATION_YAW_270
IMU Invensense SPI:icm20602 ROTATION_ROLL_180_YAW_270
IMU Invensense SPI:mpu6000 ROTATION_ROLL_180_YAW_270
define HAL_DEFAULT_INS_FAST_SAMPLE 1

As @Juergen-Fahlbusch said Matek says the V3 has 2 ICM42688’s. But the Hardware definition does not say that. I don’t know what to make of that. Perhaps they will function with the same drivers but they have different spec’s so perhaps the scaling is wrong.

I suppose if you look at Mission Planners Setup>HWID screen it will say both are ICM42688’s

I guess I simplified a little bit - mounting asymetry / vibration damping asymetry. You have soft pad under whole surface of PCB, but I guess You have a set of big ad relatively stiff wires on one side and thin servo wires on the other. That creates effectively vibration damping asymetry.

I would not suspect the difference is caused by having different types of IMU. This is my log also from matek board h743 slim v3 with ICM42688P and ICM42605 IMUs.

They are basically identical and FC is supported on 4 corners, but also has no thick wires soldered which is most likely the case for WING type FC.

Took a quick look on HW ID, and indeed…

instead of ICM42688P and ICM42605 there are 2 identical ICM42688. Perhaps they just use same driver.

I have a Matek H743-Mini V1 with an ICM20602 and an MPU6000 and the ICM20602 are generally higher.

Maybe there is nothing to see here. Just location of the IMU on the board as you suggested.

Interesting point there. My FC has the six servo connections, which are standard servo wire, at one side of the board and Rx and GPS, with more-floppy silicone wire connections, at one end as you can see in the picture.

One way to reduce the constraint would be to use silicone wire for the servo leads, but that’s a project for another day if the vibe disparity causes any problems.

Thanks for all the interesting information. I have two other helis with the same board (I think both V3), so out of interest I’ll have a look at their two sets of vibe data. One last question; what does the FC do with the two different sets of vibe data? Do the two IMUs work in tandem all the time, or is one of them ignored if its vibe is too high?

None of my three helis are experiencing any flying problems, so I’ll not be taking any mitigation measures at the moment.

Generally the primary EKF lane is used (which uses the primary IMU) unless it is noticeably less consistent than the other lane.

Just checked, both my other H743 helis show similar disparity between IMU 0 and 1 vibes, but not so great a difference as the one I posted above. Next time I need to take things apart I’ll see what I can do different regarding mounting the FC boards.

I think there is something going on with dual IMUs. Today I tested micoair h743v2 which has 2 different IMUs and, not like matek H743, 2 different IMUs are shown properly in HW ID. Seems there is something going on with normalization?

What are the units of vibrations here? Is it in Gs or something? IMUs are very close on PCB so should be almost identical, however measured values seems to match in “shape” but not amplitude.

This is little weird. I was expecting same readings for both. As vibrations are used to asses if vibration damping is sufficient I would expect the results to be normalized and the only difference would be IMU data resolution, but apparently this is not the case.