Отладка ESP32 в PlatformIO

Поділитися
Вставка
  • Опубліковано 28 вер 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

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

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

  • @Dialbist
    @Dialbist 5 років тому +3

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

  • @ulibkaify
    @ulibkaify 5 років тому

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

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

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

  • @fundorinlive
    @fundorinlive 5 років тому +5

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

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

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

  • @edgull_tlt
    @edgull_tlt 3 роки тому

    Спасибо

  • @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 роки тому

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

  • @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

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

  • @sergesc5882
    @sergesc5882 Місяць тому

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

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

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

    • @alexmorozov73
      @alexmorozov73  Рік тому

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

  • @StoneTL
    @StoneTL 4 роки тому +2

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

  • @WOODIX
    @WOODIX 5 років тому +2

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

  • @iluxaa9999
    @iluxaa9999 5 років тому +1

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

  • @dkmcdk724
    @dkmcdk724 3 роки тому

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

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

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

    • @alexmorozov73
      @alexmorozov73  Рік тому

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

  • @ugene4063
    @ugene4063 4 роки тому

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

  • @asmodey1605
    @asmodey1605 5 років тому

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

    • @alexmorozov73
      @alexmorozov73  5 років тому +2

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

  • @Tolmobile
    @Tolmobile 3 роки тому

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

    • @alexmorozov73
      @alexmorozov73  3 роки тому

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

    • @Tolmobile
      @Tolmobile 3 роки тому

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

  • @andgr8928
    @andgr8928 4 роки тому

    С Новым 2020! )

  • @MihailNikolayevich
    @MihailNikolayevich 3 роки тому

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

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

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

    • @alexmorozov73
      @alexmorozov73  4 роки тому +1

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

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

      @@alexmorozov73 Жаль...

  • @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 нажимаем отладку и поехали в нормальную отладку.

  • @DimiEG
    @DimiEG 5 років тому

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

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

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

    • @alexmorozov73
      @alexmorozov73  5 років тому

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