Мини-шайба Espruino Puck.js v2.1 со встроенной кнопкой — необычная платформа для портативных проектов IoT с автономным питанием от батарейки CR2032. Помимо беспроводной связи Bluetooth, BLE и NFC на борту устройства есть термометр, магнитометр и гироскоп/акселерометр, благодаря чему Puck.js можно использовать как BLE-кнопку для дистанционного управления или носимое смарт-устройство.
Круглый корпус из пластика с силиконовым чехлом облегчает монтаж на разные поверхности и не выделяется в окружающем пространстве, так что Puck.js уместно смотрится в DIY-проектах, связанных с умным домом. Необычный форм-фактор позволяет установить контроллер возле двери, чтобы автоматизировать включение-выключение света при открытии, или использовать его в качестве ИК-повторителя для дистанционного управления приборами.
Основа Espruino Puck.js — беспроводной модуль Raytac MDBT42Q, который состоит из чипа Nordic nRF52832 и встроенной антенны.
Однокристальная система nRF52832 включает в себя 32-битный процессор с архитектурой ARM Cortex-M4 и тактовой частотой 64 МГц. На борту содержатся 512 КБ флеш-памяти и 64 КБ оперативной памяти. Чип поддерживает беспроводную связь Bluetooth v5.3 / BLE для обмена данными и прошивки по воздуху, а также программируемую NFC-метку с интегрированной антенной.
Плата Puck.js v2.1 несёт на борту дополнительную периферию:
В силу миниатюрного исполнения все контакты на плате Espruino Puck.js v2.1 плотно сгруппированы.
Всего для подключения периферии предусмотрено 9 контактов ввода-вывода: 7 сквозных контактов и 2 контактные площадки. Часть из них обладает дополнительными возможностями.
Для подключения внешних модулей предусмотрены аппаратные интерфейсы UART, SPI и I²C.
Отдельный контакт FET подключён к полевому транзистору и позволяет запитать периферию с потреблением тока до 200 мА (например, мотор или сервопривод) напрямую от Puck.js.
Обратите внимание, что логическое напряжение на пинах Puck.js — 3,3 вольта, поэтому подключение 5-вольтовой периферии повредит устройство.
Для работы с контроллером используется среда программирования Espruino Web IDE на JavaScript, доступная в виде онлайн-инструмента, расширения Google Chrome или отдельного приложения.
Платформа Espruino Puck.js v2.1 питается от батарейки CR2032. Чтобы запустить устройство в первый раз, вам понадобится вынуть плату из корпуса и установить приложенную батарейку в отсек. Время автономной работы от одной батарейки — до 20 дней.