fix some examples

This commit is contained in:
me-no-dev
2020-05-17 13:12:58 +03:00
parent ecc96060da
commit 1f204676e6
8 changed files with 137 additions and 139 deletions

View File

@ -10,15 +10,15 @@ static bool eth_connected = false;
void WiFiEvent(WiFiEvent_t event) void WiFiEvent(WiFiEvent_t event)
{ {
switch (event) { switch (event) {
case SYSTEM_EVENT_ETH_START: case ARDUINO_EVENT_ETH_START:
Serial.println("ETH Started"); Serial.println("ETH Started");
//set eth hostname here //set eth hostname here
ETH.setHostname("esp32-ethernet"); ETH.setHostname("esp32-ethernet");
break; break;
case SYSTEM_EVENT_ETH_CONNECTED: case ARDUINO_EVENT_ETH_CONNECTED:
Serial.println("ETH Connected"); Serial.println("ETH Connected");
break; break;
case SYSTEM_EVENT_ETH_GOT_IP: case ARDUINO_EVENT_ETH_GOT_IP:
Serial.print("ETH MAC: "); Serial.print("ETH MAC: ");
Serial.print(ETH.macAddress()); Serial.print(ETH.macAddress());
Serial.print(", IPv4: "); Serial.print(", IPv4: ");
@ -31,11 +31,11 @@ void WiFiEvent(WiFiEvent_t event)
Serial.println("Mbps"); Serial.println("Mbps");
eth_connected = true; eth_connected = true;
break; break;
case SYSTEM_EVENT_ETH_DISCONNECTED: case ARDUINO_EVENT_ETH_DISCONNECTED:
Serial.println("ETH Disconnected"); Serial.println("ETH Disconnected");
eth_connected = false; eth_connected = false;
break; break;
case SYSTEM_EVENT_ETH_STOP: case ARDUINO_EVENT_ETH_STOP:
Serial.println("ETH Stopped"); Serial.println("ETH Stopped");
eth_connected = false; eth_connected = false;
break; break;

View File

@ -16,15 +16,15 @@ static bool eth_connected = false;
void WiFiEvent(WiFiEvent_t event) void WiFiEvent(WiFiEvent_t event)
{ {
switch (event) { switch (event) {
case SYSTEM_EVENT_ETH_START: case ARDUINO_EVENT_ETH_START:
Serial.println("ETH Started"); Serial.println("ETH Started");
//set eth hostname here //set eth hostname here
ETH.setHostname("esp32-ethernet"); ETH.setHostname("esp32-ethernet");
break; break;
case SYSTEM_EVENT_ETH_CONNECTED: case ARDUINO_EVENT_ETH_CONNECTED:
Serial.println("ETH Connected"); Serial.println("ETH Connected");
break; break;
case SYSTEM_EVENT_ETH_GOT_IP: case ARDUINO_EVENT_ETH_GOT_IP:
Serial.print("ETH MAC: "); Serial.print("ETH MAC: ");
Serial.print(ETH.macAddress()); Serial.print(ETH.macAddress());
Serial.print(", IPv4: "); Serial.print(", IPv4: ");
@ -37,11 +37,11 @@ void WiFiEvent(WiFiEvent_t event)
Serial.println("Mbps"); Serial.println("Mbps");
eth_connected = true; eth_connected = true;
break; break;
case SYSTEM_EVENT_ETH_DISCONNECTED: case ARDUINO_EVENT_ETH_DISCONNECTED:
Serial.println("ETH Disconnected"); Serial.println("ETH Disconnected");
eth_connected = false; eth_connected = false;
break; break;
case SYSTEM_EVENT_ETH_STOP: case ARDUINO_EVENT_ETH_STOP:
Serial.println("ETH Stopped"); Serial.println("ETH Stopped");
eth_connected = false; eth_connected = false;
break; break;

View File

@ -47,39 +47,39 @@ String wpspin2string(uint8_t a[]){
return (String)wps_pin; return (String)wps_pin;
} }
void WiFiEvent(WiFiEvent_t event, system_event_info_t info){ void WiFiEvent(WiFiEvent_t event, arduino_event_info_t info){
switch(event){ switch(event){
case SYSTEM_EVENT_STA_START: case ARDUINO_EVENT_WIFI_STA_START:
Serial.println("Station Mode Started"); Serial.println("Station Mode Started");
break; break;
case SYSTEM_EVENT_STA_GOT_IP: case ARDUINO_EVENT_WIFI_STA_GOT_IP:
Serial.println("Connected to :" + String(WiFi.SSID())); Serial.println("Connected to :" + String(WiFi.SSID()));
Serial.print("Got IP: "); Serial.print("Got IP: ");
Serial.println(WiFi.localIP()); Serial.println(WiFi.localIP());
break; break;
case SYSTEM_EVENT_STA_DISCONNECTED: case ARDUINO_EVENT_WIFI_STA_DISCONNECTED:
Serial.println("Disconnected from station, attempting reconnection"); Serial.println("Disconnected from station, attempting reconnection");
WiFi.reconnect(); WiFi.reconnect();
break; break;
case SYSTEM_EVENT_STA_WPS_ER_SUCCESS: case ARDUINO_EVENT_WPS_ER_SUCCESS:
Serial.println("WPS Successful, stopping WPS and connecting to: " + String(WiFi.SSID())); Serial.println("WPS Successfull, stopping WPS and connecting to: " + String(WiFi.SSID()));
esp_wifi_wps_disable(); esp_wifi_wps_disable();
delay(10); delay(10);
WiFi.begin(); WiFi.begin();
break; break;
case SYSTEM_EVENT_STA_WPS_ER_FAILED: case ARDUINO_EVENT_WPS_ER_FAILED:
Serial.println("WPS Failed, retrying"); Serial.println("WPS Failed, retrying");
esp_wifi_wps_disable(); esp_wifi_wps_disable();
esp_wifi_wps_enable(&config); esp_wifi_wps_enable(&config);
esp_wifi_wps_start(0); esp_wifi_wps_start(0);
break; break;
case SYSTEM_EVENT_STA_WPS_ER_TIMEOUT: case ARDUINO_EVENT_WPS_ER_TIMEOUT:
Serial.println("WPS Timeout, retrying"); Serial.println("WPS Timedout, retrying");
esp_wifi_wps_disable(); esp_wifi_wps_disable();
esp_wifi_wps_enable(&config); esp_wifi_wps_enable(&config);
esp_wifi_wps_start(0); esp_wifi_wps_start(0);
break; break;
case SYSTEM_EVENT_STA_WPS_ER_PIN: case ARDUINO_EVENT_WPS_ER_PIN:
Serial.println("WPS_PIN = " + wpspin2string(info.sta_er_pin.pin_code)); Serial.println("WPS_PIN = " + wpspin2string(info.sta_er_pin.pin_code));
break; break;
default: default:

View File

@ -75,33 +75,33 @@ void onButton(){
void WiFiEvent(WiFiEvent_t event){ void WiFiEvent(WiFiEvent_t event){
switch(event) { switch(event) {
case SYSTEM_EVENT_AP_START: case ARDUINO_EVENT_WIFI_AP_START:
Serial.println("AP Started"); Serial.println("AP Started");
WiFi.softAPsetHostname(AP_SSID); WiFi.softAPsetHostname(AP_SSID);
break; break;
case SYSTEM_EVENT_AP_STOP: case ARDUINO_EVENT_WIFI_AP_STOP:
Serial.println("AP Stopped"); Serial.println("AP Stopped");
break; break;
case SYSTEM_EVENT_STA_START: case ARDUINO_EVENT_WIFI_STA_START:
Serial.println("STA Started"); Serial.println("STA Started");
WiFi.setHostname(AP_SSID); WiFi.setHostname(AP_SSID);
break; break;
case SYSTEM_EVENT_STA_CONNECTED: case ARDUINO_EVENT_WIFI_STA_CONNECTED:
Serial.println("STA Connected"); Serial.println("STA Connected");
WiFi.enableIpV6(); WiFi.enableIpV6();
break; break;
case SYSTEM_EVENT_AP_STA_GOT_IP6: case ARDUINO_EVENT_WIFI_AP_STA_GOT_IP6:
Serial.print("STA IPv6: "); Serial.print("STA IPv6: ");
Serial.println(WiFi.localIPv6()); Serial.println(WiFi.localIPv6());
break; break;
case SYSTEM_EVENT_STA_GOT_IP: case ARDUINO_EVENT_WIFI_STA_GOT_IP:
Serial.print("STA IPv4: "); Serial.print("STA IPv4: ");
Serial.println(WiFi.localIP()); Serial.println(WiFi.localIP());
break; break;
case SYSTEM_EVENT_STA_DISCONNECTED: case ARDUINO_EVENT_WIFI_STA_DISCONNECTED:
Serial.println("STA Disconnected"); Serial.println("STA Disconnected");
break; break;
case SYSTEM_EVENT_STA_STOP: case ARDUINO_EVENT_WIFI_STA_STOP:
Serial.println("STA Stopped"); Serial.println("STA Stopped");
break; break;
default: default:

View File

@ -6,32 +6,34 @@
/* /*
* WiFi Events * WiFi Events
0 SYSTEM_EVENT_WIFI_READY < ESP32 WiFi ready 0 ARDUINO_EVENT_WIFI_READY < ESP32 WiFi ready
1 SYSTEM_EVENT_SCAN_DONE < ESP32 finish scanning AP 1 ARDUINO_EVENT_WIFI_SCAN_DONE < ESP32 finish scanning AP
2 SYSTEM_EVENT_STA_START < ESP32 station start 2 ARDUINO_EVENT_WIFI_STA_START < ESP32 station start
3 SYSTEM_EVENT_STA_STOP < ESP32 station stop 3 ARDUINO_EVENT_WIFI_STA_STOP < ESP32 station stop
4 SYSTEM_EVENT_STA_CONNECTED < ESP32 station connected to AP 4 ARDUINO_EVENT_WIFI_STA_CONNECTED < ESP32 station connected to AP
5 SYSTEM_EVENT_STA_DISCONNECTED < ESP32 station disconnected from AP 5 ARDUINO_EVENT_WIFI_STA_DISCONNECTED < ESP32 station disconnected from AP
6 SYSTEM_EVENT_STA_AUTHMODE_CHANGE < the auth mode of AP connected by ESP32 station changed 6 ARDUINO_EVENT_WIFI_STA_AUTHMODE_CHANGE < the auth mode of AP connected by ESP32 station changed
7 SYSTEM_EVENT_STA_GOT_IP < ESP32 station got IP from connected AP 7 ARDUINO_EVENT_WIFI_STA_GOT_IP < ESP32 station got IP from connected AP
8 SYSTEM_EVENT_STA_LOST_IP < ESP32 station lost IP and the IP is reset to 0 8 ARDUINO_EVENT_WIFI_STA_LOST_IP < ESP32 station lost IP and the IP is reset to 0
9 SYSTEM_EVENT_STA_WPS_ER_SUCCESS < ESP32 station wps succeeds in enrollee mode 9 ARDUINO_EVENT_WPS_ER_SUCCESS < ESP32 station wps succeeds in enrollee mode
10 SYSTEM_EVENT_STA_WPS_ER_FAILED < ESP32 station wps fails in enrollee mode 10 ARDUINO_EVENT_WPS_ER_FAILED < ESP32 station wps fails in enrollee mode
11 SYSTEM_EVENT_STA_WPS_ER_TIMEOUT < ESP32 station wps timeout in enrollee mode 11 ARDUINO_EVENT_WPS_ER_TIMEOUT < ESP32 station wps timeout in enrollee mode
12 SYSTEM_EVENT_STA_WPS_ER_PIN < ESP32 station wps pin code in enrollee mode 12 ARDUINO_EVENT_WPS_ER_PIN < ESP32 station wps pin code in enrollee mode
13 SYSTEM_EVENT_AP_START < ESP32 soft-AP start 13 ARDUINO_EVENT_WIFI_AP_START < ESP32 soft-AP start
14 SYSTEM_EVENT_AP_STOP < ESP32 soft-AP stop 14 ARDUINO_EVENT_WIFI_AP_STOP < ESP32 soft-AP stop
15 SYSTEM_EVENT_AP_STACONNECTED < a station connected to ESP32 soft-AP 15 ARDUINO_EVENT_WIFI_AP_STACONNECTED < a station connected to ESP32 soft-AP
16 SYSTEM_EVENT_AP_STADISCONNECTED < a station disconnected from ESP32 soft-AP 16 ARDUINO_EVENT_WIFI_AP_STADISCONNECTED < a station disconnected from ESP32 soft-AP
17 SYSTEM_EVENT_AP_STAIPASSIGNED < ESP32 soft-AP assign an IP to a connected station 17 ARDUINO_EVENT_WIFI_AP_STAIPASSIGNED < ESP32 soft-AP assign an IP to a connected station
18 SYSTEM_EVENT_AP_PROBEREQRECVED < Receive probe request packet in soft-AP interface 18 ARDUINO_EVENT_WIFI_AP_PROBEREQRECVED < Receive probe request packet in soft-AP interface
19 SYSTEM_EVENT_GOT_IP6 < ESP32 station or ap or ethernet interface v6IP addr is preferred 19 ARDUINO_EVENT_WIFI_AP_GOT_IP6 < ESP32 ap interface v6IP addr is preferred
20 SYSTEM_EVENT_ETH_START < ESP32 ethernet start 19 ARDUINO_EVENT_WIFI_STA_GOT_IP6 < ESP32 station interface v6IP addr is preferred
21 SYSTEM_EVENT_ETH_STOP < ESP32 ethernet stop 20 ARDUINO_EVENT_ETH_START < ESP32 ethernet start
22 SYSTEM_EVENT_ETH_CONNECTED < ESP32 ethernet phy link up 21 ARDUINO_EVENT_ETH_STOP < ESP32 ethernet stop
23 SYSTEM_EVENT_ETH_DISCONNECTED < ESP32 ethernet phy link down 22 ARDUINO_EVENT_ETH_CONNECTED < ESP32 ethernet phy link up
24 SYSTEM_EVENT_ETH_GOT_IP < ESP32 ethernet got IP from connected AP 23 ARDUINO_EVENT_ETH_DISCONNECTED < ESP32 ethernet phy link down
25 SYSTEM_EVENT_MAX 24 ARDUINO_EVENT_ETH_GOT_IP < ESP32 ethernet got IP from connected AP
19 ARDUINO_EVENT_ETH_GOT_IP6 < ESP32 ethernet interface v6IP addr is preferred
25 ARDUINO_EVENT_MAX
*/ */
#include <WiFi.h> #include <WiFi.h>
@ -45,80 +47,86 @@ void WiFiEvent(WiFiEvent_t event)
Serial.printf("[WiFi-event] event: %d\n", event); Serial.printf("[WiFi-event] event: %d\n", event);
switch (event) { switch (event) {
case SYSTEM_EVENT_WIFI_READY: case ARDUINO_EVENT_WIFI_READY:
Serial.println("WiFi interface ready"); Serial.println("WiFi interface ready");
break; break;
case SYSTEM_EVENT_SCAN_DONE: case ARDUINO_EVENT_WIFI_SCAN_DONE:
Serial.println("Completed scan for access points"); Serial.println("Completed scan for access points");
break; break;
case SYSTEM_EVENT_STA_START: case ARDUINO_EVENT_WIFI_STA_START:
Serial.println("WiFi client started"); Serial.println("WiFi client started");
break; break;
case SYSTEM_EVENT_STA_STOP: case ARDUINO_EVENT_WIFI_STA_STOP:
Serial.println("WiFi clients stopped"); Serial.println("WiFi clients stopped");
break; break;
case SYSTEM_EVENT_STA_CONNECTED: case ARDUINO_EVENT_WIFI_STA_CONNECTED:
Serial.println("Connected to access point"); Serial.println("Connected to access point");
break; break;
case SYSTEM_EVENT_STA_DISCONNECTED: case ARDUINO_EVENT_WIFI_STA_DISCONNECTED:
Serial.println("Disconnected from WiFi access point"); Serial.println("Disconnected from WiFi access point");
break; break;
case SYSTEM_EVENT_STA_AUTHMODE_CHANGE: case ARDUINO_EVENT_WIFI_STA_AUTHMODE_CHANGE:
Serial.println("Authentication mode of access point has changed"); Serial.println("Authentication mode of access point has changed");
break; break;
case SYSTEM_EVENT_STA_GOT_IP: case ARDUINO_EVENT_WIFI_STA_GOT_IP:
Serial.print("Obtained IP address: "); Serial.print("Obtained IP address: ");
Serial.println(WiFi.localIP()); Serial.println(WiFi.localIP());
break; break;
case SYSTEM_EVENT_STA_LOST_IP: case ARDUINO_EVENT_WIFI_STA_LOST_IP:
Serial.println("Lost IP address and IP address is reset to 0"); Serial.println("Lost IP address and IP address is reset to 0");
break; break;
case SYSTEM_EVENT_STA_WPS_ER_SUCCESS: case ARDUINO_EVENT_WPS_ER_SUCCESS:
Serial.println("WiFi Protected Setup (WPS): succeeded in enrollee mode"); Serial.println("WiFi Protected Setup (WPS): succeeded in enrollee mode");
break; break;
case SYSTEM_EVENT_STA_WPS_ER_FAILED: case ARDUINO_EVENT_WPS_ER_FAILED:
Serial.println("WiFi Protected Setup (WPS): failed in enrollee mode"); Serial.println("WiFi Protected Setup (WPS): failed in enrollee mode");
break; break;
case SYSTEM_EVENT_STA_WPS_ER_TIMEOUT: case ARDUINO_EVENT_WPS_ER_TIMEOUT:
Serial.println("WiFi Protected Setup (WPS): timeout in enrollee mode"); Serial.println("WiFi Protected Setup (WPS): timeout in enrollee mode");
break; break;
case SYSTEM_EVENT_STA_WPS_ER_PIN: case ARDUINO_EVENT_WPS_ER_PIN:
Serial.println("WiFi Protected Setup (WPS): pin code in enrollee mode"); Serial.println("WiFi Protected Setup (WPS): pin code in enrollee mode");
break; break;
case SYSTEM_EVENT_AP_START: case ARDUINO_EVENT_WIFI_AP_START:
Serial.println("WiFi access point started"); Serial.println("WiFi access point started");
break; break;
case SYSTEM_EVENT_AP_STOP: case ARDUINO_EVENT_WIFI_AP_STOP:
Serial.println("WiFi access point stopped"); Serial.println("WiFi access point stopped");
break; break;
case SYSTEM_EVENT_AP_STACONNECTED: case ARDUINO_EVENT_WIFI_AP_STACONNECTED:
Serial.println("Client connected"); Serial.println("Client connected");
break; break;
case SYSTEM_EVENT_AP_STADISCONNECTED: case ARDUINO_EVENT_WIFI_AP_STADISCONNECTED:
Serial.println("Client disconnected"); Serial.println("Client disconnected");
break; break;
case SYSTEM_EVENT_AP_STAIPASSIGNED: case ARDUINO_EVENT_WIFI_AP_STAIPASSIGNED:
Serial.println("Assigned IP address to client"); Serial.println("Assigned IP address to client");
break; break;
case SYSTEM_EVENT_AP_PROBEREQRECVED: case ARDUINO_EVENT_WIFI_AP_PROBEREQRECVED:
Serial.println("Received probe request"); Serial.println("Received probe request");
break; break;
case SYSTEM_EVENT_GOT_IP6: case ARDUINO_EVENT_WIFI_AP_GOT_IP6:
Serial.println("IPv6 is preferred"); Serial.println("AP IPv6 is preferred");
break; break;
case SYSTEM_EVENT_ETH_START: case ARDUINO_EVENT_WIFI_STA_GOT_IP6:
Serial.println("STA IPv6 is preferred");
break;
case ARDUINO_EVENT_ETH_GOT_IP6:
Serial.println("Ethernet IPv6 is preferred");
break;
case ARDUINO_EVENT_ETH_START:
Serial.println("Ethernet started"); Serial.println("Ethernet started");
break; break;
case SYSTEM_EVENT_ETH_STOP: case ARDUINO_EVENT_ETH_STOP:
Serial.println("Ethernet stopped"); Serial.println("Ethernet stopped");
break; break;
case SYSTEM_EVENT_ETH_CONNECTED: case ARDUINO_EVENT_ETH_CONNECTED:
Serial.println("Ethernet connected"); Serial.println("Ethernet connected");
break; break;
case SYSTEM_EVENT_ETH_DISCONNECTED: case ARDUINO_EVENT_ETH_DISCONNECTED:
Serial.println("Ethernet disconnected"); Serial.println("Ethernet disconnected");
break; break;
case SYSTEM_EVENT_ETH_GOT_IP: case ARDUINO_EVENT_ETH_GOT_IP:
Serial.println("Obtained IP address"); Serial.println("Obtained IP address");
break; break;
default: break; default: break;
@ -142,11 +150,11 @@ void setup()
// Examples of different ways to register wifi events // Examples of different ways to register wifi events
WiFi.onEvent(WiFiEvent); WiFi.onEvent(WiFiEvent);
WiFi.onEvent(WiFiGotIP, WiFiEvent_t::SYSTEM_EVENT_STA_GOT_IP); WiFi.onEvent(WiFiGotIP, WiFiEvent_t::ARDUINO_EVENT_WIFI_STA_GOT_IP);
WiFiEventId_t eventID = WiFi.onEvent([](WiFiEvent_t event, WiFiEventInfo_t info){ WiFiEventId_t eventID = WiFi.onEvent([](WiFiEvent_t event, WiFiEventInfo_t info){
Serial.print("WiFi lost connection. Reason: "); Serial.print("WiFi lost connection. Reason: ");
Serial.println(info.disconnected.reason); Serial.println(info.disconnected.reason);
}, WiFiEvent_t::SYSTEM_EVENT_STA_DISCONNECTED); }, WiFiEvent_t::ARDUINO_EVENT_WIFI_STA_DISCONNECTED);
// Remove WiFi event // Remove WiFi event
Serial.print("WiFi Event ID: "); Serial.print("WiFi Event ID: ");

View File

@ -67,33 +67,34 @@ void wifiConnectedLoop(){
void WiFiEvent(WiFiEvent_t event){ void WiFiEvent(WiFiEvent_t event){
switch(event) { switch(event) {
case SYSTEM_EVENT_AP_START: case ARDUINO_EVENT_WIFI_AP_START:
//can set ap hostname here //can set ap hostname here
WiFi.softAPsetHostname(AP_SSID); WiFi.softAPsetHostname(AP_SSID);
//enable ap ipv6 here //enable ap ipv6 here
WiFi.softAPenableIpV6(); WiFi.softAPenableIpV6();
break; break;
case SYSTEM_EVENT_STA_START: case ARDUINO_EVENT_WIFI_STA_START:
//set sta hostname here //set sta hostname here
WiFi.setHostname(AP_SSID); WiFi.setHostname(AP_SSID);
break; break;
case SYSTEM_EVENT_STA_CONNECTED: case ARDUINO_EVENT_WIFI_STA_CONNECTED:
//enable sta ipv6 here //enable sta ipv6 here
WiFi.enableIpV6(); WiFi.enableIpV6();
break; break;
case SYSTEM_EVENT_AP_STA_GOT_IP6: case ARDUINO_EVENT_WIFI_STA_GOT_IP6:
//both interfaces get the same event
Serial.print("STA IPv6: "); Serial.print("STA IPv6: ");
Serial.println(WiFi.localIPv6()); Serial.println(WiFi.localIPv6());
break;
case ARDUINO_EVENT_WIFI_AP_GOT_IP6:
Serial.print("AP IPv6: "); Serial.print("AP IPv6: ");
Serial.println(WiFi.softAPIPv6()); Serial.println(WiFi.softAPIPv6());
break; break;
case SYSTEM_EVENT_STA_GOT_IP: case ARDUINO_EVENT_WIFI_STA_GOT_IP:
wifiOnConnect(); wifiOnConnect();
wifi_connected = true; wifi_connected = true;
break; break;
case SYSTEM_EVENT_STA_DISCONNECTED: case ARDUINO_EVENT_WIFI_STA_DISCONNECTED:
wifi_connected = false; wifi_connected = false;
wifiOnDisconnect(); wifiOnDisconnect();
break; break;

View File

@ -1,52 +1,41 @@
#include "WiFi.h" #include "WiFi.h"
void SysProvEvent(system_event_t *sys_event,wifi_prov_event_t *prov_event) void SysProvEvent(arduino_event_t *sys_event)
{ {
if(sys_event) { switch (sys_event->event_id) {
switch (sys_event->event_id) { case ARDUINO_EVENT_WIFI_STA_GOT_IP:
case SYSTEM_EVENT_STA_GOT_IP: Serial.print("\nConnected IP address : ");
Serial.print("\nConnected IP address : "); Serial.println(IPAddress(sys_event->event_info.got_ip.ip_info.ip.addr));
Serial.println(IPAddress(sys_event->event_info.got_ip.ip_info.ip.addr)); break;
break; case ARDUINO_EVENT_WIFI_STA_DISCONNECTED:
case SYSTEM_EVENT_STA_DISCONNECTED: Serial.println("\nDisconnected. Connecting to the AP again... ");
Serial.println("\nDisconnected. Connecting to the AP again... "); break;
break; case ARDUINO_EVENT_PROV_START:
default: Serial.println("\nProvisioning started\nGive Credentials of your access point using \" Android app \"");
break; break;
} case ARDUINO_EVENT_PROV_CRED_RECV: {
Serial.println("\nReceived Wi-Fi credentials");
Serial.print("\tSSID : ");
Serial.println((const char *) sys_event->event_info.prov_cred_recv.ssid);
Serial.print("\tPassword : ");
Serial.println((char const *) sys_event->event_info.prov_cred_recv.password);
break;
} }
case ARDUINO_EVENT_PROV_CRED_FAIL: {
if(prov_event) { Serial.println("\nProvisioning failed!\nPlease reset to factory and retry provisioning\n");
switch (prov_event->event) { if(sys_event->event_info.prov_fail_reason == WIFI_PROV_STA_AUTH_ERROR)
case WIFI_PROV_START: Serial.println("\nWi-Fi AP password incorrect");
Serial.println("\nProvisioning started\nGive Credentials of your access point using \" Android app \""); else
break; Serial.println("\nWi-Fi AP not found....Add API \" nvs_flash_erase() \" before beginProvision()");
case WIFI_PROV_CRED_RECV: { break;
Serial.println("\nReceived Wi-Fi credentials"); }
wifi_sta_config_t *wifi_sta_cfg = (wifi_sta_config_t *)prov_event->event_data; case ARDUINO_EVENT_PROV_CRED_SUCCESS:
Serial.print("\tSSID : "); Serial.println("\nProvisioning Successful");
Serial.println((const char *) wifi_sta_cfg->ssid); break;
Serial.print("\tPassword : "); case ARDUINO_EVENT_PROV_END:
Serial.println((char const *) wifi_sta_cfg->password); Serial.println("\nProvisioning Ends");
break; break;
} default:
case WIFI_PROV_CRED_FAIL: { break;
wifi_prov_sta_fail_reason_t *reason = (wifi_prov_sta_fail_reason_t *)prov_event->event_data;
Serial.println("\nProvisioning failed!\nPlease reset to factory and retry provisioning\n");
if(*reason == WIFI_PROV_STA_AUTH_ERROR)
Serial.println("\nWi-Fi AP password incorrect");
else
Serial.println("\nWi-Fi AP not found....Add API \" nvs_flash_erase() \" before beginProvision()");
break;
}
case WIFI_PROV_CRED_SUCCESS:
Serial.println("\nProvisioning Successful");
break;
case WIFI_PROV_END:
Serial.println("\nProvisioning Ends");
break;
default:
break;
}
} }
} }
@ -56,8 +45,8 @@ void setup() {
/* uint8_t uuid[16] = {0xb4, 0xdf, 0x5a, 0x1c, 0x3f, 0x6b, 0xf4, 0xbf, /* uint8_t uuid[16] = {0xb4, 0xdf, 0x5a, 0x1c, 0x3f, 0x6b, 0xf4, 0xbf,
0xea, 0x4a, 0x82, 0x03, 0x04, 0x90, 0x1a, 0x02 };*/ 0xea, 0x4a, 0x82, 0x03, 0x04, 0x90, 0x1a, 0x02 };*/
WiFi.onEvent(SysProvEvent); WiFi.onEvent(SysProvEvent);
//WiFi.beginProvision(provSchemeBLE, WIFI_PROV_SCHEME_BLE_EVENT_HANDLER_FREE_BTDM, WIFI_PROV_SECURITY_1, "abcd1234", "PROV_XXX", NULL, NULL); //WiFi.beginProvision(WIFI_PROV_SCHEME_BLE, WIFI_PROV_SCHEME_BLE_EVENT_HANDLER_FREE_BTDM, WIFI_PROV_SECURITY_1, "abcd1234", "PROV_XXX", NULL, NULL);
WiFi.beginProvision(provSchemeSoftAP, WIFI_PROV_EVENT_HANDLER_NONE, WIFI_PROV_SECURITY_1, "abcd1234", "SOFTAP_XXX", NULL, NULL); WiFi.beginProvision(WIFI_PROV_SCHEME_SOFTAP, WIFI_PROV_EVENT_HANDLER_NONE, WIFI_PROV_SECURITY_1, "abcd1234", "SOFTAP_XXX", NULL, NULL);
} }
void loop() { void loop() {

View File

@ -58,7 +58,7 @@ void connectToWiFi(const char * ssid, const char * pwd){
//wifi event handler //wifi event handler
void WiFiEvent(WiFiEvent_t event){ void WiFiEvent(WiFiEvent_t event){
switch(event) { switch(event) {
case SYSTEM_EVENT_STA_GOT_IP: case ARDUINO_EVENT_WIFI_STA_GOT_IP:
//When connected set //When connected set
Serial.print("WiFi connected! IP address: "); Serial.print("WiFi connected! IP address: ");
Serial.println(WiFi.localIP()); Serial.println(WiFi.localIP());
@ -67,7 +67,7 @@ void WiFiEvent(WiFiEvent_t event){
udp.begin(WiFi.localIP(),udpPort); udp.begin(WiFi.localIP(),udpPort);
connected = true; connected = true;
break; break;
case SYSTEM_EVENT_STA_DISCONNECTED: case ARDUINO_EVENT_WIFI_STA_DISCONNECTED:
Serial.println("WiFi lost connection"); Serial.println("WiFi lost connection");
connected = false; connected = false;
break; break;