Разработка прошивкиНаша команда по разработке низкоуровневого ПО запрограммировала устройство выполнять следующие функции:
Когда пользователь поднимает гантели или гири, к которым прикреплен датчик, он просыпается и начинает передавать данные:
- Свой идентификатор, чтобы система понимала, какой снаряд вы подняли и сколько он весит.
- Данные с акселерометра и гироскопа, которые система использует для анализа упражнения.
- Состояние аккумулятора.
Перед отправкой на зеркало данные шифруются, чтобы датчик нельзя было использовать с аналогичными системами, произведенными третьими сторонами.
Прошивка также управляет светодиодом, установленным на устройстве. Светодиод сигнализирует разными цветами и частотой мерцания о состоянии датчика – включен и соединен с зеркалом, работает в режиме готовности, подзаряжается, обнаруживает ошибку, в аккумуляторе мало заряда и т.д.
Разработка станции беспроводной подзарядкиПоскольку заказчик собирался поместить плату датчика в монолитный корпус, для него требовалась станция беспроводной подзарядки. Готовые модели оказались слишком большими, поэтому нам поручили разработать собственную модель подходящего размера. В датчике мы использовали приемную катушку, а в станции – передающую катушку.
Из-за характеристик катушек датчик и зарядник оказались несовместимы с аналогами. Станция не могла заряжать другие устройства, а датчик нельзя было зарядить с помощью другого зарядника.