ESPHome  2024.2.0
Public Member Functions | Protected Member Functions | Protected Attributes
esphome::i2s_audio::I2SAudioMicrophone Class Reference

#include <i2s_audio_microphone.h>

Inheritance diagram for esphome::i2s_audio::I2SAudioMicrophone:
esphome::i2s_audio::I2SAudioIn esphome::microphone::Microphone esphome::Component esphome::Parented< I2SAudioComponent >

Public Member Functions

void setup () override
 
void start () override
 
void stop () override
 
void loop () override
 
void set_din_pin (int8_t pin)
 
void set_pdm (bool pdm)
 
size_t read (int16_t *buf, size_t len) override
 
void set_adc_channel (adc1_channel_t channel)
 
void set_channel (i2s_channel_fmt_t channel)
 
void set_sample_rate (uint32_t sample_rate)
 
void set_bits_per_sample (i2s_bits_per_sample_t bits_per_sample)
 
void set_use_apll (uint32_t use_apll)
 
- Public Member Functions inherited from esphome::Parented< I2SAudioComponent >
 Parented ()
 
 Parented (I2SAudioComponent *parent)
 
I2SAudioComponent * get_parent () const
 Get the parent of this object. More...
 
void set_parent (I2SAudioComponent *parent)
 Set the parent of this object. More...
 
- Public Member Functions inherited from esphome::microphone::Microphone
void add_data_callback (std::function< void(const std::vector< int16_t > &)> &&data_callback)
 
bool is_running () const
 
bool is_stopped () const
 
- Public Member Functions inherited from esphome::Component
virtual void dump_config ()
 
virtual float get_setup_priority () const
 priority of setup(). 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...
 
bool is_failed ()
 
bool is_ready ()
 
virtual bool can_proceed ()
 
bool status_has_warning ()
 
bool status_has_error ()
 
void status_set_warning ()
 
void status_set_error ()
 
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...
 

Protected Member Functions

void start_ ()
 
void stop_ ()
 
void read_ ()
 
- Protected Member Functions inherited from esphome::Component
virtual void call_loop ()
 
virtual void call_setup ()
 
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

int8_t din_pin_ {I2S_PIN_NO_CHANGE}
 
adc1_channel_t adc_channel_ {ADC1_CHANNEL_MAX}
 
bool adc_ {false}
 
bool pdm_ {false}
 
i2s_channel_fmt_t channel_
 
uint32_t sample_rate_
 
i2s_bits_per_sample_t bits_per_sample_
 
bool use_apll_
 
HighFrequencyLoopRequester high_freq_
 
- Protected Attributes inherited from esphome::Parented< I2SAudioComponent >
I2SAudioComponent * parent_
 
- Protected Attributes inherited from esphome::microphone::Microphone
State state_ {STATE_STOPPED}
 
CallbackManager< void(const std::vector< int16_t > &)> data_callbacks_ {}
 
- Protected Attributes inherited from esphome::Component
uint32_t component_state_ {0x0000}
 State of this component. More...
 
float setup_priority_override_ {NAN}
 
const char * component_source_ {nullptr}
 

Detailed Description

Definition at line 13 of file i2s_audio_microphone.h.

Member Function Documentation

◆ loop()

void esphome::i2s_audio::I2SAudioMicrophone::loop ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 145 of file i2s_audio_microphone.cpp.

◆ read()

size_t esphome::i2s_audio::I2SAudioMicrophone::read ( int16_t *  buf,
size_t  len 
)
overridevirtual

Implements esphome::microphone::Microphone.

Definition at line 106 of file i2s_audio_microphone.cpp.

◆ read_()

void esphome::i2s_audio::I2SAudioMicrophone::read_ ( )
protected

Definition at line 137 of file i2s_audio_microphone.cpp.

◆ set_adc_channel()

void esphome::i2s_audio::I2SAudioMicrophone::set_adc_channel ( adc1_channel_t  channel)
inline

Definition at line 27 of file i2s_audio_microphone.h.

◆ set_bits_per_sample()

void esphome::i2s_audio::I2SAudioMicrophone::set_bits_per_sample ( i2s_bits_per_sample_t  bits_per_sample)
inline

Definition at line 35 of file i2s_audio_microphone.h.

◆ set_channel()

void esphome::i2s_audio::I2SAudioMicrophone::set_channel ( i2s_channel_fmt_t  channel)
inline

Definition at line 33 of file i2s_audio_microphone.h.

◆ set_din_pin()

void esphome::i2s_audio::I2SAudioMicrophone::set_din_pin ( int8_t  pin)
inline

Definition at line 21 of file i2s_audio_microphone.h.

◆ set_pdm()

void esphome::i2s_audio::I2SAudioMicrophone::set_pdm ( bool  pdm)
inline

Definition at line 22 of file i2s_audio_microphone.h.

◆ set_sample_rate()

void esphome::i2s_audio::I2SAudioMicrophone::set_sample_rate ( uint32_t  sample_rate)
inline

Definition at line 34 of file i2s_audio_microphone.h.

◆ set_use_apll()

void esphome::i2s_audio::I2SAudioMicrophone::set_use_apll ( uint32_t  use_apll)
inline

Definition at line 36 of file i2s_audio_microphone.h.

◆ setup()

void esphome::i2s_audio::I2SAudioMicrophone::setup ( )
overridevirtual

Reimplemented from esphome::Component.

Definition at line 17 of file i2s_audio_microphone.cpp.

◆ start()

void esphome::i2s_audio::I2SAudioMicrophone::start ( )
overridevirtual

Implements esphome::microphone::Microphone.

Definition at line 37 of file i2s_audio_microphone.cpp.

◆ start_()

void esphome::i2s_audio::I2SAudioMicrophone::start_ ( )
protected

Definition at line 44 of file i2s_audio_microphone.cpp.

◆ stop()

void esphome::i2s_audio::I2SAudioMicrophone::stop ( )
overridevirtual

Implements esphome::microphone::Microphone.

Definition at line 88 of file i2s_audio_microphone.cpp.

◆ stop_()

void esphome::i2s_audio::I2SAudioMicrophone::stop_ ( )
protected

Definition at line 98 of file i2s_audio_microphone.cpp.

Field Documentation

◆ adc_

bool esphome::i2s_audio::I2SAudioMicrophone::adc_ {false}
protected

Definition at line 46 of file i2s_audio_microphone.h.

◆ adc_channel_

adc1_channel_t esphome::i2s_audio::I2SAudioMicrophone::adc_channel_ {ADC1_CHANNEL_MAX}
protected

Definition at line 45 of file i2s_audio_microphone.h.

◆ bits_per_sample_

i2s_bits_per_sample_t esphome::i2s_audio::I2SAudioMicrophone::bits_per_sample_
protected

Definition at line 51 of file i2s_audio_microphone.h.

◆ channel_

i2s_channel_fmt_t esphome::i2s_audio::I2SAudioMicrophone::channel_
protected

Definition at line 49 of file i2s_audio_microphone.h.

◆ din_pin_

int8_t esphome::i2s_audio::I2SAudioMicrophone::din_pin_ {I2S_PIN_NO_CHANGE}
protected

Definition at line 43 of file i2s_audio_microphone.h.

◆ high_freq_

HighFrequencyLoopRequester esphome::i2s_audio::I2SAudioMicrophone::high_freq_
protected

Definition at line 54 of file i2s_audio_microphone.h.

◆ pdm_

bool esphome::i2s_audio::I2SAudioMicrophone::pdm_ {false}
protected

Definition at line 48 of file i2s_audio_microphone.h.

◆ sample_rate_

uint32_t esphome::i2s_audio::I2SAudioMicrophone::sample_rate_
protected

Definition at line 50 of file i2s_audio_microphone.h.

◆ use_apll_

bool esphome::i2s_audio::I2SAudioMicrophone::use_apll_
protected

Definition at line 52 of file i2s_audio_microphone.h.


The documentation for this class was generated from the following files: