#include <ESP8266WiFi.h> #include <WiFiClientSecure.h> #ifndef STASSID #define STASSID "wlanName" #define STAPSK "wlanPassword" #endif const char* ssid = STASSID; const char* password = STAPSK; const char* host = "api.github.com"; const int httpsPort = 443; const char fingerprint[] PROGMEM = "5F F1 60 31 09 04 3E F2 90 D2 B0 8A 50 38 04 E8 37 9F BC 76"; void setup() { Serial.begin(115200); delay(5000); Serial.println(); Serial.print("connecting to "); Serial.println(ssid); WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); while (true) { delay(500); Serial.print(WiFi.status()); } } void loop() { // put your main code here, to run repeatedly: } If I run this code, I will get 6 as output from Wifi.status(), and once I also got 4. What do 4 and 6 stand for? Is it connected or not? What other status codes do I have to know?
1 Answer
There is publicly available documentation
Arduino sources are open source. You can browse the sources.
Type in google "Arduino esp8266 source github" and you may find . From there you can ex. type WL_CONNECTED in search bar above and find this line of code:
typedef enum { WL_NO_SHIELD = 255, // for compatibility with WiFi Shield library WL_IDLE_STATUS = 0, WL_NO_SSID_AVAIL = 1, WL_SCAN_COMPLETED = 2, WL_CONNECTED = 3, WL_CONNECT_FAILED = 4, WL_CONNECTION_LOST = 5, WL_WRONG_PASSWORD = 6, WL_DISCONNECTED = 7 } wl_status_t; 0