diff --git a/libraries/WiFi/src/WiFi.cpp b/libraries/WiFi/src/WiFi.cpp index 7ea892876..f41593bd9 100644 --- a/libraries/WiFi/src/WiFi.cpp +++ b/libraries/WiFi/src/WiFi.cpp @@ -366,12 +366,17 @@ wiced_result_t whd_firmware_check_hook(const char* mounted_name, int mount_err) #include "whd_version.h" const char* arduino::WiFiClass::firmwareVersion() { - if ((wiced_filesystem_init() != WICED_ERROR) && (wiced_filesystem_mount_default() != WICED_ERROR)) { - if (firmware_available) { - return WHD_VERSION; - } + if (!firmware_available) { + /* Try to mount WiFi firmware filesystem */ + wiced_filesystem_init(); + wiced_filesystem_mount_default(); + } + + if (firmware_available) { + return WHD_VERSION; + } else { + return "v0.0.0"; } - return "v0.0.0"; } arduino::WiFiClass WiFi(WiFiInterface::get_default_instance());