#
# Automatically generated file; DO NOT EDIT.
# SensorHAL IIO Configuration
#
CONFIG_ST_HAL_ANDROID_VERSION=0

#
# Enable/disable sensors
#

#
# Accelerometer sensor
#
CONFIG_ST_HAL_ACCEL_ENABLED=y

#
# Magnetometer sensor
#
CONFIG_ST_HAL_MAGN_ENABLED=y
# CONFIG_ST_HAL_MAGN_CALIB_ENABLED is not set

#
# Gyroscope sensor
#
CONFIG_ST_HAL_GYRO_ENABLED=y
# CONFIG_ST_HAL_GYRO_GBIAS_ESTIMATION_ENABLED is not set

#
# Magnetometer Uncalibrated sensor
#
CONFIG_ST_HAL_MAGN_UNCALIB_DISABLED=y
# CONFIG_ST_HAL_MAGN_UNCALIB_HW_ENABLED is not set
# CONFIG_ST_HAL_MAGN_UNCALIB_AP_ENABLED is not set

#
# Gyroscope Uncalibrated sensor
#
CONFIG_ST_HAL_GYRO_UNCALIB_DISABLED=y
# CONFIG_ST_HAL_GYRO_UNCALIB_HW_ENABLED is not set
# CONFIG_ST_HAL_GYRO_UNCALIB_AP_ENABLED is not set
CONFIG_ST_HAL_SIGN_MOTION_ENABLED=y

#
# Step Detector sensor
#
CONFIG_ST_HAL_STEP_DETECTOR_ENABLED=y

#
# Step Counter sensor
#
CONFIG_ST_HAL_STEP_COUNTER_ENABLED=y
# CONFIG_ST_HAL_PRESSURE_ENABLED is not set
CONFIG_ST_HAL_TILT_ENABLED=y
# CONFIG_ST_HAL_TAP_TAP_ENABLED is not set
# CONFIG_ST_HAL_ACTIVITY_ENABLED is not set

#
# Orientation sensor
#
CONFIG_ST_HAL_ORIENTATION_DISABLED=y
# CONFIG_ST_HAL_ORIENTATION_HW_ENABLED is not set
# CONFIG_ST_HAL_ORIENTATION_AP_ENABLED is not set

#
# Gravity sensor
#
CONFIG_ST_HAL_GRAVITY_DISABLED=y
# CONFIG_ST_HAL_GRAVITY_HW_ENABLED is not set
# CONFIG_ST_HAL_GRAVITY_AP_ENABLED is not set

#
# Linear Acceleration sensor
#
CONFIG_ST_HAL_LINEAR_DISABLED=y
# CONFIG_ST_HAL_LINEAR_HW_ENABLED is not set
# CONFIG_ST_HAL_LINEAR_AP_ENABLED is not set

#
# Rotation Vector sensor
#
CONFIG_ST_HAL_ROT_VECTOR_DISABLED=y
# CONFIG_ST_HAL_ROT_VECTOR_HW_ENABLED is not set
# CONFIG_ST_HAL_ROT_VECTOR_AP_ENABLED is not set

#
# Game Rotation Vector sensor
#
CONFIG_ST_HAL_GAME_ROT_VECTOR_DISABLED=y
# CONFIG_ST_HAL_GAME_ROT_VECTOR_HW_ENABLED is not set
# CONFIG_ST_HAL_GAME_ROT_VECTOR_AP_ENABLED is not set

#
# Geomagnetic Rotation Vector sensor
#
CONFIG_ST_HAL_GEOMAG_ROT_VECTOR_DISABLED=y
# CONFIG_ST_HAL_GEOMAG_ROT_VECTOR_HW_ENABLED is not set
# CONFIG_ST_HAL_GEOMAG_ROT_VECTOR_AP_ENABLED is not set
# CONFIG_ST_HAL_VIRTUAL_GYRO_ENABLED is not set
CONFIG_ST_HAL_FACEUP_FACEDOWN_DISABLED=y
# CONFIG_ST_HAL_FACEUP_FACEDOWN_HW_ENABLED is not set
# CONFIG_ST_HAL_FACEUP_FACEDOWN_AP_ENABLED is not set
CONFIG_ST_HAL_RELATIVE_TILT_DISABLED=y
# CONFIG_ST_HAL_RELATIVE_TILT_HW_ENABLED is not set
# CONFIG_ST_HAL_RELATIVE_TILT_AP_ENABLED is not set

#
# Common configuration
#
CONFIG_ST_HAL_MAX_SAMPLING_FREQUENCY=200
CONFIG_ST_HAL_DEBUG_LEVEL=0
CONFIG_ST_HAL_ACCEL_ROT_MATRIX="1,0,0,0,1,0,0,0,1"
CONFIG_ST_HAL_ACCEL_RANGE=17
CONFIG_ST_HAL_MAGN_ROT_MATRIX="1,0,0,0,1,0,0,0,1"
CONFIG_ST_HAL_MAGN_RANGE=1000
CONFIG_ST_HAL_GYRO_ROT_MATRIX="1,0,0,0,1,0,0,0,1"
CONFIG_ST_HAL_GYRO_RANGE=35
# CONFIG_ST_HAL_SENSORHUB_DEBUG_INFO is not set

#
# Power consumption
#
CONFIG_ST_HAL_ACCEL_POWER_CONSUMPTION=1
CONFIG_ST_HAL_MAGN_POWER_CONSUMPTION=1
CONFIG_ST_HAL_GYRO_POWER_CONSUMPTION=1
CONFIG_ST_HAL_SIGN_MOTION_POWER_CONSUMPTION=1
CONFIG_ST_HAL_STEP_DETECTOR_POWER_CONSUMPTION=1
CONFIG_ST_HAL_STEP_COUNTER_POWER_CONSUMPTION=1
CONFIG_ST_HAL_TILT_POWER_CONSUMPTION=1

#
# SensorFusion configuration
#
CONFIG_ST_HAL_MIN_FUSION_POLLRATE=50
CONFIG_ST_HAL_INEMO_GBIAS_THRESOLD_ACCEL="86999e-9"
CONFIG_ST_HAL_INEMO_GBIAS_THRESOLD_MAGN="599999e-9"
CONFIG_ST_HAL_INEMO_GBIAS_THRESOLD_GYRO="114999e-9"

#
# IIO drivers configuration
#
CONFIG_ST_HAL_DRIVER_AUTO_SCAN=y

#
# IIO triggers name
#
CONFIG_ST_HAL_ACCEL_TRIGGER_NAME_DEFAULT=y
# CONFIG_ST_HAL_ACCEL_TRIGGER_NAME_HRTIMER is not set
CONFIG_ST_HAL_MAGN_TRIGGER_NAME_DEFAULT=y
# CONFIG_ST_HAL_MAGN_TRIGGER_NAME_HRTIMER is not set
CONFIG_ST_HAL_GYRO_TRIGGER_NAME_DEFAULT=y
# CONFIG_ST_HAL_GYRO_TRIGGER_NAME_HRTIMER is not set
