aboutsummaryrefslogtreecommitdiff
path: root/src/survive_default_devices.c
diff options
context:
space:
mode:
authorcnlohr <lohr85@gmail.com>2018-06-24 13:41:51 -0400
committercnlohr <lohr85@gmail.com>2018-06-24 13:41:51 -0400
commit7d5b1db0edf0ec43f13293de1526206721c3494f (patch)
tree2607ddb1e1389d6bbb471ecec6aa3fc45c74a22b /src/survive_default_devices.c
parentfe153d9def29387f4ad9712bd364bf8d9fdc5776 (diff)
downloadlibsurvive-7d5b1db0edf0ec43f13293de1526206721c3494f.tar.gz
libsurvive-7d5b1db0edf0ec43f13293de1526206721c3494f.tar.bz2
Fix base calibration values.
Diffstat (limited to 'src/survive_default_devices.c')
-rw-r--r--src/survive_default_devices.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/survive_default_devices.c b/src/survive_default_devices.c
index ea38d55..2d63297 100644
--- a/src/survive_default_devices.c
+++ b/src/survive_default_devices.c
@@ -174,9 +174,11 @@ int survive_load_htc_config_format(SurviveObject *so, char *ct0conf, int len) {
so->acc_scale[1] *= -1;
so->acc_scale[0] *= -1;
}
- so->imu_freq = HMD_IMU_HZ;
if (so->acc_bias)
- scale3d(so->acc_bias, so->acc_bias, 2. / 1000.); // Odd but seems right.
+ scale3d(so->acc_bias, so->acc_bias, 1000.0 ); // Odd but seems right.
+
+ so->imu_freq = HMD_IMU_HZ;
+
if (so->gyro_scale) {
FLT deg_per_sec = 500;
scale3d(so->gyro_scale, so->gyro_scale, deg_per_sec / (1 << 15) * LINMATHPI / 180.);
@@ -188,7 +190,7 @@ int survive_load_htc_config_format(SurviveObject *so, char *ct0conf, int len) {
if (so->acc_scale)
scale3d(so->acc_scale, so->acc_scale, 2. / 8192.0);
if (so->acc_bias)
- scale3d(so->acc_bias, so->acc_bias, 2. / 1000.); // Need to verify.
+ scale3d(so->acc_bias, so->acc_bias, 1000.); // Need to verify.
FLT deg_per_sec = 2000;
if (so->gyro_scale)
@@ -209,7 +211,7 @@ int survive_load_htc_config_format(SurviveObject *so, char *ct0conf, int len) {
// If any other device, we know we at least need this.
// I deeply suspect bias is in milligravities -JB
if (so->acc_bias)
- scale3d(so->acc_bias, so->acc_bias, 1. / 1000.);
+ scale3d(so->acc_bias, so->acc_bias, 1000.);
// From datasheet, can be 250, 500, 1000, 2000 deg/s range over 16 bits
FLT deg_per_sec = 2000;