void connectToWifi(String ssid, String pwd, byte ip[], byte gw[], byte mask[], byte dns[], byte bssid[], byte chnl ) { if (WiFi.status() == WL_CONNECTED) return; Serial.println(F("laczenie...")); long st = millis(); WiFi.enableSTA(true); WiFi.mode(WIFI_STA); if (ip[0] != 0) WiFi.config(getIpAddrFromArr(ip), getIpAddrFromArr(gw), getIpAddrFromArr(mask), getIpAddrFromArr(dns)); if ((ssid.length() != 0) && (pwd.length() == 0)) { WiFi.begin(ssid.c_str()); } else if ((ssid.length() != 0) && (pwd.length() != 0)) { if (bssid[0] == 0) { WiFi.begin(ssid.c_str(), pwd.c_str()); } else { WiFi.begin(ssid.c_str(), pwd.c_str(), chnl, bssid); } WiFi.setAutoConnect(true); } int attempts = 0; while (WiFi.status() != WL_CONNECTED) { if (++attempts < 300) { Serial.print("."); delay(50); } else break; } if (WiFi.status() == WL_CONNECTED) { long tm = millis() - st; Serial.print(F("\nPolaczony z ap w ")); Serial.print(tm, DEC); Serial.print(F("ms. IP: ")); for (byte thisByte = 0; thisByte < 4; thisByte++) { Serial.print(String(WiFi.localIP()[thisByte], DEC)); if (thisByte != 3) Serial.print("."); } Serial.println(); } }