Calibrezi
Ви встановлюєте опорне положення для сесії.
Постава та сесії зосередженості Прототип у розробці
AirPosture, наш проєкт для постави та фокусу, досліджує використання датчиків руху в сумісних навушниках. Положення голови співвідноситься з персональною калібровкою під час робочої сесії.
AirPosture
Ви встановлюєте опорне положення для сесії.
Система відстежує зміну орієнтації відносно цієї опори.
Дискретний сигнал може привернути увагу до стійкого відхилення.
Робочі сесії з таймером і моментами перерви.
Зворотний зв’язок відносно калібрування, з використанням даних руху.
Ми досліджуємо взаємодії між навушниками, телефоном і настільними застосунками.
AirPosture — це прототип. Вимірювання орієнтації голови не є діагнозом хребта, а робота залежить від апаратного забезпечення та валідації на сумісних пристроях.
AirPosture детально
AirPosture використовує датчики руху в AirPods для однієї речі: наскільки сильно ваша голова опустилася відносно положення, яке ви самі калібруєте на початку робочої сесії. Коли відхилення триває, ви отримуєте дискретну вібрацію. Решта застосунку — це таймер фокусу з перервами.
Він не вимірює хребет і не намагається це робити. AirPods дають орієнтацію голови — pitch, roll, yaw — і нічого про плечі, грудну клітку чи кривизну спини. Опущена голова з прямою спиною і зігнута спина з поглядом, компенсованим вгору, для цього сенсора виглядають однаково. Застосунок говорить це прямо, тому що це різниця між корисним інструментом і хибною обіцянкою.
Використовує `CMHeadphoneMotionManager` — інтерфейс Apple, який надає доступ до сенсорів у навушниках. Передає орієнтацію (quaternion, pitch, roll, yaw), кутову швидкість, гравітацію, прискорення та `sensorLocation` — який AirPod надсилає дані. Вимірюваний ритм становить приблизно 25 Hz. Пес-сторож перевіряє потік щосекунди: якщо нових зразків не надходило понад 2,5 секунди, він перезапускає з’єднання і повідомляє чому.
Швидкий варіант триває три секунди: стійте рівно, застосунок зберігає медіану вашого pitch. Керований варіант має п’ять фаз по три секунди — нейтрально, підборіддя вниз, погляд угору, поворот ліворуч, поворот праворуч — і вчить знак pitch для вашої моделі навушників замість того, щоб вгадувати його, потім перераховує пороги за вашою реальною амплітудою руху. Звіт про калібрування також каже, чому результат був слабкий: замало зразків, голова рухалася, ноутбук був переміщений, рух угору або вниз був надто малий.
Менше 7° відносно калібрування означає рівно. Між 7° і 13° — це нахил. Понад 13° протягом трьох секунд запускає гаптичне сповіщення. Є також четвертий поріг, в іншому напрямку: понад 10° угору означає «голова піднята», щоб застосунок не сплутав погляд у стелю з поганою поставою. Сигнал згладжується експоненційно з α = 0,15, щоб звичайний рух голови нічого не запускав.
Таймер на 5, 15, 25, 45 або 60 хвилин, з запуском, паузою та скиданням. Сповіщення про поставу має стандартну паузу 300 секунд між повідомленнями, від’єднання AirPods — 90, а деградація потоку tracking — 120: одне подія не може заповнити екран. Наприкінці сесія показує відсоток хорошої постави, кількість сповіщень і кількість зразків.
Є другий target, `AirPostureMac`: меню-бар, панелі, 3D-сцена, діагностика, історія здоров’я та акустична лабораторія. Він збирається локально, але не є завершеним продуктом. У тому ж репозиторії є ще три окремі iOS-застосунки для досліджень — хода, динаміка відповіді в інтерв’ю та тестовий стенд ear-EEG — кожен із власним onboarding, усі не валідовані на hardware.
Дані та робота
Від дослідження до впровадження
AirPods Pro, AirPods 3 і новіші, AirPods Max або Beats із чипом H1/H2. AirPods 1 і 2 не мають потрібних сенсорів і ніколи не працюватимуть. Наявність підтверджується під час запуску, а не передбачається за моделлю.
Запускаємо керовану калібровку у п’ять фаз і читаємо звіт про якість. Якщо амплітуда вгору-вниз надто мала або голова рухалася надто сильно, калібровку повторюють — особисті пороги виводяться з неї, тож слабка калібровка псує все, що йде далі.
7°, 13° і три секунди поблажки — це відправна точка, а не фізична константа. Керована калібровка зміщує їх у межах діапазонів — нахил між 5° і 9°, сутулість між 10° і 18° — відповідно до реальної амплітуди людини.
Сповіщення, яке дратує, вимикають, тож воно нікому не допомагає. Перевіряється, чи п’ятихвилинна пауза підходить для того, як ви працюєте, і чи вібрація достатньо непомітна в присутності інших людей.
З AirPods. Використовує `CMHeadphoneMotionManager`, інтерфейс Apple, який відкриває сенсори руху з навушників, приблизно на 25 Hz. Працює з AirPods Pro, AirPods 3 і новішими, AirPods Max та Beats із чипом H1 або H2. AirPods 1 і 2 не мають потрібних сенсорів. Інші навушники не надають цих даних.
Ні, і навіть не намагається. Вимірює одну річ: наскільки голова нахилилася від позиції, яку ви калібруєте на початку сесії. Менше 7° означає рівно, між 7° і 13° — нахил, а понад 13°, утримувані три секунди, запускає непомітну вібрацію. Понад 10° вгору — це «голова піднята», а не проблема. І все.
Через розповсюдження, а не через код. Додаток компілюється, проходить 160 тестів і встановлюється та запускається на симуляторі iPhone, але `DEVELOPMENT_TEAM` порожній у специфікації проєкту, тож ніколи не було зібрано підписану версію для реального телефона. Поки це не виправлять і потік сенсорів не перевірять на фізичних AirPods, це лишається прототипом — і ми так його й називаємо.
Ні. `CMHeadphoneMotionManager` не має власного режиму фону, а iOS призупиняє додаток, коли він виходить із переднього плану. Є звичний трюк — відтворення беззвучного звуку, щоб тримати процес живим, — і ми свідомо його виключили: це суперечить правилу 2.5.4 з гіда Apple для рев’ю. Сесія працює, коли додаток відкритий. «Coach на весь день» вимагав би іншої архітектури та розмови з App Review.
Потік триває — `sensorLocation` каже, який AirPod передає дані, а в додатку є сценарії захоплення для обох, лише лівого і лише правого. Але `sensorLocation` не доводить, що відповідна навушниця справді у вусі, а перехід обидва → лівий → правий → обидва не було перевірено на реальному обладнанні. Це в списку неперевіреного, а не того, що працює.
Вони залишаються на телефоні. Політика даних застосунку позначає їх як `localOnly`, а сирі записи автоматично видаляються через 14 днів, агреговані — через рік. Вони не записуються в HealthKit — для положення голови не існує стандартного типу, і застосунок не конвертує їх примусово в кроки чи щось інше, щоб вони вмістилися. Також є повне видалення.
Ні. Ми проаналізували обидва запитання і записали відповідь у документації проєкту. Сканування мозку неможливе з апаратним забезпеченням і публічними інтерфейсами AirPods, а «детектор брехні» не має достатньої наукової основи — вимогу було переформульовано в спостереження динаміки відповіді, яке описує те, що видно, а не виносить вердикт правди.
Ілюстративний приклад
Сценарій використання, без даних клієнта чи приписаних комерційних результатів.
Ви надягаєте AirPods, відкриваєте застосунок, обираєте 25 хвилин і сидите рівно три секунди, поки триває калібрування. Застосунок зберігає медіану вашого pitch як опорне значення.
На ~25 Гц кожна проба згладжується експоненційно (α = 0,15) і порівнюється з опорним значенням. Нижче 7° — зелений. Між 7° і 13° — жовтий, без сповіщення. Понад 13° протягом трьох секунд — вібрація. Запускається таймер паузи: наступне сповіщення про поставу не може з’явитися раніше ніж через п’ять хвилин.
Наприкінці ви бачите відсоток часу, проведеного в хорошій поставі, кількість сповіщень і кількість проб. Нічого не виходить з телефона; сирі записи видаляються через 14 днів.
Ce este necesar:AirPods cu senzori de mișcare (Pro, 3+, Max sau Beats H1/H2), iPhone cu iOS 17 sau mai nou, aplicația în prim-plan și permisiunea Mișcare și fitness acordată. Nu funcționează pe simulator — acolo interfața nu returnează date.
Можливості співпраці
Вивчення пілота для звичок і персонального зворотного зв’язку. Індивідуальні дані не стають за замовчуванням інструментами оцінювання працівників.
Ми визначаємо пілот навколо реального процесу: користувачі, дані, інтеграції, витрати та критерії приймання. Розширення відбувається після оцінки результату.
Визначаємо вимоги до доступності, хостингу, захисту даних та інтероперабельності. Будь-яке з’єднання з послугами AGE або STISC потребує валідації придатності, доступу та схвалень.
Це сценарії адаптації, а не заяви про наявні контракти чи партнерства. Запропоновані функції підтверджуються в межах робочої сфери проєкту.
Обговорити пілотРозкажіть про свій процес. Разом визначимо, що варто збудувати, що можна підключити і як перевіримо результат.