Всем привет.
Пользуюсь платой NodeMCU v1.0 AMICA (official) - именно такой, которую они сами называют "официальной" - с UART CP2102. Нормально всё: esptool прошивает, ESPlorer подключается, скрипты загружаются и работают.
Но заметил, что физической кнопкой RST плата сбрасывается как-то не всегда. Из ESPLorer сброс делается надёжно и кнопкой Reset и передёргиванием сигнала RTS на UART, а вот пальцем можно обнажиматься, пока сбросится.
Решил проверить работу ещё и кнопки FLASH (подключена к GPIO0 и DTR, схема формирования сигналов одинаковая). Опрашиваю состояние GPIO0 в скрипте и вывожу результат. Проблема повторяется: физическое нажатие не определяется, переключение же DTR считывается всегда.
Понятно, что дальше стал измерять напряжение на соответствующих пинах ESP-12F. Результат: при ненажатых кнопках на RST и GPIO0 3.3v, при нажатых - 1.8v и 1.5v соответственно. Вот они и не работают, потому уровня логического нуля не формируют... При управлении же этими сигналами с UART на входы ESP подаётся честный ноль вольт и всё работает.
Схему прозвонил, детальки проверил - всё как нарисовано. Но не работает. Сравнил с UARTом у "бутерброда" Witty Cloud Development Board. Принципиально они одинаковые, только резистор в базе транзисторных ключей у Witty стоит 1 кОм, а у Nodemcu - 12 кОм. В результате у Witty аппаратные кнопки работают, а у Nodemcu - нет...
Владельцы Nodemcu разных версий, посмотрите как обстоят дела у вас: работает ли аппаратный reset и flash и какое напряжение на выводах ESP формируется при нажатии кнопок. Подозреваю, что этот косяк должен быть широко распространён, так как китайские схемотехники, похоже, ляпают одну и ту же схему без проверки и понимания.
Пользуюсь платой NodeMCU v1.0 AMICA (official) - именно такой, которую они сами называют "официальной" - с UART CP2102. Нормально всё: esptool прошивает, ESPlorer подключается, скрипты загружаются и работают.
Но заметил, что физической кнопкой RST плата сбрасывается как-то не всегда. Из ESPLorer сброс делается надёжно и кнопкой Reset и передёргиванием сигнала RTS на UART, а вот пальцем можно обнажиматься, пока сбросится.
Решил проверить работу ещё и кнопки FLASH (подключена к GPIO0 и DTR, схема формирования сигналов одинаковая). Опрашиваю состояние GPIO0 в скрипте и вывожу результат. Проблема повторяется: физическое нажатие не определяется, переключение же DTR считывается всегда.
Понятно, что дальше стал измерять напряжение на соответствующих пинах ESP-12F. Результат: при ненажатых кнопках на RST и GPIO0 3.3v, при нажатых - 1.8v и 1.5v соответственно. Вот они и не работают, потому уровня логического нуля не формируют... При управлении же этими сигналами с UART на входы ESP подаётся честный ноль вольт и всё работает.
Схему прозвонил, детальки проверил - всё как нарисовано. Но не работает. Сравнил с UARTом у "бутерброда" Witty Cloud Development Board. Принципиально они одинаковые, только резистор в базе транзисторных ключей у Witty стоит 1 кОм, а у Nodemcu - 12 кОм. В результате у Witty аппаратные кнопки работают, а у Nodemcu - нет...
Владельцы Nodemcu разных версий, посмотрите как обстоят дела у вас: работает ли аппаратный reset и flash и какое напряжение на выводах ESP формируется при нажатии кнопок. Подозреваю, что этот косяк должен быть широко распространён, так как китайские схемотехники, похоже, ляпают одну и ту же схему без проверки и понимания.
Последнее редактирование: