Skip to content

Commit b2f0ee9

Browse files
Moved into Class
Moved functions into class and renamed to fit Arduino style
1 parent 16b2c63 commit b2f0ee9

File tree

2 files changed

+57
-64
lines changed

2 files changed

+57
-64
lines changed

Diff for: libraries/WiFi/src/WiFiGeneric.cpp

+55-61
Original file line numberDiff line numberDiff line change
@@ -764,61 +764,8 @@ wifi_ps_type_t WiFiGenericClass::_sleepEnabled = WIFI_PS_NONE;
764764
wifi_ps_type_t WiFiGenericClass::_sleepEnabled = WIFI_PS_MIN_MODEM;
765765
#endif
766766

767-
//---C function prototypes---
768-
const char * ArduinoEventIdToCStr(arduino_event_id_t id);
769-
const char * WiFiErrReasonToCStr(wifi_err_reason_t reason);
770-
//---C function prototypes---
771-
772-
/**
773-
* @brief Convert arduino_event_id_t to a string.
774-
* @param [in] id The event id to be converted.
775-
* @return A string representation of the event id.
776-
* @note: arduino_event_id_t values as of Mar 2023 (arduino-esp32 r2.0.7) are: 0-39 (ARDUINO_EVENT_MAX=40) and are defined in WiFiGeneric.h.
777-
*/
778-
const char * ArduinoEventIdToCStr(arduino_event_id_t id) {
779-
switch(id) {
780-
case ARDUINO_EVENT_WIFI_READY: return "WIFI_READY";
781-
case ARDUINO_EVENT_WIFI_SCAN_DONE: return "SCAN_DONE";
782-
case ARDUINO_EVENT_WIFI_STA_START: return "STA_START";
783-
case ARDUINO_EVENT_WIFI_STA_STOP: return "STA_STOP";
784-
case ARDUINO_EVENT_WIFI_STA_CONNECTED: return "STA_CONNECTED";
785-
case ARDUINO_EVENT_WIFI_STA_DISCONNECTED: return "STA_DISCONNECTED";
786-
case ARDUINO_EVENT_WIFI_STA_AUTHMODE_CHANGE: return "STA_AUTHMODE_CHANGE";
787-
case ARDUINO_EVENT_WIFI_STA_GOT_IP: return "STA_GOT_IP";
788-
case ARDUINO_EVENT_WIFI_STA_GOT_IP6: return "STA_GOT_IP6";
789-
case ARDUINO_EVENT_WIFI_STA_LOST_IP: return "STA_LOST_IP";
790-
case ARDUINO_EVENT_WIFI_AP_START: return "AP_START";
791-
case ARDUINO_EVENT_WIFI_AP_STOP: return "AP_STOP";
792-
case ARDUINO_EVENT_WIFI_AP_STACONNECTED: return "AP_STACONNECTED";
793-
case ARDUINO_EVENT_WIFI_AP_STADISCONNECTED: return "AP_STADISCONNECTED";
794-
case ARDUINO_EVENT_WIFI_AP_STAIPASSIGNED: return "AP_STAIPASSIGNED";
795-
case ARDUINO_EVENT_WIFI_AP_PROBEREQRECVED: return "AP_PROBEREQRECVED";
796-
case ARDUINO_EVENT_WIFI_AP_GOT_IP6: return "AP_GOT_IP6";
797-
case ARDUINO_EVENT_WIFI_FTM_REPORT: return "FTM_REPORT";
798-
case ARDUINO_EVENT_ETH_START: return "ETH_START";
799-
case ARDUINO_EVENT_ETH_STOP: return "ETH_STOP";
800-
case ARDUINO_EVENT_ETH_CONNECTED: return "ETH_CONNECTED";
801-
case ARDUINO_EVENT_ETH_DISCONNECTED: return "ETH_DISCONNECTED";
802-
case ARDUINO_EVENT_ETH_GOT_IP: return "ETH_GOT_IP";
803-
case ARDUINO_EVENT_ETH_GOT_IP6: return "ETH_GOT_IP6";
804-
case ARDUINO_EVENT_WPS_ER_SUCCESS: return "WPS_ER_SUCCESS";
805-
case ARDUINO_EVENT_WPS_ER_FAILED: return "WPS_ER_FAILED";
806-
case ARDUINO_EVENT_WPS_ER_TIMEOUT: return "WPS_ER_TIMEOUT";
807-
case ARDUINO_EVENT_WPS_ER_PIN: return "WPS_ER_PIN";
808-
case ARDUINO_EVENT_WPS_ER_PBC_OVERLAP: return "WPS_ER_PBC_OVERLAP";
809-
case ARDUINO_EVENT_SC_SCAN_DONE: return "SC_SCAN_DONE";
810-
case ARDUINO_EVENT_SC_FOUND_CHANNEL: return "SC_FOUND_CHANNEL";
811-
case ARDUINO_EVENT_SC_GOT_SSID_PSWD: return "SC_GOT_SSID_PSWD";
812-
case ARDUINO_EVENT_SC_SEND_ACK_DONE: return "SC_SEND_ACK_DONE";
813-
case ARDUINO_EVENT_PROV_INIT: return "PROV_INIT";
814-
case ARDUINO_EVENT_PROV_DEINIT: return "PROV_DEINIT";
815-
case ARDUINO_EVENT_PROV_START: return "PROV_START";
816-
case ARDUINO_EVENT_PROV_END: return "PROV_END";
817-
case ARDUINO_EVENT_PROV_CRED_RECV: return "PROV_CRED_RECV";
818-
case ARDUINO_EVENT_PROV_CRED_FAIL: return "PROV_CRED_FAIL";
819-
case ARDUINO_EVENT_PROV_CRED_SUCCESS: return "PROV_CRED_SUCCESS";
820-
default: return "";
821-
}
767+
WiFiGenericClass::WiFiGenericClass()
768+
{
822769
}
823770

824771
/**
@@ -827,7 +774,7 @@ const char * ArduinoEventIdToCStr(arduino_event_id_t id) {
827774
* @return A string representation of the error code.
828775
* @note: wifi_err_reason_t values as of Mar 2023 (arduino-esp32 r2.0.7) are: (1-39, 46-51, 67-68, 200-208) and are defined in /tools/sdk/esp32/include/esp_wifi/include/esp_wifi_types.h.
829776
*/
830-
const char * WiFiErrReasonToCStr(wifi_err_reason_t reason) {
777+
const char * WiFiGenericClass::disconnectReasonName(wifi_err_reason_t reason) {
831778
switch(reason) {
832779
//ESP_ARDUINO_VERSION >= ESP_ARDUINO_VERSION_VAL(2,0,7)
833780
case WIFI_REASON_UNSPECIFIED: return "UNSPECIFIED";
@@ -885,13 +832,60 @@ const char * WiFiErrReasonToCStr(wifi_err_reason_t reason) {
885832
case WIFI_REASON_CONNECTION_FAIL: return "CONNECTION_FAIL";
886833
case WIFI_REASON_AP_TSF_RESET: return "AP_TSF_RESET";
887834
case WIFI_REASON_ROAMING: return "ROAMING";
888-
case WIFI_REASON_ASSOC_COMEBACK_TIME_TOO_LONG: return "ASSOC_COMEBACK_TIME_TOO_LONG";
889835
default: return "";
890836
}
891837
}
892838

893-
WiFiGenericClass::WiFiGenericClass()
894-
{
839+
/**
840+
* @brief Convert arduino_event_id_t to a C string.
841+
* @param [in] id The event id to be converted.
842+
* @return A string representation of the event id.
843+
* @note: arduino_event_id_t values as of Mar 2023 (arduino-esp32 r2.0.7) are: 0-39 (ARDUINO_EVENT_MAX=40) and are defined in WiFiGeneric.h.
844+
*/
845+
const char * WiFiGenericClass::eventName(arduino_event_id_t id) {
846+
switch(id) {
847+
case ARDUINO_EVENT_WIFI_READY: return "WIFI_READY";
848+
case ARDUINO_EVENT_WIFI_SCAN_DONE: return "SCAN_DONE";
849+
case ARDUINO_EVENT_WIFI_STA_START: return "STA_START";
850+
case ARDUINO_EVENT_WIFI_STA_STOP: return "STA_STOP";
851+
case ARDUINO_EVENT_WIFI_STA_CONNECTED: return "STA_CONNECTED";
852+
case ARDUINO_EVENT_WIFI_STA_DISCONNECTED: return "STA_DISCONNECTED";
853+
case ARDUINO_EVENT_WIFI_STA_AUTHMODE_CHANGE: return "STA_AUTHMODE_CHANGE";
854+
case ARDUINO_EVENT_WIFI_STA_GOT_IP: return "STA_GOT_IP";
855+
case ARDUINO_EVENT_WIFI_STA_GOT_IP6: return "STA_GOT_IP6";
856+
case ARDUINO_EVENT_WIFI_STA_LOST_IP: return "STA_LOST_IP";
857+
case ARDUINO_EVENT_WIFI_AP_START: return "AP_START";
858+
case ARDUINO_EVENT_WIFI_AP_STOP: return "AP_STOP";
859+
case ARDUINO_EVENT_WIFI_AP_STACONNECTED: return "AP_STACONNECTED";
860+
case ARDUINO_EVENT_WIFI_AP_STADISCONNECTED: return "AP_STADISCONNECTED";
861+
case ARDUINO_EVENT_WIFI_AP_STAIPASSIGNED: return "AP_STAIPASSIGNED";
862+
case ARDUINO_EVENT_WIFI_AP_PROBEREQRECVED: return "AP_PROBEREQRECVED";
863+
case ARDUINO_EVENT_WIFI_AP_GOT_IP6: return "AP_GOT_IP6";
864+
case ARDUINO_EVENT_WIFI_FTM_REPORT: return "FTM_REPORT";
865+
case ARDUINO_EVENT_ETH_START: return "ETH_START";
866+
case ARDUINO_EVENT_ETH_STOP: return "ETH_STOP";
867+
case ARDUINO_EVENT_ETH_CONNECTED: return "ETH_CONNECTED";
868+
case ARDUINO_EVENT_ETH_DISCONNECTED: return "ETH_DISCONNECTED";
869+
case ARDUINO_EVENT_ETH_GOT_IP: return "ETH_GOT_IP";
870+
case ARDUINO_EVENT_ETH_GOT_IP6: return "ETH_GOT_IP6";
871+
case ARDUINO_EVENT_WPS_ER_SUCCESS: return "WPS_ER_SUCCESS";
872+
case ARDUINO_EVENT_WPS_ER_FAILED: return "WPS_ER_FAILED";
873+
case ARDUINO_EVENT_WPS_ER_TIMEOUT: return "WPS_ER_TIMEOUT";
874+
case ARDUINO_EVENT_WPS_ER_PIN: return "WPS_ER_PIN";
875+
case ARDUINO_EVENT_WPS_ER_PBC_OVERLAP: return "WPS_ER_PBC_OVERLAP";
876+
case ARDUINO_EVENT_SC_SCAN_DONE: return "SC_SCAN_DONE";
877+
case ARDUINO_EVENT_SC_FOUND_CHANNEL: return "SC_FOUND_CHANNEL";
878+
case ARDUINO_EVENT_SC_GOT_SSID_PSWD: return "SC_GOT_SSID_PSWD";
879+
case ARDUINO_EVENT_SC_SEND_ACK_DONE: return "SC_SEND_ACK_DONE";
880+
case ARDUINO_EVENT_PROV_INIT: return "PROV_INIT";
881+
case ARDUINO_EVENT_PROV_DEINIT: return "PROV_DEINIT";
882+
case ARDUINO_EVENT_PROV_START: return "PROV_START";
883+
case ARDUINO_EVENT_PROV_END: return "PROV_END";
884+
case ARDUINO_EVENT_PROV_CRED_RECV: return "PROV_CRED_RECV";
885+
case ARDUINO_EVENT_PROV_CRED_FAIL: return "PROV_CRED_FAIL";
886+
case ARDUINO_EVENT_PROV_CRED_SUCCESS: return "PROV_CRED_SUCCESS";
887+
default: return "";
888+
}
895889
}
896890

897891
const char * WiFiGenericClass::getHostname()
@@ -1038,7 +1032,7 @@ esp_err_t WiFiGenericClass::_eventCallback(arduino_event_t *event)
10381032

10391033
if(!event) return ESP_OK; //Null would crash this function
10401034

1041-
log_d("Arduino Event: %d - %s", event->event_id, ArduinoEventIdToCStr(event->event_id));
1035+
log_d("Arduino Event: %d - %s", event->event_id, WiFi.eventName(event->event_id));
10421036
if(event->event_id == ARDUINO_EVENT_WIFI_SCAN_DONE) {
10431037
WiFiScanClass::_scanDone();
10441038
} else if(event->event_id == ARDUINO_EVENT_WIFI_STA_START) {
@@ -1060,7 +1054,7 @@ esp_err_t WiFiGenericClass::_eventCallback(arduino_event_t *event)
10601054
// Reason 0 causes crash, use reason 1 (UNSPECIFIED) instead
10611055
if(!reason)
10621056
reason = WIFI_REASON_UNSPECIFIED;
1063-
log_w("Reason: %u - %s", reason, WiFiErrReasonToCStr((wifi_err_reason_t)reason));
1057+
log_w("Reason: %u - %s", reason, WiFi.disconnectReasonName((wifi_err_reason_t)reason));
10641058
if(reason == WIFI_REASON_NO_AP_FOUND) {
10651059
WiFiSTAClass::_setStatus(WL_NO_SSID_AVAIL);
10661060
} else if((reason == WIFI_REASON_AUTH_FAIL) && !first_connect){

Diff for: libraries/WiFi/src/WiFiGeneric.h

+2-3
Original file line numberDiff line numberDiff line change
@@ -151,9 +151,6 @@ typedef enum {
151151
WIFI_TX_ANT_AUTO
152152
} wifi_tx_ant_t;
153153

154-
extern const char * ArduinoEventIdToCStr(arduino_event_id_t id);
155-
extern const char * WiFiErrReasonToCStr(wifi_err_reason_t reason);
156-
157154
class WiFiGenericClass
158155
{
159156
public:
@@ -191,6 +188,8 @@ class WiFiGenericClass
191188

192189
static bool setDualAntennaConfig(uint8_t gpio_ant1, uint8_t gpio_ant2, wifi_rx_ant_t rx_mode, wifi_tx_ant_t tx_mode);
193190

191+
const char * disconnectReasonName(wifi_err_reason_t reason);
192+
const char * eventName(arduino_event_id_t id);
194193
static const char * getHostname();
195194
static bool setHostname(const char * hostname);
196195
static bool hostname(const String& aHostname) { return setHostname(aHostname.c_str()); }

0 commit comments

Comments
 (0)