Не загружается скетч на плату Arduino Mega с ESP8266

Добрый день! Впервые работаю с платами esp. У меня есть плата Arduino Mega 2560 совмещённая с esp8266 (https://ozon.ru/t/sYDhPES). Для прошивки на есп выбрал вот этот код из интернета:

#define WIFI_SSID "login"
#define WIFI_PASS "pass"
#define BOT_TOKEN "xxxx"

#include <FastBot.h>
FastBot bot(BOT_TOKEN);

void setup() {
  connectWiFi();
  bot.attach(newMsg);
}

// обработчик сообщений
void newMsg(FB_msg& msg) {
  // выводим ID чата, имя юзера и текст сообщения
  Serial.print(msg.chatID);     // ID чата 
  Serial.print(", ");
  Serial.print(msg.username);   // логин
  Serial.print(", ");
  Serial.println(msg.text);     // текст
}

void loop() {
  bot.tick();
}

void connectWiFi() {
  delay(2000);
  Serial.begin(115200);
  Serial.println();

  WiFi.begin(WIFI_SSID, WIFI_PASS);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
    if (millis() > 15000) ESP.restart();
  }
  Serial.println("Connected");
}

Пробую разные платы в загрузчике ардуино. В вопросах к плате на озоне написано что надо поставить uPesy ESP32 Wroom DevKit. Выбрал, написано A fatal error occurred: Failed to connect to ESP32: No serial data received. И драйвер есть, все переключатели установил как надо. Не хочет. Что можно сделать, чтобы она заработала? Спасибо.

И вас не смущает, что у вас ESP8266?

1 лайк

Это отзыв не на вашу плату. Когда смотрите отзывы, ставьте фильтр “Этот вариант товара”, иначе постоянно будете попадать в нелепую ситуацию, где в отзывах на красный халат речь про зелёные тапочки.

Отзывов про вашу плату там всего с десяток, и в трёх сказано, что загрузка кода на ЕСП не работает. Но в общем-то это ничего не значит, как говорится “народишко дрянь”, у нас полно идиотов, что пишут в отзывах всякую чушь ни в чем не разобравшись.

Загрузка в Атмегу 2560 работает, пробовали?

Как обычная мега работает. У меня также есть установленный набор плат на есп8266, но там я также не знаю,что выбрать

там все по настройке

Спасибо. В озоне режимы походу местами перепутаны были. :sweat_smile:

Гляну сайт


Заработало

Теперь это пишет

Wrote 395744 bytes (292557 compressed) at 0x00000000 in 6.7 seconds (effective 470.9 kbit/s)…
Hash of data verified.

Leaving…
Hard resetting via RTS pin…

Дальше ничего. Код не работает

А как вы это определили? :roll_eyes:

Подождал 15 мин после последнего высказывания компилятора, отключил от компа, передвинул рычажки на работу еспшки и кинул сообщение в бота (должна приходить информация про юзера, айди чата и текст). Не приходит

Может стоит выяснить в чём проблема: в “рычажках” или скетче?

1 лайк

Код загрузился в плату, верификация загруженного кода прошла успешно. Остальное - уже совсем другой вопрос ))

1 лайк

а “Connected“ в сериал выводит?

Хотя если

то вряд ли.
А как вы проверяли тогда, приходит или нет информация про юзера и т.д.?

Я посылал в бота просто сообщение, там дальше в Serial Monitor должно вывести что-то типа кто прислал, текст и айди. А он вообще ничего не выводил.

Ещё поковырялся с программой и у меня теперь есть такой вариант

#include <ESP8266WiFi.h>
#include <FastBot.h>

#define WIFI_SSID "не скажу"
#define WIFI_PASS "тоже не скажу" 
#define BOT_TOKEN "не скажу"

FastBot bot(BOT_TOKEN);

void setup() {
  Serial.begin(115200);
  Serial.println();
  Serial.println("Starting...");
  
  WiFi.begin(WIFI_SSID, WIFI_PASS);
  Serial.print("Connecting to WiFi");
  
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  
  Serial.println("\nConnected! IP: " + WiFi.localIP().toString());
  bot.attach(newMsg);
  Serial.println("Bot ready");
}

void newMsg(FB_msg& msg) {
  Serial.println("New message: " + msg.text);
}

void loop() {
  bot.tick();
}

Сейчас тестану её, вдруг заработает

ОООО Заработало :exploding_head:

Всем спасибо

Я один не вижу разницы в скетчах, кроме той, что “первый скетч“ при подключении к Wi-Fi дольше 15 секунд перезапускается, а “второй” ждет до упора?

И еще инклюд вай-фая добавлен…