MAVExplorer vs mavfft_isb

Can someone help me out and explain what the difference is between the FFT graphs from MavExplorer and mavfft_isb?

I’m sure it’s obvious, but both graphs are from the same log file. The MavExplorer graph on the left makes me think the dynamic notch filter is done and dusted. The mavfft_isb graph on the right makes me think I need to add another harmonic, and maybe a static notch filter.

My question here isn’t as much about tuning, as it is understanding why these two FFT graphs are so different when they are from the same source?

The scaling on the Y axis is different (linear on the left, logarithmic on the right) so the graphs have to be different.

The data is the same, the information on both graphs is the same. But is does look different.

BTW no need for more filtering, you already have over 60dB SNR

2 Likes

mavfft_isb uses log scaling by default - there is an option to use linear

1 Like

Andy, I’ve been watching your video “Frame resonance revisited”. (so this is all your fault :laughing:) You made a comment that all frames will have a resonance frequency. I agree with that. So based on the graphs above being post-filter can I assume that the dynamic notch (INS_HNTCH) and gyro filter (INS_GYRO_FILTER) have managed to capture that? I’ll try to find a log that has pre-filter data when I have a moment to see the difference.

For reference this is an X500V2 frame. 10" props. HNTCH is 90hz and GYRO_FILTER is 42.

Right, its easiest to spot by comparing pre and post and seeing which spike isn’t being notched out

1 Like

INS_LOG_BAT_OPT,4 is my new favourite parameter

1 Like

Can you use that for the initial notch filter setup or do you need to isolate pre-filter values?

It works for pre and post test flights, so less things to change.
You’ll see a graph for GYRO0 (prefilter) and GYRO3(postfilter)

I dont wait - just set up the HNOTCH how you think it should be and do a test flight, then adjust as required.

Oh yeah that would be handy.

I just had a chance to try out INS_LOG_BAT_OPT,4. On a Matek F405WSE quad and mavfft_isb.py says that I’m getting pre and post filtering, but I only see one set of data (Gyro0). I just looked into F405 limitations and nothing jumped out at me as this could be an issue. The pixracer I also tested seems to be working (Gyro0 and Gyro3). Any ideas?

Edit: I just realized I haven’t updated that quad and it’s still on 4.2.2. Is that more likely the issue? (aka: Pilot error)

Yeah, needs to be a recent firmware version for INS_LOG_BAT_OPT,4 to work

1 Like

Well, I think I take today’s prize for “should have known better”. Who would have guessed if I updated to the latest then it would work as advertised… :man_facepalming: