The fft with size=256 is calculated over a window of 8 seconds with step size 2
seconds. Sample rate of acceleration (12.5Hz) and PPG sensor (25Hz) is unchanged, so the algorithm runs with 12.5Hz.
Generally the maximum peak in fft spectrum in an interval of -5..+10BPM of
last one is used.
The low fft resolution limits the accuracy to ~3BPM, but mean error
is ~5-10BPM.
If firmware reports confidence >= 90% its value is used.