Closed DTMRi closed 2 years ago
Something like a "sanity check" for all values in form of a max allowable derivative to filter unrealistic jumps of the actual temperature would be most elegant, I think. This would also catch unrealistic lows. That’s what I would do when implementing it in MATLAB, where all my “coding” experience lies. You are far more qualified to judge about the actual implementation, if you even like the idea ^^
Yeah, I think there's an actual example of that in the docs in the form of a single file plugin. Not sure how the ordering would work out though in the processing loop. You could copy/paste the URL below into Plugin Manger > Get More > ...from URL and clicking Install. Look like it will limit values to below 300.
https://github.com/OctoPrint/Plugin-Examples/raw/master/sanitize_temperatures.py
Oh cool, thanks! This only solves half the problem, as it doesn’t filter the low spikes. Nonetheless you can close the issue, if you don’t think it is necessary to implement such a filter into the graph.
Actually....
The following example shows how to filter out actual temperatures that are outside a sane range of 1°C to 300°C.
Then:
An optional filter for "freak" temperature reports from the printer, i.e., to filter an obv. unrealistic “59000 °C" reading instead of capping it off with a limit on the axis and the resulting ugly vertical spikes in the graph (see pic for reference).
In my opinion this could be a convenient software fix for a cosmetic hardware problem, that has the potential of tedious and/or expensive debugging. Thanks for the cool plugin!