Browse Source

use muse built-in keyboard definition

Philippe G 3 years ago
parent
commit
8e6d409311
2 changed files with 10 additions and 6 deletions
  1. 9 5
      components/services/audio_controls.c
  2. 1 1
      main/esp_app_main.c

+ 9 - 5
components/services/audio_controls.c

@@ -157,7 +157,7 @@ esp_err_t actrls_init(const char *profile_name) {
 	
 	// set infrared GPIO if any
 	parse_set_GPIO(set_ir_gpio);
-	
+
 	if (!err) return actrls_init_json(profile_name, true);
 	else return err;
 }
@@ -508,11 +508,13 @@ static esp_err_t actrls_init_json(const char *profile_name, bool create) {
 	char *config;
 	const cJSON *button;
 	
-	if (!profile_name || !*profile_name) return ESP_OK;
+	if (!profile_name) return ESP_OK;
 	
-	config = config_alloc_get_default(NVS_TYPE_STR, profile_name, NULL, 0);
-	if(!config) return ESP_FAIL;
-
+	config = config_alloc_get_str(profile_name, NULL, CONFIG_AUDIO_CONTROLS);
+	
+	if (!config) return ESP_FAIL;
+	else if (!*config) return ESP_OK; 
+		
 	ESP_LOGD(TAG,"Parsing JSON structure %s", config);
 	cJSON *buttons = cJSON_Parse(config);
 	if (buttons == NULL) {
@@ -526,6 +528,7 @@ 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;
 			}
 			ESP_LOGD(TAG,"Processing button definitions. ");
@@ -557,6 +560,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;
+	free(config);
 	return err;
 }
 

+ 1 - 1
main/esp_app_main.c

@@ -481,7 +481,7 @@ void app_main()
 
 	if(!is_recovery_running){
 		ESP_LOGD(TAG,"Getting audio control mapping ");
-		char *actrls_config = config_alloc_get_default(NVS_TYPE_STR, "actrls_config", CONFIG_AUDIO_CONTROLS, 0);
+		char *actrls_config = config_alloc_get_default(NVS_TYPE_STR, "actrls_config", "", 0);
 		if (actrls_init(actrls_config) == ESP_OK) {
 			ESP_LOGD(TAG,"Initializing audio control buttons type %s", actrls_config);	
 		} else {