KC868-AG: IoT шайба

dcuvv6yun6famqtmcrzb0-k63je.jpeg

Не знаю как у вас, а меня первая ассоциация при взгляде на Kincony KC868-AG — это хоккейная шайба. На самом деле это очередной IoT контроллер от компании Kincony на популярном микроконтроллере ESP32, предназначенный для IR управления домашней аппаратурой и дополнительно снабжённый беспроводным приёмником и передатчиком 433 МГц для взаимодействия с устройствами наподобие метеодатчиков, умных розеток и тому подобных устройств.

Во многом KC868-AG напоминает уже рассмотренный нами раньше контроллер KC868-Uair, но есть и некоторые отличия. Об этих отличиях и о том, как можно использовать KC868-AG мы и поговорим дальше.

Kincony KC868-AG


KC868-AG имеет на борту ESP32 в модификации ESP-WROOM-32 (4 МБ встроенной EEPROM памяти) и может работать с Wi-Fi и Bluetooth. Кроме этого, KC868-AG содержит:

  • Пьезокерамическую пищалку (Buzzer);
  • Инфракрасный (IR) приёмник;
  • Инфракрасный (IR) передатчик;
  • Модуль приёмника 433 МГц;
  • Модуль передатчика 433 МГц;
  • Внутренний разъём с 12-ю свободными GPIO;
  • Mini-USB разъём для питания/связи с компьютером;
  • Кнопку перезагрузки RESET;
  • 3 индикаторных светодиода (не распаяны в моём экземпляре KC868-AG).


По сравнению с KC868-Uair, KC868-AG потерял:

  • Встроенный датчик температуры DS18B20;
  • Индикаторные светодиоды WS2812;
  • Разъём для подключения внешних I2C датчиков.


На самом деле все эти потери несущественны — благодаря свободным GPIO добавить датчик температуры или светодиоды WS2812 не составит особого труда. Несколько хуже дело обстоит со свободным местом в корпусе — у KC868-AG его значительно меньше и далеко не каждый датчик или другой компонент поместится в нашу «шайбу».

Предназначение KC868-AG


jdmjpdldemvhel0yxasmzvwhax4.jpeg

Из всего вышеперечисленного оборудования, установленного в KC868-AG, основным и «системообразующим» являются IR приёмник и передатчик. По сравнению с KC868-Uair увеличено количество инфракрасных излучающих светодиодов и улучшено их расположение, да и сам корпус «заточен» под работу с IR оборудованием — крышка на самом деле не чёрная, а сделана из IR прозрачного (красного) пластика, через который и проходит излучение управляющих IR светодиодов.

Все остальные компоненты, установленное в KC868-AG, являются дополнительными и только расширяют основной функционал по IR управлению бытовыми устройствами. В общем, заливаем нужную прошивку и получаем возможность как принимать и расшифровывать команды от IR пультов управления, так и выдавать IR команды для управления окружающими устройствами.

Прошивка, соответственно, может быть любой, и можно организовать любую логику работы как по расшифровке и запоминанию IR команд, так и по управлению вашими устройствами — по событиям, по расписанию, по показаниям датчиков и т. д.

Ну, а приёмник и передатчик на 433 МГц могут расширить возможности нашей «шайбы». Кроме этого, благодаря свободным GPIO вы можете ещё больше увеличить возможности KC868-AG и добавить нужное вам оборудование, например, беспроводные модули nRF24 или LoRa (об этом мы поговорим подробнее далее).

Внешний вид и корпус


5wmmschpdtplammmx6wla8dwdyu.jpeg

В общем, к дизайну KC868-AG у меня претензий нет — контроллер имеет характерный вид, свойственный подобного рода устройствам. Я могу представить подобное устройство практически в любом интерьере. Хотя, конечно, дизайн мог бы быть и лучше.

«Кнопка» со стрелкой (или это стилизованный дом?) является имитацией и не нажимается, это всего лишь декоративный элемент дизайна. Хотя, возможно, в каких-то вариантах корпуса на этом месте находится настоящая кнопка (но не в нашем случае).

Из косяков можно отметить то, что, несмотря на наличие защитной плёнки, при её удалении, верхняя полированная поверхность корпуса оказалась несколько потёртой. Как удалось испортить товарный вид изделия под защитной плёнкой, для меня осталось загадкой.

ypsnutdz1hoezqwzjwgem3fnywk.jpeg

Вид корпуса снизу. Видны 4 крепёжных отверстия под шурупы, вентиляционные отверстия, наклейка производителя и кнопка RESET (прямо над надписью KINCONY).

Тут стоит отметить, что KC868-AG — это тот редкий случай, когда для разборки корпуса и самого устройства не нужно обладать навыками ремонтника 80-го уровня — всё разбирается простым откручиванием нескольких винтов, что очень приятно после мучений с разборкой KC868-Uair.

a0lf4owbgjry9chlr7spty1izhe.jpeg

Сбоку видны Mini-USB разъём и индикатор питания. Через этот Mini-USB разъём и подаётся питание на KC868-AG и осуществляется программирование устройства.

Внутренний мир


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

Для сравнения размеров: KC868-AG и M187.

edshsj2k1zczhlsv7trunxpv308.jpeg

Вид сверху на плату, установленную в корпусе KC868-AG. Видны 4 шурупа, на которых крепится плата. Откручиваем шурупы и вынимаем плату из корпуса. Всё просто, никаких хитрых защёлок и проблем с разборкой.

2uxffnh1kxido7luetdzvoei3wq.jpeg

Вид извлечённой из корпуса платы. В центре выделяется группа из 7-и инфракрасных светодиодов. Количество и расположение диодов наводит на мысль о том, что с IR управлением проблем не будет.

sx0amcv5taqf00nb7fqigioikau.jpeg

Также выделяется разъём со свободными для подключения GPIO. Сам разъём припаян мной, в исходном состоянии с завода разъём распаян не был.

Схемотехника KC868-AG


Теперь переходим к разбору схемотехники Kincony KC868-AG. Вид сверху и крупный план установленных компонентов. Немного свободного места (под надписью с названием контроллера) радует — здесь можно расположить дополнительные компоненты.

qrgd3k_j8zgjzzlgbix6nkr0g_w.jpeg

Вид снизу. Отсутствует кнопка DOWNLOAD и светодиоды D9-D11, а также надпись MINI-USB сделана перевёрнутой. Окно в фольге на текстолите для антенны ESP32 можно было бы сделать немного больше.

tcn4utjme85rhd9xmofmkqykqs8.jpeg

▍ Питание


Подсистема питания Kincony KC868-AG предельно проста, в ней используется только линейный регулятор LM117–3V3 с соответствующей обвязкой для формирования напряжения 3,3 В. Плюс ещё добавлен светодиод индикации наличия напряжения питания.

46sdjuofabss2omrwbeavrzgfnq.png

▍ Ядро ESP32


В Kincony KC868-AG используется микроконтроллер ESP-WROOM-32, в состав этого функционального блока входят ещё пара фильтрующих конденсаторов, расположенных в непосредственной близости от ESP32.

qrvs8c-8g2s4-1ir8u788r7nrca.png

▍ USB/CH340


Для подключения к компьютеру и программирования KC868-AG на плате присутствует Mini-USB разъём и микросхема USB/Serial преобразователя CH340C, а также соответствующая обвязка для автоматизации загрузки скетчей. Кнопка DOWNLOAD не распаяна на плате, но при необходимости её можно добавить самостоятельно.

p-np6snv6bbh3vnwn97mk3azvjw.png

▍ Buzzer


Buzzer, просто Buzzer. Простое, но очень полезное дополнение к функционалу нашего контроллера, позволяет звуками (в том числе с тональной окраской и даже простыми мелодиями) оповещать пользователей о различных событиях.

f1wjpjlssrrq6pctatkmdmybzo4.png

▍ Инфракрасный приёмо/передатчик


Kincony KC868-AG оснащён инфракрасным приёмником и излучателем. В качестве IR приёмника используется датчик VS1838B. А в качестве излучателей применяются 7 излучающих IR диодов, управляемых через транзисторы.

slp265sr2rw3k9_mrt_kbkzpvas.png

▍ Модули 433 МГц


Для формирования и подачи на контроллер входного сигнала с приёмника 433 МГц используется буферный элемент 74LVC1G125, а выходной сигнал на передатчик 433 МГц подаётся напрямую. Также здесь присутствуют конденсаторы для сглаживания пульсаций и переходных процессов по питанию радиомодулей.

sy_pnxsefrmav5dooahywn5hjuw.png

▍ Интерфейсы


На плате KC868-AG присутствует разъём с 12-ю свободными GPIO, «землёй» и напряжением 3,3 В, к которому вы можете подключать своё дополнительное оборудование и компоненты. Здесь же видны выводы GPIO25–27, которые по схеме предназначены для управления светодиодами, но в реальности эти светодиоды не распаяны на плате.

iesmzl8voiijg25trcv7cc5qy6a.png

Распиновка


На фото распиновка разъёма P5 со свободными для подключения GPIO.

aa5kbwzqu7rsln6y73l1pouju1o.jpeg

И далее распиновка микроконтроллера ESP32 из которой вы можете составить (ясное) представление того, что и как там подключено.

b3jwhgril7ufqnemutver3ka6fw.png

Из этой распиновки видно, что у KC868-AG огромное количество свободных для подключения GPIO (что не может не радовать). С другой стороны, из этой же распиновки видно, что выводы SPI интерфейса опять неправильно распределены инженерами компании Kincony — заняты GPIO5 и GPIO23.

Получаем GPIO23


На схеме ниже я показал один из способов получения GPIO23 на плате KC868-AG, который мне показался самым простым для реализации неопытным пользователем. Обрезаем дорожку, удаляем резистор R4 и подпаиваем провод к одной из освобождённых контактных площадок резистора. С другой стороны платы припаиваем обычный (не SMD) резистор на 47K вместо удалённого.

jbi93fpkv0ahrkmcwgzl_weyalg.jpeg

Чтобы получить GPIO5, достаточно удалить резистор R16 и припаять провод к одной из освободившихся площадок (той, что идёт на микроконтроллер ESP32).

После этих несложных манипуляций вы сможете подключать любые SPI компоненты к KC868-AG. Спасибо компании Kincony, что не даёт нам расслабляться и заботится о наших навыках креативного мышления и владения паяльником.

3 светодиода или 3 GPIO


Как я уже заметил выше, на плате отсутствуют светодиоды D9-D11. Вообще, наличие этих (индикаторных) светодиодов на нижней стороне платы вызывает сомнения — зачем они там вообще нужны, если их свечение почти не будет видно. Поэтому мы о них не будем переживать и лучше добавим в свой арсенал ещё 3 свободных GPIO25–27.

sez8wjnqacguuyl0ziknf4dlk7o.jpeg

Для этого можно просто удалить SMD резисторы R14, R15, R17 и припаять провода к освободившимся контактным площадкам, как это показано на фото выше. В результате мы получим в своё распоряжение ещё 3 свободных GPIO (25–27).

Паттерны использования


Я вижу два возможных варианта использования KC868-AG:

  1. Ничего не трогать, просто залить какую-то (свою или стороннюю) прошивку и использовать KC868-AG как IR контроллер для управления бытовой аппаратурой (телевизоры, кондиционеры и т. п.).
  2. Подключить к плате нужные вам компоненты (датчики, беспроводные модули, индикацию и т. д.) и использовать KC868-AG как центр вашего «умного дома». Что и как будет делать этот центр, зависит только от ваших навыков программирования и вашей фантазии.


Заключение


В целом, Kincony KC868-AG как мини-контроллер «умного дома» имеет право на существование и вполне может стать полезным устройством в вашем доме. Также он прекрасно подходит на роль тренажёра для изучения программирования микроконтроллеров и DIY экспериментов для любознательных и креативных людей всех возрастов.

oug5kh6sjydt9llengsiebnp40w.png

© Habrahabr.ru