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

ArduinoIDE для ESP8266

Нужна ли возможность использовать ESP8266 как Arduino-совместимые платы?

  • Нет, Ардуино не для меня

    Голосов: 0 0.0%

  • Всего проголосовало
    54

Dr. Morg

New member
Аргх, в скрипте, который генерирует eagle.app.flash.bin, есть ссылка по абсолютному пути. Так что если у Вас не стоит UDK (или он стоит не по пути C:\Espressif) Вам крупно не повезло.
Поправил скрипт. Подмените gen_appbin на приаттаченный.
Файл eagle.app.flash.bin стал компилироваться, но загрузка в ESP8266 не работает (GPIO для прошивки к GND подтянут):
Код:
C:\Users\agrogov\Documents\Arduino\hardware\Espressif/ESP8266/utils/esptool.exe -p COM2 -b 256000 write_flash 0x00000 C:\Users\agrogov\AppData\Local\Temp\build2625517305266187936.tmp/eagle.app.flash.bin 0x10000 C:\Users\agrogov\AppData\Local\Temp\build2625517305266187936.tmp/eagle.app.v6.irom0.text.bin
Entering bootloader...
Connecting...
Traceback (most recent call last):
  File "esptool.py", line 559, in <module>
  File "esptool.py", line 154, in connect
Exception: Failed to connect
Ещё вопрос, на OS X работать будет или gen_appbin.py тоже нужно заменить?
 

Sermus

New member
На Маке точно ничего работать не будет, потому что там все утилиты SDK виндовые.

По поводу загрузки. А Вы на этот модуль что-нибудь пробовали ставить хоть чем-нибудь?Тут на форуме есть топики, в которых люди жалуются, что их ESP не прошиваются. Я к сожалению, здесь мало чем могу помочь, потому что все два модуля, которые у меня есть благополучно шьются.
 

Sermus

New member
Вот если Вы все-таки выкурите почему не шьется Ваш и поделитесь, можно будет подумать как расширить пакет, чтобы шился и Ваш модуль.
 

Dr. Morg

New member
На Маке точно ничего работать не будет, потому что там все утилиты SDK виндовые.

По поводу загрузки. А Вы на этот модуль что-нибудь пробовали ставить хоть чем-нибудь. Тут на форуме есть топики, в которых люди жалуются, что их ESP не прошиваются. Я к сожалению, здесь мало чем могу помочь, потому что все два модуля, которые у меня есть благополучно шьются.
Модули у меня ESP-01 и они прекрасно шьются (в течение месяца, наверное, перепробовал всё. что есть под ESP8266, чтобы добиться хоть какой-то стабильности в отправке GET запросов).
Ошибку уже локализовал,- у вас в скрипте скорость COM порта 256000, а для прошивки нужна 115200.
Залил скомпилированные бинарники через ESP FLASH DOWNLOAD TOOL на скорости 115200 (скриншот в аттаче).
 

Вложения

JustACat

Moderator
Команда форума
а для прошивки нужна 115200
Ничего подобного, я свои модули на 921600 вообще шью :) Ммм, а может у вас boot старый? Какой последний boot вы прошивали? У меня зашит 1.3 который бета...
Просто у меня есть подозрения, что именно с ним связано ограничение скорости...
Хотя, еще может быть оно связано с вашим переходником, которым шьете... У вас на какой микросхеме USB-UART?
 

Dr. Morg

New member
Ничего подобного, я свои модули на 921600 вообще шью :) Ммм, а может у вас boot старый? Какой последний boot вы прошивали? У меня зашит 1.3 который бета...
Просто у меня есть подозрения, что именно с ним связано ограничение скорости...
Хотя, еще может быть оно связано с вашим переходником, которым шьете... У вас на какой микросхеме USB-UART?
boot у меня старый, да. Микросхема ATmega16U2 лью через Ардуину, возможно, она быстрее 115200 не даёт выставить.
Но через ESP FLASH DOWNLOAD TOOL на 115200 заливается, работает.
 

Sermus

New member
У меня CH340G и чего-то быстрее 256000 не шьется.
JustACat, пошлите в описание как бут обновитью
 

Dr. Morg

New member
Сейчас пересобирал скетч и забыл GPIO на землю подтянуть. Пока шла компиляция, подтянул GPIO и на всякий случай сделал hard reset, видимо, угадал перед самой загрузкой и заливка пошла на указанной в скрипте скорости.
То есть проблема не в ардуине или переходнике, а в том, что ESP8266 нужно жёстко ресетнуть непосредственно перед загрузкой, видимо.

Total Used RAM : 50832
Free RAM : 31088
Free IRam : 2050
Entering bootloader...
Connecting...
Erasing flash...
head: 11 ;total: 11
erase size : 24576

Writing at 0x00000000... (2 %)
Writing at 0x00000400... (4 %)
Writing at 0x00000800... (6 %)
Writing at 0x00000c00... (9 %)
Writing at 0x00001000... (11 %)
Writing at 0x00001400... (13 %)
Writing at 0x00001800... (16 %)
Writing at 0x00001c00... (18 %)
Writing at 0x00002000... (20 %)
Writing at 0x00002400... (23 %)
Writing at 0x00002800... (25 %)
Writing at 0x00002c00... (27 %)
Writing at 0x00003000... (30 %)
Writing at 0x00003400... (32 %)
Writing at 0x00003800... (34 %)
Writing at 0x00003c00... (37 %)
Writing at 0x00004000... (39 %)
Writing at 0x00004400... (41 %)
Writing at 0x00004800... (44 %)
Writing at 0x00004c00... (46 %)
Writing at 0x00005000... (48 %)
Writing at 0x00005400... (51 %)
Writing at 0x00005800... (53 %)
Writing at 0x00005c00... (55 %)
Writing at 0x00006000... (58 %)
Writing at 0x00006400... (60 %)
Writing at 0x00006800... (62 %)
Writing at 0x00006c00... (65 %)
Writing at 0x00007000... (67 %)
Writing at 0x00007400... (69 %)
Writing at 0x00007800... (72 %)
Writing at 0x00007c00... (74 %)
Writing at 0x00008000... (76 %)
Writing at 0x00008400... (79 %)
Writing at 0x00008800... (81 %)
Writing at 0x00008c00... (83 %)
Writing at 0x00009000... (86 %)
Writing at 0x00009400... (88 %)
Writing at 0x00009800... (90 %)
Writing at 0x00009c00... (93 %)
Writing at 0x0000a000... (95 %)
Writing at 0x0000a400... (97 %)
Writing at 0x0000a800... (100 %)
Erasing flash...
head: 16 ;total: 57
erase size : 167936

Writing at 0x00010000... (0 %)
Writing at 0x00010400... (0 %)
Writing at 0x00010800... (1 %)
Writing at 0x00010c00... (1 %)
Writing at 0x00011000... (2 %)
Writing at 0x00011400... (2 %)
Writing at 0x00011800... (3 %)
Writing at 0x00011c00... (3 %)
Writing at 0x00012000... (4 %)
Writing at 0x00012400... (4 %)
Writing at 0x00012800... (4 %)
Writing at 0x00012c00... (5 %)
Writing at 0x00013000... (5 %)
Writing at 0x00013400... (6 %)
Writing at 0x00013800... (6 %)
Writing at 0x00013c00... (7 %)
Writing at 0x00014000... (7 %)
Writing at 0x00014400... (8 %)
Writing at 0x00014800... (8 %)
Writing at 0x00014c00... (8 %)
Writing at 0x00015000... (9 %)
Writing at 0x00015400... (9 %)
Writing at 0x00015800... (10 %)
Writing at 0x00015c00... (10 %)
Writing at 0x00016000... (11 %)
Writing at 0x00016400... (11 %)
Writing at 0x00016800... (12 %)
Writing at 0x00016c00... (12 %)
Writing at 0x00017000... (12 %)
Writing at 0x00017400... (13 %)
Writing at 0x00017800... (13 %)
Writing at 0x00017c00... (14 %)
Writing at 0x00018000... (14 %)
Writing at 0x00018400... (15 %)
Writing at 0x00018800... (15 %)
Writing at 0x00018c00... (16 %)
Writing at 0x00019000... (16 %)
Writing at 0x00019400... (16 %)
Writing at 0x00019800... (17 %)
Writing at 0x00019c00... (17 %)
Writing at 0x0001a000... (18 %)
Writing at 0x0001a400... (18 %)
Writing at 0x0001a800... (19 %)
Writing at 0x0001ac00... (19 %)
Writing at 0x0001b000... (20 %)
Writing at 0x0001b400... (20 %)
Writing at 0x0001b800... (20 %)
Writing at 0x0001bc00... (21 %)
Writing at 0x0001c000... (21 %)
Writing at 0x0001c400... (22 %)
Writing at 0x0001c800... (22 %)
Writing at 0x0001cc00... (23 %)
Writing at 0x0001d000... (23 %)
Writing at 0x0001d400... (24 %)
Writing at 0x0001d800... (24 %)
Writing at 0x0001dc00... (24 %)
Writing at 0x0001e000... (25 %)
Writing at 0x0001e400... (25 %)
Writing at 0x0001e800... (26 %)
Writing at 0x0001ec00... (26 %)
Writing at 0x0001f000... (27 %)
Writing at 0x0001f400... (27 %)
Writing at 0x0001f800... (28 %)
Writing at 0x0001fc00... (28 %)
Writing at 0x00020000... (28 %)
Writing at 0x00020400... (29 %)
Writing at 0x00020800... (29 %)
Writing at 0x00020c00... (30 %)
Writing at 0x00021000... (30 %)
Writing at 0x00021400... (31 %)
Writing at 0x00021800... (31 %)
Writing at 0x00021c00... (32 %)
Writing at 0x00022000... (32 %)
Writing at 0x00022400... (32 %)
Writing at 0x00022800... (33 %)
Writing at 0x00022c00... (33 %)
Writing at 0x00023000... (34 %)
Writing at 0x00023400... (34 %)
Writing at 0x00023800... (35 %)
Writing at 0x00023c00... (35 %)
Writing at 0x00024000... (36 %)
Writing at 0x00024400... (36 %)
Writing at 0x00024800... (36 %)
Writing at 0x00024c00... (37 %)
Writing at 0x00025000... (37 %)
Writing at 0x00025400... (38 %)
Writing at 0x00025800... (38 %)
Writing at 0x00025c00... (39 %)
Writing at 0x00026000... (39 %)
Writing at 0x00026400... (40 %)
Writing at 0x00026800... (40 %)
Writing at 0x00026c00... (40 %)
Writing at 0x00027000... (41 %)
Writing at 0x00027400... (41 %)
Writing at 0x00027800... (42 %)
Writing at 0x00027c00... (42 %)
Writing at 0x00028000... (43 %)
Writing at 0x00028400... (43 %)
Writing at 0x00028800... (44 %)
Writing at 0x00028c00... (44 %)
Writing at 0x00029000... (44 %)
Writing at 0x00029400... (45 %)
Writing at 0x00029800... (45 %)
Writing at 0x00029c00... (46 %)
Writing at 0x0002a000... (46 %)
Writing at 0x0002a400... (47 %)
Writing at 0x0002a800... (47 %)
Writing at 0x0002ac00... (48 %)
Writing at 0x0002b000... (48 %)
Writing at 0x0002b400... (48 %)
Writing at 0x0002b800... (49 %)
Writing at 0x0002bc00... (49 %)
Writing at 0x0002c000... (50 %)
Writing at 0x0002c400... (50 %)
Writing at 0x0002c800... (51 %)
Writing at 0x0002cc00... (51 %)
Writing at 0x0002d000... (52 %)
Writing at 0x0002d400... (52 %)
Writing at 0x0002d800... (52 %)
Writing at 0x0002dc00... (53 %)
Writing at 0x0002e000... (53 %)
Writing at 0x0002e400... (54 %)
Writing at 0x0002e800... (54 %)
Writing at 0x0002ec00... (55 %)
Writing at 0x0002f000... (55 %)
Writing at 0x0002f400... (56 %)
Writing at 0x0002f800... (56 %)
Writing at 0x0002fc00... (56 %)
Writing at 0x00030000... (57 %)
Writing at 0x00030400... (57 %)
Writing at 0x00030800... (58 %)
Writing at 0x00030c00... (58 %)
Writing at 0x00031000... (59 %)
Writing at 0x00031400... (59 %)
Writing at 0x00031800... (60 %)
Writing at 0x00031c00... (60 %)
Writing at 0x00032000... (60 %)
Writing at 0x00032400... (61 %)
Writing at 0x00032800... (61 %)
Writing at 0x00032c00... (62 %)
Writing at 0x00033000... (62 %)
Writing at 0x00033400... (63 %)
Writing at 0x00033800... (63 %)
Writing at 0x00033c00... (64 %)
Writing at 0x00034000... (64 %)
Writing at 0x00034400... (64 %)
Writing at 0x00034800... (65 %)
Writing at 0x00034c00... (65 %)
Writing at 0x00035000... (66 %)
Writing at 0x00035400... (66 %)
Writing at 0x00035800... (67 %)
Writing at 0x00035c00... (67 %)
Writing at 0x00036000... (68 %)
Writing at 0x00036400... (68 %)
Writing at 0x00036800... (68 %)
Writing at 0x00036c00... (69 %)
Writing at 0x00037000... (69 %)
Writing at 0x00037400... (70 %)
Writing at 0x00037800... (70 %)
Writing at 0x00037c00... (71 %)
Writing at 0x00038000... (71 %)
Writing at 0x00038400... (72 %)
Writing at 0x00038800... (72 %)
Writing at 0x00038c00... (72 %)
Writing at 0x00039000... (73 %)
Writing at 0x00039400... (73 %)
Writing at 0x00039800... (74 %)
Writing at 0x00039c00... (74 %)
Writing at 0x0003a000... (75 %)
Writing at 0x0003a400... (75 %)
Writing at 0x0003a800... (76 %)
Writing at 0x0003ac00... (76 %)
Writing at 0x0003b000... (76 %)
Writing at 0x0003b400... (77 %)
Writing at 0x0003b800... (77 %)
Writing at 0x0003bc00... (78 %)
Writing at 0x0003c000... (78 %)
Writing at 0x0003c400... (79 %)
Writing at 0x0003c800... (79 %)
Writing at 0x0003cc00... (80 %)
Writing at 0x0003d000... (80 %)
Writing at 0x0003d400... (80 %)
Writing at 0x0003d800... (81 %)
Writing at 0x0003dc00... (81 %)
Writing at 0x0003e000... (82 %)
Writing at 0x0003e400... (82 %)
Writing at 0x0003e800... (83 %)
Writing at 0x0003ec00... (83 %)
Writing at 0x0003f000... (84 %)
Writing at 0x0003f400... (84 %)
Writing at 0x0003f800... (84 %)
Writing at 0x0003fc00... (85 %)
Writing at 0x00040000... (85 %)
Writing at 0x00040400... (86 %)
Writing at 0x00040800... (86 %)
Writing at 0x00040c00... (87 %)
Writing at 0x00041000... (87 %)
Writing at 0x00041400... (88 %)
Writing at 0x00041800... (88 %)
Writing at 0x00041c00... (88 %)
Writing at 0x00042000... (89 %)
Writing at 0x00042400... (89 %)
Writing at 0x00042800... (90 %)
Writing at 0x00042c00... (90 %)
Writing at 0x00043000... (91 %)
Writing at 0x00043400... (91 %)
Writing at 0x00043800... (92 %)
Writing at 0x00043c00... (92 %)
Writing at 0x00044000... (92 %)
Writing at 0x00044400... (93 %)
Writing at 0x00044800... (93 %)
Writing at 0x00044c00... (94 %)
Writing at 0x00045000... (94 %)
Writing at 0x00045400... (95 %)
Writing at 0x00045800... (95 %)
Writing at 0x00045c00... (96 %)
Writing at 0x00046000... (96 %)
Writing at 0x00046400... (96 %)
Writing at 0x00046800... (97 %)
Writing at 0x00046c00... (97 %)
Writing at 0x00047000... (98 %)
Writing at 0x00047400... (98 %)
Writing at 0x00047800... (99 %)
Writing at 0x00047c00... (99 %)
Writing at 0x00048000... (100 %)

Leaving...
 

JustACat

Moderator
Команда форума
У меня CH340G и чего-то быстрее 256000 не шьется.
Я на CH340G побоялся пробовать, т.к. тот переходник, что у меня с ней - выдает 5 вольт на линии UART, а мне жалко так мучить свои ESP...
Я использую переходник на CP210x (не помню который точно) - он 3.3 выдает, вот через него и шью, по технологии @CHERTS - то есть когда подключено не только TX и RX, но еще использую RTS для сброса ESP, а DTR - для прижимания GPIO0. Полная автоматика - красота :)

пошлите в описание как бут обновитью
Эм, 2 варианта:
- прошить полную прошивку, в которой будет вшит новый бут (не знаю точно какую)
- прошить только бут через FLASH DOWNLOAD TOOL - он шьется по адресу 0x00000 зовется файл boot_v1.3(b3).bin - есть в папке с новым SDK
Можно прошить и поправив makefile у @CHERTS там было про бут, но я не разбирался и не могу сказать точно.
 

JustACat

Moderator
Команда форума
а в том, что ESP8266 нужно жёстко ресетнуть непосредственно перед загрузкой
Да, с резетом там надо точно все. Поэтому я использую метод @CHERTS (написал чуть ранее), все резетится и подтягивается автоматом.
 

Dr. Morg

New member
Да, с резетом там надо точно все. Поэтому я использую метод @CHERTS (написал чуть ранее), все резетится и подтягивается автоматом.
Без ресета шьётся на 115200 100%. Видимо, по-дефолту зашита эта скорость, а с ресетом даёт задать желаемую.
 

Dr. Morg

New member
Учту, сделаю менюку с выбором скорости.
Прошилось, видимо, что-то не так:
Код:
Fatal eception (0):
epc1=0x40107820, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000000, depc=0x00000000
После хард ресета выдаёт длинную строку крякозябр и читабельную:
Код:
Station configuration was updated to: CallSF
После чего тишина.
 

JustACat

Moderator
Команда форума
Видимо, по-дефолту зашита эта скорость, а с ресетом даёт задать желаемую.
На сколько я помню, в boot встроен у них механизм определения скорости. Таки образом, если вы сначала вошли в boot, а только потом запустили прошивку, то boot (не получив ничего сразу при старте) выставляет как раз 115200 - да, по умолчанию. Если же делать резет перед прошивкой, то boot успевает по механизму автоопределения скорости определить ее правильно и работает на ней, какая бы она у вас в прошивальщике не была.
Так что да, если вы сначала вводите чип в режим boot'а, и только потом запускаете прошивку, то тут надо четко 115200. Из вариантов - либо сбрасывать вручную, либо использовать метод, как я чуть выше описал, либо шить на 115200.
Прошилось, видимо, что-то не так
Бывает, перепрошейте, ничего страшного.

Update:
Да, сейчас добавил в код вот это:
Код:
Serial.print("boot: ");
Serial.println(system_get_boot_version());
И оно мне вывело в терминал:
boot: 31
Так что у меня последний бут зашит.
 
Последнее редактирование:

Dr. Morg

New member
Трижды перешил - ошибка та же. Скетч HttpServer_Bootstrap.ino из примера.
После обнволения бута до 1.3b:
Код:
Fatal бЌ•БСҐЅ№Ѓ(9):
epc1=0x40107877, epc2=0x00000000, epc3=0x00000000, excvaddr=0x0002e7b2, depc=0x00000000
И вот так после прошивки через ESP FLASH DOWNLOAD TOOL:
Код:
*бЌ•БСҐЅ№Ѓ(28):
epc1=0x40107826, epc2=0x00000000, epc3=0x00000000, excvaddr=0x00000010, depc=0x00000000
 
Последнее редактирование:

JustACat

Moderator
Команда форума
Dr. Morg, я бы вам посоветовал обнулиться, прошить всю flash целиком. Но в текущем конкретном случае через ArduinoIDE - не знаю, как это...
То есть по крайней мере blank.bin прошить по нужным адресам...
Ммм, как вариант, наверное, можно прошить последнюю 0.22 AT прошивку, а потом снова попробовать поэкспериментировать с данной темой.
Я просто пока все еще пишу и шью через Eclipse, поэтому и хотел бы, да не знаю, что подсказать. Наверное, тут нужно @Sermus'а подождать.
Хотя Fatal'ы хватал неоднократно. Обычно помогала полная пересборка прошивки и перепрошивка всего чипа.
 
Пробую Blink.Platform.txt заменил.arduino 1.6.1
Все равно ошибка при компиляции

Arduino: 1.6.1 (Windows 7), Плата"ESP8266"

Изменена опция сборки, пересобираем все

In file included from C:\Users\Администратор\Downloads\arduino-1.6.1-windows\arduino-1.6.1\hardware\arduino\ESP8266\cores\esp8266\Sming\Sming\SmingCore\Platform\../../SmingCore/Network/../../SmingCore/../Services/ArduinoJson/include/ArduinoJson.h:8:0,

from C:\Users\Администратор\Downloads\arduino-1.6.1-windows\arduino-1.6.1\hardware\arduino\ESP8266\cores\esp8266\Sming\Sming\SmingCore\Platform\../../SmingCore/Network/../../SmingCore/../Services/ArduinoJson/ArduinoJson.h:11,

from C:\Users\Администратор\Downloads\arduino-1.6.1-windows\arduino-1.6.1\hardware\arduino\ESP8266\cores\esp8266\Sming\Sming\SmingCore\Platform\../../SmingCore/Network/../../SmingCore/DataSourceStream.h:13,

from C:\Users\Администратор\Downloads\arduino-1.6.1-windows\arduino-1.6.1\hardware\arduino\ESP8266\cores\esp8266\Sming\Sming\SmingCore\Platform\../../SmingCore/Network/HttpResponse.h:11,

from C:\Users\Администратор\Downloads\arduino-1.6.1-windows\arduino-1.6.1\hardware\arduino\ESP8266\cores\esp8266\Sming\Sming\SmingCore\Platform\../../SmingCore/SmingCore.h:31,

from C:\Users\Администратор\Downloads\arduino-1.6.1-windows\arduino-1.6.1\hardware\arduino\ESP8266\cores\esp8266\Sming\Sming\SmingCore\Platform\AccessPoint.cpp:9:

C:\Users\Администратор\Downloads\arduino-1.6.1-windows\arduino-1.6.1\hardware\arduino\ESP8266\cores\esp8266\Sming\Sming\SmingCore\Platform\../../SmingCore/Network/../../SmingCore/../Services/ArduinoJson/include/../include/ArduinoJson/JsonArray.hpp:9:45: fatal error: Internals/JsonBufferAllocated.hpp: No such file or directory

[HASHTAG]#include[/HASHTAG] "Internals/JsonBufferAllocated.hpp"

^

compilation terminated.
 
Сверху Снизу