Just a couple of words why I take filtering seriously.
There is no filter that is perfect. You either get
1. Good filtering but far from the true value and slow to react when it should
2. Less filtering but closer to the true value and fast to react
3. Medium filtering but the filter still has attenuation as we are rounding down for every filter execution
There is usually no way around that. Instead you compromise until you think it is good enough. In earlier firmware versions we had good filtering. But we compromised slightly on the accuracy. One example is that we could have a cadence of 90 but it showed 80. It was the same for everything else that we filtered in one way or another. But it looked very nice.
So for the 0.20.0 some users have noticed the values jump around much more. This is because it helped me develop and see possible problems. But now that everything is getting close to a stable firmware we need a way to have a really good filter so users can get meaningful data.
And it is this I have tried to improve in 0.20.0 overall but especially in Alpha 4 but even more so in Alpha 5.
I have tried to use a filter that is very adjustable and where we can choose what compromises to take. But more importantly, we can adjust the effects of those compromises. But regardless of what parameters are set, it will always converge to the true value measured or calculated.
Alpha 5 is not something I consider finished in this regard. But it is a good foundation to work from. And the values you will see on the display will be accurate, and that is something I highly value. We just need to improve and tune it some more so it looks nice as well. This can be carried over to the new displays that have graphs. Because then we will value data even more!
There is no filter that is perfect. You either get
1. Good filtering but far from the true value and slow to react when it should
2. Less filtering but closer to the true value and fast to react
3. Medium filtering but the filter still has attenuation as we are rounding down for every filter execution
There is usually no way around that. Instead you compromise until you think it is good enough. In earlier firmware versions we had good filtering. But we compromised slightly on the accuracy. One example is that we could have a cadence of 90 but it showed 80. It was the same for everything else that we filtered in one way or another. But it looked very nice.
So for the 0.20.0 some users have noticed the values jump around much more. This is because it helped me develop and see possible problems. But now that everything is getting close to a stable firmware we need a way to have a really good filter so users can get meaningful data.
And it is this I have tried to improve in 0.20.0 overall but especially in Alpha 4 but even more so in Alpha 5.
I have tried to use a filter that is very adjustable and where we can choose what compromises to take. But more importantly, we can adjust the effects of those compromises. But regardless of what parameters are set, it will always converge to the true value measured or calculated.
Alpha 5 is not something I consider finished in this regard. But it is a good foundation to work from. And the values you will see on the display will be accurate, and that is something I highly value. We just need to improve and tune it some more so it looks nice as well. This can be carried over to the new displays that have graphs. Because then we will value data even more!