Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 17 additions & 9 deletions include/zephyr/dt-bindings/sensor/adxl345.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,25 +3,33 @@
*
* SPDX-License-Identifier: Apache-2.0
*/

/**
* @file
* @brief Header file for ADXL345 Devicetree constants
* @ingroup adxl345_interface
*/

#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_ADI_ADX345_H_
#define ZEPHYR_INCLUDE_DT_BINDINGS_ADI_ADX345_H_

/**
* @defgroup adxl345 ADXL345 DT Options
* @ingroup sensor_interface
* @defgroup adxl345_interface ADXL345
* @ingroup sensor_interface_ext
* @brief Analog Devices ADXL345 3-axis accelerometer
* @{
*/

/**
* @defgroup adxl345_odr Output Rate options
* @defgroup adxl345_odr Output Data Rate options
* @{
*/
#define ADXL345_DT_ODR_12_5 7
#define ADXL345_DT_ODR_25 8
#define ADXL345_DT_ODR_50 9
#define ADXL345_DT_ODR_100 10
#define ADXL345_DT_ODR_200 11
#define ADXL345_DT_ODR_400 12
#define ADXL345_DT_ODR_12_5 7 /**< 12.5 Hz */
#define ADXL345_DT_ODR_25 8 /**< 25 Hz */
#define ADXL345_DT_ODR_50 9 /**< 50 Hz */
#define ADXL345_DT_ODR_100 10 /**< 100 Hz */
#define ADXL345_DT_ODR_200 11 /**< 200 Hz */
#define ADXL345_DT_ODR_400 12 /**< 400 Hz */
/** @} */

/** @} */
Expand Down
20 changes: 14 additions & 6 deletions include/zephyr/dt-bindings/sensor/adxl362.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,31 @@
*
* SPDX-License-Identifier: Apache-2.0
*/

/**
* @file
* @brief Header file for ADXL362 Devicetree constants
* @ingroup adxl362_interface
*/

#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_ADI_ADX362_H_
#define ZEPHYR_INCLUDE_DT_BINDINGS_ADI_ADX362_H_

/**
* @defgroup adxl362 ADXL362 DT Options
* @ingroup sensor_interface
* @defgroup adxl362_interface ADXL362
* @ingroup sensor_interface_ext
* @brief ADXL362 3-axis accelerometer
* @{
*/

/**
* @defgroup adxl362_fifo_mode FIFO mode options
* @{
*/
#define ADXL362_FIFO_MODE_DISABLED 0x0
#define ADXL362_FIFO_MODE_OLDEST_SAVED 0x1
#define ADXL362_FIFO_MODE_STREAM 0x2
#define ADXL362_FIFO_MODE_TRIGGERED 0x3
#define ADXL362_FIFO_MODE_DISABLED 0x0 /**< FIFO disabled */
#define ADXL362_FIFO_MODE_OLDEST_SAVED 0x1 /**< Oldest saved mode */
#define ADXL362_FIFO_MODE_STREAM 0x2 /**< Stream mode */
#define ADXL362_FIFO_MODE_TRIGGERED 0x3 /**< Triggered mode */

/** @} */

Expand Down
19 changes: 13 additions & 6 deletions include/zephyr/dt-bindings/sensor/adxl367.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,30 @@
*
* SPDX-License-Identifier: Apache-2.0
*/

/**
* @file
* @brief Header file for ADXL367 Devicetree constants
*/

#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_ADI_ADX367_H_
#define ZEPHYR_INCLUDE_DT_BINDINGS_ADI_ADX367_H_

/**
* @defgroup adxl367 ADXL367 DT Options
* @ingroup sensor_interface
* @defgroup adxl367_interface ADXL367
* @ingroup sensor_interface_ext
* @brief ADXL367 3-axis accelerometer
* @{
*/

/**
* @defgroup adxl367_fifo_mode FIFO mode options
* @{
*/
#define ADXL367_FIFO_MODE_DISABLED 0x0
#define ADXL367_FIFO_MODE_OLDEST_SAVED 0x1
#define ADXL367_FIFO_MODE_STREAM 0x2
#define ADXL367_FIFO_MODE_TRIGGERED 0x3
#define ADXL367_FIFO_MODE_DISABLED 0x0 /**< FIFO disabled */
#define ADXL367_FIFO_MODE_OLDEST_SAVED 0x1 /**< Oldest saved mode */
#define ADXL367_FIFO_MODE_STREAM 0x2 /**< Stream mode */
#define ADXL367_FIFO_MODE_TRIGGERED 0x3 /**< Triggered mode */
/** @} */

/** @} */
Expand Down
20 changes: 14 additions & 6 deletions include/zephyr/dt-bindings/sensor/adxl372.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,20 @@
*
* SPDX-License-Identifier: Apache-2.0
*/

/**
* @file
* @brief Header file for ADXL372 Devicetree constants
* @ingroup adxl372_interface
*/

#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_ADI_ADX372_H_
#define ZEPHYR_INCLUDE_DT_BINDINGS_ADI_ADX372_H_

/**
* @defgroup adxl372 ADXL372 DT Options
* @ingroup sensor_interface
* @defgroup adxl372_interface ADXL372
* @ingroup sensor_interface_ext
* @brief ADXL372 3-axis accelerometer
* @{
*/

Expand All @@ -17,10 +25,10 @@
* @{
*/

#define ADXL372_FIFO_MODE_BYPASSED 0x0
#define ADXL372_FIFO_MODE_STREAMED 0x1
#define ADXL372_FIFO_MODE_TRIGGERED 0x2
#define ADXL372_FIFO_MODE_OLD_SAVED 0x3
#define ADXL372_FIFO_MODE_BYPASSED 0x0 /**< FIFO disabled */
#define ADXL372_FIFO_MODE_STREAMED 0x1 /**< Stream mode */
#define ADXL372_FIFO_MODE_TRIGGERED 0x2 /**< Triggered mode */
#define ADXL372_FIFO_MODE_OLD_SAVED 0x3 /**< Oldest saved mode */

/** @} */

Expand Down
41 changes: 36 additions & 5 deletions include/zephyr/dt-bindings/sensor/afbr_s50.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,32 +4,63 @@
*
* SPDX-License-Identifier: Apache-2.0
*/

/**
* @file
* @brief Header file for AFBR-S50 Devicetree constants
* @ingroup afbr_s50_interface
*/

#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_BRCM_AFBR_S50_H_
#define ZEPHYR_INCLUDE_DT_BINDINGS_BRCM_AFBR_S50_H_

/**
* @name afbr_s50 Dual Frequency Mode Settings
* @defgroup afbr_s50_interface AFBR-S50
* @ingroup sensor_interface_ext
* @brief AFBR-S50 3D ToF sensor
* @{
*/
#define AFBR_S50_DT_DFM_MODE_OFF 0
#define AFBR_S50_DT_DFM_MODE_4X 1
#define AFBR_S50_DT_DFM_MODE_8X 2

/**
* @name Dual Frequency Mode Settings
*
* Dual Frequency Mode is a feature that allows the sensor to use two different modulation
* frequencies for the same measurement. This is useful to reduce the noise in the measurement.
*
* @{
*/
#define AFBR_S50_DT_DFM_MODE_OFF 0 /**< Off (single-frequency mode) */
#define AFBR_S50_DT_DFM_MODE_4X 1 /**< x4 mode */
#define AFBR_S50_DT_DFM_MODE_8X 2 /**< x8 mode */
/** @} */

/**
* @name afbr_s50 Measurement Modes
* @name Measurement Modes
* @{
*/

/** Short range mode */
#define AFBR_S50_DT_MODE_SHORT_RANGE 1
/** Long range mode */
#define AFBR_S50_DT_MODE_LONG_RANGE 2
/** High speed short range mode */
#define AFBR_S50_DT_MODE_HIGH_SPEED_SHORT_RANGE 5
/** High speed long range mode */
#define AFBR_S50_DT_MODE_HIGH_SPEED_LONG_RANGE 6
/** High precision short range mode */
#define AFBR_S50_DT_MODE_HIGH_PRECISION_SHORT_RANGE 9
/** Short range mode (laser class 2) */
#define AFBR_S50_DT_MODE_SHORT_RANGE_LASER_CLASS_2 129
/** Long range mode (laser class 2) */
#define AFBR_S50_DT_MODE_LONG_RANGE_LASER_CLASS_2 130
/** High speed short range mode (laser class 2) */
#define AFBR_S50_DT_MODE_HIGH_SPEED_SHORT_RANGE_LASER_CLASS_2 133
/** High speed long range mode (laser class 2) */
#define AFBR_S50_DT_MODE_HIGH_SPEED_LONG_RANGE_LASER_CLASS_2 134
/** High precision short range mode (laser class 2) */
#define AFBR_S50_DT_MODE_HIGH_PRECISION_SHORT_RANGE_LASER_CLASS_2 137
/** @} */

/** @} */

#endif /* ZEPHYR_INCLUDE_DT_BINDINGS_BRCM_AFBR_S50_H_ */
64 changes: 58 additions & 6 deletions include/zephyr/dt-bindings/sensor/apds9253.h
Original file line number Diff line number Diff line change
Expand Up @@ -5,51 +5,103 @@
* SPDX-License-Identifier: Apache-2.0
*/

/**
* @file
* @brief Header file for APDS9253 Devicetree constants
* @ingroup apds9253_interface
*/

#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_SENSOR_APDS9253_H_
#define ZEPHYR_INCLUDE_DT_BINDINGS_SENSOR_APDS9253_H_

/**
* @defgroup apds9253_interface APDS9253
* @ingroup sensor_interface_ext
* @brief APDS9253 ambient light RGB & IR sensor
* @{
*/

#include <zephyr/dt-bindings/dt-util.h>

/**
* @name apds9253 resolution channel references
* @name APDS9253 Resolution and Integration Time Settings
* @brief ADC resolution and integration time configuration constants
*
* These constants define the ADC resolution (13-20 bits) and corresponding
* integration times (3.125ms - 400ms). Higher resolution provides better
* accuracy but requires longer integration times.
*
* @{
*/

/** 20-bit resolution with 400ms integration time (highest accuracy) */
#define APDS9253_RESOLUTION_20BIT_400MS 0
/** 19-bit resolution with 200ms integration time */
#define APDS9253_RESOLUTION_19BIT_200MS BIT(4)
#define APDS9253_RESOLUTION_18BIT_100MS BIT(5) /* default */
/** 18-bit resolution with 100ms integration time (default) */
#define APDS9253_RESOLUTION_18BIT_100MS BIT(5)
/** 17-bit resolution with 50ms integration time */
#define APDS9253_RESOLUTION_17BIT_50MS (BIT(5) | BIT(4))
/** 16-bit resolution with 25ms integration time */
#define APDS9253_RESOLUTION_16BIT_25MS BIT(6)
/** 13-bit resolution with 3ms integration time (fastest response) */
#define APDS9253_RESOLUTION_13BIT_3MS (BIT(6) | BIT(4))

/** @} */

/**
* @name apds9253 measurement rate
* @name APDS9253 Measurement Rate Settings
* @brief Periodic measurement timing configuration constants

* These constants control the timing of periodic measurements in active mode.
* The measurement rate determines how frequently new sensor readings are taken.
*
* @{
*/

/** Measurement every 2 seconds - lowest power consumption */
#define APDS9253_MEASUREMENT_RATE_2000MS (BIT(2) | BIT(1) | BIT(0))
/** Measurement every 1 second */
#define APDS9253_MEASUREMENT_RATE_1000MS (BIT(2) | BIT(0))
/** Measurement every 500ms */
#define APDS9253_MEASUREMENT_RATE_500MS BIT(2)
/** Measurement every 200ms */
#define APDS9253_MEASUREMENT_RATE_200MS (BIT(1) | BIT(0))
#define APDS9253_MEASUREMENT_RATE_100MS BIT(1) /* default */
/** Measurement every 100ms (default) */
#define APDS9253_MEASUREMENT_RATE_100MS BIT(1)
/** Measurement every 50ms */
#define APDS9253_MEASUREMENT_RATE_50MS BIT(0)
/** Measurement every 25ms */
#define APDS9253_MEASUREMENT_RATE_25MS 0

/** @} */

/**
* @name apds9253 gain range
* @name APDS9253 Analog Gain Range Settings
* @brief Sensor sensitivity and dynamic range configuration constants
*
* These constants configure the analog gain of the light sensor, affecting
* the sensitivity and dynamic range. Higher gain provides better sensitivity
* for low-light conditions but reduces the maximum measurable light intensity.
*
* @{
*/

/** Gain factor 18× - highest sensitivity (max lux ~7,700) */
#define APDS9253_GAIN_RANGE_18 BIT(2)
/** Gain factor 9× */
#define APDS9253_GAIN_RANGE_9 (BIT(1) | BIT(0))
/** Gain factor 6× */
#define APDS9253_GAIN_RANGE_6 BIT(1)
#define APDS9253_GAIN_RANGE_3 BIT(0) /* default */
/** Gain factor 3× (default) */
#define APDS9253_GAIN_RANGE_3 BIT(0)
/** Gain factor 1× - lowest sensitivity (max lux ~144,000 lux)*/
#define APDS9253_GAIN_RANGE_1 0

/** @} */

/**
* @}
*/

#endif /* ZEPHYR_INCLUDE_DT_BINDINGS_SENSOR_APDS9253_H_*/
44 changes: 36 additions & 8 deletions include/zephyr/dt-bindings/sensor/bq274xx.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,17 +11,45 @@
* Datasheet: https://www.ti.com/lit/gpn/bq27427
* Technical reference manual: https://www.ti.com/lit/pdf/sluucd5
*/

/**
* @file
* @brief Header file for BQ274XX Devicetree constants
* @ingroup bq274xx_interface
*/

#ifndef ZEPHYR_INCLUDE_DT_BINDINGS_SENSOR_BQ274XX_H_
#define ZEPHYR_INCLUDE_DT_BINDINGS_SENSOR_BQ274XX_H_

/* Chemistry IDs for BQ27427 */
#define BQ27427_CHEM_ID_A 0x3230
#define BQ27427_CHEM_ID_B 0x1202
#define BQ27427_CHEM_ID_C 0x3142
/**
* @brief BQ274XX Fuel Gauge
* @defgroup bq274xx_interface BQ274XX
* @ingroup sensor_interface_ext
* @{
*/

/**
* @name Chemistry profiles for BQ27427
* @{
*/
#define BQ27427_CHEM_ID_A 0x3230 /**< Profile A (4.35 V Li-ion) */
#define BQ27427_CHEM_ID_B 0x1202 /**< Profile B (4.2 V Li-ion) */
#define BQ27427_CHEM_ID_C 0x3142 /**< Profile C (4.4 V Li-ion) */
/** @} */

/**
* @name Chemistry profiles for BQ27421 variants
* @{
*/
#define BQ27421_G1A_CHEM_ID 0x0128 /**< Profile A (4.2 V maximum charge voltage) */
#define BQ27421_G1B_CHEM_ID 0x0312 /**< Profile B (4.3 to 4.35 V maximum charge voltage) */
#define BQ27421_G1D_CHEM_ID 0x3142 /**< Profile D (4.3 to 4.4 V maximum charge voltage) */
/**
* @}
*/

/* Chemistry IDs for BQ27421 variants */
#define BQ27421_G1A_CHEM_ID 0x0128
#define BQ27421_G1B_CHEM_ID 0x0312
#define BQ27421_G1D_CHEM_ID 0x3142
/**
* @}
*/

#endif /* ZEPHYR_INCLUDE_DT_BINDINGS_SENSOR_BQ274XX_H_ */
Loading
Loading