Как стать автором
Обновить

Комментарии 31

А что по напряжениям? EPS8266 использует основное 3.3 вольта. Лежит пока, опасаюсь пихать в usb-com её, чтобы не пожечь ненароком.

Как связывать к примеру с ардуиной и вообще внешними устройствами, поскольку куча датчиков рассчитаны на 5-вольтовую ардуину? Насколько 5 вольт ардуины опасно и простой вариант связи?
GPIO ноги ESP8266 толерантны к 5V, а датчики, работающие на 5V, обычно хорошо справляются с 3.3 V логикой ( Страница 17 даташита.) По крайней мере я работал с ESP8266, используя Arduino Uno как USB-COM переходник.

Хоть порты и толерантны к 5v уровням, по даташиту он требует 3.0~3.6V. При привышении может сбоить, так что используйте аккуратно.
Используйте для Ваших целей конвертор уровней. Если делать лень, или же нету времени — можно всегда купить готовый модуль, как это сделал я:

image
Да, стыд мне и позор. Упустил Вашу предыдущую статью, где уже были все необходимые ответы
LM1117 вам в помощь. Питания от Ардуины может не хватить по току, поэтому нужен внешний источник. Я бы не стал надеяться на полную совместимость уровней логики: проще сразу собрать все так, как надо.
Тем более просадки по питанию вызывают внезаные перезагрузки и вообще непредсказуемую работу модуля.
В моей предыдущей статье я рекомендовал вот такую схему:

image
Или в случае подключения через обычный USB UART переходник:

image
всё работает без проблем с адаптером на pl2303, на нём есть +3.3 выход от которого и надо запитываться.

вобще модуль спокойно работает даже от 4.2 вольт, тоесть от литиевого аккумулятора напрямую.
У PL2303 очень маленький ток по 3.3 В, проверенно. Модуль работает непонятно. Настоятельно Вам рекомендую почитать мою предыдущую статью.
а зачем кому-то может понадобиться заставлять ESP работать от PL2303?
разумно предположить что работать он будет в том устройстве где ему и предназначено, в связке с ардуиной например или где-то ещё, с своим питанием.

PL2303 нужна только для прошивки, а для прошивки её хватает без проблем.
Вот только неделю назад освоил половину из статьи. Теперь можно освоить и вторую половину!

На самом деле, меня больше всего расстраивает тот факт, что большинство статей описывает как использовать ESP8266 в качестве автономного устройства, и очень мало статей, которые бы пролили свет на вопрос «Как рулить ардуиной и снимать с неё данные через ESP».

Я, будучи совсем не настоящим сварщиком, 4 дня промаялся, пытаясь связать два этих устройства, в итоге у меня только лишь получилось помигать светодиодом, а хочется читать датчики и рулить светодиодами плавненько.
В скором будущем я постараюсь раскрыть немного эту тему.
Я в своём проекте, о котором постараюсь вскоре написать, соединил rx и tx модуля ESP с парой пинов Ардуины, к которым привязал SoftwareSerial-порт. Ардуина гонит текстовые команды в ESP, которая в свою очередь их обрабатывает, и отдаёт результаты по WiFi. Удобно в разработке — оба модуля отлаживать можно независимо. Ну а распарсить на любом контроллере текстовые команды — не сильно сложная задача для сварщика любого уровня :)
Вот как раз на парсинге я и встал!
В использованном мной коде используется команда find, у которой есть минус — даже если условие последующего if не выполняется — будет выполнено всё, скопом. По итогу, если я кидаю запрос температуры, то сначала следует попытка рулить светодиодом (естественно, с нулевым результатом, т.к. передаваемые параметры нулевые) и только потом мне вываливается результат опроса датчика.

Буду ждать Вашу статью, авось снизойдёт на меня озарение.
Я эти собирался около двух месяцев написать, потому не скажу когда придёт вдохновение.
По поводу
«Как рулить ардуиной и снимать с неё данные через ESP».
. Занимался этим вопросом на выходных.

  1. Как первый вариант выбрал I2C (Wire библиотеку из набора примеров File > Examples > Wire). Соединение SDA, SCL напрямую, без/с pull-up. Пока, к сожалению, смог отправлять данные только в одну сторону. Передача из ESP на Arduino работает отлично, но когда ESP-мастер запрашивает от Arduino n байт — ответ приходит в нечитаемом виде. Пример: Arduino шлёт (х, х), где х в цикле 1-255, а ESP получает (17, 0) в 60% случаев. Налицо проблема со скоростью или протоколом. Wire.setClock(100000L) не помогло. Осциллограф ещё не подключал. Если у кого-то это работало — дайте знать, хоть буду знать, что проблема только у меня.

  2. Использование UART оставил на потом по двум причинам.
    2.1: UART0 на ESP использую для отладки и прошивки. Если использовать эту линию для работы с Arduino — эта возможность пропадёт. UART1, как я понял, работает только на передачу, что не даст получать ответы от Arduino.
    2.2: Не пробовал ещё двухсторонние схемы преобразования уровней.

устройства: NodeMCU v0.9, ESP-201
Может кому поможет. У меня версии Arduino IDE 1.6.6 и 1.6.7 не видели платы ESP, только при откате на 1.6.5 всё заработало.
Будем знать.
Это в старой версии ESP8266 core
в последних версиях 2.0.0 и выше все вроде поправили
Кстати, может кто не знает но на али можно взять NodeMcu модули по 3.87$… для разработки очень удобно.

вот тут например

ПиныАрдуиновские пины соответствуют номеру GPIO

Прошу прощения, тэги не прошли.
А при чём тут теги?
Кстати в вашей пред идущей статье ни слова про NodeMcu devkit Именно его я имел в виду а не прошивку. Его гораздо удобнее использовать вместо голого esp. Никаких замыканий gpio0 на землю и прочих радостей. Все само заливается и перегружается после заливки.
Я так и написал ;)
для самых ленивых есть конструктор прошивок wifi-iot.ru ребята добились неплохих результатов по подключению различных устройств за пару минут
Да, только они эту прошивку (т.н. Pro-версию) продают за денежки
Время-деньги пока на те же грабли будешь наступать столько времени уйдет, я уж лучше нервы и время сэкономлю тем более ниже постом сказали вышла плата круче чем эта
Подключил esp-01 через arduio с питанием от 18650, после прошивки nodeMCU или smart.js и перезагрузки все работает, но на следующую перезагрузку nodemcu не может найти ini.lua, а smart.js sys.js, листинг директории в smart.js выводит undefined, получается что прошивка не удаляется, удаляются только файлы, почему так?
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории