forked from ffroehlcke/maxx-wifi-controller
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathwifi.ino
53 lines (43 loc) · 1.27 KB
/
wifi.ino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
void setup_wifi()
{
Serial.println("Reading EEPROM");
Load_WiFi_SSID_From_Eeprom();
Load_WiFi_Password_From_Eeprom();
if(WiFi_Stored_SSID != "0")
{
Serial.printf("Trying to connect to %s \n", WiFi_Stored_SSID.c_str());
WiFi.mode(WIFI_STA);
WiFi.setHostname(WiFi_Hostname);
WiFi.begin(WiFi_Stored_SSID, WiFi_Stored_Password);
int i = 0;
while(WiFi.status() != WL_CONNECTED){
Serial.print(".");
delay(100);
++i;
if(i >= 100){
break;
}
}
}
if(WiFi.status() == WL_CONNECTED)
{
WiFi_Status_Up = true;
Serial.print("\nConnected to WiFi-Network: ");
Serial.println(WiFi_Stored_SSID.c_str());
Serial.print("Local ESP IP: ");
Serial.println(WiFi.localIP());
WiFi_Ip_Adresse = WiFi.localIP().toString();
} else {
WiFi.disconnect();
Serial.print("\nWiFi-Fallback - Switch to AP Mode");
int n = WiFi.scanNetworks();
for (int i = 0; i < n; ++i) {
WiFi_List[i] = WiFi.SSID(i);
}
WiFi.mode(WIFI_AP);
WiFi.setHostname(WiFi_Hostname);
WiFi.softAP(WiFi_AP_SSID, WiFi_AP_Password);
Serial.printf("\nOnline - SSID %s AP with IP address %s\r\n", WiFi_AP_SSID, WiFi.softAPIP().toString().c_str());
WiFi_Ip_Adresse = WiFi.softAPIP().toString();
}
}