Как хотите, может кому пригодится его скрипт. Только какая причина, чтобы я ее делал? Особенно без его ведома. Он мне ничем не помогал. Я все делал самостоятельно. Для «бэкапа» я использовал свою программу с GUI, просто ее не выкладывал (хоть и сравнивал со скоростью чтения его скрипта, для интереса), описание протокола как-никак есть. Да и «бэкап» по сути не нужен. Программирую через китайскую программу, она нормально работает. Проснифить UART я и сам в состоянии.
Вот с тестовые данные с браслета. Диапазон 4g. Но когда бежишь вниз, там перегрузки больше. В лыжах тоже по разному. Частота 50 sps. Можно и 400 (возможно и больше) сделать, только кушать он будет больше.
Сложно сказать. Акселерометр вроде нормально относительно работает. А вот как определить стиль классика/свободный — это вопрос. Если только попробовать снять логи с него в движении. Но мне кажется — это всё будет глючить. Какая принципиальная разница в двух стилях с точки зрения браслета? Руки и там и там работают. Ускорения тоже будут примерно одинаковые.
В общем исходники не секретные. Надо только с лицензией разобраться. Ключ ANT+ стереть. Получить его официально не проблема, все бесплатно.
Есть еще китайские пульсометры, тоже вроде ANT+BLE. Наверняка тоже на nRF, интересно бы узнать. Может есть на более новых.
Еще бы мне кто-нибудь разжевал, что я могу выкладывать, а что нет. Понятно, что в source code есть ключ сети ANT+, его я не могу распространять в открытом виде. А с остальным непонятно. По лицензии я могу модифицировать исходники SDK, в т.ч. примеров (пришлось немного и то и другое). А что я могу далее распространять третьим лицам?
И если не секрет, что хотите изменить?
Какой именно код? Там основная часть кода не относится к «обработке сигнала с усилителя». Большая часть — это организация BLE сервисов и характеристик, плюс ANT+ профиль HRM. А вся обработка сигнала заключается в том что с выхода усилителя (наверняка даже не цифровой выход, а просто аналоговый, т.к. R-участок ЭКГ сам по себе уже импульс). Далее этот импульс, посредством обработки прерывания GPIO, запускает считывание системного таймера RTC (1024Гц) и определяет количество его тактов прошедших с предыдущего удара. В мс переводить не нужно, т.к. и ANT+ и BLE передают RR интервалы именно в 1/1024 с. Ну а пульс можно вычислить их этой величины так HR=60*1024/INT, где INT — это время с прошлого удара в единицах 1/1024с.
Есть разные исследования находящие корреляцию между АэП, АнП и вариабельностью сердечного ритма. Эти уровни больше нужны не как таковые, а для получения динамики, понять тренировки дают толк или нет. Самый надежный способ определения АэП и АнП — это газоанализ выдыхаемого воздуха, но где взять доступные датчики СО2 и главное О2? Можно замерять вентиляцию, но она не всегда покажет АэП. Вот и есть попытки определять по HRV.
Время не считал. Делал по вечерам по наличию свободного времени. Но в общем не много. С нордиками опыта особо не было. В целом SDK нормальная, документация есть. А китайцам прошивка не нужна, у них все ОК.
Я бы лучше сравнил с ЭКГ, если буду ЭКГ делать, то попробую получить запись. А с Sigma я сравнивал, т.к. аналоговые устройства самые тупые. Поэтому в них минимум всяких задержек при передаче: пришел импульс от сердца через усилитель, по нему тут же сигнал по 5.3кГц. Правда они очень чувствительны к помехам.
Есть еще китайские пульсометры, тоже вроде ANT+BLE. Наверняка тоже на nRF, интересно бы узнать. Может есть на более новых.
И если не секрет, что хотите изменить?