/* * Copyright (c) 2022 Badgerd Technologies B.V. * * SPDX-License-Identifier: Apache-2.0 * * Driver is developed to be used with Zephyr. And it only supports i2c interface. * * Author: Talha Can Havadar * */ #ifndef ZEPHYR_INCLUDE_DRIVERS_SENSOR_BMP581_USER_H_ #define ZEPHYR_INCLUDE_DRIVERS_SENSOR_BMP581_USER_H_ #include #define BMP5_SEA_LEVEL_PRESSURE_PA 101325 /* ODR settings */ #define BMP5_ODR_240_HZ 0x00 #define BMP5_ODR_218_5_HZ 0x01 #define BMP5_ODR_199_1_HZ 0x02 #define BMP5_ODR_179_2_HZ 0x03 #define BMP5_ODR_160_HZ 0x04 #define BMP5_ODR_149_3_HZ 0x05 #define BMP5_ODR_140_HZ 0x06 #define BMP5_ODR_129_8_HZ 0x07 #define BMP5_ODR_120_HZ 0x08 #define BMP5_ODR_110_1_HZ 0x09 #define BMP5_ODR_100_2_HZ 0x0A #define BMP5_ODR_89_6_HZ 0x0B #define BMP5_ODR_80_HZ 0x0C #define BMP5_ODR_70_HZ 0x0D #define BMP5_ODR_60_HZ 0x0E #define BMP5_ODR_50_HZ 0x0F #define BMP5_ODR_45_HZ 0x10 #define BMP5_ODR_40_HZ 0x11 #define BMP5_ODR_35_HZ 0x12 #define BMP5_ODR_30_HZ 0x13 #define BMP5_ODR_25_HZ 0x14 #define BMP5_ODR_20_HZ 0x15 #define BMP5_ODR_15_HZ 0x16 #define BMP5_ODR_10_HZ 0x17 #define BMP5_ODR_05_HZ 0x18 #define BMP5_ODR_04_HZ 0x19 #define BMP5_ODR_03_HZ 0x1A #define BMP5_ODR_02_HZ 0x1B #define BMP5_ODR_01_HZ 0x1C #define BMP5_ODR_0_5_HZ 0x1D #define BMP5_ODR_0_250_HZ 0x1E #define BMP5_ODR_0_125_HZ 0x1F /* Oversampling for temperature and pressure */ #define BMP5_OVERSAMPLING_1X 0x00 #define BMP5_OVERSAMPLING_2X 0x01 #define BMP5_OVERSAMPLING_4X 0x02 #define BMP5_OVERSAMPLING_8X 0x03 #define BMP5_OVERSAMPLING_16X 0x04 #define BMP5_OVERSAMPLING_32X 0x05 #define BMP5_OVERSAMPLING_64X 0x06 #define BMP5_OVERSAMPLING_128X 0x07 /* IIR filter for temperature and pressure */ #define BMP5_IIR_FILTER_BYPASS 0x00 #define BMP5_IIR_FILTER_COEFF_1 0x01 #define BMP5_IIR_FILTER_COEFF_3 0x02 #define BMP5_IIR_FILTER_COEFF_7 0x03 #define BMP5_IIR_FILTER_COEFF_15 0x04 #define BMP5_IIR_FILTER_COEFF_31 0x05 #define BMP5_IIR_FILTER_COEFF_63 0x06 #define BMP5_IIR_FILTER_COEFF_127 0x07 /* Custom ATTR values */ /* This is used to enable IIR config, * keep in mind that disabling IIR back in runtime is not * supported yet */ #define BMP5_ATTR_IIR_CONFIG (SENSOR_ATTR_PRIV_START + 1u) #define BMP5_ATTR_POWER_MODE (SENSOR_ATTR_PRIV_START + 2u) enum bmp5_powermode { /*! Standby powermode */ BMP5_POWERMODE_STANDBY, /*! Normal powermode */ BMP5_POWERMODE_NORMAL, /*! Forced powermode */ BMP5_POWERMODE_FORCED, /*! Continuous powermode */ BMP5_POWERMODE_CONTINUOUS, /*! Deep standby powermode */ BMP5_POWERMODE_DEEP_STANDBY }; #endif /* ZEPHYR_INCLUDE_DRIVERS_SENSOR_BMP581_USER_H_ */