З Карен (IIKaren) Обновлено
Заводим релейный модуль ESP8266 от LC TECHN с микроконтроллером STC15F104W для ESP-01S
Когда я заказывал этот релейный модуль, я даже не думал, что у меня могут быть с ним какие-то проблемы...
Мои разочарования начались сразу после первого включения! Моргала лампочка и ничего более...
После разных попыток перепрошивки модуля, а также долгих поисков решения проблемы неработоспособности этого модуля, все-таки было найдено решение.
Заранее скажу, что в интернете, можно найти несколько способов заставить это китайское чудо работать, но эти способы сделаны кустарным методом, так как там предлагается выпаять сам микроконтроллер и впаять какие-то резисторы...
Поискав в интернете, я наткнулся на видео, в котором запускают такой же релейный модуль и там кроме моргания лампочки, еще и щелкает реле.
Ну и наконец наткнувшийся на схему платы этого модуля, было выяснено, что реле управляется микроконтроллером STC15F104W с помощью TX/RX, а не GPIO-0, как ранее предполагалось. Собственно это и есть наша основная проблема.
Но кроме основной проблемы у меня еще и не щелкало реле. Изучив схему выше, оказалось, что проблема в том, что резистор R3 слишком большой. Ну что поделать... Мы же хотим заставить эту штуку работать, так что берем паяльник в руки, отпаиваем резистор на 10K и вместо него припаиваем на 4.7K. После этих манипуляции реле должна щелкать как в видео!
Код | Знач. | Код | Знач. |
332 | 3.3kΩ | 682 | 6.8kΩ |
362 | 3.6kΩ | 752 | 7.5kΩ |
392 | 3.9kΩ | 822 | 8.2kΩ |
432 | 4.3kΩ | 912 | 9.1kΩ |
472 | 4.7kΩ | 103 | 10kΩ |
512 | 5.1kΩ | 113 | 11kΩ |
562 | 5.6kΩ | 123 | 12kΩ |
622 | 6.2kΩ | 133 | 13kΩ |
Собственно, почему так происходит и почему у всех по разному может быть? Я ответ и на эти вопросы нашел!На сайте производителя www.chinalctech.com есть предупреждения, где говорится, что у этого релейного модуля есть некоторые подделки. Также говорится, что, если постоянно моргает светодиод на плате (D2), то это означает, что этот модуль не их производства.
Вроде уже более-менее все ясно, НО все-таки, как же заставить его работать?
Не буду томить, вся проблема в том, что микроконтроллер STC15F104W не запрограммирован!
Итак, читаем ПРЕДУПРЕЖДЕНИЕ! И поехали...
Прошиваем микроконтроллер STC15F104W
- Качаем программу STC ISP для программирования микроконтроллера STC15F104W. Я брал последнюю 6.86.
- Скачиваем прошивку микроконтроллера.
- Ставим драйвера вашего TTL контролера, если еще не установлены.
- Подключаем TTL контролер к ПК
- Запускаем скачанную программу STC-ISP
- Указываем в MCU Type микроконтроллер STC15F104W
- Выбираем порт вашего TTL контролера в COM Port
- Нажимаем на кнопку Open Code File и выбираем файл ранее скачанной прошивки под названием ESP8266_Relay_9600_11mhz.hex.
- Снизу в разделе H/W Option устанавливаем тактовую частоту (Input IRC frequency) 11,0592 MHz
- Ну и в конце нажимаем на кнопку Download/Program
Отключаем Wi-Fi модуль ESP-01S от релейного модуля! Она не должна быть подключена во время прошивки!
Только после этого Подключаем TTL контролер к пинам GND, TX, RX, 5V на плате релейного модуля и ждем, пока передача данных не будет завершена.
Теперь протестируем прошивку и работоспособность релейного модуля.
- Для этого переходим на вкладку COM Helper, выбираем порт нашего TTL контролера и жмем на Open COM.
- Вводим в TX Buffer по очереди команды A0 01 01 A2 и A0 01 00 A1 в режиме HEX-Mode и жмем на кнопку Send Data.
Если все было сделано правильно, то загорится светодиод, а вместе с ним еще и защелкнет реле. Но если этого не произошло, то придется опять колдовать паяльником с резисторами R3 и R4. Ну а если все работает, как надо, то переходим к прошивке уже самого Wi-Fi модуля ESP-01S для работы с нашим модулем.
Прошиваем Wi-Fi модуль ESP-01S специальной прошивкой
Думал отдельную статью сделаю..., но ладно так уж и быть... распишу все тут.
Казалось бы столько манипуляции сделано, но неужели этот релейный модуль еще не готов к работе.
Ответ я думаю уже понятен - НЕТ! Релейный модуль управляется последовательной связью через микроконтроллер, то есть ESP передает команды Включить/Выключить через контакты RX/TX микроконтроллеру, а дальше уже микроконтроллер выполняет реальную работу. Чтобы оправить те самые команды для управления, нужен специальный плагин «Serial MCU controlled switch».
Как подключать TTL контролер к Wi-Fi модулю ESP-01S я рассказывать не буду, ибо много статей про это, а вот как прошить его, сейчас подробно разложу!
Скачаем архив с программатором ESPEasyFlasher последней версии и разархивируем его куда-нибудь в удобное место, после чего скачаем специальную версию прошивки и поместим в папку BIN.
Этой прошивкой можно управлять следующими устройствами:
Tuya Wifi Touch wall switchTuya Wifi Dimmer SwitchSonoff Dual (Поддерживается только V1) Релейные модули от LC TECH (Поддерживаются вплоть до 4 релейных модулей.)
Именно поэтому я и хотел вывести это в отдельную статью!
Чтобы путаницы не было, распишу все поочередно:
- Подключаем Wi-Fi модуль ESP-01S к вашему ПК.
- Запускаем ESP.Easy.Flasher.exe и выбираем COM port
- В пункте Firmware выбираем blank_1MB.bin и жмем на кнопку Flash ESP Easy FW, тем самым прошиваемся на нулевую прошивку.
- После успешной прошивки, переподключаем ESP-01S модуль к ПК.
- Теперь в пункте Firmware выбираем прошивку ESPEasy_Mega_P165_1M_128kS_lwip20_PUYA.bin и опять жмем на кнопку Flash ESP Easy FW.
- Ждем, когда прошивка закончится, и переходим к следующему пункту.
Находим точку доступа ESP_Easy_0 и подключаемся.Открываем адрес в браузере 192.168.4.1, выбираем вашу домашнюю сеть Wi-Fi, вводим пароль и жмем Connect.После обратного отсчета должен высветиться IP адрес нашего ESP. Жмем на кнопку Proceed to main config и переподключаемся к домашней точке доступа. Так же IP адрес нашего ESP можно узнать такими способом найти IP адрес.
Переходим по IP адресу нашего ESP (Способы определения IP адреса) и настраиваем как указано ниже. Откроем раздел Devices, жмем на кнопку Edit, выбираем из списка пункт Serial MCU controlled swich.
В открывшихся пунктах вводим следующее.
- В поле Name вводим ESP01Relay
- Ставим галочку Enabled
- В поле Switch Type выбираем производителя нашего релейного модуля, то есть LC TECH
Жмем на кнопку Submit, после чего опять же появятся новые подпункты.
- Number of relays: здесь вводим количество реле на плате, в данном случае у нас 1.
- Serial speed: старые версии модуля работают со скоростью 9600, а новые на 115200!
Теперь покажу как это все будет работать.
Все элементарно просто - заходи в браузер и набираем HTTP команды:
- Включаем реле №1: http://ESP_IP/control?cmd=relay,0,1
- Выключаем реле №1: http://ESP_IP/control?cmd=relay,0,0
- Включаем реле №2: http://ESP_IP/control?cmd=relay,1,1
- Выключаем реле №2: http://ESP_IP/control?cmd=relay,1,0
- Включаем реле №3: http://ESP_IP/control?cmd=relay,2,1
- Выключаем реле №3: http://ESP_IP/control?cmd=relay,2,0
- Включаем реле №4: http://ESP_IP/control?cmd=relay,3,1
- Выключаем реле №4: http://ESP_IP/control?cmd=relay,3,0
И напоследок.....
Всем этим можно управлять как через OpenHAB MQTT, долгое время пытался решить этот вопрос, но пока безрезультатно. Как удастся решить этот вопрос, сразу обновлю статью... Ну, а если у кого-то получится сделать это раньше, обязательно отпишитесь в комментариях.
А на этом все, всем спасибо, ставьте лайки, пишите комментарии.
Спасибо за статью.
Сам попал в такую же ситуацию, только реле на моей плате 2 и контроллер другой...
До сих пор не решил что с этой поделкой делать...
Интересно Ваше мнение, есть ли для моей проблемы подобные решения?
Контроллер NUVOTON N76E003AT202-канальный релейный модуль от LC Tech, на борту с микроконтроллером N76E003 / STM8S003, то-есть управление осуществляется через последовательный порт (MCU)
Теперь о самой плате
Ну и самое главное, команда управления реле:
Выключаем первое реле: A0 01 00 A1
Включаем второе реле: A0 02 01 A3
Выключаем второе реле: A0 02 00 A2
найдите в статье раздел "Теперь протестируем прошивку и работоспособность релейного модуля." и протестируйте эти команды, потом отпишитесь..
Та же проблема. Не решили случайно?
Не совсем понятно, почему пытаетесь управлять из ОН по MQTT?
Чем вас не устраивает HTTP binding? Этот баиндинг прекрасно умеет посылать запросы приведённые Вами
Я в прошлом году столкнулся, но терпения не хватило все сделать по правилам))), тупо резистор выпал гпо подпаял и норм! Но у меня есть ещё парочка не модернизированных)). Спасибо большое за статью.
Посоветуйте пожалуйста TTL контроллер нормальный на али. Лежит такой модуль уже больше года!
И еще, может кто поможет информацией, есть сервопривод и надо чтобы он совершал поворот (с возвратом назад) на 45 градусов по wi-fi.
Не совсем понимаю суть такого модуля. Зачем вообще там микроконтроллер?
Esp и сам может управлять этими реле. Той же прошивкой espeasy.
просто подключить свободные gpio на входы реле и всё.
А можно поподробнее? А то уже несколько дней бьюсь с аналогичной штуковиной, только с мк nuvoton на борту, и никак победить не могу...
Как прошить этот (nuvoton n76e003at20 833hdfa)
Если поставить тасмоту то MQTT работает. На https://github.com/arendst/Sonoff-Tasmota/wiki/LC-Technology-WiFi-Relay">гитхабе Тасмоты обсуждались эти китайские подделки.
https://www.da-share.com/misc/esp8266-relay-board-mod/">Решение проблемы с китайским реле HW_655 на ESP-01 у меня заработало без пайки и программирования микроконтроллера.
Решение проблемы с ESPHomе
https://community.home-assistant.io/t/flashing-2-relay-board-with-esphome/144784/2
важно - плата должна работать в mode 1, т.е. светодиод должен гореть красным, а не синим.
Подскажите , а какой пароль от ESP_Easy_0