ESP-8266, ESP32 - как залить прошивку, невзирая на мнение модуля.

Тема в разделе "ESP8266, ESP32", создана пользователем ИгорьК, 29 ноя 2017.

  1. naz

    naz Нерд

    Прошу подсказать, почему не определяется ESP32 командой
    Код (C++):
    py esptool.py --port порт_модуля flash_id
    Проверил на двух свежеполученных ESP32. Драйвера для CP210x встали нормально. Шнур нормальный, т.к. для ESP8266 чтение информации о чипе нормальное. А для ESP32 получаю ошибку времени ожидания.
    [​IMG]

    Прошивальщик flash_download_tools_v3.6.8 тоже завершается с ошибкой
     
  2. ИгорьК

    ИгорьК Гуру

    Точно не уверен, но эти чипы сильно подделывают и производитель блокирует подделки в драйверах. Возможно вам "повезло".
    Другой вариант - производитель просто забил на эти чипы и последняя версия драйверов их не поддерживает.
    Погуглите инет просто на тему этого чипа. Может я что-то путаю (была проблема с какими-то чипами, но сейчас точно не помню).
    Если я прав, решение - снос драйверов и установка старых, ещё до "модернизации" производителем.
     
    Последнее редактирование: 19 апр 2020
  3. Max_UA

    Max_UA Нуб

    Ссылка на программу Espressif недействительна.
    Также по указанной ссылке на питон нет возможности его инсталлировать под ХР.
     
  4. ИгорьК

    ИгорьК Гуру

    Ссылку на прошивальщик исправил, все возможные Питоны здесь: https://www.python.org/downloads/windows/

    Выбирайте.
     
  5. Dagoth Nik

    Dagoth Nik Нуб

    Всем привет. В общем такая странная проблема (хотя может и не совсем проблема). У меня несколько модулей на ESP8266 и один из них начал себя вести крайне странно: удачно прошивается только через Arduino IDE. При прошивке через esptool.py через терминал или через NodeMCU Firmware Programmer (под виндами) готовыми бинарниками, после перезагрузки модуля, он (модуль) бесконечно сыпет в консоль ошибки и не загружает прошивку. Про готовые уточнил по той причине, что если бинарник создать в Arduino IDE и после этого залить через тот же esptool (и NodeMCU FP), то всё работает штатно.
    Что ещё интересно, софт NodeMCU видит MAC-адрес точки доступа этого esp модуля начинающимся со 100 (я первый раз вообще MAC-адрес с трёхзначным числом вижу). Возможно это просто глюк прошивальщика, не знаю. У прочих модулей MAC'и выглядели вполне обычно.
    И ещё кое-что. Esptool.py видит микросхему как ESP8285, со встроенной flash. Я пробовал выпаивать память и прошивать без неё и прошивка не идёт, выдаёт ошибку.
    Снимок экрана 2020-05-09 в 17.32.31.png
    Модуль - ESP-07, который с керамической антенной и разъёмом под внешнюю. Проблем нет ни с готовой платой NodeMCU, ни с другим модулем ESP-07, оба прошиваются нормально, через любой софт из тех, что пробовал.
    Кто-нибудь с таким сталкивался?
    И ещё вопрос: стандартная AT прошивка есть в виде INO скетча? Или только в виде bin файлов?
    Заранее спасибо за помощь.
     
    Последнее редактирование: 9 май 2020
  6. workpage

    workpage Нуб

    Добрый день. Есть у кого пошаговая инструкция или собственный опыт, как залочить флеш в ESP32?
    Спасибо.
     
  7. b707

    b707 Гуру

    workpage, какое отношение ваш вопрос имеет к теме? - не засоряйте ветку
     
    issaom нравится это.
  8. naz

    naz Нерд

    Вернулся к экспериментам через полгода. Уж очень хочется Esp32 освоить.. Причина неотклика была в питании. Usb компьютера не тянул esp32, пришлось подать внешние 5В, чип определился, но erase завершается ошибкой[​IMG]
     
  9. naz

    naz Нерд

    Вскрыл металлический экран, под лупой просмотрел, как флэш припаяна.. вроде нормально.. Но попробую чип флэша перепаять по рекомендации из темы
    Esp32, проблемы прошивки
     
  10. naz

    naz Нерд

    Пока чипы флэш- памяти в пути, подключил esp32 к Esplorer'у. Написал, что связь установлена, и вот такое:
    WiFi data 01 02 00012000 0000e000[0m
    [0;32mI (206) boot: 3 at_customize unknown 40 00 00020000 000e0000[0m
    [0;32mI (230) boot: 4 ota_0 OTA app 00 10 00100000 00180000[0m
    [0;32mI (253) boot: 5 ota_1 OTA app 00 11 00280000 00180000[0m
    [0;32mI (276) boot: End of partition table[0m
    [0;32mI (290) boot: Disabling RNG early entropy source...[0m
    [0;32mI (306) boot: Loading app partition at offset 00100000[0m
    [0;32mI (1482) boot: segment 0: paddr=0x00100018 vaddr=0x00000000 size=0x0ffe8 ( 65512) [0m
    [0;32mI (1483) boot: segment 1: paddr=0x00110008 vaddr=0x3f400010 size=0x1c5f0 (116208) map[0m
    [0;32mI (1499) boot: segment 2: paddr=0x0012c600 vaddr=0x3ffb0000 size=0x0215c ( 8540) load[0m
    [0;32mI (1529) boot: segment 3: paddr=0x0012e764 vaddr=0x40080000 size=0x00400 ( 1024) load[0m
    [0;32mI (1553) boot: segment 4: paddr=0x0012eb6c vaddr=0x40080400 size=0x1b028 (110632) load[0m
    [0;32mI (1631) boot: segment 5: paddr=0x00149b9c vaddr=0x400c0000 size=0x00034 ( 52) load[0m
    [0;32mI (1632) boot: segment 6: paddr=0x00149bd8 vaddr=0x00000000 size=0x06430 ( 25648) [0m
    [0;32mI (1649) boot: segment 7: paddr=0x00150010 vaddr=0x400d0018 size=0x7a56c (501100) map[0m
    [0;32mI (1676) heap_alloc_caps: Initializing. RAM available for dynamic allocation:[0m
    [0;32mI (1699) heap_alloc_caps: At 3FFBA6B8 len 00025948 (150 KiB): DRAM[0m
    [0;32mI (1720) heap_alloc_caps: At 3FFE8000 len 00018000 (96 KiB): D/IRAM[0m
    [0;32mI (1741) heap_alloc_caps: At 4009B428 len 00004BD8 (18 KiB): IRAM[0m
    [0;32mI (1762) cpu_start: Pro cpu up.[0m
    [0;32mI (1774) cpu_start: Single core mode[0m
    [0;32mI (1787) cpu_start: Pro cpu start user code[0m
    [0;32mI (1847) cpu_start: Starting scheduler on PRO CPU.[0m
    [0;32mI (1909) uart: queue free spaces: 10[0m
    Bin version:0.10.0
    Получается, флэш живая? Почему ж тогда при прошивке ошибка коннекта? 201018.jpg 201018.jpg 201018.jpg
     
  11. ИгорьК

    ИгорьК Гуру

    Из какого конкретно сообщения вы сделали такой вывод?
     
  12. naz

    naz Нерд

    Хм.. а из лога Esplorer'a при включении порта разве это не следует?
    Вечером ещё раз проверю
     
  13. ИгорьК

    ИгорьК Гуру

    Доподлинно не известно, что следует из лога. Ясно только что сам чип esp32 отвечает.

    А вот из лога esptool видно, что после обращения чипа к памяти ответа нет.
     
  14. naz

    naz Нерд

    Вот полный лог старта Esp32
    rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
    configsip: 0,
    PORT OPEN 115200
    SPIWP:0x00

    Communication with MCU..Got answer! Communication with MCU established.
    AutoDetect firmware...

    Can't autodetect firmware, because proper answer not received (may be unknown firmware).
    Please, reset module or continue.
    0,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
    mode:DIO, clock div:2
    load:0x3fff0008,len:8
    load:0x3fff0010,len:3480
    load:0x40078000,len:7804
    ho 0 tail 12 room 4
    load:0x40080000,len:252
    entry 0x40080034
    [0;32mI (46) boot: ESP-IDF v2.0-3-gbef9896 2nd stage bootloader[0m
    [0;32mI (46) boot: compile time 05:59:45[0m
    [0;32mI (47) boot: Enabling RNG early entropy source...[0m
    [0;32mI (65) boot: SPI Speed : 40MHz[0m
    [0;32mI (78) boot: SPI Mode : DIO[0m
    [0;32mI (90) boot: SPI Flash Size : 4MB[0m
    [0;32mI (103) boot: Partition Table:[0m
    [0;32mI (114) boot: ## Label Usage Type ST Offset Length[0m
    [0;32mI (137) boot: 0 phy_init RF data 01 01 0000f000 00001000[0m
    [0;32mI (160) boot: 1 otadata OTA data 01 00 00010000 00002000[0m
    [0;32mI (183) boot: 2 nvs WiFi data 01 02 00012000 0000e000[0m
    [0;32mI (206) boot: 3 at_customize unknown 40 00 00020000 000e0000[0m
    [0;32mI (230) boot: 4 ota_0 OTA app 00 10 00100000 00180000[0m
    [0;32mI (253) boot: 5 ota_1 OTA app 00 11 00280000 00180000[0m
    [0;32mI (276) boot: End of partition table[0m
    [0;32mI (289) boot: Disabling RNG early entropy source...[0m
    [0;32mI (306) boot: Loading app partition at offset 00100000[0m
    [0;32mI (1482) boot: segment 0: paddr=0x00100018 vaddr=0x00000000 size=0x0ffe8 ( 65512) [0m
    [0;32mI (1482) boot: segment 1: paddr=0x00110008 vaddr=0x3f400010 size=0x1c5f0 (116208) map[0m
    [0;32mI (1499) boot: segment 2: paddr=0x0012c600 vaddr=0x3ffb0000 size=0x0215c ( 8540) load[0m
    [0;32mI (1529) boot: segment 3: paddr=0x0012e764 vaddr=0x40080000 size=0x00400 ( 1024) load[0m
    [0;32mI (1553) boot: segment 4: paddr=0x0012eb6c vaddr=0x40080400 size=0x1b028 (110632) load[0m
    [0;32mI (1631) boot: segment 5: paddr=0x00149b9c vaddr=0x400c0000 size=0x00034 ( 52) load[0m
    [0;32mI (1632) boot: segment 6: paddr=0x00149bd8 vaddr=0x00000000 size=0x06430 ( 25648) [0m
    [0;32mI (1649) boot: segment 7: paddr=0x00150010 vaddr=0x400d0018 size=0x7a56c (501100) map[0m
    [0;32mI (1676) heap_alloc_caps: Initializing. RAM available for dynamic allocation:[0m
    [0;32mI (1699) heap_alloc_caps: At 3FFBA6B8 len 00025948 (150 KiB): DRAM[0m
    [0;32mI (1720) heap_alloc_caps: At 3FFE8000 len 00018000 (96 KiB): D/IRAM[0m
    [0;32mI (1741) heap_alloc_caps: At 4009B428 len 00004BD8 (18 KiB): IRAM[0m
    [0;32mI (1762) cpu_start: Pro cpu up.[0m
    [0;32mI (1774) cpu_start: Single core mode[0m
    [0;32mI (1787) cpu_start: Pro cpu start user code[0m
    [0;32mI (1847) cpu_start: Starting scheduler on PRO CPU.[0m
    [0;32mI (2033) uart: queue free spaces: 10[0m
    Bin version:0.10.0

    I (2035) wifi: wifi firmware version: c604573
    I (2035) wifi: config NVS flash: enabled
    I (2036) wifi: config nano formating: disabled
    I (2044) wifi: Init dynamic tx buffer num: 32
    I (2045) wifi: wifi driver task: 3ffc4f34, prio:23, stack:3584
    I (2050) wifi: Init static rx buffer num: 10
    I (2054) wifi: Init dynamic rx buffer num: 0
    I (2058) wifi: Init rx ampdu len mblock:7
    I (2062) wifi: Init lldesc rx ampdu entry mblock:4
    I (2066) wifi: wifi power manager task: 0x3ffca2dc prio: 21 stack: 2560
    I (2073) wifi: wifi timer task: 3ffcb35c, prio:22, stack:3584
    [0;31mE (2078) phy_init: PHY data partition validated[0m
    [0;32mI (2100) phy: phy_version: 329, Feb 22 2017, 15:58:07, 0, 0[0m
    I (2100) wifi: mode : softAP (24:6f:28:aa:bf:69)
    I (2103) wifi: mode : sta (24:6f:28:aa:bf:68) + softAP (24:6f:28:aa:bf:69)
    I (2107) wifi: mode : softAP (24:6f:28:aa:bf:69)
    Строка "SPI Flash Size : 4MB" вселила надежду на то, что флэш живая..Partition table к какой памяти относится? К ОЗУ? Как-то обрывается лог. На обоих платах лог одинаковый.
    А при рабочей флэш- памяти что дальше следует?
    И общий вывод: флэш таки перепаивать?
     
  15. ИгорьК

    ИгорьК Гуру

    Больше всего полезной информации в этом вашем сообщении.

    Там говорится о 2(!!!) Мб памяти и отсутствии реакции памяти на попытку очистить её.

    Позже FlashDownload Tool тоже не может ничего сделать с устройством.

    Я других волшебных способов работы с модулем не знаю.

    Единственно, попробуйте его прошить с установкой 16 Мбит в FlashDownload Tool.
     
    Последнее редактирование: 19 окт 2020
  16. naz

    naz Нерд

    Понял, спасибо за отклик. Жду другие esp-ки, буду на них тренироваться..
     
  17. SergeiL

    SergeiL Оракул Модератор

    На ESP32 нужно нажимать кнопку при загрузке в определенное время.
    В свое время долго не мог загрузить код из под Arduino IDE.
    Не в нужное время жал кнопку.
    Потом все загрузилось и работало нормально.
     
  18. ИгорьК

    ИгорьК Гуру

    Ну не знаю... не поддерживаю. Ничего там жмать не надо, ИМХО.
    Ой, под Ардуино - не знаю.
     
  19. SergeiL

    SergeiL Оракул Модератор

    А я не @parovoZZ, мне не нужна продвинутая IDE, делающая что-то за меня, что я не могу.
    Я в свое время тащился от С-- и писал на нем с большим удовольствием.
    А возможностей Ардуино ИДЕ хватает на столько, что понимаешь, что нет того, что нельзя написать, то есть сделать в IoT.
     
    issaom нравится это.
  20. issaom

    issaom Гуру

    У меня есть платы которые и без нажатия кнопки загружаются.... хотя визуально выглядят одинаково :confused:
     
    SergeiL нравится это.