From 64a7d043c91cb7b6804600a2cb5d482c280708e3 Mon Sep 17 00:00:00 2001 From: Larry Bernstone Date: Fri, 3 Aug 2018 08:31:04 -0600 Subject: [PATCH] Added a freeEntries method to Preferences library --- libraries/Preferences/src/Preferences.cpp | 10 ++++++++++ libraries/Preferences/src/Preferences.h | 1 + 2 files changed, 11 insertions(+) diff --git a/libraries/Preferences/src/Preferences.cpp b/libraries/Preferences/src/Preferences.cpp index b3859a0e97f..81b9b1989b1 100644 --- a/libraries/Preferences/src/Preferences.cpp +++ b/libraries/Preferences/src/Preferences.cpp @@ -468,3 +468,13 @@ size_t Preferences::getBytes(const char* key, void * buf, size_t maxLen){ } return len; } + +size_t Preferences::freeEntries() { + nvs_stats_t nvs_stats; + esp_err_t err = nvs_get_stats(NULL, &nvs_stats); + if(err){ + log_e("Failed to get nvs statistics"); + return 0; + } + return nvs_stats.free_entries; +} diff --git a/libraries/Preferences/src/Preferences.h b/libraries/Preferences/src/Preferences.h index cf98e8ef8cf..e4872693209 100644 --- a/libraries/Preferences/src/Preferences.h +++ b/libraries/Preferences/src/Preferences.h @@ -64,6 +64,7 @@ class Preferences { size_t getString(const char* key, char* value, size_t maxLen); String getString(const char* key, String defaultValue = String()); size_t getBytes(const char* key, void * buf, size_t maxLen); + size_t freeEntries(); }; #endif