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

Нужна помощь HW-622 - какую среду разработки лучше использовать?

Так собственно что лучше выбрать для создания прошивки:

  • Arduino IDE

    Голосов: 2 66.7%
  • NodeMcu

    Голосов: 0 0.0%
  • что-то еще?

    Голосов: 1 33.3%

  • Всего проголосовало
    3

kotyara12

New member
Доброго времени, уважаемые!

Помогите определиться новичку с инструментом для создания прошивки. ESP8266 еще ни разу не "мучал". Погуглил - навскидку нашлось инструментов для создания прошивки как минимум два - Arduino IDE и ESPlorer (NodeMCU?).
Опыта нет совсем, поэтому мучаюсь сомнениями, что лучше выбрать, чтобы реализовать поставленную задачу. Дабы было понятно, что мне требуется от прошивки, постараюсь эту самую задачу описать максимально подробно.

Предистория
Есть дача в деревне, в деревне с лета 2018 проведен RT-WiFi по госпрограмме УЦН. Для подключения к этому WiFi стоит наружная точка доступа CPE-210, а к ней уже подключен роутер, который "раздает" WiFi уже внутри дома.
И все бы ничего, но периодически CPE-210 "виснет", доступ к интернет блокируется. При зависании нужно перегрузить CPE. Но перезагрузить CPE по питанию - еще полдела. После перезагрузки интернет не заработает! В некоторых случаях достаточно открыть любой HTTP-сайт (не HTTPS!), после чего происходит редирект на rt.ru и доступ восстанавливается. В особо тяжелых случаях приходится пройти авторизацию - открывается страница Ростелеком, где необходимо ввести номер телефона, на который придет SMS с кодом и указать этот самый код.
Сейчас (зимой) на даче один "клиент" для интернета - IP-камера. И авторизацию она пройти никак не может. И чтобы эта камера работала, нужно как минимум раз в неделю топать в деревню, перегружать роутер, проходить авторизацию с смартфона... А платить 350 руб за 3G-интернет от МТС за просмотр камеры - земноводное душит.

То есть нужно устройство, которое при зависаниях будет автономно "поднимать" интернет, но не простой, а Rostelecom_UUS.

Собственно как я представляю себе общий алгорим работы устройства
1. Подключаемся к домашнему WiFi
2. Периодически проверять пинг к какому-нибудь общедоступному сервису, например 8.8.8.8
3. При отсутствии интернета или WiFi отключаем питание роутера и CPE на несколько секунд
4. После перезагрузки ждем пару минут для загрузки оборудования, подключаемся к WiFi
5. Проверяем пинг. Если пинг есть, то ОК, идем на шаг 2, если нет - идем дальше.
6. Пробуем открыть любой HTTP сайт. Должен произойти редирект на Ростелеком. Проверяем пинг. Если пинг есть, то ОК, идем на шаг 2, если нет - идем дальше.
7. Если редирект произошел на страницу авторизации, где нужно ввести номер телефона, то начинаются танцы с бубном. Я так понимаю, что тут без GSM-модуля никак не обойтись, тут два варианта:
7.А. Используем любой GSM-модуль, отправляем POST-запрос c номером симки в GSM-модуле, получаем SMS с кодом, расшифровываем, отправляем код Ростелекому (опять POST-запрос).
7.B. Используем любой GSM-модуль, отправляем POST-запрос c моим номером, мне приходит код, я его переправляю на номер GSM-модуля, далее отправляем ответ Ростелекому (опять POST-запрос)
Ну и далее как обычно - проверяем пинг и т.д.

Аппаратное обеспечение
Для реализации задуманного купил плату HW-622 (ссылка), так как на ней уже стоит реле, и не нужно ничего колхозить с реле. На ней стоит ESP8266MOD, судя по описаниям это похоже на ESP8266-13. Только когда уже получил плату, задумался - а смогу ли я ней подцепить GSM-модуль? В "этих ваших интернетах" об этой платке не так уж и много информации...

Купил еще несколько Wemos -платок "для опытов" и отладки прошивки...
 

enjoynering

Well-known member
купите лучше Orange Pi Zero. там вам и HTTPS и PHP сервер который вам распарсит страницу и введет номер, получит ответ от GSM модема подключенного к RX/TX и реле передернет если что.

недостатки - надо знать linux, php, python и перелопатить кучу инфы, но в итоге получите более гибкое к изменениям решение. да и потребление у Orange Pi Zero в пике под 1.5А, среднее 0.5А.
 
Последнее редактирование:

kotyara12

New member
Вы не указали главное - Ваш уровень знаний в рассказанных вами задачах.
----------------------------------------
Но полагаю , если вы задаете такой вопрос, то выбора у вас нет.
берете Ардуино и ищите готовые решения в интернете
потом используете метод РЕКЛЕ
Опыт программирования у меня есть. Но на платах arduino, не на esp.
Но вопрос не в этом. Вопрос в том - что оптимальнее использовать в данном случае?
Может быть я не смогу сделать все задачи через Arduino IDE...
 

kotyara12

New member
оптимально - это когда сделать можете, но не лучший вариант.
а когда "не смогу" - это уже не оптимальный а воще просто сделать.
но ответить на этот вопрос можете лишь вы сами.
-------------------
у меня при прочтении вашего эссе возник вопрос - а зачем камера в деревне.
Смотреть из города как дом горит, если вдруг пожар, или как воры залезли и все утащили?
----------------------------
Что же касается вашей проблемы, то я сначала бы разобрался с зависанием вашего роутера
кто виноват -роутер или провайдер?
потом бы устранил эту проблему
потом бы отладил без программирования необходимый алгоритм управления.
потом уже решил бы на каком железе это городить.
---------------
ну а пока это все будете выяснять тут и лето наступит и проблема сама отомрет.
Летом интернет точно так же зависает. И перегружать его каждую неделю нет никакого удовольствия. Так что проблема не отпадет.
А "виноват" в данном случае провайдер. Ибо по нашим законам должна быть идентификация "клиента". Вот они и извращаются - примерно раз в неделю соединение рвется и требуют эту самую идентификацию. Либо упрощенную, либо полную
 

Peter1001

New member
Arduino IDE и ESPlorer (NodeMCU?).
vs code platformio ещё есть, очень удобная штука. Удобнее чем Arduino IDE.
Почему именно так? linux да.
php, python - нет. В место них может быть любой язык который он знает. (.net core / java ) + открою секрет на python можно так же писать под web у питона WSGI.
 
Сверху Снизу