10#include <freertos/FreeRTOS.h>
11#include <freertos/event_groups.h>
12#include <freertos/semphr.h>
13#include <freertos/task.h>
20 void setup()
override;
22 void start()
override;
38#if SOC_I2S_SUPPORTS_ADC
57 void fix_dc_offset_(std::vector<uint8_t> &data);
59 size_t read_(uint8_t *buf,
size_t len, TickType_t ticks_to_wait);
73#if SOC_I2S_SUPPORTS_ADC
SemaphoreHandle_t active_listeners_semaphore_
TaskHandle_t task_handle_
int32_t dc_offset_prev_output_
EventGroupHandle_t event_group_
void set_adc_channel(adc_channel_t channel)
void set_correct_dc_offset(bool correct_dc_offset)
void set_din_pin(int8_t pin)
void configure_stream_settings_()
Starts the I2S driver.
void dump_config() override
int32_t dc_offset_prev_input_
static void mic_task(void *params)
i2s_chan_handle_t rx_handle_
adc1_channel_t adc_channel_
Providing packet encoding functions for exchanging data with a remote host.