ESP-03 не подключается к вай фаю

Вчера модуль нормально подключался к вай-фаю, а сегодня я решил модуль перепрошить на режим AP+STA, но чет у меня не получилось и я вернулся к исходной прошивке, и теперь у меня перестало подключаться к вай фаю. Перепробовал все. Пробовал подключаться к сети без пароля, пробовал подключиться к другой сети, но ничего не помогает, хотя если смотреть доступные сети через готовый скетч сканирования сетей, то модуль видит мой вай-фай.

Код:

#include <ESP8266WiFi.h>
#include <ESP8266mDNS.h>
#include <WiFiUdp.h>
#include <ArduinoOTA.h>
#include <GyverOLED.h>

GyverOLED<SSD1306_128x32, OLED_BUFFER> oled;

void setup() {
  Serial.begin(115200);
  oled.init(2, 14);
  Serial.println("Booting");

  //WiFi.enableInsecureWEP(true);
  WiFi.mode(WIFI_STA);
  WiFi.begin("qwerty", "12345678");
  while (WiFi.status() != WL_CONNECTED) {
    Serial.print(".");
    delay(500);
    Serial.println(String(WiFi.status()));
    if(millis()>18000) ESP.restart();
  }

  ArduinoOTA.onStart([]() {
    String type;
    if (ArduinoOTA.getCommand() == U_FLASH) {
      type = "sketch";
    } else {  // U_FS
      type = "filesystem";
    }

    // NOTE: if updating FS this would be the place to unmount FS using FS.end()
    Serial.println("Start updating " + type);
  });
  ArduinoOTA.onEnd([]() {
    Serial.println("\nEnd");
  });
  ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) {
    Serial.printf("Progress: %u%%\r", (progress / (total / 100)));
  });
  ArduinoOTA.onError([](ota_error_t error) {
    Serial.printf("Error[%u]: ", error);
    if (error == OTA_AUTH_ERROR) {
      Serial.println("Auth Failed");
    } else if (error == OTA_BEGIN_ERROR) {
      Serial.println("Begin Failed");
    } else if (error == OTA_CONNECT_ERROR) {
      Serial.println("Connect Failed");
    } else if (error == OTA_RECEIVE_ERROR) {
      Serial.println("Receive Failed");
    } else if (error == OTA_END_ERROR) {
      Serial.println("End Failed");
    }
  });
  ArduinoOTA.begin();
  Serial.println("Ready");
  Serial.print("IP address: ");
  Serial.println(WiFi.localIP());

  oled.clear();   
  oled.update(); 
  oled.home();    
  oled.setScale(1);
}

void loop() {
  ArduinoOTA.handle();
}

В консоль в первые 12 секунд возвращается статус 7

  • 7 : WL_DISCONNECTED if module is not configured in station mode

После 12 секунды возвращается статус 4

  • 4 : WL_CONNECT_FAILED if connection failed

Может из-за того что я сегодня попробовал перепрошить в режим AP+STA что-то сбилось и из-за этого возникает статус 7, который говорит что модуль не настроен в режим станции(хотя в коде прописываю WiFi.mode(WIFI_STA); )? Что мне делать? Как исправить?

перепрошить в полной очисткой памяти

В ардуино иде выбрал Erase Flash: All flash contents.
Перепрошил тот же скетч.

Configuring flash size...
Auto-detected Flash size: 512KB
Erasing flash (this may take a while)...
Chip erase completed successfully in 1.5s
Flash params set to 0x0300

Но не помогло. В консоли все также первые 12 сек показывает статус 7, а затем статус 4

залейте простой блинк, а потом ваш код, был у меня глюк с ESP8266 однажды алогичный

Не помогло.

Щас включил дебаг и в консоли выводится так:

23:22:40.048 -> �7
23:22:40.230 -> .7
23:22:40.764 -> .7
23:22:41.261 -> .7
23:22:41.771 -> .scandone
23:22:42.980 -> state: 0 -> 2 (b0)
23:22:42.980 -> 7
23:22:42.980 -> .7
23:22:43.479 -> .state: 2 -> 0 (2)
23:22:43.989 -> reconnect
23:22:43.989 -> 7
23:22:43.989 -> .7
23:22:44.501 -> .7
23:22:44.961 -> .7
23:22:45.461 -> .7
23:22:45.999 -> .7
23:22:46.462 -> .scandone
23:22:46.805 -> state: 0 -> 2 (b0)
23:22:46.979 -> 7
23:22:46.979 -> .7
23:22:47.463 -> .state: 2 -> 0 (2)
23:22:47.831 -> reconnect
23:22:47.963 -> 7
23:22:47.963 -> .7
23:22:48.464 -> .7
23:22:49.010 -> .7
23:22:49.465 -> .7
23:22:49.965 -> .7
23:22:50.489 -> .scandone
23:22:50.649 -> state: 0 -> 2 (b0)
23:22:50.965 -> 7
23:22:50.965 -> .7
23:22:51.500 -> .state: 2 -> 0 (2)
23:22:51.685 -> reconnect
23:22:51.984 -> 4
23:22:51.984 -> .4
23:22:52.498 -> .4
23:22:52.995 -> .4
23:22:53.493 -> .4
23:22:53.967 -> .4
23:22:54.467 -> .scandone
23:22:54.502 -> state: 0 -> 2 (b0)
23:22:55.010 -> 4
23:22:55.010 -> .4
23:22:55.467 -> .state: 2 -> 0 (2)
23:22:55.506 -> reconnect
23:22:55.988 -> 4
23:22:55.988 -> .4
23:22:56.501 -> .4
23:22:57.014 -> .4
23:22:57.471 -> scandone
23:22:57.471 -> del if0
23:22:57.471 -> usl
23:22:57.588 -> 
23:22:57.588 ->  ets Jan  8 2013,rst cause:1, boot mode:(3,0)
23:22:57.588 -> 
23:22:57.588 -> load 0x4010f000, len 3424, room 16 
23:22:57.588 -> tail 0
23:22:57.588 -> chksum 0x2e
23:22:57.588 -> load 0x3fff20b8, len 40, room 8 
23:22:57.588 -> tail 0
23:22:57.588 -> chksum 0x2b
23:22:57.634 -> csum 0x2b
23:22:57.634 -> v000503f0
23:22:57.634 -> ~ld
23:22:57.668 -> ���e�n�{��o|�l��lc��|;�l�o��o�l ��{�d�le��
23:22:57.668 -> SDK:2.2.2-dev(38a443e)/Core:3.1.2=30102000/lwIP:STABLE-2_1_3_RELEASE/glue:1.2-65-g06164fb/BearSSL:b024386
23:22:57.712 -> Booting
23:22:57.712 -> fpm close 1 
23:22:57.712 -> mode : sta

Получается модуль подключается к вай-фаю и сразу же отключается?

попробовать убрать ота

получается что он у тебя ребутится по причине:

rst cause:1

на твой конкретно чип я не нашел, но думаю что вот эта табличка поможет определить причину:

питания не хватает, имхо.

Очень похоже, что по питанию. Я мерил напряжение, подаваемое от ЮСБ от ПК. Оно иногда меньше 5в, тогда и проблемы с вайфай и с SD

После 18 секунды я вызываю ESP.restart();
Может это из-за него такой .

Питаю есп через usb-ttl. Напряжение на самой есп 3.33в

А он 250мА обеспечивает?

Напряжение, отдаваемое USB 5.17в, на самом модуле 3.33в

Перепрошил с очисткой на такой код:

#include <ESP8266WiFi.h>
#define WIFI_SSID "wifi"
#define WIFI_PASS "12345678"
void setup() {
  Serial.begin(115200);

  WiFi.mode(WIFI_STA);
  WiFi.begin(WIFI_SSID, WIFI_PASS);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print("." + String(WiFi.status()));
  }
  Serial.println("Connected");
  Serial.println(WiFi.localIP());
}
void loop() {
}

В мониторе порта:

15:32:34.178 ->  au  ;~Q EE EE % { .7.7.7.7scandone
15:32:37.314 -> state: 0 -> 2 (b0)
15:32:37.315 -> .7.7state: 2 -> 0 (2)
15:32:38.352 -> reconnect
15:32:38.352 -> .7.7.7.7.7.7scandone
15:32:41.159 -> state: 0 -> 2 (b0)
15:32:41.339 -> .7.7state: 2 -> 0 (2)
15:32:42.177 -> reconnect
15:32:42.316 -> .7.7.7.7.7.7scandone
15:32:45.040 -> state: 0 -> 2 (b0)
15:32:45.338 -> .7.7state: 2 -> 0 (2)
15:32:46.037 -> reconnect
15:32:46.364 -> .4.4.4.4.4.4scandone
15:32:48.851 -> state: 0 -> 2 (b0)
15:32:49.350 -> .4.4state: 2 -> 0 (2)
15:32:49.852 -> reconnect
15:32:50.358 -> .4.4.4.4.4scandone
15:32:52.697 -> state: 0 -> 2 (b0)
15:32:52.820 -> .4.4state: 2 -> 0 (2)
15:32:53.733 -> reconnect
15:32:53.821 -> .4.4.4.4.4.4scandone
15:32:56.543 -> state: 0 -> 2 (b0)
15:32:56.849 -> .4.4state: 2 -> 0 (2)
15:32:57.544 -> reconnect
15:32:57.847 -> .4.4.4.4.4.4scandone
15:33:00.415 -> state: 0 -> 2 (b0)
15:33:00.867 -> .4.4state: 2 -> 0 (2)
15:33:01.410 -> reconnect
15:33:01.861 -> .4.4.4.4.4scandone
15:33:04.272 -> state: 0 -> 2 (b0)
15:33:04.351 -> .4.4state: 2 -> 0 (2)
15:33:05.268 -> reconnect
15:33:05.361 -> .4.4.4.4.4.4scandone
15:33:08.080 -> state: 0 -> 2 (b0)
15:33:08.354 -> .4.4state: 2 -> 0 (2)
15:33:09.081 -> reconnect
15:33:09.327 -> .4.4.4.4.4.4scandone
15:33:11.965 -> state: 0 -> 2 (b0)
15:33:12.356 -> .4.4state: 2 -> 0 (2)
15:33:12.962 -> reconnect
15:33:13.329 -> .4.4.4.4.4scandone
15:33:15.777 -> state: 0 -> 2 (b0)
15:33:15.856 -> .4.4state: 2 -> 0 (2)
15:33:16.771 -> reconnect
15:33:16.856 -> .4.4.4.4.4.4scandone
15:33:19.614 -> state: 0 -> 2 (b0)
15:33:19.831 -> .4.4state: 2 -> 0 (2)
15:33:20.645 -> reconnect
15:33:20.877 -> .4.4.4.4.4.4scandone
15:33:23.461 -> state: 0 -> 2 (b0)
15:33:23.854 -> .4.4state: 2 -> 0 (2)
15:33:24.504 -> reconnect
15:33:24.879 -> .4.4.4.4.4scandone
15:33:27.335 -> no wifi found, reconnect after 1s
15:33:27.335 -> .7reconnect
15:33:27.852 -> .7.7.7.7.7scandone
15:33:30.292 -> no wifi found, reconnect after 1s
15:33:30.335 -> .7reconnect
15:33:30.854 -> .7.7.7.7.7scandone
15:33:33.221 -> no wifi found, reconnect after 1s
15:33:33.314 -> reconnect
15:33:33.362 -> .1.1.1.1.1.1scandone
15:33:36.167 -> no wifi found, reconnect after 1s

Как я понимаю, то он подключается к вай-фаю и сразу же отключается почему то.
Потом я выключил вай-фай и начало писать что вай-фай не найден. Получается он видит вай-фай, но почему-то нормально не подключается

Да дайте уже нормальное питание девайсу. Нормальное - это не только по напряжению, но и по отдаваемому току. USB-TTL конвертер к таковым не относится

1 лайк

Чет не нашел про это инфу, но раньше через этот преобразователь есп была подключена и она подключалась к вай-фаю.

https://aliexpress.ru/item/32529737466.html?spm=a2g2w.orderdetail.0.0.7a374aa66y1dwS&sku_id=10000000013643486

Хорошо, попробую

Видимо, работал на пределе и уже начал подыхать. Бывает ))

Наскоко я помню, ESP по даташиту до 180мА жрет. Плюс кпд и обвес… Прикидывайте.
Я на вемосе накидываю электролит между GND и 3.3v.
Без него бывали такие же падения при коннекте.

Какой емкости конденсатор вы ставите?

Какой под руку попадется. 100, 220…

1 лайк

Я когда не тот стабилизатор запаял на 8266, на 100мА, она у меня запускалась, но потом постоянно крашилась в разных местах. Тут не похоже.
Какой у вас роутер, кстати? У меня с оборудованием МГТС (Sercomm RV6688) постоянно плохо работали. Попробуйте к другому WiFi подключиться, к смартфоновой точке доступа.