From 01ecba26e6a751bc5b643b23368518512a8a98ac Mon Sep 17 00:00:00 2001 From: jorgenkraghjakobsen Date: Thu, 11 Jun 2020 00:32:21 +0200 Subject: [PATCH] play on lyraTboard - no volume fast hack prove of concept --- CMakeLists.txt | 2 +- README.md | 19 +- components/dsp_processor/Kconfig.projbuild | 6 + components/dsp_processor/dsp_processor.c | 19 +- main/main.c | 26 ++- sdkconfig | 242 ++++++++++++++++----- sdkconfig.old | 239 +++++++++++++++----- 7 files changed, 432 insertions(+), 121 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 91576c1..1441b9e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,6 +2,6 @@ # CMakeLists in this exact order for cmake to work correctly cmake_minimum_required(VERSION 3.5) - +include($ENV{ADF_PATH}/CMakeLists.txt) include($ENV{IDF_PATH}/tools/cmake/project.cmake) project(snapclient) diff --git a/README.md b/README.md index 3ab72f1..3fc7a77 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,9 @@ I have continued the work from @badaix and @bridadan towards a ESP32 Snapcast cl Please check out the task list and feel free to fill in. -I have used the Infineon MA12070P Multi level Class D combined coded/amp due to its superior power effecienty on a high supply rail. It allow me to battery power system with good play back time at normal listen level and stil have the power to start the party. +I have used the Infineon MA12070P Multi level Class D combined coded/amp due to its superior power effecienty on a high supply rail. It allows battery power system with good playback time at normal listen level and stil have the power to start the party. + +### Codebase The codebase is split into components and build on vanilla ESP-IDF. I stil have some refactoring on the todo list as the concept has started to settle and allow for new features can be added in a stuctured manner. In the code you will find parts that are only partly related features and still not on the task list. Components @@ -27,6 +29,21 @@ Components - esp-dsp : Port of ESP-DSP library - stripped version - submodule considered - dsp_processor : Audio Processor and I2S low level interface including sync buffer +### Hardware + - ESP pinout MA12070P + ------------------------------------------------------ + -> I2S_BCK Audio Clock 3.072 MHz + -> I2S_WS Frame Word Select or L/R + -> GND Ground + -> I2S_DI Audio data 24bits LSB first + -> MCLK Master clk connect to I2S_BCK + -> I2C_SCL I2C clock + -> I2C_SDA I2C Data + -> GND Ground + -> NENABLE Amplifier Enable active low + -> NMUTE Amplifier Mute active low + + ## Build Clone this repo: diff --git a/components/dsp_processor/Kconfig.projbuild b/components/dsp_processor/Kconfig.projbuild index 574acc2..2e8c696 100644 --- a/components/dsp_processor/Kconfig.projbuild +++ b/components/dsp_processor/Kconfig.projbuild @@ -7,6 +7,12 @@ menu "ESP32 audio buffer and I2S pin config" help Need wrover class modules with large SPRAM to have required buffers for Snapcast network delay + config BITS_PER_SAMPLE + int "bits per sample output to i2s driver" + default 32 + help + Select number of bits per sample for codec configed and connected to esp32 i2s dma hw + config MASTER_I2S_BCK_PIN int "Master i2s bck" default 23 diff --git a/components/dsp_processor/dsp_processor.c b/components/dsp_processor/dsp_processor.c index e739251..7763b9c 100644 --- a/components/dsp_processor/dsp_processor.c +++ b/components/dsp_processor/dsp_processor.c @@ -10,16 +10,19 @@ #include "dsps_biquad_gen.h" #include "dsps_biquad.h" //#include "websocket_if.h" - #include "dsp_processor.h" + +uint32_t bits_per_sample = CONFIG_BITS_PER_SAMPLE; + static xTaskHandle s_dsp_i2s_task_handle = NULL; static RingbufHandle_t s_ringbuf_i2s = NULL; + extern xQueueHandle i2s_queue; extern uint32_t buffer_ms; - extern uint8_t muteCH[4]; + uint dspFlow = dspfStereo; ptype_t bq[6]; @@ -29,7 +32,7 @@ void setup_dsp_i2s(uint32_t sample_rate, bool slave_i2s) i2s_config_t i2s_config0 = { .mode = I2S_MODE_MASTER | I2S_MODE_TX, // Only TX .sample_rate = sample_rate, - .bits_per_sample = 32, + .bits_per_sample = bits_per_sample, .channel_format = I2S_CHANNEL_FMT_RIGHT_LEFT, // 2-channels .communication_format = I2S_COMM_FORMAT_I2S | I2S_COMM_FORMAT_I2S_MSB, .dma_buf_count = 8, @@ -46,7 +49,7 @@ void setup_dsp_i2s(uint32_t sample_rate, bool slave_i2s) .data_out_num = CONFIG_MASTER_I2S_DATAOUT_PIN, .data_in_num = -1 //Not used }; - + i2s_driver_install(0, &i2s_config0, 7, &i2s_queue); i2s_zero_dma_buffer(0); i2s_set_pin(0, &pin_config0); @@ -54,7 +57,7 @@ void setup_dsp_i2s(uint32_t sample_rate, bool slave_i2s) i2s_config_t i2s_config1 = { .mode = I2S_MODE_SLAVE | I2S_MODE_TX, // Only TX - Slave channel .sample_rate = sample_rate, - .bits_per_sample = 32, + .bits_per_sample = bits_per_sample, .channel_format = I2S_CHANNEL_FMT_RIGHT_LEFT, // 2-channels .communication_format = I2S_COMM_FORMAT_I2S_MSB, .dma_buf_count = 8, @@ -169,7 +172,11 @@ static void dsp_i2s_task_handler(void *arg) audio[i*4+2] = (muteCH[1] == 1)? 0 : audio[i*4+2]; audio[i*4+3] = (muteCH[1] == 1)? 0 : audio[i*4+3]; } - i2s_write_expand(0, (char*)audio, chunk_size,16,32, &bytes_written, portMAX_DELAY); + if (bits_per_sample == 16) { + i2s_write(0,(char*)audio, chunk_size, &bytes_written, portMAX_DELAY); + } else + { i2s_write_expand(0, (char*)audio, chunk_size,16,32, &bytes_written, portMAX_DELAY); + } } break; case dspfBiamp : diff --git a/main/main.c b/main/main.c index c2979c3..d87b26e 100644 --- a/main/main.c +++ b/main/main.c @@ -15,6 +15,11 @@ #include "esp_log.h" #include "nvs_flash.h" +//ESP-IDF stuff +#include "board.h" +//#include "audio_element.h" +#include "es8388.h" + #include "lwip/err.h" #include "lwip/sockets.h" @@ -354,7 +359,6 @@ static void http_get_task(void *pvParameters) result = base_message_deserialize(&base_message, buff, size); if (result) { ESP_LOGI(TAG, "Failed to read base message: %d\r\n", result); - // TODO there should be a big circular buffer or something for this return; } diff = (int32_t)(base_message.sent.usec-now.tv_usec)/1000 ; @@ -395,16 +399,21 @@ static void http_get_task(void *pvParameters) } ESP_LOGI(TAG, "Received codec header message\r\n"); - + size = codec_header_message.size; start = codec_header_message.payload; - ESP_LOGI(TAG, "Codec : %s , Size: %d \n",codec_header_message.codec,size); - + if (strcmp(codec_header_message.codec,"opus") == 0) { + ESP_LOGI(TAG, "Codec : %s , Size: %d \n",codec_header_message.codec,size); + } else + { + ESP_LOGI(TAG, "Codec : %s not supported\n",codec_header_message.codec); + ESP_LOGI(TAG, "Change encoder codec to opus in /etc/snapserver.conf on server\n"); + return; + } uint32_t rate; memcpy(&rate, start+4,sizeof(rate)); uint16_t bits; memcpy(&bits, start+8,sizeof(bits)); - //uint16_t channels; memcpy(&channels, start+10,sizeof(channels)); ESP_LOGI(TAG, "Opus sampleformat: %d:%d:%d\n",rate,bits,channels); int error = 0; @@ -628,7 +637,12 @@ void app_main(void) //setup_ma120(); //ma120_setup_audio(0x20); - setup_ma120x0(); + ESP_LOGI(TAG, "[ 2 ] Start codec chip"); + audio_board_handle_t board_handle = audio_board_init(); + audio_hal_ctrl_codec(board_handle->audio_hal, AUDIO_HAL_CODEC_MODE_BOTH, AUDIO_HAL_CTRL_START); + es8388_read_all(); + i2s_mclk_gpio_select(0,0); + //setup_ma120x0(); //setup_rtp_i2s(); diff --git a/sdkconfig b/sdkconfig index 5a1600b..510be13 100644 --- a/sdkconfig +++ b/sdkconfig @@ -2,6 +2,7 @@ # Automatically generated file. DO NOT EDIT. # Espressif IoT Development Framework (ESP-IDF) Project Configuration # +CONFIG_IDF_CMAKE=y CONFIG_IDF_TARGET="esp32" CONFIG_IDF_TARGET_ESP32=y CONFIG_IDF_FIRMWARE_CHIP_ID=0x0000 @@ -10,8 +11,6 @@ CONFIG_IDF_FIRMWARE_CHIP_ID=0x0000 # SDK tool configuration # CONFIG_SDK_TOOLPREFIX="xtensa-esp32-elf-" -CONFIG_SDK_PYTHON="python" -CONFIG_SDK_MAKE_WARN_UNDEFINED_VARIABLES=y # CONFIG_SDK_TOOLCHAIN_SUPPORTS_TIME_WIDE_64_BITS is not set # end of SDK tool configuration @@ -25,19 +24,6 @@ CONFIG_APP_BUILD_BOOTLOADER=y CONFIG_APP_BUILD_USE_FLASH_SECTIONS=y # end of Build type -# -# Merus MA120x0 interface Configuration -# -CONFIG_MA120X0_NENABLE_PIN=13 -CONFIG_MA120X0_NMUTE_PIN=12 -CONFIG_MA120X0_ENABLE_PIN=5 -CONFIG_MA120X0_NERR_PIN=34 -CONFIG_MA120X0_NCLIP_PIN=35 -CONFIG_MA120X0_SCL_PIN=32 -CONFIG_MA120X0_SDA_PIN=33 -CONFIG_MA120X0_I2C_ADDR=0x20 -# end of Merus MA120x0 interface Configuration - # # Application manager # @@ -81,30 +67,10 @@ CONFIG_BOOTLOADER_RESERVE_RTC_SIZE=0 # CONFIG_SECURE_FLASH_ENC_ENABLED is not set # end of Security features -# -# ESP32 audio buffer and I2S pin config -# -CONFIG_USE_PSRAM=y -CONFIG_MASTER_I2S_BCK_PIN=25 -CONFIG_MASTER_I2S_LRCK_PIN=26 -CONFIG_MASTER_I2S_DATAOUT_PIN=27 -CONFIG_SLAVE_I2S_BCK_PIN=26 -CONFIG_SLAVE_I2S_LRCK_PIN=12 -CONFIG_SLAVE_I2S_DATAOUT_PIN=5 -# end of ESP32 audio buffer and I2S pin config - # # Serial flasher config # -CONFIG_ESPTOOLPY_PORT="/dev/ttyUSB0" -CONFIG_ESPTOOLPY_BAUD_115200B=y -# CONFIG_ESPTOOLPY_BAUD_230400B is not set -# CONFIG_ESPTOOLPY_BAUD_921600B is not set -# CONFIG_ESPTOOLPY_BAUD_2MB is not set -# CONFIG_ESPTOOLPY_BAUD_OTHER is not set CONFIG_ESPTOOLPY_BAUD_OTHER_VAL=115200 -CONFIG_ESPTOOLPY_BAUD=115200 -CONFIG_ESPTOOLPY_COMPRESSED=y # CONFIG_ESPTOOLPY_FLASHMODE_QIO is not set # CONFIG_ESPTOOLPY_FLASHMODE_QOUT is not set CONFIG_ESPTOOLPY_FLASHMODE_DIO=y @@ -151,6 +117,180 @@ CONFIG_PARTITION_TABLE_OFFSET=0x8000 # CONFIG_PARTITION_TABLE_MD5 is not set # end of Partition Table +# +# Merus MA120x0 interface Configuration +# +CONFIG_MA120X0_NENABLE_PIN=13 +CONFIG_MA120X0_NMUTE_PIN=12 +CONFIG_MA120X0_ENABLE_PIN=5 +CONFIG_MA120X0_NERR_PIN=34 +CONFIG_MA120X0_NCLIP_PIN=35 +CONFIG_MA120X0_SCL_PIN=32 +CONFIG_MA120X0_SDA_PIN=33 +CONFIG_MA120X0_I2C_ADDR=0x20 +# end of Merus MA120x0 interface Configuration + +# +# ESP32 audio buffer and I2S pin config +# +CONFIG_USE_PSRAM=y +CONFIG_BITS_PER_SAMPLE=16 +CONFIG_MASTER_I2S_BCK_PIN=5 +CONFIG_MASTER_I2S_LRCK_PIN=25 +CONFIG_MASTER_I2S_DATAOUT_PIN=26 +CONFIG_SLAVE_I2S_BCK_PIN=26 +CONFIG_SLAVE_I2S_LRCK_PIN=12 +CONFIG_SLAVE_I2S_DATAOUT_PIN=5 +# end of ESP32 audio buffer and I2S pin config + +# +# Audio HAL +# +# CONFIG_AUDIO_BOARD_CUSTOM is not set +CONFIG_ESP_LYRAT_V4_3_BOARD=y +# CONFIG_ESP_LYRAT_V4_2_BOARD is not set +# CONFIG_ESP_LYRATD_MSC_V2_1_BOARD is not set +# CONFIG_ESP_LYRATD_MSC_V2_2_BOARD is not set +# CONFIG_ESP_LYRAT_MINI_V1_1_BOARD is not set +# CONFIG_ESP32_KORVO_DU1906_BOARD is not set +# CONFIG_ESP32_S2_KALUGA_1_V1_2_BOARD is not set +# end of Audio HAL + +# +# Recorder Engine Configuration +# +# CONFIG_REC_ENG_ENABLE_VAD_ONLY is not set +# CONFIG_REC_ENG_ENABLE_VAD_WWE is not set +CONFIG_REC_ENG_ENABLE_VAD_WWE_AMR=y +# end of Recorder Engine Configuration + +# +# ESP Speech Recognition +# +# CONFIG_SR_MODEL_WN3_QUANT is not set +# CONFIG_SR_MODEL_WN4_QUANT is not set +CONFIG_SR_MODEL_WN5_QUANT=y +# CONFIG_SR_MODEL_WN6_QUANT is not set +CONFIG_SR_WN5_HILEXIN=y +# CONFIG_SR_WN5X2_HILEXIN is not set +# CONFIG_SR_WN5X3_HILEXIN is not set +# CONFIG_SR_WN5_NIHAOXIAOZHI is not set +# CONFIG_SR_WN5X2_NIHAOXIAOZHI is not set +# CONFIG_SR_WN5X3_NIHAOXIAOZHI is not set +# CONFIG_SR_WN5X3_HIJESON is not set +# CONFIG_SR_WN5X3_NIHAOXIAOXIN is not set +# CONFIG_SR_WN5_CUSTOMIZED_WORD is not set +CONFIG_SR_MN1_MODEL_QUANT=y +CONFIG_SR_MN1_CHINESE=y +# CONFIG_SR_MN1_ENGLISH is not set +CONFIG_SPEECH_COMMANDS_NUM=20 + +# +# Add speech commands +# +CONFIG_CN_SPEECH_COMMAND_ID0="da kai kong tiao" +CONFIG_CN_SPEECH_COMMAND_ID1="guan bi kong tiao" +CONFIG_CN_SPEECH_COMMAND_ID2="zeng da feng su" +CONFIG_CN_SPEECH_COMMAND_ID3="jian xiao feng su" +CONFIG_CN_SPEECH_COMMAND_ID4="sheng gao yi du" +CONFIG_CN_SPEECH_COMMAND_ID5="jiang di yi du" +CONFIG_CN_SPEECH_COMMAND_ID6="zhi re mo shi" +CONFIG_CN_SPEECH_COMMAND_ID7="zhi leng mo shi" +CONFIG_CN_SPEECH_COMMAND_ID8="song feng mo shi" +CONFIG_CN_SPEECH_COMMAND_ID9="jie neng mo shi" +CONFIG_CN_SPEECH_COMMAND_ID10="guan bi jie neng mo shi" +CONFIG_CN_SPEECH_COMMAND_ID11="chu shi mo shi" +CONFIG_CN_SPEECH_COMMAND_ID12="guan bi chu shi mo shi" +CONFIG_CN_SPEECH_COMMAND_ID13="da kai lan ya" +CONFIG_CN_SPEECH_COMMAND_ID14="guan bi lan ya" +CONFIG_CN_SPEECH_COMMAND_ID15="bo fang ge qu" +CONFIG_CN_SPEECH_COMMAND_ID16="zan ting bo fang" +CONFIG_CN_SPEECH_COMMAND_ID17="ding shi yi xiao shi" +CONFIG_CN_SPEECH_COMMAND_ID18="da kai dian deng" +CONFIG_CN_SPEECH_COMMAND_ID19="guan bi dian deng" +CONFIG_CN_SPEECH_COMMAND_ID20="" +CONFIG_CN_SPEECH_COMMAND_ID21="" +CONFIG_CN_SPEECH_COMMAND_ID22="" +CONFIG_CN_SPEECH_COMMAND_ID23="" +CONFIG_CN_SPEECH_COMMAND_ID24="" +CONFIG_CN_SPEECH_COMMAND_ID25="" +CONFIG_CN_SPEECH_COMMAND_ID26="" +CONFIG_CN_SPEECH_COMMAND_ID27="" +CONFIG_CN_SPEECH_COMMAND_ID28="" +CONFIG_CN_SPEECH_COMMAND_ID29="" +CONFIG_CN_SPEECH_COMMAND_ID30="" +CONFIG_CN_SPEECH_COMMAND_ID31="" +CONFIG_CN_SPEECH_COMMAND_ID32="" +CONFIG_CN_SPEECH_COMMAND_ID33="" +CONFIG_CN_SPEECH_COMMAND_ID34="" +CONFIG_CN_SPEECH_COMMAND_ID35="" +CONFIG_CN_SPEECH_COMMAND_ID36="" +CONFIG_CN_SPEECH_COMMAND_ID37="" +CONFIG_CN_SPEECH_COMMAND_ID38="" +CONFIG_CN_SPEECH_COMMAND_ID39="" +CONFIG_CN_SPEECH_COMMAND_ID40="" +CONFIG_CN_SPEECH_COMMAND_ID41="" +CONFIG_CN_SPEECH_COMMAND_ID42="" +CONFIG_CN_SPEECH_COMMAND_ID43="" +CONFIG_CN_SPEECH_COMMAND_ID44="" +CONFIG_CN_SPEECH_COMMAND_ID45="" +CONFIG_CN_SPEECH_COMMAND_ID46="" +CONFIG_CN_SPEECH_COMMAND_ID47="" +CONFIG_CN_SPEECH_COMMAND_ID48="" +CONFIG_CN_SPEECH_COMMAND_ID49="" +CONFIG_CN_SPEECH_COMMAND_ID50="" +CONFIG_CN_SPEECH_COMMAND_ID51="" +CONFIG_CN_SPEECH_COMMAND_ID52="" +CONFIG_CN_SPEECH_COMMAND_ID53="" +CONFIG_CN_SPEECH_COMMAND_ID54="" +CONFIG_CN_SPEECH_COMMAND_ID55="" +CONFIG_CN_SPEECH_COMMAND_ID56="" +CONFIG_CN_SPEECH_COMMAND_ID57="" +CONFIG_CN_SPEECH_COMMAND_ID58="" +CONFIG_CN_SPEECH_COMMAND_ID59="" +CONFIG_CN_SPEECH_COMMAND_ID60="" +CONFIG_CN_SPEECH_COMMAND_ID61="" +CONFIG_CN_SPEECH_COMMAND_ID62="" +CONFIG_CN_SPEECH_COMMAND_ID63="" +CONFIG_CN_SPEECH_COMMAND_ID64="" +CONFIG_CN_SPEECH_COMMAND_ID65="" +CONFIG_CN_SPEECH_COMMAND_ID66="" +CONFIG_CN_SPEECH_COMMAND_ID67="" +CONFIG_CN_SPEECH_COMMAND_ID68="" +CONFIG_CN_SPEECH_COMMAND_ID69="" +CONFIG_CN_SPEECH_COMMAND_ID70="" +CONFIG_CN_SPEECH_COMMAND_ID71="" +CONFIG_CN_SPEECH_COMMAND_ID72="" +CONFIG_CN_SPEECH_COMMAND_ID73="" +CONFIG_CN_SPEECH_COMMAND_ID74="" +CONFIG_CN_SPEECH_COMMAND_ID75="" +CONFIG_CN_SPEECH_COMMAND_ID76="" +CONFIG_CN_SPEECH_COMMAND_ID77="" +CONFIG_CN_SPEECH_COMMAND_ID78="" +CONFIG_CN_SPEECH_COMMAND_ID79="" +CONFIG_CN_SPEECH_COMMAND_ID80="" +CONFIG_CN_SPEECH_COMMAND_ID81="" +CONFIG_CN_SPEECH_COMMAND_ID82="" +CONFIG_CN_SPEECH_COMMAND_ID83="" +CONFIG_CN_SPEECH_COMMAND_ID84="" +CONFIG_CN_SPEECH_COMMAND_ID85="" +CONFIG_CN_SPEECH_COMMAND_ID86="" +CONFIG_CN_SPEECH_COMMAND_ID87="" +CONFIG_CN_SPEECH_COMMAND_ID88="" +CONFIG_CN_SPEECH_COMMAND_ID89="" +CONFIG_CN_SPEECH_COMMAND_ID90="" +CONFIG_CN_SPEECH_COMMAND_ID91="" +CONFIG_CN_SPEECH_COMMAND_ID92="" +CONFIG_CN_SPEECH_COMMAND_ID93="" +CONFIG_CN_SPEECH_COMMAND_ID94="" +CONFIG_CN_SPEECH_COMMAND_ID95="" +CONFIG_CN_SPEECH_COMMAND_ID96="" +CONFIG_CN_SPEECH_COMMAND_ID97="" +CONFIG_CN_SPEECH_COMMAND_ID98="" +CONFIG_CN_SPEECH_COMMAND_ID99="" +# end of Add speech commands +# end of ESP Speech Recognition + # # Compiler options # @@ -373,23 +513,6 @@ CONFIG_ESP32_DPORT_DIS_INTERRUPT_LVL=5 # CONFIG_PM_ENABLE is not set # end of Power Management -# -# Memory protection -# -CONFIG_ESP32S2_MEMPROT_FEATURE=y -CONFIG_ESP32S2_MEMPROT_FEATURE_LOCK=y -# end of Memory protection - -# -# Cache config -# -# end of Cache config - -CONFIG_ESP32S2_TRACEMEM_RESERVE_DRAM=0x0 -CONFIG_ESP32S2_ULP_COPROC_RESERVE_MEM=0 -CONFIG_ESP32S2_DEBUG_OCDAWARE=y -CONFIG_ESP32S2_BROWNOUT_DET=y - # # ADC-Calibration # @@ -1033,6 +1156,18 @@ CONFIG_SPIFFS_USE_MTIME=y # end of Debug Configuration # end of SPIFFS Configuration +# +# TinyUSB +# + +# +# Descriptor configuration +# +CONFIG_USB_DESC_CUSTOM_VID=0x1234 +CONFIG_USB_DESC_CUSTOM_PID=0x5678 +# end of Descriptor configuration +# end of TinyUSB + # # Unity unit testing library # @@ -1095,8 +1230,6 @@ CONFIG_WPA_MBEDTLS_CRYPTO=y # Deprecated options for backward compatibility CONFIG_TOOLPREFIX="xtensa-esp32-elf-" -CONFIG_PYTHON="python" -CONFIG_MAKE_WARN_UNDEFINED_VARIABLES=y # CONFIG_LOG_BOOTLOADER_LEVEL_NONE is not set # CONFIG_LOG_BOOTLOADER_LEVEL_ERROR is not set # CONFIG_LOG_BOOTLOADER_LEVEL_WARN is not set @@ -1165,7 +1298,6 @@ CONFIG_ESP32_RTC_CLOCK_SOURCE_INTERNAL_RC=y # CONFIG_DISABLE_BASIC_ROM_CONSOLE is not set # CONFIG_NO_BLOBS is not set # CONFIG_COMPATIBLE_PRE_V2_1_BOOTLOADERS is not set -# CONFIG_WIFI_LWIP_ALLOCATION_FROM_SPIRAM_FIRST is not set CONFIG_SYSTEM_EVENT_QUEUE_SIZE=32 CONFIG_SYSTEM_EVENT_TASK_STACK_SIZE=2304 CONFIG_MAIN_TASK_STACK_SIZE=3584 diff --git a/sdkconfig.old b/sdkconfig.old index b75cb19..764e882 100644 --- a/sdkconfig.old +++ b/sdkconfig.old @@ -2,6 +2,7 @@ # Automatically generated file. DO NOT EDIT. # Espressif IoT Development Framework (ESP-IDF) Project Configuration # +CONFIG_IDF_CMAKE=y CONFIG_IDF_TARGET="esp32" CONFIG_IDF_TARGET_ESP32=y CONFIG_IDF_FIRMWARE_CHIP_ID=0x0000 @@ -10,8 +11,6 @@ CONFIG_IDF_FIRMWARE_CHIP_ID=0x0000 # SDK tool configuration # CONFIG_SDK_TOOLPREFIX="xtensa-esp32-elf-" -CONFIG_SDK_PYTHON="python" -CONFIG_SDK_MAKE_WARN_UNDEFINED_VARIABLES=y # CONFIG_SDK_TOOLCHAIN_SUPPORTS_TIME_WIDE_64_BITS is not set # end of SDK tool configuration @@ -25,19 +24,6 @@ CONFIG_APP_BUILD_BOOTLOADER=y CONFIG_APP_BUILD_USE_FLASH_SECTIONS=y # end of Build type -# -# Merus MA120x0 interface Configuration -# -CONFIG_MA120X0_NENABLE_PIN=13 -CONFIG_MA120X0_NMUTE_PIN=12 -CONFIG_MA120X0_ENABLE_PIN=5 -CONFIG_MA120X0_NERR_PIN=34 -CONFIG_MA120X0_NCLIP_PIN=35 -CONFIG_MA120X0_SCL_PIN=32 -CONFIG_MA120X0_SDA_PIN=33 -CONFIG_MA120X0_I2C_ADDR=0x20 -# end of Merus MA120x0 interface Configuration - # # Application manager # @@ -81,30 +67,10 @@ CONFIG_BOOTLOADER_RESERVE_RTC_SIZE=0 # CONFIG_SECURE_FLASH_ENC_ENABLED is not set # end of Security features -# -# ESP32 audio I2S config -# -# CONFIG_USE_PSRAM is not set -CONFIG_MASTER_I2S_BCK_PIN=25 -CONFIG_MASTER_I2S_LRCK_PIN=26 -CONFIG_MASTER_I2S_DATAOUT_PIN=27 -CONFIG_SLAVE_I2S_BCK_PIN=26 -CONFIG_SLAVE_I2S_LRCK_PIN=12 -CONFIG_SLAVE_I2S_DATAOUT_PIN=5 -# end of ESP32 audio I2S config - # # Serial flasher config # -CONFIG_ESPTOOLPY_PORT="/dev/ttyUSB0" -CONFIG_ESPTOOLPY_BAUD_115200B=y -# CONFIG_ESPTOOLPY_BAUD_230400B is not set -# CONFIG_ESPTOOLPY_BAUD_921600B is not set -# CONFIG_ESPTOOLPY_BAUD_2MB is not set -# CONFIG_ESPTOOLPY_BAUD_OTHER is not set CONFIG_ESPTOOLPY_BAUD_OTHER_VAL=115200 -CONFIG_ESPTOOLPY_BAUD=115200 -CONFIG_ESPTOOLPY_COMPRESSED=y # CONFIG_ESPTOOLPY_FLASHMODE_QIO is not set # CONFIG_ESPTOOLPY_FLASHMODE_QOUT is not set CONFIG_ESPTOOLPY_FLASHMODE_DIO=y @@ -151,6 +117,180 @@ CONFIG_PARTITION_TABLE_OFFSET=0x8000 # CONFIG_PARTITION_TABLE_MD5 is not set # end of Partition Table +# +# Merus MA120x0 interface Configuration +# +CONFIG_MA120X0_NENABLE_PIN=13 +CONFIG_MA120X0_NMUTE_PIN=12 +CONFIG_MA120X0_ENABLE_PIN=5 +CONFIG_MA120X0_NERR_PIN=34 +CONFIG_MA120X0_NCLIP_PIN=35 +CONFIG_MA120X0_SCL_PIN=32 +CONFIG_MA120X0_SDA_PIN=33 +CONFIG_MA120X0_I2C_ADDR=0x20 +# end of Merus MA120x0 interface Configuration + +# +# ESP32 audio buffer and I2S pin config +# +CONFIG_USE_PSRAM=y +CONFIG_BITS_PER_SAMPLE=32 +CONFIG_MASTER_I2S_BCK_PIN=25 +CONFIG_MASTER_I2S_LRCK_PIN=26 +CONFIG_MASTER_I2S_DATAOUT_PIN=27 +CONFIG_SLAVE_I2S_BCK_PIN=26 +CONFIG_SLAVE_I2S_LRCK_PIN=12 +CONFIG_SLAVE_I2S_DATAOUT_PIN=5 +# end of ESP32 audio buffer and I2S pin config + +# +# Audio HAL +# +# CONFIG_AUDIO_BOARD_CUSTOM is not set +CONFIG_ESP_LYRAT_V4_3_BOARD=y +# CONFIG_ESP_LYRAT_V4_2_BOARD is not set +# CONFIG_ESP_LYRATD_MSC_V2_1_BOARD is not set +# CONFIG_ESP_LYRATD_MSC_V2_2_BOARD is not set +# CONFIG_ESP_LYRAT_MINI_V1_1_BOARD is not set +# CONFIG_ESP32_KORVO_DU1906_BOARD is not set +# CONFIG_ESP32_S2_KALUGA_1_V1_2_BOARD is not set +# end of Audio HAL + +# +# Recorder Engine Configuration +# +# CONFIG_REC_ENG_ENABLE_VAD_ONLY is not set +# CONFIG_REC_ENG_ENABLE_VAD_WWE is not set +CONFIG_REC_ENG_ENABLE_VAD_WWE_AMR=y +# end of Recorder Engine Configuration + +# +# ESP Speech Recognition +# +# CONFIG_SR_MODEL_WN3_QUANT is not set +# CONFIG_SR_MODEL_WN4_QUANT is not set +CONFIG_SR_MODEL_WN5_QUANT=y +# CONFIG_SR_MODEL_WN6_QUANT is not set +CONFIG_SR_WN5_HILEXIN=y +# CONFIG_SR_WN5X2_HILEXIN is not set +# CONFIG_SR_WN5X3_HILEXIN is not set +# CONFIG_SR_WN5_NIHAOXIAOZHI is not set +# CONFIG_SR_WN5X2_NIHAOXIAOZHI is not set +# CONFIG_SR_WN5X3_NIHAOXIAOZHI is not set +# CONFIG_SR_WN5X3_HIJESON is not set +# CONFIG_SR_WN5X3_NIHAOXIAOXIN is not set +# CONFIG_SR_WN5_CUSTOMIZED_WORD is not set +CONFIG_SR_MN1_MODEL_QUANT=y +CONFIG_SR_MN1_CHINESE=y +# CONFIG_SR_MN1_ENGLISH is not set +CONFIG_SPEECH_COMMANDS_NUM=20 + +# +# Add speech commands +# +CONFIG_CN_SPEECH_COMMAND_ID0="da kai kong tiao" +CONFIG_CN_SPEECH_COMMAND_ID1="guan bi kong tiao" +CONFIG_CN_SPEECH_COMMAND_ID2="zeng da feng su" +CONFIG_CN_SPEECH_COMMAND_ID3="jian xiao feng su" +CONFIG_CN_SPEECH_COMMAND_ID4="sheng gao yi du" +CONFIG_CN_SPEECH_COMMAND_ID5="jiang di yi du" +CONFIG_CN_SPEECH_COMMAND_ID6="zhi re mo shi" +CONFIG_CN_SPEECH_COMMAND_ID7="zhi leng mo shi" +CONFIG_CN_SPEECH_COMMAND_ID8="song feng mo shi" +CONFIG_CN_SPEECH_COMMAND_ID9="jie neng mo shi" +CONFIG_CN_SPEECH_COMMAND_ID10="guan bi jie neng mo shi" +CONFIG_CN_SPEECH_COMMAND_ID11="chu shi mo shi" +CONFIG_CN_SPEECH_COMMAND_ID12="guan bi chu shi mo shi" +CONFIG_CN_SPEECH_COMMAND_ID13="da kai lan ya" +CONFIG_CN_SPEECH_COMMAND_ID14="guan bi lan ya" +CONFIG_CN_SPEECH_COMMAND_ID15="bo fang ge qu" +CONFIG_CN_SPEECH_COMMAND_ID16="zan ting bo fang" +CONFIG_CN_SPEECH_COMMAND_ID17="ding shi yi xiao shi" +CONFIG_CN_SPEECH_COMMAND_ID18="da kai dian deng" +CONFIG_CN_SPEECH_COMMAND_ID19="guan bi dian deng" +CONFIG_CN_SPEECH_COMMAND_ID20="" +CONFIG_CN_SPEECH_COMMAND_ID21="" +CONFIG_CN_SPEECH_COMMAND_ID22="" +CONFIG_CN_SPEECH_COMMAND_ID23="" +CONFIG_CN_SPEECH_COMMAND_ID24="" +CONFIG_CN_SPEECH_COMMAND_ID25="" +CONFIG_CN_SPEECH_COMMAND_ID26="" +CONFIG_CN_SPEECH_COMMAND_ID27="" +CONFIG_CN_SPEECH_COMMAND_ID28="" +CONFIG_CN_SPEECH_COMMAND_ID29="" +CONFIG_CN_SPEECH_COMMAND_ID30="" +CONFIG_CN_SPEECH_COMMAND_ID31="" +CONFIG_CN_SPEECH_COMMAND_ID32="" +CONFIG_CN_SPEECH_COMMAND_ID33="" +CONFIG_CN_SPEECH_COMMAND_ID34="" +CONFIG_CN_SPEECH_COMMAND_ID35="" +CONFIG_CN_SPEECH_COMMAND_ID36="" +CONFIG_CN_SPEECH_COMMAND_ID37="" +CONFIG_CN_SPEECH_COMMAND_ID38="" +CONFIG_CN_SPEECH_COMMAND_ID39="" +CONFIG_CN_SPEECH_COMMAND_ID40="" +CONFIG_CN_SPEECH_COMMAND_ID41="" +CONFIG_CN_SPEECH_COMMAND_ID42="" +CONFIG_CN_SPEECH_COMMAND_ID43="" +CONFIG_CN_SPEECH_COMMAND_ID44="" +CONFIG_CN_SPEECH_COMMAND_ID45="" +CONFIG_CN_SPEECH_COMMAND_ID46="" +CONFIG_CN_SPEECH_COMMAND_ID47="" +CONFIG_CN_SPEECH_COMMAND_ID48="" +CONFIG_CN_SPEECH_COMMAND_ID49="" +CONFIG_CN_SPEECH_COMMAND_ID50="" +CONFIG_CN_SPEECH_COMMAND_ID51="" +CONFIG_CN_SPEECH_COMMAND_ID52="" +CONFIG_CN_SPEECH_COMMAND_ID53="" +CONFIG_CN_SPEECH_COMMAND_ID54="" +CONFIG_CN_SPEECH_COMMAND_ID55="" +CONFIG_CN_SPEECH_COMMAND_ID56="" +CONFIG_CN_SPEECH_COMMAND_ID57="" +CONFIG_CN_SPEECH_COMMAND_ID58="" +CONFIG_CN_SPEECH_COMMAND_ID59="" +CONFIG_CN_SPEECH_COMMAND_ID60="" +CONFIG_CN_SPEECH_COMMAND_ID61="" +CONFIG_CN_SPEECH_COMMAND_ID62="" +CONFIG_CN_SPEECH_COMMAND_ID63="" +CONFIG_CN_SPEECH_COMMAND_ID64="" +CONFIG_CN_SPEECH_COMMAND_ID65="" +CONFIG_CN_SPEECH_COMMAND_ID66="" +CONFIG_CN_SPEECH_COMMAND_ID67="" +CONFIG_CN_SPEECH_COMMAND_ID68="" +CONFIG_CN_SPEECH_COMMAND_ID69="" +CONFIG_CN_SPEECH_COMMAND_ID70="" +CONFIG_CN_SPEECH_COMMAND_ID71="" +CONFIG_CN_SPEECH_COMMAND_ID72="" +CONFIG_CN_SPEECH_COMMAND_ID73="" +CONFIG_CN_SPEECH_COMMAND_ID74="" +CONFIG_CN_SPEECH_COMMAND_ID75="" +CONFIG_CN_SPEECH_COMMAND_ID76="" +CONFIG_CN_SPEECH_COMMAND_ID77="" +CONFIG_CN_SPEECH_COMMAND_ID78="" +CONFIG_CN_SPEECH_COMMAND_ID79="" +CONFIG_CN_SPEECH_COMMAND_ID80="" +CONFIG_CN_SPEECH_COMMAND_ID81="" +CONFIG_CN_SPEECH_COMMAND_ID82="" +CONFIG_CN_SPEECH_COMMAND_ID83="" +CONFIG_CN_SPEECH_COMMAND_ID84="" +CONFIG_CN_SPEECH_COMMAND_ID85="" +CONFIG_CN_SPEECH_COMMAND_ID86="" +CONFIG_CN_SPEECH_COMMAND_ID87="" +CONFIG_CN_SPEECH_COMMAND_ID88="" +CONFIG_CN_SPEECH_COMMAND_ID89="" +CONFIG_CN_SPEECH_COMMAND_ID90="" +CONFIG_CN_SPEECH_COMMAND_ID91="" +CONFIG_CN_SPEECH_COMMAND_ID92="" +CONFIG_CN_SPEECH_COMMAND_ID93="" +CONFIG_CN_SPEECH_COMMAND_ID94="" +CONFIG_CN_SPEECH_COMMAND_ID95="" +CONFIG_CN_SPEECH_COMMAND_ID96="" +CONFIG_CN_SPEECH_COMMAND_ID97="" +CONFIG_CN_SPEECH_COMMAND_ID98="" +CONFIG_CN_SPEECH_COMMAND_ID99="" +# end of Add speech commands +# end of ESP Speech Recognition + # # Compiler options # @@ -373,23 +513,6 @@ CONFIG_ESP32_DPORT_DIS_INTERRUPT_LVL=5 # CONFIG_PM_ENABLE is not set # end of Power Management -# -# Memory protection -# -CONFIG_ESP32S2_MEMPROT_FEATURE=y -CONFIG_ESP32S2_MEMPROT_FEATURE_LOCK=y -# end of Memory protection - -# -# Cache config -# -# end of Cache config - -CONFIG_ESP32S2_TRACEMEM_RESERVE_DRAM=0x0 -CONFIG_ESP32S2_ULP_COPROC_RESERVE_MEM=0 -CONFIG_ESP32S2_DEBUG_OCDAWARE=y -CONFIG_ESP32S2_BROWNOUT_DET=y - # # ADC-Calibration # @@ -1033,6 +1156,18 @@ CONFIG_SPIFFS_USE_MTIME=y # end of Debug Configuration # end of SPIFFS Configuration +# +# TinyUSB +# + +# +# Descriptor configuration +# +CONFIG_USB_DESC_CUSTOM_VID=0x1234 +CONFIG_USB_DESC_CUSTOM_PID=0x5678 +# end of Descriptor configuration +# end of TinyUSB + # # Unity unit testing library #