From 6f8deb83e318da5410ccbb9a342ae8ae8bac3aa5 Mon Sep 17 00:00:00 2001 From: Frank <91616163+softhack007@users.noreply.github.com> Date: Sat, 17 Sep 2022 22:00:33 +0200 Subject: [PATCH] some relaxations for S2 and C3 - AR: changed "error" into warning. - reducing max_busses (for AR) not needed on S2 --- usermods/audioreactive/audio_source.h | 5 ++++- wled00/xml.cpp | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/usermods/audioreactive/audio_source.h b/usermods/audioreactive/audio_source.h index 22ef3334..c58d1991 100644 --- a/usermods/audioreactive/audio_source.h +++ b/usermods/audioreactive/audio_source.h @@ -24,7 +24,10 @@ // see https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/chip-series-comparison.html#related-documents // and https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/api-reference/peripherals/i2s.html#overview-of-all-modes #if defined(CONFIG_IDF_TARGET_ESP32C2) || defined(CONFIG_IDF_TARGET_ESP32C3) || defined(CONFIG_IDF_TARGET_ESP32S2) || defined(CONFIG_IDF_TARGET_ESP32C5) || defined(CONFIG_IDF_TARGET_ESP32C6) || defined(CONFIG_IDF_TARGET_ESP32H2) - #error This audio reactive usermod does not support ESP32-C2, ESP32-C3 or ESP32-S2. + // there are two things in these MCUs that could lead to problems with audio processing: + // * no floating point hardware (FPU) support - FFT uses float calculations. If done in software, a strong slow-down can be expected (between 8x and 20x) + // * single core, so FFT task might slow down other things like LED updates + #warning This audio reactive usermod does not support ESP32-C2, ESP32-C3 or ESP32-S2. #endif /* ToDo: remove. ES7243 is controlled via compiler defines diff --git a/wled00/xml.cpp b/wled00/xml.cpp index d83bbb95..13fafcdd 100644 --- a/wled00/xml.cpp +++ b/wled00/xml.cpp @@ -367,7 +367,7 @@ void getSettingsJS(byte subPage, char* dest) // set limits oappend(SET_F("bLimits(")); - #if defined(ESP32) && defined(USERMOD_AUDIOREACTIVE) && !defined(CONFIG_IDF_TARGET_ESP32S3) && !defined(CONFIG_IDF_TARGET_ESP32C3) + #if defined(ESP32) && defined(USERMOD_AUDIOREACTIVE) && !defined(CONFIG_IDF_TARGET_ESP32S2) && !defined(CONFIG_IDF_TARGET_ESP32S3) && !defined(CONFIG_IDF_TARGET_ESP32C3) // requested by @softhack007 https://github.com/blazoncek/WLED/issues/33 oappend(itoa(WLED_MAX_BUSSES-2,nS,10)); oappend(","); // prevent use of I2S buses if audio installed. ESP32-S3 currently does not support these busses. #else