diff options
author | Gwendal Grignou <gwendal@chromium.org> | 2020-02-01 23:37:56 -0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-02-04 03:16:07 +0000 |
commit | d60a962c3a4907d2f18c236015aef7b989e1d384 (patch) | |
tree | 93c8fd42c648378a2e623e489225669e033efbf1 /test | |
parent | ae9aea55280abdf2febb362cd9af7be656614eb2 (diff) | |
download | chrome-ec-d60a962c3a4907d2f18c236015aef7b989e1d384.tar.gz |
common: mag_cal: Re-add bias inversion
Sensors add offset to raw value.
kaza_compute calculate the bias (the hard iron) and it has to be remove
from the raw value.
Invert the vector in magnetometer calibration code.
Fixes: 994af4a65fa7e ("common: mag_cal: update magnetometer to leverage kasa")
BUG=b:144027014
BRANCH=none
TEST=Check that after successful online calibration, value reported to
the host are closer to 0 than before calibration.
Change-Id: I6cfd711c82287b1c877912e85d84d2725b063cb2
Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2034675
Reviewed-by: Yuval Peress <peress@chromium.org>
Diffstat (limited to 'test')
-rw-r--r-- | test/mag_cal.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/test/mag_cal.c b/test/mag_cal.c index e1931c352a..65ffa13d8f 100644 --- a/test/mag_cal.c +++ b/test/mag_cal.c @@ -62,9 +62,9 @@ static int test_mag_cal_computes_bias(void) /* Add the final sample and check calibration. */ TEST_EQ(1, mag_cal_update(&cal, samples[cal.batch_size - 1]), "%d"); TEST_EQ(525, FP_TO_INT(cal.radius), "%d"); - TEST_EQ(-1, cal.bias[0], "%d"); - TEST_EQ(1, cal.bias[1], "%d"); - TEST_EQ(-2, cal.bias[2], "%d"); + TEST_EQ(1, cal.bias[0], "%d"); + TEST_EQ(-1, cal.bias[1], "%d"); + TEST_EQ(2, cal.bias[2], "%d"); /* * State should have reset, run the same code again to verify that @@ -74,9 +74,9 @@ static int test_mag_cal_computes_bias(void) TEST_EQ(0, mag_cal_update(&cal, samples[i]), "%d"); TEST_EQ(1, mag_cal_update(&cal, samples[cal.batch_size - 1]), "%d"); TEST_EQ(525, FP_TO_INT(cal.radius), "%d"); - TEST_EQ(-1, cal.bias[0], "%d"); - TEST_EQ(1, cal.bias[1], "%d"); - TEST_EQ(-2, cal.bias[2], "%d"); + TEST_EQ(1, cal.bias[0], "%d"); + TEST_EQ(-1, cal.bias[1], "%d"); + TEST_EQ(2, cal.bias[2], "%d"); return EC_SUCCESS; } |