[Из песочницы] Туннель Wi-fi -> RcSwitch для управления светом

image

Предыстория


Довольно часто в наших домах стали появляться люстры, управляемые с использованием беспроводного пульта, который работает на частоте 433\315 mhz.

В моей квартире первой появилась такая люстра в комнате. Позже, когда наше семейство пополнилось двумя детьми, я был вытеснен «жить» на кухню, и беспроводного управления светом в моем новом жилище стало катастрофически не хватать. В связи с чем с небезызвестного всем сайта был заказан 4-х канальный беспроводной модуль.

image

И начался процесс «тюнинга» кухонной люстры. Для создания режима ночника была наклеена светодиодная лента и повешена на первый канал блока.

image

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

image

Жить стало легче. Но не знаю как у остальных, но у меня эти самые пульты стали постоянно теряться. Пришлось что-то с этим делать.

Железная часть


На базе известного микроконтроллера esp8266, с использованием прошивки с сайта homes-smart.ru мной был собран простой шлюз, а именно к модулю был подключен передатчик с частотой управления люстрами. С помощью Arduino я снял коды кнопок пультов «комнаты» и «кухни».

image

Сам модуль с ESP распаян на самодельном адаптере, с обратной стороны которого установлен стабилизатор напряжения 3,3 вольта и небольшой конденсатор, чтобы не заботиться о питании модуля. ESP соединяется с передатчиком через переходной адаптер.

Программная часть


Все бы хорошо, но возникла проблема, у используемой мной прошивки не было как такого пользовательского web-интерфейса. Поэтому выполнять команды можно было только через http запрос.

Для решения этой проблемы были написаны клиенты под windows phone и android (находится в состоянии альфа версии). Для написания приложения под windows использовал Visual Studio 2015 RС. Это было мое первое знакомство с программированием под эту платформу. Хочу заметить, что в сравнение с программированием для Android эта платформа не вызвала никаких трудностей. Все работало сразу из коробки.

imageimage

Дальше пришло время клиента под Android и тут начались трудности. Ранее я пробовал программировать для Android в среде Eclipse и вроде у меня все получалось. Но повторно установить эту среду у меня почему то получилось. Обратил внимание на то, что в новой Visual Studio появилась возможность создания проектов для Android, но и это направление у меня не пошло. В итоге был выбран более легкий путь с использованием замечательного ресурса appinventor.mit.edu. Быстренько накидал проект, залил его в телефон, и все заработало.

image

Однако довести его до конца так и не успел. Детишки не дают и шага без них шагнуть, поэтому личного времени совсем нет.

P.S. Это моя первая статья на Хабре, сильно не судите, постарался как можно полно описать, насколько это позволили моя грамотность и мои дети, не дававшие покою на протяжении всего повествования. Так что на этом я заканчиваю. Пора идти развлекать детей.

Надеюсь моя идея будет кому то полезна.

Упомянутые и используемые материалы
Прошивка: http://homes-smart.ru/
Клиент под Windows Phone: yadi.sk/d/53y6SsmljZGpm
Клиент под Android (не доделан до конца): ai2.appinventor.mit.edu/#6244931076096000

© Geektimes