• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Нужна помощь Объясните насчет последних прошивок - какой файл лить?

CCat

Member
Здравствуйте!
У меня модуль ESP8266-01. Я хочу использовать его, как клиента Wi-Fi, подключив его к Arduino.
Библиотека, которую я хочу использовать, тонко намекает
WiFiEsp supports ESP SDK version 1.1.1 and above (AT version 0.25 and above).
У меня сейчас залита AT_v0.20_SDK_v0.9.3.bin

И там все просто - один файл, я его спокойно заливаю с помощью XTCOM_UTIL.
А в последних прошивках типа http://espressif.com/sites/default/files/ap/esp8266_at_bin_v1.5.1.zip
какая-то туча файлов - boot, init_data и прочее.
Какие-то 512+512...
У меня просто 8 мег флеш-памяти. Вот такой - ESP 01, ESP8266, WI FI модуль 8 МБ флэш памяти
Как просто обновить прошивку, чтобы она понимала AT-команды и в том числе AT+CIOBAUD=
если это возможно?
 

gerkimuyda

New member
У меня модуль ESP8266-01. Я хочу использовать его, как клиента Wi-Fi, подключив его к Arduino.
А вы не хотите попробовать его использовать ВМЕСТО модуля ардуино? Напрямую заливая в него скетчи из arduino-ide?
Или самому его прошить своей прогой из ардуино-иде, а потом с модуля ардуины используя свои команды управлять как вам надо?
 

CCat

Member
А вы не хотите попробовать его использовать ВМЕСТО модуля ардуино? Напрямую заливая в него скетчи из arduino-ide?
Или самому его прошить своей прогой из ардуино-иде, а потом с модуля ардуины используя свои команды управлять как вам надо?
Именно в этом проекте - не хочу. :oops: Для этого проекта просто нужен модуль WiFi, чтобы заменить "проводной" LAN-модуль. Да, я знаю, что у esp8266 есть свои возможности, но трудно найти что-то еще более дешевое и простое в качестве тупо модуля WiFi для проекта. Конечно, я не собираюсь потом везде пихать плату Arduino, но вот в этом случае - ну надо. :)
 

CCat

Member
Или самому его прошить своей прогой из ардуино-иде, а потом с модуля ардуины используя свои команды управлять как вам надо?
Так я не знаю, как его самому прошить из ардуино-иде своей прогой. Мне нужно обращаться по определенному URL, там получать данные типа<var1>123</var1><var2>синий</var2> и возвращать в Ардуину эти значения. Наверняка можно сделать красиво и артистично, но пока не могу, так что сейчас просто использую библиотеку к модулю LAN, на выходе получаю тело http, а там уж разбираю. Все работает. И пока хочу просто заменить витуху на вайфай. :)

Если Вы знаете какой-то пример типа "По сигналу Ардуино "пора, мой друг..." ESP8266 идет по такому-то адресу, получает переменные и возвращает ихъ или хотя бы тело HTTP-ответа Ардуино", буду признателен.
 
Последнее редактирование:

gerkimuyda

New member
Ну, вам как-то надо общаться из атмела c есп? Вы выбираете какие-то пины, организовываете интерфейс взаимодействия и т.д.
Вот представьте, что вам надо связать две ардуины - как вы будете это реализовывать? Тоже самое делаете между есп и адруиной. Только есп прошиваете из ардуино иде, установив соответствующий боард из менеджера плат (есть на этом сайте описание как это делается).

Если хотите есп юзать как АТ-модем - пожалуйста, для этого нужна АТ-прошивка. Какая - хз.
Мало кто может такое подсказать, т.к. почти все ее сносят нафиг сразу после покупки еще по дороге домой :D.
Все кто тусуется на этом сайте, пишут или на Adruino IDE или на C (Eclipse/make) и редко на Lua o_O.
 

CCat

Member
Все кто тусуется на этом сайте, пишут или на Adruino IDE или на C (Eclipse/make) и редко на Lua o_O.
ОК, я почитал и понял, что связь Ардуино и esp8266 на уровне AT-команд - штука бесперспективная и ненадежная.
В принципе, я вроде понял, где копать GitHub - esp8266/Arduino: ESP8266 core for Arduino
 
Последнее редактирование:

gerkimuyda

New member
Все правильно. Вот ссылка поновее (для ардуины, в настройках "дополнительные ссылки для Менеджера плат" вводится)
https://github.com/esp8266/Arduino/releases/download/2.4.0-rc2/package_esp8266com_index.json
Искать установленное ардуиной надо по пути:
C:\Users\<имя пользователя>\AppData\Local\Arduino15\packages\esp8266\

Инструкция вот: https://esp8266.ru/arduino-ide-esp8266/
 
Последнее редактирование:
  • Like
Реакции: CCat

CCat

Member
Спасибо! Я только одного не пойму - хорошо, Arduino IDE для ESP8266. А прошивка-то, прошивка не нужна? :)
Или при заливке скетча из Arduino IDE уже все равно, какая прошивка стояла? Заливаемое из IDE общается с железом напрямую, на самом низком уровне?
 

gerkimuyda

New member
Arduino IDE делает прошивку, которая заливаеться в ESP. Все тоже самое, как с Атмелом, только там еще нужен загрузчик, а тут весь код во внешней флешке.
Поэтому, когда ардуина прошивает есп - все что там стояло будет стерто. Сама ардуина с железом работать не умеет, за нее это делает SDK, которая идет в составе библиотеки, ну и сама библиотека, которая есть обвертка SDK, приспосабливая функции и управление на привычное для ардуинщиков.

Т.е. пишите в ардуине код, как для атмела, только без специфических команд.
 
  • Like
Реакции: CCat

kab

New member
Спасибо! Я только одного не пойму - хорошо, Arduino IDE для ESP8266. А прошивка-то, прошивка не нужна? :)
Или при заливке скетча из Arduino IDE уже все равно, какая прошивка стояла? Заливаемое из IDE общается с железом напрямую, на самом низком уровне?
Напомню еще, что после установки платы есп в ардуино иде там появляются новые примеры -для ESP8266. А для начала можно попробовать и старые, но на есп...
 
  • Like
Реакции: CCat

CCat

Member
gerkimuyda, спасибо огромное, наставили на путь истинный! А то бы встал на скользкую дорожку AT-команд. :eek:
Позаливал скетчи, поморгал светодиодиком, запустил тестик из примеров, получил ответ
Код:
Flash real id:   001440C8
Flash real size: 1048576

Flash ide  size: 1048576
Flash ide speed: 40000000
Flash ide mode:  DIO
Flash Chip configuration ok.
Поставил Flash Memory 1 M в настройках, сколько SPIFFS ("ништяки?" ;)) и что это, я не знаю, но вроде все прекрасно работает на 1M (512 SPIFFS). :cool:
Теперь получу в переменную содержимое нужного HTTP ответа (а что там получать - готовый скетч BasicHttpClient), а потом буду мозговать, как передам это в Arduino по требованию Arduino в нужный момент.
Планирую так - когда Ардуино кидает в esp8266 SSID и PASSWORD (чтобы потом не лезть перезаливать скетч в esp8266 при смене WiFi - точки)(возможно, еще стоит и URL давать, чтобы уж совсем потом не лезть перезаливать), та ей в ответ отправляет String, полученный с этого URL-а (недлинный)

Да, конечно, сразу думаю про связь по UART Serial.write() - Serial.read()...
Одна закавыка - TX и RX в Arduino Nano один, а возможность заливать в него скетчи надобно оставить. Можно тумблер поставить. :D Эххх, придется SoftwareSerial? (это уже мысли вслух, пардон)
 
Последнее редактирование:

gerkimuyda

New member
ESP можно обновлять по воздуху: или их ардуино иде заливать прошивку, или в прошивке вставить код, чтобы сама обновления проверяла и себя обновляла (примеры в примерах есть).

наставили на путь истинный! А то бы встал на скользкую дорожку AT-команд. :eek:
День прожит не зря! Спас человека :D
 

CCat

Member
ESP можно обновлять по воздуху: или их ардуино иде заливать прошивку, или в прошивке вставить код, чтобы сама обновления проверяла и себя обновляла (примеры в примерах есть).


День прожит не зря! Спас человека :D
Да, Вы мой проводник в мир духов программирования ESP. :cool: ;)
 
Сверху Снизу