diff --git a/src/storage.c b/src/storage.c index 20f4df9..030d822 100644 --- a/src/storage.c +++ b/src/storage.c @@ -16,7 +16,17 @@ esp_err_t readStorage(const char *key, char *out_value, size_t *length, char *de esp_err_t ret = nvs_open("storage", NVS_READONLY, &my_handle); if (ret != ESP_OK) { - ESP_LOGE(TAG, "Error (%s) opening NVS handle!\n", esp_err_to_name(ret)); + + if (ret == ESP_ERR_NVS_NOT_FOUND) + { + ESP_LOGI(TAG, "The value is not initialized yet!\n"); + goto SET_DEFUALT_VALUE; + } + else + { + ESP_LOGE(TAG, "Error (%s) reading!\n", esp_err_to_name(ret)); + } + return ret; } else @@ -43,6 +53,8 @@ esp_err_t readStorage(const char *key, char *out_value, size_t *length, char *de } } +SET_DEFUALT_VALUE: + // if not found, set to default value ret = nvs_open("storage", NVS_READWRITE, &my_handle); if (ret != ESP_OK)