I am seeking some help in getting my ESC RPM telem into Ardupilot to use for RPM based harmonic notch filter tuning. I have enabled the recommended params (can successfully get an RPM message in the logs now. However when I use the filter review tool and enable the Harmonic Notch filter and plot the Estimated post-filter I don’t see the RPM curve in the IMU Spectrogram. The other thing is that the RPM message only contains 1 value that seems to be an average of the 4 motors. Would be super helpful if someone could point out what I’m missing here :). And if there’s any other obvious problems with my config here (it’s a 56” quad). Appreciate this community for all the support.
When using the filter tool set INS_HNTCH_MODE to 3 (ESC Telemetry). I just tried that on your log and the data is there.
If you set INS_HNTCH_OPT,2 that will enable Multi source (looking at each ESC). But watch the lag. If you can get the peaks below -50 without adding the extra lag or CPU load it might be worth not using mult-source.
This is what I see when I set both of those and press the recalculate button.
I thought the notches are supposed to track the RPM and change throughout the flight.
If set to RPM the spectrogram will show the RPM track (the faint red line around 1500) the ESC data I posted above. However I would say that the real noise you need to track is at 3000 RPM/51 Hz. By using the ESC telem the filter will automatically track that.
I guess what I was confused about is I have seen screenshots of people using ESC telem for HNTCH and the notch tracker in the IMU spectrogram seems to actually follow the ESC telem vs in my example it stays at a constant 80Hz or whatever I set the frequency to. Do I actually need to do a test flight with the notch setup correctly to enable this feature?
Depending on the setup of the filter you will see a grey band around the notch on the main Frequency vs amplitude graph (won’t be on the spectrogram). That grey band is the range of RPM or frequencies the notch filter is tracking during the log. I’m on the wrong computer to get an example, but I can post one later if you want.
In theory, no you don’t “need” to do a specific test flight to check your filter after you’ve set it. The web tool is very accurate. Personally, I often end up leaving filter logging active as I continue the tuning process so I can double check things are working the way I want. It sometimes ends up in some big log files but I’m okay with that while tuning.
If you check the logs there is ESC Telem RPM data present, the tool also allows you to select ESC Telem Data as an option and for logs without it usually spits a warning out.
What params do I have to enable on top of just having ESC Telem available?
Here’s another log for an X8 that has the ESC telem data present as well as the HNTCH mode 3 turned on pre flight not only in the post filter review tool, you can see here that it is not doing what its supposed to at all and not tracking the telem. What am I missing here?
@mike_tk I’d also be tempted to turn off the extra harmonics. Those peaks are still below -50 when I tried it so it’s probably not worth the potential CPU load and lag.
I am having this crazy issue now where the notches seem to work for one flight and then the next flight they don’t work at all. Here are two flights back to back that have the same notch params, one flight the post filtered data is low and then the next it is as if there are no filters enabled.
@Allister on newer logs it’s clearly that 1st and 2nd (which is most powerful) are definitely needed, 4th is optional.
but can you please explain how higher harmonics filtering if it’s have less than 2x phase delay add overall lag? Eg, as I understand, 180 degree lag on 50hz is giving 10ms filter delay (half of 50hz cycle), while same 180 lag on 100 hz adds only 5ms. Am I wrong? Thanks.
Note that a common problem is that you get an EKF lane switch at which point the notches switch to the other IMU which makes it look like they are not working
I think I need to be careful with my use of the term lag. I was more focused on load. With multi source filtering turned on it’s my understanding that each harmonic is actually adding 4 additional filters (one for each motor). On a cube orange recently this pushed my CPU load so high I was getting CPU warnings in flight. Since then I’ve really backed off on how much filtering I add, and I drop anything even close to -50 and below. So far it’s worked really well for me.