BARS__
New member
Всем привет.
Пишу прошивку в Ardino IDE. Требуется подключение модуля к домашней сети. Собственно, с этим возникли проблемы. Если создать сеть на телефоне, то коннект проходит без проблем. А вот к домашней сети ни в какую. При первой попытке коннекта возвращает статус IDLE, а при последующих - CONNECT_FAILED. Название сети и пароль верны на 100%. Коннекчусь вот так:
В чем может быть проблема?
Пишу прошивку в Ardino IDE. Требуется подключение модуля к домашней сети. Собственно, с этим возникли проблемы. Если создать сеть на телефоне, то коннект проходит без проблем. А вот к домашней сети ни в какую. При первой попытке коннекта возвращает статус IDLE, а при последующих - CONNECT_FAILED. Название сети и пароль верны на 100%. Коннекчусь вот так:
Код:
WiFi.disconnect();
delay(500);
WiFi.mode(WIFI_OFF);
delay(500);
IPAddress staIP(192,168,1,10);
WiFi.mode(WIFI_AP_STA);
WiFi.softAPConfig(staIP, staIP, IPAddress(255,255,255,0));
WiFi.softAP(AP_SSID);
Serial.print("Connecting to ");
Serial.println(STA_SSID);
ConnectWiFi(STA_SSID.c_str(), STA_PASS.c_str());
Код:
/**
* Соединение с WiFi
*/
bool ConnectWiFi(const char *ssid, const char *pass) {
// Три попытки соединения по WiFi
for(int i = 0; i < 3; i++) {
Serial.print("\nConnecting to: ");
Serial.print(ssid);
Serial.print(" pass: ");
Serial.println(pass);
Serial.println('\n');
WiFi.begin(ssid, pass);
for(int j = 0; j < 15; j++){
if(WiFi.status() == 1){
j = 15;
}
Serial.print('.');
delay(1000);
}
Serial.println(STAT[WiFi.status()-1]);
if(WiFi.status() == 1){
Serial.println(" ");
Serial.print("WiFi connect true: ");
Serial.print(WiFi.localIP());
Serial.print("/");
Serial.print(WiFi.subnetMask());
Serial.print("/");
Serial.println(WiFi.gatewayIP());
return true;
}
}
WiFi.begin(ssid, pass); // иначе будет тупить при реконнекте
sprintf(txt, "Connect to %s FAIL!", ssid);
Serial.println("Connect WiFi failed ...");
return false;
}