From 2fc85625b0e8152a4dde2c0fdc64407401acefc8 Mon Sep 17 00:00:00 2001 From: Dmitry Kaukov Date: Sat, 29 Mar 2025 20:05:55 +1100 Subject: [PATCH] Fix for mono mode for DAC Continuous/DMA Mode (idf5) --- src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V1.h | 2 +- src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V2.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V1.h b/src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V1.h index f89bd472d..54638d1bd 100644 --- a/src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V1.h +++ b/src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V1.h @@ -437,7 +437,7 @@ class AnalogDriverESP32V1 : public AnalogDriverBase { .freq_hz = (uint32_t)cfg.sample_rate, .offset = 0, .clk_src = cfg.use_apll ? DAC_DIGI_CLK_SRC_APLL : DAC_DIGI_CLK_SRC_DEFAULT, // Using APLL as clock source to get a wider frequency range - .chan_mode = DAC_CHANNEL_MODE_ALTER, + .chan_mode = cfg.channels == 1 ? DAC_CHANNEL_MODE_SIMUL : DAC_CHANNEL_MODE_ALTER, }; // Allocate continuous channels if (dac_continuous_new_channels(&cont_cfg, &dac_handle) != ESP_OK) { diff --git a/src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V2.h b/src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V2.h index 8e471c9b3..dac7a4e0e 100644 --- a/src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V2.h +++ b/src/AudioTools/CoreAudio/AudioAnalog/AnalogDriverESP32V2.h @@ -277,7 +277,7 @@ class AnalogDriverESP32V1 : public AnalogDriverBase { .freq_hz = (uint32_t)cfg.sample_rate, .offset = 0, .clk_src = cfg.use_apll ? DAC_DIGI_CLK_SRC_APLL : DAC_DIGI_CLK_SRC_DEFAULT, // Using APLL as clock source to get a wider frequency range - .chan_mode = DAC_CHANNEL_MODE_ALTER, + .chan_mode = cfg.channels == 1 ? DAC_CHANNEL_MODE_SIMUL : DAC_CHANNEL_MODE_ALTER, }; // Allocate continuous channels if (dac_continuous_new_channels(&cont_cfg, &dac_handle) != ESP_OK) {