项目构建报错FAILED: esp-idf/main/CMakeFiles/__idf_main.dir/audio_codecs/tcircles3_audio_codec.cc.obj
xiaozhi-esp32/main/audio_codecs/tcircles3_audio_codec.cc:88:5: error: designator order for field 'i2s_std_clk_config_t::ext_clk_freq_hz' does not match declaration order in 'i2s_std_clk_config_t'
esp sdk版本号多少?
esp sdk版本号多少?
5.5
mac 编译通过后,运行报错: E (362) i2c.master: I2C transaction unexpected nack detected E (362) i2c.master: s_i2c_synchronous_transaction(888): I2C transaction failed E (372) i2c.master: i2c_master_transmit(1116): I2C transaction failed E (382) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(179): i2c transaction failed E (392) lcd_panel.ssd1306: panel_ssd1306_init(147): io tx param SSD1306_CMD_SET_MULTIPLEX failed E (402) Ssd1306Display: Failed to initialize display 导致不能唤醒,请问有方法解决吗
xiaozhi-esp32/main/audio_codecs/tcircles3_audio_codec.cc:88:5: error: designator order for field 'i2s_std_clk_config_t::ext_clk_freq_hz' does not match declaration order in 'i2s_std_clk_config_t'
需要切换到5.3
mac 编译通过后,运行报错: E (362) i2c.master: I2C transaction unexpected nack detected E (362) i2c.master: s_i2c_synchronous_transaction(888): I2C transaction failed E (372) i2c.master: i2c_master_transmit(1116): I2C transaction failed E (382) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(179): i2c transaction failed E (392) lcd_panel.ssd1306: panel_ssd1306_init(147): io tx param SSD1306_CMD_SET_MULTIPLEX failed E (402) Ssd1306Display: Failed to initialize display 导致不能唤醒,请问有方法解决吗
@78
如果修改tcircles3_audio_codec.cc,希望可以将45引脚相关操作实现可配置化,有的设备驱动与t-circle-s3相同,却没有MAX98357A_SD_MODE类似引脚,复用起来比较麻烦。
可以帮忙修改一下提交一个PR。
xiaozhi-esp32/main/audio_codecs/tcircles3_audio_codec.cc:88:5: error: designator order for field 'i2s_std_clk_config_t::ext_clk_freq_hz' does not match declaration order in 'i2s_std_clk_config_t'
改下顺序试试:
i2s_std_config_t mic_config = {
.clk_cfg ={
.sample_rate_hz = static_cast<uint32_t>(input_sample_rate_),
.clk_src = I2S_CLK_SRC_DEFAULT,
.ext_clk_freq_hz = 0,
.mclk_multiple = I2S_MCLK_MULTIPLE_256,
},
// .clk_cfg = I2S_STD_CLK_DEFAULT_CONFIG(static_cast<uint32_t>(input_sample_rate_)),
.slot_cfg = I2S_STD_PHILIPS_SLOT_DEFAULT_CONFIG(I2S_DATA_BIT_WIDTH_16BIT, I2S_SLOT_MODE_STEREO),
.gpio_cfg ={
.mclk = I2S_GPIO_UNUSED,
.bclk = mic_bclk,
.ws = mic_ws,
.dout = I2S_GPIO_UNUSED,
.din = mic_data,
.invert_flags = {
.mclk_inv = false,
.bclk_inv = false,
.ws_inv = false,
}
}
};
i2s_std_config_t spkr_config = {
.clk_cfg ={
.sample_rate_hz = static_cast<uint32_t>(11025),
.clk_src = I2S_CLK_SRC_DEFAULT,
.ext_clk_freq_hz = 0,
.mclk_multiple = I2S_MCLK_MULTIPLE_256,
},
// .clk_cfg = I2S_STD_CLK_DEFAULT_CONFIG(static_cast<uint32_t>(11025)),
.slot_cfg = I2S_STD_PHILIPS_SLOT_DEFAULT_CONFIG(I2S_DATA_BIT_WIDTH_16BIT, I2S_SLOT_MODE_STEREO),
.gpio_cfg ={
.mclk = I2S_GPIO_UNUSED,
.bclk = spkr_bclk,
.ws = spkr_lrclk,
.dout = spkr_data,
.din = I2S_GPIO_UNUSED,
.invert_flags = {
.mclk_inv = false,
.bclk_inv = false,
.ws_inv = false
}
}
};
建议测试后,提交PR,我合并进来。我手上没有这个设备。