diff --git a/components/services/audio_controls.c b/components/services/audio_controls.c index 4104c561..0e2cf8b8 100644 --- a/components/services/audio_controls.c +++ b/components/services/audio_controls.c @@ -509,11 +509,8 @@ static esp_err_t actrls_init_json(const char *profile_name, bool create) { const cJSON *button; if (!profile_name) return ESP_OK; - - config = config_alloc_get_str(profile_name, NULL, CONFIG_AUDIO_CONTROLS); - - if (!config) return ESP_FAIL; - else if (!*config) return ESP_OK; + if ((config = config_alloc_get_str(profile_name, NULL, CONFIG_AUDIO_CONTROLS)) == NULL) return ESP_FAIL; + if (!*config) goto exit; ESP_LOGD(TAG,"Parsing JSON structure %s", config); cJSON *buttons = cJSON_Parse(config); @@ -528,8 +525,8 @@ static esp_err_t actrls_init_json(const char *profile_name, bool create) { if(!cur_config) { ESP_LOGE(TAG,"Config buffer was empty. "); cJSON_Delete(buttons); - free(config); - return ESP_FAIL; + err = ESP_FAIL; + goto exit; } ESP_LOGD(TAG,"Processing button definitions. "); cJSON_ArrayForEach(button, buttons){ @@ -560,6 +557,7 @@ static esp_err_t actrls_init_json(const char *profile_name, bool create) { // the last init that completes will assigh the first json config object found, which will match // the default config from nvs. json_config = config_root; +exit: free(config); return err; } diff --git a/components/targets/muse/muse.c b/components/targets/muse/muse.c index 7e7dc19e..87cf38f0 100644 --- a/components/targets/muse/muse.c +++ b/components/targets/muse/muse.c @@ -48,7 +48,7 @@ static void battery_svc(float value); static bool init(void); static void set_battery_led(float value); -const struct target_s target_muse = { "muse", init }; +const struct target_s target_muse = { .model = "muse", .init = init }; static bool init(void) { battery_handler_chain = battery_handler_svc; diff --git a/components/targets/targets.c b/components/targets/targets.c index 89574e4d..9f54d364 100644 --- a/components/targets/targets.c +++ b/components/targets/targets.c @@ -4,7 +4,7 @@ const struct target_s *target_set[] = { &target_muse, NULL }; void target_init(char *target) { - for (int i = 0; target_set[i]; i++) if (strcasestr(target_set[i]->model, target)) { + for (int i = 0; *target && target_set[i]; i++) if (strcasestr(target_set[i]->model, target)) { target_set[i]->init(); break; } diff --git a/main/esp_app_main.c b/main/esp_app_main.c index 7997cd31..cb2cff21 100644 --- a/main/esp_app_main.c +++ b/main/esp_app_main.c @@ -478,7 +478,7 @@ void app_main() ESP_LOGI(TAG,"Initializing display"); display_init("SqueezeESP32"); - char *target = config_alloc_get_default(NVS_TYPE_STR, "target", CONFIG_TARGET, 0); + char *target = config_alloc_get_str("target", CONFIG_TARGET, NULL); if (target) { target_init(target); free(target); diff --git a/sdkconfig.defaults b/sdkconfig.defaults index 7e6db864..78b44258 100644 --- a/sdkconfig.defaults +++ b/sdkconfig.defaults @@ -2,6 +2,35 @@ # Automatically generated file. DO NOT EDIT. # Espressif IoT Development Framework (ESP-IDF) Project Configuration # +CONFIG_BT_STACK_NO_LOG=y +CONFIG_DEFAULT_COMMAND_LINE="squeezelite -o I2S -b 500:2000 -d all=info -C 30 -W" +# CONFIG_COMPILER_OPTIMIZATION_LEVEL_DEBUG is not set +CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE=y +# CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE is not set +CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT=y +CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST=y +CONFIG_BT_BLE_DYNAMIC_ENV_MEMORY=y +CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH=2800 +CONFIG_TIMER_TASK_STACK_DEPTH=2800 +CONFIG_USE_ONLY_LWIP_SELECT=y +CONFIG_SPIRAM_TRY_ALLOCATE_WIFI_LWIP=y +# CONFIG_ETH_USE_ESP32_EMAC is not set +# CONFIG_ETH_USE_SPI_ETHERNET is not set +CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH=2800 +CONFIG_LWIP_DHCP_RESTORE_LAST_IP=y +CONFIG_MBEDTLS_TLS_CLIENT_ONLY=y +# CONFIG_MQTT_PROTOCOL_311 is not set +# CONFIG_MQTT_TRANSPORT_SSL is not set +# CONFIG_MQTT_TRANSPORT_WEBSOCKET is not set +CONFIG_WIFI_LWIP_ALLOCATION_FROM_SPIRAM_FIRST=y +CONFIG_MBEDTLS_HARDWARE_MPI=y +CONFIG_MBEDTLS_MPI_USE_INTERRUPT=y +# CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN is not set + +# CONFIG_LWIP_IP4_FRAG is not set +# CONFIG_LWIP_IP6_FRAG is not set +CONFIG_LWIP_IP4_REASSEMBLY=y +CONFIG_LWIP_IP6_REASSEMBLY=y # DSP CONFIG_DSP_OPTIMIZED=y @@ -111,12 +140,6 @@ CONFIG_DEFAULT_AP_GATEWAY="192.168.4.1" CONFIG_DEFAULT_AP_NETMASK="255.255.255.0" CONFIG_DEFAULT_AP_MAX_CONNECTIONS=4 CONFIG_DEFAULT_AP_BEACON_INTERVAL=100 -CONFIG_DEFAULT_COMMAND_LINE="squeezelite -o I2S -b 500:2000 -d all=info -C 30" - -CONFIG_COMPILER_OPTIMIZATION_SIZE=y -CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE=y - - CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y @@ -169,7 +192,12 @@ CONFIG_BT_SSP_ENABLED=y CONFIG_BT_BLE_ENABLED=n CONFIG_BT_BLE_SMP_ENABLE=y - +CONFIG_ESP32_ECO3_CACHE_LOCK_FIX=y +# CONFIG_ESP32_REV_MIN_0 is not set +CONFIG_ESP32_REV_MIN_1=y +# CONFIG_ESP32_REV_MIN_2 is not set +# CONFIG_ESP32_REV_MIN_3 is not set +CONFIG_ESP32_REV_MIN=1 CONFIG_BT_LOG_HCI_TRACE_LEVEL_WARNING=y @@ -349,11 +377,9 @@ CONFIG_BT_RESERVE_DRAM=0xdb5c CONFIG_ADC_DISABLE_DAC=y -CONFIG_SPI_MASTER_ISR_IN_IRAM=y -CONFIG_SPI_SLAVE_ISR_IN_IRAM=y +# CONFIG_SPI_SLAVE_IN_IRAM is not set +# CONFIG_SPI_SLAVE_ISR_IN_IRAM is not set CONFIG_SPI_MASTER_IN_IRAM=y -CONFIG_SPI_SLAVE_IN_IRAM=y - CONFIG_EFUSE_CODE_SCHEME_COMPAT_3_4=y @@ -376,6 +402,9 @@ CONFIG_SPIRAM_SIZE=-1 CONFIG_SPIRAM_SPEED_80M=y CONFIG_SPIRAM_MEMTEST=y CONFIG_SPIRAM_CACHE_WORKAROUND=y +CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_MEMW=y +# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_DUPLDST is not set +# CONFIG_SPIRAM_CACHE_WORKAROUND_STRATEGY_NOPS is not set CONFIG_SPIRAM_MALLOC_ALWAYSINTERNAL=256 CONFIG_SPIRAM_MALLOC_RESERVE_INTERNAL=65536 @@ -456,19 +485,6 @@ CONFIG_ESP_TASK_WDT=y CONFIG_ESP_TASK_WDT_TIMEOUT_S=5 CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0=y CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU1=y -CONFIG_ETH_USE_ESP32_EMAC=y -CONFIG_ETH_PHY_INTERFACE_RMII=y - -CONFIG_ETH_RMII_CLK_INPUT=y - -CONFIG_ETH_RMII_CLK_IN_GPIO=0 -CONFIG_ETH_SMI_MDC_GPIO=23 -CONFIG_ETH_SMI_MDIO_GPIO=18 -CONFIG_ETH_PHY_USE_RST=y -CONFIG_ETH_PHY_RST_GPIO=5 -CONFIG_ETH_DMA_BUFFER_SIZE=512 -CONFIG_ETH_DMA_RX_BUFFER_NUM=10 -CONFIG_ETH_DMA_TX_BUFFER_NUM=10 CONFIG_ESP_EVENT_POST_FROM_ISR=y CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR=y @@ -577,7 +593,6 @@ CONFIG_FREERTOS_MAX_TASK_NAME_LEN=16 CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION=y CONFIG_FREERTOS_TIMER_TASK_PRIORITY=1 -CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH=2432 CONFIG_FREERTOS_TIMER_QUEUE_LENGTH=10 CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE=0 @@ -663,12 +678,6 @@ CONFIG_MBEDTLS_HARDWARE_AES=y CONFIG_MBEDTLS_HAVE_TIME=y -CONFIG_MBEDTLS_TLS_SERVER_AND_CLIENT=y - - - -CONFIG_MBEDTLS_TLS_SERVER=y -CONFIG_MBEDTLS_TLS_CLIENT=y CONFIG_MBEDTLS_TLS_ENABLED=y CONFIG_MBEDTLS_KEY_EXCHANGE_RSA=y @@ -680,7 +689,7 @@ CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA=y CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_RSA=y CONFIG_MBEDTLS_SSL_RENEGOTIATION=y -CONFIG_MBEDTLS_SSL_PROTO_TLS1=y +# CONFIG_MBEDTLS_SSL_PROTO_TLS1 is not set CONFIG_MBEDTLS_SSL_PROTO_TLS1_1=y CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y @@ -693,8 +702,6 @@ CONFIG_MBEDTLS_AES_C=y CONFIG_MBEDTLS_RC4_DISABLED=y - - CONFIG_MBEDTLS_CCM_C=y CONFIG_MBEDTLS_GCM_C=y @@ -719,12 +726,6 @@ CONFIG_MBEDTLS_ECP_DP_BP512R1_ENABLED=y CONFIG_MBEDTLS_ECP_DP_CURVE25519_ENABLED=y CONFIG_MBEDTLS_ECP_NIST_OPTIM=y CONFIG_MDNS_MAX_SERVICES=10 -CONFIG_MQTT_PROTOCOL_311=y -CONFIG_MQTT_TRANSPORT_SSL=y -CONFIG_MQTT_TRANSPORT_WEBSOCKET=y -CONFIG_MQTT_TRANSPORT_WEBSOCKET_SECURE=y - - CONFIG_NEWLIB_STDOUT_LINE_ENDING_CRLF=y