Отладка ESP32 в PlatformIO

Поделиться
HTML-код
  • Опубликовано: 26 сен 2024
  • Отладка скетчей для ESP32 в PlatformIO, используя программатор ESP-Prog (или подобный на FT2232HL).
    Документация на программатор ESP-Prog: github.com/esp...
    Документация на PlatformIO Unified Debugger: docs.platformi...
    Настройка драйверов FT2232HL для использования в качестве отладчика: community.plat...
    Исправление скрипта builder/main.py для загрузки скетчей через программатор и OpenOCD: github.com/pla...
    Пример отлаживаемого скетча из видео: drive.google.c...

Комментарии • 41

  • @sergesc5882
    @sergesc5882 Месяц назад

    Пишу из 2024. Только начал заниматься ESP32. Спасибо вам за подробный гайд. Узнал много нового. Но к сожалению, информация в видео устарела. Многие контроллеры ESP32 уже имеют встроенныне средства отладки, позволяющие отлаживать по JTAG без программатора ESP-Prog. Те, кто на таком же этапе познаний как и я - примите это к сведенью и ищите свежую информацию. Кстати, я об этом узнал, когда описанный в видео метод отладки не заработал. Оказалось что в моем контроллере ESP32-S3 -N16r8 выводы JTAG для ESP-PROG отключены и что бы их включить надо перепрограммировать контроллер на уровне фьюзов. А по умолчанию, работает встроенный JTAG

  • @Редкиевидеороликипрокомпанетнт

    Спасибо за поздравления!!!
    Вам тоже желаем крепкого здоровья удачи везения м самого важного того что вы себе сами можете пожелать и оно сбудется обязательно!!
    Спасибо за видео!!!

  • @iluxaa9999
    @iluxaa9999 5 лет назад +1

    Ну что пожелать: щастья здоровья. Побольше аудитории и адекватной

  • @Электроникавдеталях-з7д

    не идёт конечно ни в какое сравнение с бесплатным CubeIDE, но безусловно лучше чем ничего

  • @WOODIX
    @WOODIX 5 лет назад +2

    Спасибо, долгожданное видео, с праздниками!

  • @Dialbist
    @Dialbist 5 лет назад +3

    Мне все же нравится больше VisualMicro для VS, очень стабильно работает, много удобств VS, и есть отладка для esp8266

  • @fundorinlive
    @fundorinlive 5 лет назад +5

    Подписка уже бесплатная, со вчерашнего дня.

  • @ОлегАртеменко-д2з
    @ОлегАртеменко-д2з 4 года назад

    Очень пользительно и доходчиво. А то я долго не мог понять что же это за пины TMS,TCK В Вашем ролике нашел ответ. Спасибо. Вечерком попробую как отладчик с RTOS справится, Arduino framework это слишком просто.

  • @StoneTL
    @StoneTL 4 года назад +2

    Вообще ничего не понял, но очень интересно

  • @ulibkaify
    @ulibkaify 5 лет назад

    Спасибо за видео! С праздниками!

  • @DimiEG
    @DimiEG 5 лет назад

    Нравятся мне Ваши видео. Спасибо. Да, PlatformIO сейчас всё упрощает. Пытаюсь разобраться с Rust, но пока инфраструктура не готова для программирования железок. Поддерживает только STM. AVR планируют только в 2019. Пока LLVM тормозит Rust. Так что C++ ничего не угрожает в будущем как основному языку программирования для IoT. Ждём следующих уроков и с Новым Годом!

  • @MihailNikolayevich
    @MihailNikolayevich 3 года назад

    Спасибо за видео.

  • @andgr8928
    @andgr8928 4 года назад

    С Новым 2020! )

  • @edgull_tlt
    @edgull_tlt 3 года назад

    Спасибо

  • @Электроникавдеталях-з7д

    Спасибо за ролик. Не могли бы вы сделать уточнение по поводу сегодняшней ценовой политики PlatformIO. Если зайти на сайт сегодня можно видеть совсем другую картину. Оплата составляет 249 долларов за год или из расчёта 500 помесячно. Это сильно отличается от 2-3 долларов. Получается теперь надо платить 47 долларов помесячно чтобы иметь возможность пользоваться отладкой?

    • @alexmorozov73
      @alexmorozov73  Год назад

      Вроде бы уже больше года не требуется платная подписка для полноценного использования PIO.

  • @ugene4063
    @ugene4063 4 года назад

    Вчера ставил всё бесплатно работает. Правда медленно как-то

  • @dkmcdk724
    @dkmcdk724 3 года назад

    Очень уж тормознутая отладка, есть ли возможность как-то увеличить скорость "реакции"? После St-link под IAR уснуть можно.

  • @КонстантинШиряев-л3ц

    Пробовал использовать esp prog для esp8266 вместо esp32, но у меня ничего не вышло. Есть способ отлаживать esp8266 подобным способом?

    • @alexmorozov73
      @alexmorozov73  Год назад

      В PIO по простому видимо нет. А так ищите ESP8266 JTAG...

  • @ruslanteliuk2635
    @ruslanteliuk2635 4 года назад

    Как бороть: Error: timed out while waiting for target halted / 4 - 2
    И не работает заливка прошивки на плату.
    Но при запуске отладки, вот это:
    Info : clock speed 20000 kHz
    Info : JTAG tap: esp32.cpu0 tap/device found: 0x120034e5 (mfg: 0x272 (Tensilica), part: 0x2003, ver: 0x1)
    Info : JTAG tap: esp32.cpu1 tap/device found: 0x120034e5 (mfg: 0x272 (Tensilica), part: 0x2003, ver: 0x1
    Я так понимаю говорит о том что JTAG контроллер нашел ESP32.

  • @ugene4063
    @ugene4063 4 года назад

    Я так и не понял как переменные на лету править?

  • @АлександрПараконный

    У вас самые продвинутые видео по ESP8266, очень круто. Спасибо за просвещение. Если не ошибаюсь у вас было видео по построению Mesh сети на ESP, удалили ?

    • @alexmorozov73
      @alexmorozov73  5 лет назад

      Не, я демонстрировал UDP широковещательные, это не mesh.
      Более того, пару лет назад среди документации на Espressif был файл про mesh, только незаконченный. И в рекламе ESP8266 упоминалась эта прогрессивная технология... Но давно уже все хвосты подчистили. Возможно из-за выхода ESP32, а возможно "не шмогла".

  • @asmodey1605
    @asmodey1605 5 лет назад

    А что с J-Link, который есть у каждого второго? Не будет видео по отладке с ним?

    • @alexmorozov73
      @alexmorozov73  5 лет назад +2

      Видимо я первый, раз у меня нет J-Link'а. :)
      А что, без видео по аналогии и с помощью документации на сайте никак?

  • @Tolmobile
    @Tolmobile 3 года назад

    Доброе время суток! Вопрос с использованием FreeRTOS отладка будет нормально работать? У меня на простых сценариях работает, на сложных проектах с FreeRTOS уходит в никуда (.

    • @alexmorozov73
      @alexmorozov73  3 года назад

      Вы сами ответили на свой вопрос.

    • @Tolmobile
      @Tolmobile 3 года назад

      С этим как то можно бороться? Или не стоит?

  • @АлександрВолченко-т4щ

    Приветствую! Что делать, если пины ESP32 12,13,14,15 заняты, а отладить надо?

    • @alexmorozov73
      @alexmorozov73  4 года назад +1

      JTAG пины не ремапятся, так что если висящие на них устройства препятствуют отладке и не могут быть перенесены на другие пины, то JTAG отладка невозможна.
      Serial.print...

    • @АлександрВолченко-т4щ
      @АлександрВолченко-т4щ 4 года назад

      @@alexmorozov73 Жаль...

  • @vjwhiter
    @vjwhiter 5 лет назад

    А использовать что то типо Wemos нельзя?

    • @alexmorozov73
      @alexmorozov73  5 лет назад

      Что-то типа Wemos - это D1 mini?
      Я же в конце ролика сказал, что отладка ESP8266 не поддерживается (надеюсь пока).

    • @vjwhiter
      @vjwhiter 5 лет назад

      @@alexmorozov73 Wemos выпустили платку на ESP32

    • @alexmorozov73
      @alexmorozov73  5 лет назад

      Значит можно. Лишь бы указанные ноги на плате присутствовали.

  • @sv-avtomatika
    @sv-avtomatika 5 лет назад

    Объясните, зачем эти танцы с бубном, если в качестве отладчика вполне подходит монитор порта ардуино иде?

    • @alexmorozov73
      @alexmorozov73  5 лет назад +5

      Я две недели убил на написание SMS шлюза на ESP8266 (прием писем по электронной почте и отправка их в виде SMS) на поиск пары незначительных ошибок в коде. Пришлось добавить полсотни Serial.print в разных участках кода, чтобы хоть как-то локализовать проблему.
      Так что вперед, никто вас не неволит.

    • @sendsay76
      @sendsay76 5 лет назад +1

      Это вы сейчас не подумавши ляпнули😀

  • @AntonMalygin
    @AntonMalygin 2 года назад

    Даль что не получается отладить..после захода во временный брэкпоинт в основной программе по точкам останова уже не останавливается..висит непонятно где.
    Temporary breakpoint
    1, app_main () at C:\Users\Anton\.platformio\packages\framework-arduinoespressif32\cores\esp32\main.cpp:29
    29 {
    Info : esp32.cpu0: Target halted, PC=0x400D25D5, debug_reason=00000000
    Info : Set GDB target to 'esp32.cpu0'
    esp32.cpu0: Target halted, PC=0x400D25D5, debug_reason=00000000
    Set GDB target to 'esp32.cpu0'
    Info : esp32.cpu1: Target halted, PC=0x400D2588, debug_reason=00000001
    esp32.cpu1: Target halted, PC=0x400D2588, debug_reason=00000001
    [New Thread 1073447000]
    [Switching to Thread 1073447000]
    Breakpoint
    6, loopTask (pvParameters=0x400d2588 ) at C:\Users\Anton\.platformio\packages\framework-arduinoespressif32\cores\esp32\main.cpp:17
    17 {
    Info : esp32.cpu1: Target halted, PC=0x400837BE, debug_reason=00000000
    Info : Set GDB target to 'esp32.cpu1'
    esp32.cpu1: Target halted, PC=0x400837BE, debug_reason=00000000
    Set GDB target to 'esp32.cpu1'
    Info : esp32.cpu0: Target halted, PC=0x400E9AFA, debug_reason=00000000
    esp32.cpu0: Target halted, PC=0x400E9AFA, debug_reason=00000000
    Надимаем паузу и высвечивается следующее.
    Program received signal
    SIGINT, Interrupt.
    0x400837be in _xt_lowint1 () at /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/xtensa_vectors.S:1154
    1154 /home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/freertos/xtensa_vectors.S: No such file or directory.
    А дома данный пример и тот же самый программатор ESP-Prog останавливается на точках на которых указал.. ничего не понимаю..
    Если честно то начинает уже накалять эта костыльность ESP32.. то ли дело AVR PIC STM нажимаем отладку и поехали в нормальную отладку.