Hello!
Thank you so much for Fusion 7.
I have questions regarding the influence of hard iron.
On a developed board without an external case, the algorithm works well, but when installed in the case, hard iron prevails. The displacement of the soft iron works correctly, I get a circle, but offset from the center.
there is aluminum holder in the case.
the board contains a source of the DC/DC located at a distance from the magnetometer but close to the aluminum holder.
I assume that due to transients, the algorithm selects the wrong points which are then taken into account in the calculation.
I decided to start the calibration process after a certain time interval, the board is motionless, which allowed me to reduce the number of points of iMagBufferCount 2 versus 12.
after reading the code in fUpdateCalibration, I found the following
...
iOffset[l] = pthisMagBuffer->iBpFast[l][j][k]; supposably a false value
...
pthisMagCal->fvecA[l] = (float)((int32)pthisMagBuffer->iBpFast[l][j][k] - (int32)iOffset[l]) * fscaling;
for iCount == 0 we will get 0 (does it affect something?)
further false iOffset[l] applies to all points.
1. it will be worse or better if apply the offset min/ max/middle from all available points?
2. how do i get the right calibration hard iron?
3. the figure shows the fluctuations why they are symmetric?
Thank you!