I am a new Mango user, on a path to semi-expertise hopefully down the road.
I am working on getting the source up and running in eclipse, so I think I may be able to architect this function myself after I understand Mango better.
I have had a request to be able to deadband data streams (to minimize storage usage when data is not changing or a system is "dead").
That is, when a new reading of a data point is made, it is compared to the last data point recorded, and then (according to some band width defined somewhere related to the data point) the new data reading is either ignored (not written to storage) or saved (written to storage) depending on whether the new data was within or outside of the dead band.
Forgive me if my terminology is not inline with Mango quite yet (data point / stream / source semantics)....
That is, I only record (store to db) a new voltage reading if it has changed by, say, +- 5%, or +-10 volts of the last recorded voltage.
However, if anyone has any pointers as to where / how I can implement this your thoughts are appreciated, Would this be easiest with a custom module / modules that wrap standard data sources maybe? Where would the band width / percentage and maybe some static setpoint be stored?
I hope to be able to answer these questions myself after some work... But if anyone jump start me / can point me in the right direction I would appreciate it.
Or, will this possibly break other functions within mango in a serious fashion? Ie, will data not on a "grid" (equal time spacing) somehow not play nice with charting / visualization / statistics? Might some major effort to re-grid / interpolate data be needed on some / a lot of current functions?