Тестировал heart rate sensor EM7028 в часах из начала темы. Прошил немного исправленный пример из SDK PHY62XX_SDK_1.1.8\example\ble_peripheral\wrist
Дополнил изменяемой установкой частоты опроса сенсора с передачей по BLE (за раз передается 8 замеров). Оптимально вышло где-то 66 smps (8.25 транзакций в сек по 8 точек). Быстрее не требуется, медленнее - хуже разрешение...
Как измеритель heart rate все оптические ужасны и гонят лажу. Чтобы они показывали что-то приблизительно правильно, надо найти место на теле, не двигаться и соблюсти прочие условия...
Пример из SDK приложения на телефоне:
И что он по этому намерит?
А это старательный замер уже на Web Bluetooth:
Если включить фильтр в dygraph на 9 точек, то что-то видно:
Да, замеры в Люксах
И к главному предназначению датчика. Многие heart rate сенсоры хорошо работают как датчики приближения или сигнализации.
Пример замера демонстрирует:
с 0 по 110 секунде ходил по комнате (далее 2-х метров от датчика)
с 120 выключил одну малую лампочку
с 130 секунды отключил свет (в комнате остался слегка светить монитор)
с 140 опять ходил по комнате (далее 2-х метров от датчика)
190 - включил свет, cо 195 пошел к датчику поближе
220 - махал рукой в более метре от датчика...
Уточнение хождения в темноте (ИФК в датчик так-же встроен):
Итог - идеальный сенсор для включения экрана (часов) при приближении или нахождении рядом человека.