From fa166483bb28a614a9ee4e5d843cefda530e6996 Mon Sep 17 00:00:00 2001 From: MichaelDvP Date: Mon, 25 Apr 2022 17:07:52 +0200 Subject: [PATCH] SYSTEM_EVENT.. to ARDUINO_EVENT_... --- lib/framework/APSettingsService.cpp | 2 +- lib/framework/MqttSettingsService.cpp | 11 ++- lib/framework/NTPSettingsService.cpp | 8 +- lib/framework/NetworkSettingsService.cpp | 8 +- lib/framework/OTASettingsService.cpp | 4 +- lib_standalone/Network.h | 115 ++++++++++++----------- src/web/WebStatusService.cpp | 22 +++-- 7 files changed, 87 insertions(+), 83 deletions(-) diff --git a/lib/framework/APSettingsService.cpp b/lib/framework/APSettingsService.cpp index 2421f56b9..bdc02958c 100644 --- a/lib/framework/APSettingsService.cpp +++ b/lib/framework/APSettingsService.cpp @@ -47,7 +47,7 @@ void APSettingsService::manageAP() { void APSettingsService::startAP() { WiFi.softAPConfig(_state.localIP, _state.gatewayIP, _state.subnetMask); - esp_wifi_set_bandwidth(ESP_IF_WIFI_AP, WIFI_BW_HT20); + esp_wifi_set_bandwidth((wifi_interface_t)ESP_IF_WIFI_AP, WIFI_BW_HT20); WiFi.softAP(_state.ssid.c_str(), _state.password.c_str(), _state.channel, _state.ssidHidden, _state.maxClients); if (!_dnsServer) { IPAddress apIp = WiFi.softAPIP(); diff --git a/lib/framework/MqttSettingsService.cpp b/lib/framework/MqttSettingsService.cpp index 6b4fef288..bfd7efaf9 100644 --- a/lib/framework/MqttSettingsService.cpp +++ b/lib/framework/MqttSettingsService.cpp @@ -99,8 +99,8 @@ void MqttSettingsService::onConfigUpdated() { void MqttSettingsService::WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) { switch (event) { - case SYSTEM_EVENT_STA_GOT_IP: - case SYSTEM_EVENT_ETH_GOT_IP: + case ARDUINO_EVENT_WIFI_STA_GOT_IP: + case ARDUINO_EVENT_ETH_GOT_IP: emsesp::EMSESP::esp8266React.getNetworkSettingsService()->read([&](NetworkSettings & networkSettings) { if (!networkSettings.enableIPv6 && _state.enabled) { // emsesp::EMSESP::logger().info(F("IPv4 Network connection found, starting MQTT client")); @@ -108,14 +108,15 @@ void MqttSettingsService::WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) { } }); break; - case SYSTEM_EVENT_GOT_IP6: + case ARDUINO_EVENT_ETH_GOT_IP6: + case ARDUINO_EVENT_WIFI_STA_GOT_IP6: if (_state.enabled) { // emsesp::EMSESP::logger().info(F("IPv6 Network connection found, starting MQTT client")); onConfigUpdated(); } break; - case SYSTEM_EVENT_STA_DISCONNECTED: - case SYSTEM_EVENT_ETH_DISCONNECTED: + case ARDUINO_EVENT_WIFI_STA_DISCONNECTED: + case ARDUINO_EVENT_ETH_DISCONNECTED: if (_state.enabled) { // emsesp::EMSESP::logger().info(F("Network connection dropped, stopping MQTT client")); _mqttClient.disconnect(); diff --git a/lib/framework/NTPSettingsService.cpp b/lib/framework/NTPSettingsService.cpp index e4b73bf9f..88a23f7af 100644 --- a/lib/framework/NTPSettingsService.cpp +++ b/lib/framework/NTPSettingsService.cpp @@ -25,15 +25,15 @@ void NTPSettingsService::begin() { // handles both WiFI and Ethernet void NTPSettingsService::WiFiEvent(WiFiEvent_t event) { switch (event) { - case SYSTEM_EVENT_STA_DISCONNECTED: - case SYSTEM_EVENT_ETH_DISCONNECTED: + case ARDUINO_EVENT_WIFI_STA_DISCONNECTED: + case ARDUINO_EVENT_ETH_DISCONNECTED: emsesp::EMSESP::logger().info(F("WiFi connection dropped, stopping NTP")); connected_ = false; configureNTP(); break; - case SYSTEM_EVENT_STA_GOT_IP: - case SYSTEM_EVENT_ETH_GOT_IP: + case ARDUINO_EVENT_WIFI_STA_GOT_IP: + case ARDUINO_EVENT_ETH_GOT_IP: // emsesp::EMSESP::logger().info(F("Got IP address, starting NTP synchronization")); connected_ = true; configureNTP(); diff --git a/lib/framework/NetworkSettingsService.cpp b/lib/framework/NetworkSettingsService.cpp index 2522b222e..6597bdf35 100644 --- a/lib/framework/NetworkSettingsService.cpp +++ b/lib/framework/NetworkSettingsService.cpp @@ -58,7 +58,7 @@ void NetworkSettingsService::manageSTA() { if (_state.staticIPConfig) { WiFi.config(_state.localIP, _state.gatewayIP, _state.subnetMask, _state.dnsIP1, _state.dnsIP2); // configure for static IP } else { - WiFi.config(INADDR_NONE, INADDR_NONE, INADDR_NONE); // configure for DHCP + WiFi.config(IPADDR_NONE, IPADDR_NONE, IPADDR_NONE); // configure for DHCP } WiFi.setHostname(_state.hostname.c_str()); // set hostname @@ -66,9 +66,9 @@ void NetworkSettingsService::manageSTA() { // www.esp32.com/viewtopic.php?t=12055 read([&](NetworkSettings & networkSettings) { if (networkSettings.bandwidth20) { - esp_wifi_set_bandwidth(ESP_IF_WIFI_STA, WIFI_BW_HT20); + esp_wifi_set_bandwidth((wifi_interface_t)ESP_IF_WIFI_STA, WIFI_BW_HT20); } else { - esp_wifi_set_bandwidth(ESP_IF_WIFI_STA, WIFI_BW_HT40); + esp_wifi_set_bandwidth((wifi_interface_t)ESP_IF_WIFI_STA, WIFI_BW_HT40); } esp_wifi_set_max_tx_power(networkSettings.tx_power * 4); if (networkSettings.nosleep) { @@ -82,7 +82,7 @@ void NetworkSettingsService::manageSTA() { // handles if wifi stopped void NetworkSettingsService::WiFiEvent(WiFiEvent_t event) { - if (event == SYSTEM_EVENT_STA_STOP) { + if (event == ARDUINO_EVENT_WIFI_STA_STOP) { if (_stopping) { _lastConnectionAttempt = 0; _stopping = false; diff --git a/lib/framework/OTASettingsService.cpp b/lib/framework/OTASettingsService.cpp index 403ba9810..2aacdb37e 100644 --- a/lib/framework/OTASettingsService.cpp +++ b/lib/framework/OTASettingsService.cpp @@ -66,8 +66,8 @@ void OTASettingsService::configureArduinoOTA() { void OTASettingsService::WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) { switch (event) { - case SYSTEM_EVENT_STA_GOT_IP: - case SYSTEM_EVENT_ETH_GOT_IP: + case ARDUINO_EVENT_WIFI_STA_GOT_IP: + case ARDUINO_EVENT_ETH_GOT_IP: configureArduinoOTA(); break; default: diff --git a/lib_standalone/Network.h b/lib_standalone/Network.h index b4b05b9b9..13c64df09 100644 --- a/lib_standalone/Network.h +++ b/lib_standalone/Network.h @@ -20,34 +20,35 @@ typedef enum { typedef enum { ETH_PHY_LAN8720, ETH_PHY_TLK110, ETH_PHY_MAX } eth_phy_type_t; typedef enum { - SYSTEM_EVENT_WIFI_READY = 0, /**< ESP32 WiFi ready */ - SYSTEM_EVENT_SCAN_DONE, /**< ESP32 finish scanning AP */ - SYSTEM_EVENT_STA_START, /**< ESP32 station start */ - SYSTEM_EVENT_STA_STOP, /**< ESP32 station stop */ - SYSTEM_EVENT_STA_CONNECTED, /**< ESP32 station connected to AP */ - SYSTEM_EVENT_STA_DISCONNECTED, /**< ESP32 station disconnected from AP */ - SYSTEM_EVENT_STA_AUTHMODE_CHANGE, /**< the auth mode of AP connected by ESP32 station changed */ - SYSTEM_EVENT_STA_GOT_IP, /**< ESP32 station got IP from connected AP */ - SYSTEM_EVENT_STA_LOST_IP, /**< ESP32 station lost IP and the IP is reset to 0 */ - SYSTEM_EVENT_STA_WPS_ER_SUCCESS, /**< ESP32 station wps succeeds in enrollee mode */ - SYSTEM_EVENT_STA_WPS_ER_FAILED, /**< ESP32 station wps fails in enrollee mode */ - SYSTEM_EVENT_STA_WPS_ER_TIMEOUT, /**< ESP32 station wps timeout in enrollee mode */ - SYSTEM_EVENT_STA_WPS_ER_PIN, /**< ESP32 station wps pin code in enrollee mode */ - SYSTEM_EVENT_STA_WPS_ER_PBC_OVERLAP, /*!< ESP32 station wps overlap in enrollee mode */ - SYSTEM_EVENT_AP_START, /**< ESP32 soft-AP start */ - SYSTEM_EVENT_AP_STOP, /**< ESP32 soft-AP stop */ - SYSTEM_EVENT_AP_STACONNECTED, /**< a station connected to ESP32 soft-AP */ - SYSTEM_EVENT_AP_STADISCONNECTED, /**< a station disconnected from ESP32 soft-AP */ - SYSTEM_EVENT_AP_STAIPASSIGNED, /**< ESP32 soft-AP assign an IP to a connected station */ - SYSTEM_EVENT_AP_PROBEREQRECVED, /**< Receive probe request packet in soft-AP interface */ - SYSTEM_EVENT_GOT_IP6, /**< ESP32 station or ap or ethernet interface v6IP addr is preferred */ - SYSTEM_EVENT_ETH_START, /**< ESP32 ethernet start */ - SYSTEM_EVENT_ETH_STOP, /**< ESP32 ethernet stop */ - SYSTEM_EVENT_ETH_CONNECTED, /**< ESP32 ethernet phy link up */ - SYSTEM_EVENT_ETH_DISCONNECTED, /**< ESP32 ethernet phy link down */ - SYSTEM_EVENT_ETH_GOT_IP, /**< ESP32 ethernet got IP from connected AP */ - SYSTEM_EVENT_MAX -} system_event_id_t; + ARDUINO_EVENT_WIFI_READY = 0, /**< ESP32 WiFi ready */ + ARDUINO_EVENT_SCAN_DONE, /**< ESP32 finish scanning AP */ + ARDUINO_EVENT_WIFI_STA_START, /**< ESP32 station start */ + ARDUINO_EVENT_WIFI_STA_STOP, /**< ESP32 station stop */ + ARDUINO_EVENT_WIFI_STA_CONNECTED, /**< ESP32 station connected to AP */ + ARDUINO_EVENT_WIFI_STA_DISCONNECTED, /**< ESP32 station disconnected from AP */ + ARDUINO_EVENT_WIFI_STA_AUTHMODE_CHANGE, /**< the auth mode of AP connected by ESP32 station changed */ + ARDUINO_EVENT_WIFI_STA_GOT_IP, /**< ESP32 station got IP from connected AP */ + ARDUINO_EVENT_WIFI_STA_LOST_IP, /**< ESP32 station lost IP and the IP is reset to 0 */ + ARDUINO_EVENT_WIFI_STA_WPS_ER_SUCCESS, /**< ESP32 station wps succeeds in enrollee mode */ + ARDUINO_EVENT_WIFI_STA_WPS_ER_FAILED, /**< ESP32 station wps fails in enrollee mode */ + ARDUINO_EVENT_WIFI_STA_WPS_ER_TIMEOUT, /**< ESP32 station wps timeout in enrollee mode */ + ARDUINO_EVENT_WIFI_STA_WPS_ER_PIN, /**< ESP32 station wps pin code in enrollee mode */ + ARDUINO_EVENT_WIFI_STA_WPS_ER_PBC_OVERLAP, /*!< ESP32 station wps overlap in enrollee mode */ + ARDUINO_EVENT_WIFI_AP_START, /**< ESP32 soft-AP start */ + ARDUINO_EVENT_WIFI_AP_STOP, /**< ESP32 soft-AP stop */ + ARDUINO_EVENT_WIFI_AP_STACONNECTED, /**< a station connected to ESP32 soft-AP */ + ARDUINO_EVENT_WIFI_AP_STADISCONNECTED, /**< a station disconnected from ESP32 soft-AP */ + ARDUINO_EVENT_WIFI_AP_STAIPASSIGNED, /**< ESP32 soft-AP assign an IP to a connected station */ + ARDUINO_EVENT_WIFI_AP_PROBEREQRECVED, /**< Receive probe request packet in soft-AP interface */ + ARDUINO_EVENT_WIFI_STA_GOT_IP6, /**< ESP32 station or ap or ethernet interface v6IP addr is preferred */ + ARDUINO_EVENT_ETH_GOT_IP6, /**< ESP32 station or ap or ethernet interface v6IP addr is preferred */ + ARDUINO_EVENT_ETH_START, /**< ESP32 ethernet start */ + ARDUINO_EVENT_ETH_STOP, /**< ESP32 ethernet stop */ + ARDUINO_EVENT_ETH_CONNECTED, /**< ESP32 ethernet phy link up */ + ARDUINO_EVENT_ETH_DISCONNECTED, /**< ESP32 ethernet phy link down */ + ARDUINO_EVENT_ETH_GOT_IP, /**< ESP32 ethernet got IP from connected AP */ + ARDUINO_EVENT_MAX +} arduino_event_id_t; typedef enum { WIFI_AUTH_OPEN = 0, /**< authenticate mode : open */ @@ -63,7 +64,7 @@ typedef struct { uint32_t status; /**< status of scanning APs */ uint8_t number; uint8_t scan_id; -} system_event_sta_scan_done_t; +} arduino_event_wifi_sta_scan_done_t; typedef struct { uint8_t ssid[32]; /**< SSID of connected AP */ @@ -71,63 +72,63 @@ typedef struct { uint8_t bssid[6]; /**< BSSID of connected AP*/ uint8_t channel; /**< channel of connected AP*/ wifi_auth_mode_t authmode; -} system_event_sta_connected_t; +} arduino_event_wifi_sta_connected_t; typedef struct { uint8_t ssid[32]; /**< SSID of disconnected AP */ uint8_t ssid_len; /**< SSID length of disconnected AP */ uint8_t bssid[6]; /**< BSSID of disconnected AP */ uint8_t reason; /**< reason of disconnection */ -} system_event_sta_disconnected_t; +} arduino_event_wifi_sta_disconnected_t; typedef struct { wifi_auth_mode_t old_mode; /**< the old auth mode of AP */ wifi_auth_mode_t new_mode; /**< the new auth mode of AP */ -} system_event_sta_authmode_change_t; +} arduino_event_wifi_sta_authmode_change_t; typedef struct { uint8_t pin_code[8]; /**< PIN code of station in enrollee mode */ -} system_event_sta_wps_er_pin_t; +} arduino_event_wifi_sta_wps_er_pin_t; typedef struct { uint8_t mac[6]; /**< MAC address of the station connected to ESP32 soft-AP */ uint8_t aid; /**< the aid that ESP32 soft-AP gives to the station connected to */ -} system_event_ap_staconnected_t; +} arduino_event_wifi_ap_staconnected_t; typedef struct { uint8_t mac[6]; /**< MAC address of the station disconnects to ESP32 soft-AP */ uint8_t aid; /**< the aid that ESP32 soft-AP gave to the station disconnects to */ -} system_event_ap_stadisconnected_t; +} arduino_event_wifi_ap_stadisconnected_t; typedef struct { int rssi; /**< Received probe request signal strength */ uint8_t mac[6]; /**< MAC address of the station which send probe request */ -} system_event_ap_probe_req_rx_t; +} arduino_event_wifi_ap_probe_req_rx_t; typedef enum { WPS_FAIL_REASON_NORMAL = 0, /**< ESP32 WPS normal fail reason */ WPS_FAIL_REASON_RECV_M2D, /**< ESP32 WPS receive M2D frame */ WPS_FAIL_REASON_MAX -} system_event_sta_wps_fail_reason_t; +} arduino_event_wifi_sta_wps_fail_reason_t; typedef union { - system_event_sta_connected_t connected; /**< ESP32 station connected to AP */ - system_event_sta_disconnected_t disconnected; /**< ESP32 station disconnected to AP */ - system_event_sta_scan_done_t scan_done; /**< ESP32 station scan (APs) done */ - system_event_sta_authmode_change_t auth_change; /**< the auth mode of AP ESP32 station connected to changed */ - system_event_sta_wps_fail_reason_t sta_er_fail_reason; /**< ESP32 station WPS enrollee mode failed reason code received */ - system_event_ap_staconnected_t sta_connected; /**< a station connected to ESP32 soft-AP */ - system_event_ap_stadisconnected_t sta_disconnected; /**< a station disconnected to ESP32 soft-AP */ - system_event_ap_probe_req_rx_t ap_probereqrecved; /**< ESP32 soft-AP receive probe request packet */ -} system_event_info_t; + arduino_event_wifi_sta_connected_t connected; /**< ESP32 station connected to AP */ + arduino_event_wifi_sta_disconnected_t disconnected; /**< ESP32 station disconnected to AP */ + arduino_event_wifi_sta_scan_done_t scan_done; /**< ESP32 station scan (APs) done */ + arduino_event_wifi_sta_authmode_change_t auth_change; /**< the auth mode of AP ESP32 station connected to changed */ + arduino_event_wifi_sta_wps_fail_reason_t sta_er_fail_reason; /**< ESP32 station WPS enrollee mode failed reason code received */ + arduino_event_wifi_sta_connected_t sta_connected; /**< a station connected to ESP32 soft-AP */ + arduino_event_wifi_sta_disconnected_t sta_disconnected; /**< a station disconnected to ESP32 soft-AP */ + arduino_event_wifi_ap_probe_req_rx_t ap_probereqrecved; /**< ESP32 soft-AP receive probe request packet */ +} arduino_event_info_t; typedef struct { - system_event_id_t event_id; /**< event ID */ - system_event_info_t event_info; /**< event information */ -} system_event_t; + arduino_event_id_t event_id; /**< event ID */ + arduino_event_info_t event_info; /**< event information */ +} arduino_event_t; -#define WiFiEvent_t system_event_id_t -#define WiFiEventInfo_t system_event_info_t +#define WiFiEvent_t arduino_event_id_t +#define WiFiEventInfo_t arduino_event_info_t #define WiFiEventId_t wifi_event_id_t typedef enum { @@ -141,20 +142,20 @@ typedef enum { WL_DISCONNECTED = 6 } wl_status_t; -typedef void (*WiFiEventCb)(system_event_id_t event); -typedef std::function WiFiEventFuncCb; -typedef void (*WiFiEventSysCb)(system_event_t * event); +typedef void (*WiFiEventCb)(arduino_event_id_t event); +typedef std::function WiFiEventFuncCb; +typedef void (*WiFiEventSysCb)(arduino_event_t * event); typedef size_t wifi_event_id_t; class WiFiClass { public: - wifi_event_id_t onEvent(WiFiEventCb cbEvent, system_event_id_t event = SYSTEM_EVENT_MAX) { + wifi_event_id_t onEvent(WiFiEventCb cbEvent, arduino_event_id_t event = ARDUINO_EVENT_MAX) { return 0; }; - wifi_event_id_t onEvent(WiFiEventFuncCb cbEvent, system_event_id_t event = SYSTEM_EVENT_MAX) { + wifi_event_id_t onEvent(WiFiEventFuncCb cbEvent, arduino_event_id_t event = ARDUINO_EVENT_MAX) { return 0; }; - wifi_event_id_t onEvent(WiFiEventSysCb cbEvent, system_event_id_t event = SYSTEM_EVENT_MAX) { + wifi_event_id_t onEvent(WiFiEventSysCb cbEvent, arduino_event_id_t event = ARDUINO_EVENT_MAX) { return 0; }; diff --git a/src/web/WebStatusService.cpp b/src/web/WebStatusService.cpp index f4122656b..fd75f3986 100644 --- a/src/web/WebStatusService.cpp +++ b/src/web/WebStatusService.cpp @@ -33,12 +33,13 @@ WebStatusService::WebStatusService(AsyncWebServer * server, SecurityManager * se // handles both WiFI and Ethernet void WebStatusService::WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) { switch (event) { - case SYSTEM_EVENT_STA_DISCONNECTED: - EMSESP::logger().info(F("WiFi disconnected. Reason code=%d"), info.disconnected.reason); + case ARDUINO_EVENT_WIFI_STA_DISCONNECTED: + EMSESP::logger().info(F("WiFi disconnected. Reason code=%d"), info.prov_fail_reason); // IDF 4.0 + // EMSESP::logger().info(F("WiFi disconnected. Reason code=%d"), info.disconnected.reason); WiFi.disconnect(true); break; - case SYSTEM_EVENT_STA_GOT_IP: + case ARDUINO_EVENT_WIFI_STA_GOT_IP: #ifndef EMSESP_STANDALONE EMSESP::logger().info(F("WiFi connected with IP=%s, hostname=%s"), WiFi.localIP().toString().c_str(), WiFi.getHostname()); #endif @@ -51,7 +52,7 @@ void WebStatusService::WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) { mDNS_start(); break; - case SYSTEM_EVENT_ETH_START: + case ARDUINO_EVENT_ETH_START: // EMSESP::logger().info(F("Ethernet initialized")); ETH.setHostname(EMSESP::system_.hostname().c_str()); @@ -64,7 +65,7 @@ void WebStatusService::WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) { break; - case SYSTEM_EVENT_ETH_GOT_IP: + case ARDUINO_EVENT_ETH_GOT_IP: // prevent double calls if (!EMSESP::system_.ethernet_connected()) { #ifndef EMSESP_STANDALONE @@ -81,18 +82,18 @@ void WebStatusService::WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) { } break; - case SYSTEM_EVENT_ETH_DISCONNECTED: + case ARDUINO_EVENT_ETH_DISCONNECTED: EMSESP::logger().info(F("Ethernet disconnected")); EMSESP::system_.ethernet_connected(false); break; - case SYSTEM_EVENT_ETH_STOP: + case ARDUINO_EVENT_ETH_STOP: EMSESP::logger().info(F("Ethernet stopped")); EMSESP::system_.ethernet_connected(false); break; #ifndef EMSESP_STANDALONE - case SYSTEM_EVENT_STA_CONNECTED: + case ARDUINO_EVENT_WIFI_STA_CONNECTED: EMSESP::esp8266React.getNetworkSettingsService()->read([&](NetworkSettings & networkSettings) { if (networkSettings.enableIPv6) { WiFi.enableIpV6(); @@ -100,7 +101,7 @@ void WebStatusService::WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) { }); break; - case SYSTEM_EVENT_ETH_CONNECTED: + case ARDUINO_EVENT_ETH_CONNECTED: EMSESP::esp8266React.getNetworkSettingsService()->read([&](NetworkSettings & networkSettings) { if (networkSettings.enableIPv6) { ETH.enableIpV6(); @@ -108,7 +109,8 @@ void WebStatusService::WiFiEvent(WiFiEvent_t event, WiFiEventInfo_t info) { }); break; - case SYSTEM_EVENT_GOT_IP6: + case ARDUINO_EVENT_WIFI_STA_GOT_IP6: + case ARDUINO_EVENT_ETH_GOT_IP6: if (EMSESP::system_.ethernet_connected()) { EMSESP::logger().info(F("Ethernet connected with IP=%s, speed %d Mbps"), ETH.localIPv6().toString().c_str(), ETH.linkSpeed()); } else {