Открытый проект со схемой, платой и документацией.

Smart Zipper — миниатюрное носимое IoT-устройство, определяющее состояние застёжки-молнии на одежде (застёгнута / расстёгнута).
Крошечный неодимовый магнит крепится к бегунку молнии, а датчик Холла TI DRV5032 внутри устройства отслеживает его положение. Микроконтроллер nRF52820 передаёт состояние молнии на Android-смартфон по Bluetooth Low Energy, и приложение может деликатно уведомить, если молния слишком долго остаётся расстёгнутой. Система полностью локальная — без облака и сбора данных.
Как работает: при движении молнии магнит приближается или удаляется от датчика, выход датчика меняется, и прошивка определяет состояние. GPIO читает LOW при обнаружении магнита (молния закрыта) и HIGH при его отсутствии (открыта). Устройство отправляет по BLE один байт только при смене состояния; пробуждение — по прерыванию.
Аппаратно: nRF52820 с BLE, датчик Холла DRV5032, неодимовый магнит на бегунке, батарейка-таблетка CR2450. Корпус спроектирован в EasyEDA 3D Shell — простая надвижная крышка, два крепления под винты M2 с термовтулками, чтобы корпус можно было многократно открывать и закрывать.
Это краткое изложение проекта. Полную версию с подробностями смотрите на сайте оригинала: https://oshwlab.com/paulo.quispe.c/nrf52820-smart-zipper