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

Решено Прошивка ESP через FT232RL

programmer

New member
Делаю себе dev board, чтобы было удобно прошивать ESPxx. Подключил так, как описано здесь
http://esp8266.ru/forum/threads/ocherednoj-opyt-podkljuchenija-esp8266.243/
но столкнулся с проблемой в работе UART'a на базе FT232:
Photo 1 8.jpeg

Дело в следующем. Чтобы прошить в автоматическом режиме, esptool дергает DTR/RTS:
Код:
        self._port.setRTS(True)
        self._port.setDTR(True)
        self._port.setRTS(False)
        time.sleep(0.1)
        self._port.setDTR(False)
Но FT232 никак не реагирует на это. Я добавил между строк в этом коде time.sleep, чтобы можно было измерять напряжение с помощью мультиметра, но после открытия порта мультиметр всегда сообщает мне 0.00 В на DTR и RTS.

Есть второй такой же модуль - та же картина...

Проверил другой UART на базе CP2102 - он работает как надо, т.е. напряжение на DTR/RTS меняется в процессе работы приведенного выше кода.

Кто-нибудь сталкивался с этим? Поискал в интернете и нашел только, что нужно выключить handshake (xon и xoff), чтобы управлять DTR/RTS, но оказалось, что это сразу по умолчанию делает модуль питона serial.
 

Andy Korg

Moderator
Команда форума
У меня такое было именно в результате перепрограмирования ft именно ноги adbus были перешиты и rx инвертирован. Вышеуказанные утилиты pvvx поправили дело.
 

programmer

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

Да и настройки такие, что я не знаю, как они могут помочь:
mprog.png
 

pvvx

Активный участник сообщества
Напишите хотя-бы полное название микросхемы (все буквы и цифры) и есть ли у неё внешняя EEPROM (или внутренняя или OTP). А то гадать будут долго, почему у вас что-то не работает. :)
 

programmer

New member
А в заголовке написал - FT232RL. Остальные буквы больше походят на номер партии: 1412-G B8908572
Там же фото и http://ru.aliexpress.com/item/Hot-s...al-Adapter-Module-for-Arduino/1722487690.html

Кроме микросхемы и обвеса ничего нету. Если там OTP, то тут полагаю проще будет выбросить этот FT и использовать CP2102.
 

pvvx

Активный участник сообщества
http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT232R.pdf - гласит Fully integrated 1024 bit EEPROM storing device descriptors and CBUS I/O configuration.
Должно программироваться. VID/PID только не меняйте - будут сложности.
И пробуйте обновить драйвер в системе, да посмотрите, нет ли "залипов" в китай-пайке микрухи на плате.
Короткие сигналы тестером не отследить. Пробуйте открыть USB-COM порт хоть в программе https://sites.google.com/site/terminalbpp/ - там есть пимпочки ручного переключения RTS DTR.
 
Последнее редактирование:

programmer

New member
Спасибо за совет с драйвером! Сижу в основном на OS X, а на ней FT232 драйвер идет в комплекте с системой. Скачал, обновил и перезагрузил - заработало!
 

programmer

New member
Логический анализатор уже заказал, благодарю за ссылку :)

И в итоге я перешел на CP2102.
Через FT232RL заработал ресет через RTS/DTR, но дальше дело не пошло. При попытках прошить на 100 процентах всегда ошибка. Все подтянуто резисторами, питание внешнее (даже от батарейки пробовал из-за безысходности), но все тлен :) Может плохо дружит с OS X...
Когда перепаял на CP2102 (ага, я паял, потому что на белой макетке надоело, что ESP ресетится от плохого контакта или любых других вмешательств), все стало огонь - прошиваю на скорости 921600.
 
Сверху Снизу