diff options
author | 2023-07-24 18:24:16 +0000 | |
---|---|---|
committer | 2023-07-24 18:24:16 +0000 | |
commit | 58d7c9bdc4e5fc5af8057e7660f0822571120dbc (patch) | |
tree | 067a7db65badaafb2b48b1bc8b450a81c0b77f1e | |
parent | d3208d8ff6a1aeafb0bbb872aff46ba8d089f710 (diff) | |
parent | 24f862dd5c645e203bc64531d5ec31db8b4acc1b (diff) |
Merge "SensorFusion: don't use wake sensors for fusion" into main
-rw-r--r-- | services/sensorservice/SensorFusion.cpp | 25 |
1 files changed, 14 insertions, 11 deletions
diff --git a/services/sensorservice/SensorFusion.cpp b/services/sensorservice/SensorFusion.cpp index 5c00260008..16088ca7ea 100644 --- a/services/sensorservice/SensorFusion.cpp +++ b/services/sensorservice/SensorFusion.cpp @@ -42,17 +42,20 @@ SensorFusion::SensorFusion() if (count > 0) { for (size_t i=0 ; i<size_t(count) ; i++) { - if (list[i].type == SENSOR_TYPE_ACCELEROMETER) { - mAcc = Sensor(list + i); - } - if (list[i].type == SENSOR_TYPE_MAGNETIC_FIELD) { - mMag = Sensor(list + i); - } - if (list[i].type == SENSOR_TYPE_GYROSCOPE) { - mGyro = Sensor(list + i); - } - if (list[i].type == SENSOR_TYPE_GYROSCOPE_UNCALIBRATED) { - uncalibratedGyro = Sensor(list + i); + // Only use non-wakeup sensors + if ((list[i].flags & SENSOR_FLAG_WAKE_UP) == 0) { + if (list[i].type == SENSOR_TYPE_ACCELEROMETER) { + mAcc = Sensor(list + i); + } + if (list[i].type == SENSOR_TYPE_MAGNETIC_FIELD) { + mMag = Sensor(list + i); + } + if (list[i].type == SENSOR_TYPE_GYROSCOPE) { + mGyro = Sensor(list + i); + } + if (list[i].type == SENSOR_TYPE_GYROSCOPE_UNCALIBRATED) { + uncalibratedGyro = Sensor(list + i); + } } } |