8000 Added GeneralUtils::wifiErrorToString - Convert a wifi_err_reason_t c… · breadchris/esp32-snippets@6817fee · GitHub
[go: up one dir, main page]

Skip to content

Commit 6817fee

Browse files
committed
Added GeneralUtils::wifiErrorToString - Convert a wifi_err_reason_t code to a string
1 parent b87e0ad commit 6817fee

File tree

2 files changed

+77
-0
lines changed

2 files changed

+77
-0
lines changed

cpp_utils/GeneralUtils.cpp

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -434,6 +434,82 @@ const char* GeneralUtils::errorToString(esp_err_t errCode) {
434434
return "Unknown ESP_ERR error";
435435
} // errorToString
436436

437+
/**
438+
* @brief Convert a wifi_err_reason_t code to a string.
439+
* @param [in] errCode The errCode to be converted.
440+
* @return A string representation of the error code.
441+
*
442+
* @note: wifi_err_reason_t values as of April 2018 are: (1-24, 200-204) and are defined in ~/esp-idf/components/esp32/include/esp_wifi_types.h.
443+
*/
444+
const char* GeneralUtils::wifiErrorToString(uint8_t errCode) {
445+
if (errCode == ESP_OK)
446+
return "ESP_OK (received SYSTEM_EVENT_STA_GOT_IP event)";
447+
if (errCode == UINT8_MAX)
448+
return "Not Connected (default value)";
449+
450+
switch((wifi_err_reason_t) errCode) {
451+
case WIFI_REASON_UNSPECIFIED:
452+
return "WIFI_REASON_UNSPECIFIED";
453+
case WIFI_REASON_AUTH_EXPIRE:
454+
return "WIFI_REASON_AUTH_EXPIRE";
455+
case WIFI_REASON_AUTH_LEAVE:
456+
return "WIFI_REASON_AUTH_LEAVE";
457+
case WIFI_REASON_ASSOC_EXPIRE:
458+
return "WIFI_REASON_ASSOC_EXPIRE";
459+
case WIFI_REASON_ASSOC_TOOMANY:
460+
return "WIFI_REASON_ASSOC_TOOMANY";
461+
case WIFI_REASON_NOT_AUTHED:
462+
return "WIFI_REASON_NOT_AUTHED";
463+
case WIFI_REASON_NOT_ASSOCED:
464+
return "WIFI_REASON_NOT_ASSOCED";
465+
case WIFI_REASON_ASSOC_LEAVE:
466+
return "WIFI_REASON_ASSOC_LEAVE";
467+
case WIFI_REASON_ASSOC_NOT_AUTHED:
468+
return "WIFI_REASON_ASSOC_NOT_AUTHED";
469+
case WIFI_REASON_DISASSOC_PWRCAP_BAD:
470+
return "WIFI_REASON_DISASSOC_PWRCAP_BAD";
471+
case WIFI_REASON_DISASSOC_SUPCHAN_BAD:
472+
return "WIFI_REASON_DISASSOC_SUPCHAN_BAD";
473+
case WIFI_REASON_IE_INVALID:
474+
return "WIFI_REASON_IE_INVALID";
475+
case WIFI_REASON_MIC_FAILURE:
476+
return "WIFI_REASON_MIC_FAILURE";
477+
case WIFI_REASON_4WAY_HANDSHAKE_TIMEOUT:
478+
return "WIFI_REASON_4WAY_HANDSHAKE_TIMEOUT";
479+
case WIFI_REASON_GROUP_KEY_UPDATE_TIMEOUT:
480+
return "WIFI_REASON_GROUP_KEY_UPDATE_TIMEOUT";
481+
case WIFI_REASON_IE_IN_4WAY_DIFFERS:
482+
return "WIFI_REASON_IE_IN_4WAY_DIFFERS";
483+
case WIFI_REASON_GROUP_CIPHER_INVALID:
484+
return "WIFI_REASON_GROUP_CIPHER_INVALID";
485+
case WIFI_REASON_PAIRWISE_CIPHER_INVALID:
486+
return "WIFI_REASON_PAIRWISE_CIPHER_INVALID";
487+
case WIFI_REASON_AKMP_INVALID:
488+
return "WIFI_REASON_AKMP_INVALID";
489+
case WIFI_REASON_UNSUPP_RSN_IE_VERSION:
490+
return "WIFI_REASON_UNSUPP_RSN_IE_VERSION";
491+
case WIFI_REASON_INVALID_RSN_IE_CAP:
492+
return "WIFI_REASON_INVALID_RSN_IE_CAP";
493+
case WIFI_REASON_802_1X_AUTH_FAILED:
494+
return "WIFI_REASON_802_1X_AUTH_FAILED";
495+
case WIFI_REASON_CIPHER_SUITE_REJECTED:
496+
return "WIFI_REASON_CIPHER_SUITE_REJECTED";
497+
498+
case WIFI_REASON_BEACON_TIMEOUT:
499+
return "WIFI_REASON_BEACON_TIMEOUT";
500+
case WIFI_REASON_NO_AP_FOUND:
501+
return "WIFI_REASON_NO_AP_FOUND";
502+
case WIFI_REASON_AUTH_FAIL:
503+
return "WIFI_REASON_AUTH_FAIL";
504+
case WIFI_REASON_ASSOC_FAIL:
505+
return "WIFI_REASON_ASSOC_FAIL";
506+
case WIFI_REASON_HANDSHAKE_TIMEOUT:
507+
return "WIFI_REASON_HANDSHAKE_TIMEOUT";
508+
}
509+
return "Unknown ESP_ERR error";
510+
} // wifiErrorToString
511+
512+
437513

438514
/**
439515
* @brief Convert a string to lower case.

cpp_utils/GeneralUtils.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ class GeneralUtils {
2323
static void dumpInfo();
2424
static bool endsWith(std::string str, char c);
2525
static const char* errorToString(esp_err_t errCode);
26+
static const char* wifiErrorToString(uint8_t value);
2627
static void hexDump(const uint8_t* pData, uint32_t length);
2728
static std::string ipToString(uint8_t* ip);
2829
static std::vector<std::string> split(std::string source, char delimiter);

0 commit comments

Comments
 (0)
0