blob: e0b4660b0f39e586710e33b3937ba9497929b687 [file] [log] [blame]
# Micropower, 3-Axis, +/-200g Digital Accelerometer
# Copyright (c) 2023 Analog Devices Inc.
# SPDX-License-Identifier: Apache-2.0
menuconfig ADXL367
bool "ADXL367 Three Axis High-g I2C/SPI accelerometer"
default y
depends on DT_HAS_ADI_ADXL367_ENABLED
select I2C if $(dt_compat_on_bus,$(DT_COMPAT_ADI_ADXL367),i2c)
select SPI if $(dt_compat_on_bus,$(DT_COMPAT_ADI_ADXL367),spi)
help
Enable driver for ADXL367 Three-Axis Digital Accelerometers.
if ADXL367
choice ADXL367_OP_MODE
prompt "Operating mode"
default ADXL367_MEASUREMENT_MODE
config ADXL367_MEASUREMENT_MODE
bool "Measurement Mode"
help
In this mode, acceleration data is provided continuously at the
output data rate (ODR).
endchoice
config ADXL367_ACTIVITY_THRESHOLD
int "Activity threshold in raw value"
range 0 8191
default 100
help
Threshold for activity detection.
config ADXL367_INACTIVITY_THRESHOLD
int "In-activity threshold in raw value"
range 0 8191
default 100
help
Threshold for in-activity detection.
config ADXL367_ACTIVITY_TIME
int "Activity time"
range 0 255
default 100
help
The activity timer implements a robust activity detection that
minimizes false positive motion triggers. When the timer is used,
only sustained motion can trigger activity detection. Value is the
number of samples. For example, at 100Hz ODR, 100 value translates
to 1 second.
config ADXL367_INACTIVITY_TIME
int "In-activity time"
range 0 65535
default 100
help
The time that all enabled axes must be lower than the inactivity
threshold for an inactivity event to be detected. Value is the
number of samples. For example, at 100Hz ODR, 100 value translates
to 1 second.
config ADXL367_ACTIVITY_DETECTION_MODE
bool "Use activity detection"
default y
help
Enable Activity detection.
config ADXL367_INACTIVITY_DETECTION_MODE
bool "Use inactivity detection"
default y
help
Enable Inactivity detection.
config ADXL367_REFERENCED_ACTIVITY_DETECTION_MODE
bool "Use referenced activity detection"
default y
help
Activity detection can be configured as referenced or absolute.
When using absolute activity detection, acceleration samples are
compared directly to a user set threshold to determine whether
motion is present.
config ADXL367_REFERENCED_INACTIVITY_DETECTION_MODE
bool "Use referenced inactivity detection"
default y
help
Inactivity detection can be configured as referenced or absolute.
When using absolute inactivity detection, acceleration samples are
compared directly to a user set threshold to determine whether
motion is present.
choice ADXL367_TRIGGER_MODE
prompt "Trigger mode"
default ADXL367_TRIGGER_NONE
help
Specify the type of triggering used by the driver.
config ADXL367_TRIGGER_NONE
bool "No trigger"
config ADXL367_TRIGGER_GLOBAL_THREAD
bool "Use global thread"
depends on GPIO
select ADXL367_TRIGGER
config ADXL367_TRIGGER_OWN_THREAD
bool "Use own thread"
depends on GPIO
select ADXL367_TRIGGER
endchoice
config ADXL367_TRIGGER
bool
config ADXL367_THREAD_PRIORITY
int "Thread priority"
depends on ADXL367_TRIGGER_OWN_THREAD && ADXL367_TRIGGER
default 10
help
Priority of thread used by the driver to handle interrupts.
config ADXL367_THREAD_STACK_SIZE
int "Thread stack size"
depends on ADXL367_TRIGGER_OWN_THREAD && ADXL367_TRIGGER
default 1024
help
Stack size of thread used by the driver to handle interrupts.
endif # ADXL367