• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

ESP-01 и приемник/передатчик 433 МГц

Penates

New member
Делаю девайс который может через ESP-01 принимать и передавать данные на частоте 433 МГц.
Приемник и передатчик самые простые XD-RF-5V и FS1000A.
Сделал вот такой макет:
Breadboard-001.png

Нужна помощь в улучшении схемы и устранении глюков:

1. Планирую использовать источник питания 9V. ESP питается через преобразователь напряжения MP1584EN, настроенный на 3.3V Но приемнику нужно питание 5V. Можно ли его как-то организовать не добавляя еще один стабилизатор?

2. Когда я подаю питание на схему, то светодиод начинает постоянно гореть в пол силы и ESP нормально не работает. Если отсоединить от ESP зеленый провод перед включением схемы, то все запускается нормально. Его потом можно подсоединить и все работает. Почему так происходит?

Также принимаются дополнительные советы по схеме.
Сильно прошу не ругать, это мое второе поделие.
 

tretyakov_sa

Moderator
Команда форума
2. Когда я подаю питание на схему, то светодиод начинает постоянно гореть в пол силы и ESP нормально не работает. Если отсоединить от ESP зеленый провод перед включением схемы, то все запускается нормально. Его потом можно подсоединить и все работает. Почему так происходит?

Также принимаются дополнительные советы по схеме.
Сильно прошу не ругать, это мое второе поделие.
Вы бы написали куда что подключаете и что там за переключатель по середине? Высматривать на вашем рисунке не очень хочется.
 

Penates

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

Питание приемника и передатчика идет напрямую от батареи 9В. Питание на ESP через преобразователь напряжения - 3.3В.

Подключение ESP:
GPIO0 - подключен кнопке. При нажатии кнопки выполняется отправка данных через передатчик.
GPIO2 - подключен к выводам DATA радиомодулей - и к приемник, и к передатчику. В зависимости от режима работы (переключателя) через этот пин происходит прием или передача данных.

Скажите если нужно еще что-то уточнить
 

Penates

New member
@Penates тут есть ответ на ваш вопрос #2
https://esp8266.ru/esp8266-podkluchenie-obnovlenie-proshivki/#full
П.с. выбор источника питания очень неудачный.
Добавил в соответствии со схемой по ссылке конденсатор 0.1 мкФ и резистор 10 кОм на вывод CH_PD.
Ситуация не изменилась - при включении питания все так же горит светодиод на кнопке и синий светодиод на ESP.
Пробовал подтягивать к питанию через резисторы 10 кОм также пины GPIO0 и GPIO2, но это тоже не помогает. И кроме, того я не совсем понимаю если их так подключать - они будут нормально работать как ввод-вывод данных?

Проблему №2 решает только отключение GPIO2 от DATA на обоих радиомодулях перед стартом.

И насчет источника питания - чем он плох? Я исходил из того что для передатчика 9В обеспечивают максимальную дальность, судя по описаниям этого модуля.
 

tretyakov_sa

Moderator
Команда форума
Подключите приемник на RX передатчик на TX. Питание сделайте от 18650 через диод. XD-RF-5V приемник капризный. Передатчик от 3 вольт даст дальность 100 метров со стандартной спиральной антенной (проверено на CR2032).
 

Сергей_Ф

Moderator
Команда форума
Пробовал подтягивать к питанию через резисторы 10 кОм также пины GPIO0 и GPIO2, но это тоже не помогает.
вы просто сделали как указано без понимания что нужно. А нужно обеспечить высокий уровень на gpio2 на время старта. У вас это не сделано.
 

Penates

New member
Подключите приемник на RX передатчик на TX. Питание сделайте от 18650 через диод. XD-RF-5V приемник капризный. Передатчик от 3 вольт даст дальность 100 метров со стандартной спиральной антенной (проверено на CR2032).
Если использовать RX и TX, то тогда ведь не получится смотреть логи в Serial?
Я пробовал питание от аккумулятора 3.7В - приемник у меня не заработал, ему надо 5в.
 

Penates

New member
вы просто сделали как указано без понимания что нужно. А нужно обеспечить высокий уровень на gpio2 на время старта. У вас это не сделано.
Согласен, пока не совсем понимаю как это должно работать. Если gpio2 оставить в воздухе при старте, то все нормально запускается - почему?
 

Penates

New member
полагаю, что нельзя у приемника и передатчика объединять пин data и сажать их на один GPIO
в этом случае приемник будет управлять передатчиком
и шунтировать GPIO2 при управлении ESP передатчиком.
используйте для этого RX и TX соответственно.
Так как эти шины однонаправленные, то для развязки можно использовать монтажное или с помощью диодов.
Приемник и передатчик одновременно не работают. Там есть переключатель, который подает питание только на один из них. Так что вроде бы не должны они друг другу мешать?
 

Сергей_Ф

Moderator
Команда форума
Если gpio2 оставить в воздухе при старте, то все нормально запускается - почему?
потому что есть подтяжка к +5В. Она обеспечивает высокий уровень при старте. Подключая сюда data приемника и/или передатчика вы сажаете вход на 0. Посмотрите сами, какой модуль делает это. Скорее всего приемник. Поэтому режим работы esp меняется в соответствии с документацией. А как заметил @nikolz передатчик включится высоким уровнем на gpio2. Вам надо поменять gpio, как вам уже посоветовали или выбрать другой модуль esp с большим числом gpio.
Типичная ёмкость щелочной батарейки Крона — 625 мА·ч.
 
Последнее редактирование:

Penates

New member
Вам надо поменять gpio, как вам уже посоветовали
Попробовал подключить DATA приемника и передатчика к RX и TX на ESP. GPIO0 и GPIO2 подтянуты к + питания через резистор 10 кОм.
Ситуация та же - ESP нормально не запускается.
Нужно ли в скетче какие то специальные установки сделать для RX и TX? Я пока скетч не менял и данные не пробовал через эти пины передавать, только проверил проблему с запуском.

где переключатель? покажите на схеме?
Переключатель на исходной картинке посередине между радиомодулями.
Заметил еще такую особенность - проблема с запуском возникает только если переключатель в левом положении, т.е. питание подано на передатчик, а на приемник нет. Если перед стартом перевести переключатель в правое положение, т.е. питание есть на приемнике, а на передатчике нет, то ESP запускается.
Проверил это также в изначальной схеме - когда GPIO2 соединен с DATA приемника и передатчика.

Т.е. не работает только когда переключатель подает питание на приемник при старте.
 

Penates

New member
с помощью ESP поставьте ключ и управляйте питанием
можно еще рассмотреть возможность управлять питанием непосредственно от пина
с пина можно получить до 12 ма
посчитайте возможно этого хватит для приемника
а на передатчик поставьте ключ
управлять можно одним пином но ключ должен включаться нулем
Спасибо за идею. Подумал над этим вариантом. Я правильно понял, что это будет как то так выглядеть:
1. GPIO2 управляет питанием. При старте он HIGH и от него питается приемник (я не нашел даташит на XY-MK-5V, но вроде пишут что 4 мА он потребляет, так что должно хватить?). При переключении в LOW он через ключ включает питание на передатчик.
2. GPIO0 используется для физической кнопки. Подтянут к + питания. При нажатии кнопки замыкается на землю. Кнопка будет иметь три функции:
2.1. Кратковременное нажатие - отправка данных через передатчик
2.2 Длительное нажатие - переключение GPIO2, т.е. включение/выключение питания передатчика
2.3. Нажатие при старте - вход в режим программирования ESP.

По этому варианту есть вопросы, касательно DATA пинов приемника и передатчика:
- Если использовать для передатчика TX, то не будет ли это конфликтовать с объектом Serial, который используется у меня в скетче?
- Можно ли RX использовать на ввод и на вывод?
 

nikolz

Well-known member
Спасибо за идею. Подумал над этим вариантом. Я правильно понял, что это будет как то так выглядеть:
1. GPIO2 управляет питанием. При старте он HIGH и от него питается приемник (я не нашел даташит на XY-MK-5V, но вроде пишут что 4 мА он потребляет, так что должно хватить?). При переключении в LOW он через ключ включает питание на передатчик.
2. GPIO0 используется для физической кнопки. Подтянут к + питания. При нажатии кнопки замыкается на землю. Кнопка будет иметь три функции:
2.1. Кратковременное нажатие - отправка данных через передатчик
2.2 Длительное нажатие - переключение GPIO2, т.е. включение/выключение питания передатчика
2.3. Нажатие при старте - вход в режим программирования ESP.

По этому варианту есть вопросы, касательно DATA пинов приемника и передатчика:
- Если использовать для передатчика TX, то не будет ли это конфликтовать с объектом Serial, который используется у меня в скетче?
- Можно ли RX использовать на ввод и на вывод?
схема зависит от того, что важно а что нет.
Главное - надо ли экономить питание.
Если ESP спать не будет то алгоритм работы может быть такой
если передатчик не работает то приемник всегда включен
т о при старте приемник включается , а при передаче данных ESP , приемник выключается
ключ для выключения питания передатчика можно поставить в цепь земли а не в цепь Vcc тогда он будет включаться нулем с пина, который подключаете к питанию приемника
Примерно так
Тумблер никакой не надо ставить.
Поставьте кнопку на reset для сброса при зависании и при программировании
 
Сверху Снизу