BLYNK
HOME       📲 GETTING STARTED       📗 DOCS       ❓HELP CENTER       👉 SKETCH BUILDER

Нет автоматического реконнекта D1 Mini

Подскажите, почему после пропадания и восстановления напряжения сети плата D1 Mini не подключается к роутеру и к Blynk. Приходится через некоторое время вручную перетыкать питание на ESP. Понимаю, что ESP пытается сразу же подключиться к роутеру, едва получив питание, а роутер в это время только пытается загрузится и выйти в сеть. Но почему только одна попытка? Как сделать, чтобы после восстановления напряжения 220 В или интернета был автоматический реконнект?

// Open Blynk app:

//Create a New Project (new Auth Token will be sent to your email)
//Add Value Display Widget
//Go to Value Display Widget Settings
//Set PIN to V1
//Set Reading Rate to PUSH
//Add Super Chart Widget (Работает даже при закрытой программе Blynk, без обрыва потока данных)

#define relay D7
#define ONE_WIRE_BUS D5
#define BLYNK_PRINT Serial
bool Relay;

#include <OneWire.h>
#include <DallasTemperature.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>

char auth[] = "XXXXXXXXXXXXXXX";

// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "TP-LINK_POCKET_3020XXXXXXXXXXXXX";
char pass[] = "XXXXXXXXX";

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);

int Temp1Value; // Можно подключить на два датчика темп-ры: пример отсюда [https://community.blyn…ostat-with-blynk/31759](https://4pda.ru/pages/go/?u=https%3A%2F%2Fcommunity.blynk.cc%2Ft%2Fds18b20-thermostat-with-blynk%2F31759&e=102395857)

BlynkTimer timer;
void myTimerEvent() //read the sensor connected to A0, and then send it to Virtual Pin V1
{
int reading = analogRead(A0);
float voltage = reading * 16.075;
voltage /= 1024.0;
Blynk.virtualWrite(V1, voltage); //sending to Blynk
sensors.requestTemperatures();
float temp = sensors.getTempCByIndex(0);
Serial.println(temp);
Blynk.virtualWrite(V3, temp);
}

void setup()
{
Serial.begin(9600);
Blynk.begin(auth, ssid, pass);
pinMode(relay,OUTPUT);
timer.setInterval(10000L, myTimerEvent); //every 1000 milliseconds, which is 10 second
}
BLYNK_CONNECTED(){Blynk.syncVirtual(V0);}
BLYNK_WRITE(V0)
{
Relay=param.asInt();
digitalWrite(relay, Relay);
int buttonState = param.asInt();
}
BLYNK_WRITE(V3)
{
Temp1Value = param.asInt();
}

void loop()
{
Blynk.run();
timer.run();
if (WiFi.getAutoConnect() != true) WiFi.setAutoConnect(true); //on power-on automatically connects to last used hwAP
WiFi.setAutoReconnect(true); //automatically reconnects to hwAP in case it is disconnected
}

@alexchir please edit your post, using the pencil icon at the bottom, and add triple backticks at the beginning and end of your code so that it displays correctly.

Triple backticks look like this:
```

Pete.

I’ve edited the post.

Да! Хелпа на этом долбаном форуме я не дождусь никогда! Весь хелп, как и для многих обращавшихся сюда заключается в том, что подваливает какой-то смотрящий (типа Рыцарь), вставляет свои пять копеек (пардон - это зовется отредактируй с Triple backticks), и все!