ESPHome
2025.4.0
|
#include <bmp581.h>
Public Member Functions | |
float | get_setup_priority () const override |
void | dump_config () override |
void | setup () override |
void | update () override |
void | set_temperature_sensor (sensor::Sensor *temperature_sensor) |
void | set_pressure_sensor (sensor::Sensor *pressure_sensor) |
void | set_temperature_oversampling_config (Oversampling temperature_oversampling) |
void | set_pressure_oversampling_config (Oversampling pressure_oversampling) |
void | set_temperature_iir_filter_config (IIRFilter iir_temperature_level) |
void | set_pressure_iir_filter_config (IIRFilter iir_pressure_level) |
void | set_conversion_time (uint8_t conversion_time) |
![]() | |
PollingComponent () | |
PollingComponent (uint32_t update_interval) | |
Initialize this polling component with the given update interval in ms. More... | |
virtual void | set_update_interval (uint32_t update_interval) |
Manually set the update interval in ms for this polling object. More... | |
void | call_setup () override |
virtual uint32_t | get_update_interval () const |
Get the update interval in ms of this sensor. More... | |
void | start_poller () |
void | stop_poller () |
![]() | |
virtual void | loop () |
This method will be called repeatedly. More... | |
float | get_actual_setup_priority () const |
void | set_setup_priority (float priority) |
virtual float | get_loop_priority () const |
priority of loop(). More... | |
void | call () |
virtual void | on_shutdown () |
virtual void | on_safe_shutdown () |
uint32_t | get_component_state () const |
virtual void | mark_failed () |
Mark this component as failed. More... | |
void | mark_failed (const char *message) |
bool | is_failed () const |
bool | is_ready () const |
virtual bool | can_proceed () |
bool | status_has_warning () const |
bool | status_has_error () const |
void | status_set_warning (const char *message="unspecified") |
void | status_set_error (const char *message="unspecified") |
void | status_clear_warning () |
void | status_clear_error () |
void | status_momentary_warning (const std::string &name, uint32_t length=5000) |
void | status_momentary_error (const std::string &name, uint32_t length=5000) |
bool | has_overridden_loop () const |
void | set_component_source (const char *source) |
Set where this component was loaded from for some debug messages. More... | |
const char * | get_component_source () const |
Get the integration where this component was declared as a string. More... | |
![]() | |
I2CDevice ()=default | |
we use the C++ default constructor More... | |
void | set_i2c_address (uint8_t address) |
We store the address of the device on the bus. More... | |
void | set_i2c_bus (I2CBus *bus) |
we store the pointer to the I2CBus to use More... | |
I2CRegister | reg (uint8_t a_register) |
calls the I2CRegister constructor More... | |
I2CRegister16 | reg16 (uint16_t a_register) |
calls the I2CRegister16 constructor More... | |
ErrorCode | read (uint8_t *data, size_t len) |
reads an array of bytes from the device using an I2CBus More... | |
ErrorCode | read_register (uint8_t a_register, uint8_t *data, size_t len, bool stop=true) |
reads an array of bytes from a specific register in the I²C device More... | |
ErrorCode | read_register16 (uint16_t a_register, uint8_t *data, size_t len, bool stop=true) |
reads an array of bytes from a specific register in the I²C device More... | |
ErrorCode | write (const uint8_t *data, size_t len, bool stop=true) |
writes an array of bytes to a device using an I2CBus More... | |
ErrorCode | write_register (uint8_t a_register, const uint8_t *data, size_t len, bool stop=true) |
writes an array of bytes to a specific register in the I²C device More... | |
ErrorCode | write_register16 (uint16_t a_register, const uint8_t *data, size_t len, bool stop=true) |
write an array of bytes to a specific register in the I²C device More... | |
bool | read_bytes (uint8_t a_register, uint8_t *data, uint8_t len) |
Compat APIs All methods below have been added for compatibility reasons. More... | |
bool | read_bytes_raw (uint8_t *data, uint8_t len) |
template<size_t N> | |
optional< std::array< uint8_t, N > > | read_bytes (uint8_t a_register) |
template<size_t N> | |
optional< std::array< uint8_t, N > > | read_bytes_raw () |
bool | read_bytes_16 (uint8_t a_register, uint16_t *data, uint8_t len) |
bool | read_byte (uint8_t a_register, uint8_t *data, bool stop=true) |
optional< uint8_t > | read_byte (uint8_t a_register) |
bool | read_byte_16 (uint8_t a_register, uint16_t *data) |
bool | write_bytes (uint8_t a_register, const uint8_t *data, uint8_t len, bool stop=true) |
bool | write_bytes (uint8_t a_register, const std::vector< uint8_t > &data) |
template<size_t N> | |
bool | write_bytes (uint8_t a_register, const std::array< uint8_t, N > &data) |
bool | write_bytes_16 (uint8_t a_register, const uint16_t *data, uint8_t len) |
bool | write_byte (uint8_t a_register, uint8_t data, bool stop=true) |
bool | write_byte_16 (uint8_t a_register, uint16_t data) |
Protected Types | |
enum | ErrorCode { NONE = 0, ERROR_COMMUNICATION_FAILED, ERROR_WRONG_CHIP_ID, ERROR_SENSOR_STATUS, ERROR_SENSOR_RESET, ERROR_PRIME_IIR_FAILED } |
Protected Member Functions | |
bool | check_data_readiness_ () |
bool | prime_iir_filter_ () |
bool | read_temperature_ (float &temperature) |
bool | read_temperature_and_pressure_ (float &temperature, float &pressure) |
bool | reset_ () |
bool | start_measurement_ () |
bool | write_iir_settings_ (IIRFilter temperature_iir, IIRFilter pressure_iir) |
bool | write_interrupt_source_settings_ (bool data_ready_enable) |
bool | write_oversampling_settings_ (Oversampling temperature_oversampling, Oversampling pressure_oversampling) |
bool | write_power_mode_ (OperationMode mode) |
![]() | |
virtual void | call_loop () |
virtual void | call_dump_config () |
void | set_interval (const std::string &name, uint32_t interval, std::function< void()> &&f) |
Set an interval function with a unique name. More... | |
void | set_interval (uint32_t interval, std::function< void()> &&f) |
bool | cancel_interval (const std::string &name) |
Cancel an interval function. More... | |
void | set_retry (const std::string &name, uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f) |
Set an retry function with a unique name. More... | |
void | set_retry (uint32_t initial_wait_time, uint8_t max_attempts, std::function< RetryResult(uint8_t)> &&f, float backoff_increase_factor=1.0f) |
bool | cancel_retry (const std::string &name) |
Cancel a retry function. More... | |
void | set_timeout (const std::string &name, uint32_t timeout, std::function< void()> &&f) |
Set a timeout function with a unique name. More... | |
void | set_timeout (uint32_t timeout, std::function< void()> &&f) |
bool | cancel_timeout (const std::string &name) |
Cancel a timeout function. More... | |
void | defer (const std::string &name, std::function< void()> &&f) |
Defer a callback to the next loop() call. More... | |
void | defer (std::function< void()> &&f) |
Defer a callback to the next loop() call. More... | |
bool | cancel_defer (const std::string &name) |
Cancel a defer callback using the specified name, name must not be empty. More... | |
Protected Attributes | |
sensor::Sensor * | temperature_sensor_ {nullptr} |
sensor::Sensor * | pressure_sensor_ {nullptr} |
Oversampling | temperature_oversampling_ |
Oversampling | pressure_oversampling_ |
IIRFilter | iir_temperature_level_ |
IIRFilter | iir_pressure_level_ |
uint8_t | conversion_time_ |
enum esphome::bmp581::BMP581Component::ErrorCode | NONE |
union { | |
struct { | |
uint8_t drdy_data_reg_en: 1 | |
uint8_t fifo_full_en: 1 | |
uint8_t fifo_ths_en: 1 | |
uint8_t oor_p_en: 1 | |
} bit | |
uint8_t reg | |
} | int_source_ = {.reg = 0} |
union { | |
struct { | |
uint8_t drdy_data_reg: 1 | |
uint8_t fifo_full: 1 | |
uint8_t fifo_ths: 1 | |
uint8_t oor_p: 1 | |
uint8_t por: 1 | |
} bit | |
uint8_t reg | |
} | int_status_ = {.reg = 0} |
union { | |
struct { | |
uint8_t status_core_rdy: 1 | |
uint8_t status_nvm_rdy: 1 | |
uint8_t status_nvm_err: 1 | |
uint8_t status_nvm_cmd_err: 1 | |
uint8_t status_boot_err_corrected: 1 | |
uint8_t __pad0__: 2 | |
uint8_t st_crack_pass: 1 | |
} bit | |
uint8_t reg | |
} | status_ = {.reg = 0} |
union { | |
struct { | |
uint8_t comp_pt_en: 2 | |
uint8_t iir_flush_forced_en: 1 | |
uint8_t shdw_sel_iir_t: 1 | |
uint8_t fifo_sel_iir_t: 1 | |
uint8_t shdw_sel_iir_p: 1 | |
uint8_t fifo_sel_iir_p: 1 | |
uint8_t oor_sel_iir_p: 1 | |
} bit | |
uint8_t reg | |
} | dsp_config_ = {.reg = 0} |
union { | |
struct { | |
uint8_t set_iir_t: 3 | |
uint8_t set_iir_p: 3 | |
} bit | |
uint8_t reg | |
} | iir_config_ = {.reg = 0} |
union { | |
struct { | |
uint8_t osr_t: 3 | |
uint8_t osr_p: 3 | |
uint8_t press_en: 1 | |
} bit | |
uint8_t reg | |
} | osr_config_ = {.reg = 0} |
union { | |
struct { | |
uint8_t pwr_mode: 2 | |
uint8_t odr: 5 | |
uint8_t deep_dis: 1 | |
} bit | |
uint8_t reg | |
} | odr_config_ = {.reg = 0} |
![]() | |
uint32_t | update_interval_ |
![]() | |
uint32_t | component_state_ {0x0000} |
State of this component. More... | |
float | setup_priority_override_ {NAN} |
const char * | component_source_ {nullptr} |
std::string | error_message_ {} |
![]() | |
uint8_t | address_ {0x00} |
store the address of the device on the bus More... | |
I2CBus * | bus_ {nullptr} |
pointer to I2CBus instance More... | |
|
protected |
|
protected |
Definition at line 344 of file bmp581.cpp.
|
overridevirtual |
Reimplemented from esphome::Component.
Definition at line 68 of file bmp581.cpp.
|
inlineoverridevirtual |
Reimplemented from esphome::Component.
|
protected |
Definition at line 378 of file bmp581.cpp.
|
protected |
Definition at line 439 of file bmp581.cpp.
|
protected |
Definition at line 467 of file bmp581.cpp.
|
protected |
Definition at line 500 of file bmp581.cpp.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
overridevirtual |
6) Configure and prime IIR Filter(s), if enabled //
Reimplemented from esphome::Component.
Definition at line 112 of file bmp581.cpp.
|
protected |
Definition at line 527 of file bmp581.cpp.
|
overridevirtual |
Implements esphome::PollingComponent.
Definition at line 267 of file bmp581.cpp.
|
protected |
Definition at line 538 of file bmp581.cpp.
|
protected |
Definition at line 564 of file bmp581.cpp.
|
protected |
Definition at line 574 of file bmp581.cpp.
|
protected |
Definition at line 585 of file bmp581.cpp.
struct { ... } esphome::bmp581::BMP581Component::bit |
struct { ... } esphome::bmp581::BMP581Component::bit |
struct { ... } esphome::bmp581::BMP581Component::bit |
struct { ... } esphome::bmp581::BMP581Component::bit |
struct { ... } esphome::bmp581::BMP581Component::bit |
struct { ... } esphome::bmp581::BMP581Component::bit |
struct { ... } esphome::bmp581::BMP581Component::bit |
|
protected |
union { ... } esphome::bmp581::BMP581Component::dsp_config_ |
union { ... } esphome::bmp581::BMP581Component::iir_config_ |
uint8_t esphome::bmp581::BMP581Component::iir_flush_forced_en |
|
protected |
|
protected |
union { ... } esphome::bmp581::BMP581Component::int_source_ |
union { ... } esphome::bmp581::BMP581Component::int_status_ |
|
protected |
union { ... } esphome::bmp581::BMP581Component::odr_config_ |
union { ... } esphome::bmp581::BMP581Component::osr_config_ |
|
protected |
|
protected |
union { ... } esphome::bmp581::BMP581Component::status_ |
uint8_t esphome::bmp581::BMP581Component::status_boot_err_corrected |
uint8_t esphome::bmp581::BMP581Component::status_nvm_cmd_err |
|
protected |
|
protected |