Discriminator
New member
Чего-то я недопонимаю....
Стартуем AP
WiFi.status() говорит WL_IDLE_STATUS, независимо от WIFI_AP_STA и WIFI_AP
Тем не менее точка доступа появляется и к ней коннектится комп. Но как видите по коду - естественно из цикла не вываливаемся.
Если посмотреть ...\Arduino15\packages\esp8266\hardware\esp8266\1.6.4-673-g8cd3697\libraries\ESP8266WiFi\src\ESP8266WiFi.cpp
int status = wifi_station_get_connect_status();
Из доки к SDK: wifi_station_get_connect_status - Function: Get connection status of WiFi station to AP
Это правомерно ? Сам пример такого старта AP взят из примеров. Библиотека "STABLE"
Стартуем AP
Код:
WiFi.disconnect();
WiFi.mode(WIFI_AP_STA);
WiFi.softAPConfig(astroIP, astroGW, classCMASK);
WiFi.softAP(aSSID, aPassword);
while (WiFi.status() != WL_CONNECTED) {
#if SerialDebug
statuss(WiFi.status());
#endif
delay(1000);
}
Тем не менее точка доступа появляется и к ней коннектится комп. Но как видите по коду - естественно из цикла не вываливаемся.
Если посмотреть ...\Arduino15\packages\esp8266\hardware\esp8266\1.6.4-673-g8cd3697\libraries\ESP8266WiFi\src\ESP8266WiFi.cpp
Код:
wl_status_t ESP8266WiFiClass::status()
{
int status = wifi_station_get_connect_status();
if (status == STATION_GOT_IP)
return WL_CONNECTED;
else if (status == STATION_NO_AP_FOUND)
return WL_NO_SSID_AVAIL;
else if (status == STATION_CONNECT_FAIL || status == STATION_WRONG_PASSWORD)
return WL_CONNECT_FAILED;
else if (status == STATION_IDLE)
return WL_IDLE_STATUS;
else
return WL_DISCONNECTED;
}
Из доки к SDK: wifi_station_get_connect_status - Function: Get connection status of WiFi station to AP
Это правомерно ? Сам пример такого старта AP взят из примеров. Библиотека "STABLE"
Код:
void setup() {
delay(1000);
Serial.begin(115200);
Serial.println();
Serial.print("Configuring access point...");
/* You can remove the password parameter if you want the AP to be open. */
WiFi.softAP(ssid, password);
while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); }
Serial.println("done");
IPAddress myIP = WiFi.softAPIP();
Serial.print("AP IP address: ");
Serial.println(myIP);
server.on("/", handleRoot);
server.begin();
Serial.println("HTTP server started");
}