Skip to content
Role
Product · UX · prototyping (solo)
Team
Solo
Period
2026.04 – 2026.06
Tools
Figma, Next.js, SwiftUI, CoreMotion, Arduino, MPU6050

Motion-sickness relief for autonomous rides

Glide

Summary

A motion-sickness relief system for autonomous rides: it warns 2–7 seconds before the car moves so riders can brace themselves. One sickness metric (MSDV) runs the same way on a sensor board, a web console and an iOS app.

3
Places the same formula runs

Sensor board · web console · iOS app

2 → 7s
Advance warning, by speed

Retuned from real rides

−77%
Sickness metric (MSDV)

Simulation – not an in-car trial

Role – problem framing · UX · algorithm · web · iOS · firmware · wearable mock-ups (solo)

1 / 9
Home – set a destination; nearby cars and the Glide AI report sit together

Overview

Riders in an autonomous car don't look ahead. They watch, work and sit facing each other – and when what the eyes see and what the body feels disagree, motion sickness follows. Glide tells riders before the car sways, so the body gets ready first.

Live: glide-saas.vercel.app (the web console)

Problem

  • Cause – a clash between vision and the vestibular sense. Autonomy adds time not looking ahead, other activities and facing seats.
  • Scale – research reports 6–10% of autonomous-vehicle riders regularly experiencing moderate to severe sickness (Sivak & Schoettle), and up to a third of Americans getting car-sick (NIH · Mcity).
  • The paradox – avoid multitasking and the sickness goes away; so does the whole point of autonomy.

Research

  • The metric – three ways of measuring sickness (MSDV, MISC, FMS) were compared, and MSDV, rooted in an international standard (ISO 2631-1), was chosen: a standard metric lets the work speak the same language as everyone else's.
  • Competitors – Apple Vehicle Motion Cues, ClearMotion, Bosch, Toyota, Holoride and others. The conclusion wasn't "nobody does this" but "nobody connects it": none joins measuring, predicting, warning and explaining in one flow.
  • Wearable structure – how open-ear headphones sit on the ear was studied for an ear-worn haptic device.

Key decisions

  1. 01Let the rider choose between time and comfort

    Whether the fastest or the calmest route is best depends on the moment – not a call the system should make.

    A four-step slider: Rush · Cruise · Glide · Pure Glide. In simulation, the calmest route took 18% longer.

  2. 02Design the silence

    Too many alerts get ignored, and ignored alerts destroy trust.

    It speaks only past a threshold – zero alerts on steady straight stretches. If a movement repeats within five seconds, the screen stays off from the second time and only vibration signals it. “Silence = trust” became a written principle.

  3. 03Change the sense, not the amount of information

    Facing backwards or watching a video, a rider won't see an on-screen alert.

    Rear-facing: all visuals off, vibration and sound instead; busy with something else: light and vibration instead of text. Eight alert channels, five priority levels.

  4. 04Trust the ride over the spec

    The first warning times – 1.5 / 2 / 3 seconds – felt too late on real rides to leave any time to brace.

    Warning times went up to 2 / 3 / 5 / 7 seconds, scaled by speed, with a 40 m minimum warning distance.

The warning-distance formula and the sickness metric

Warning distance = max(40 m, speed × warning time × sensitivity).

The sickness metric (MSDV) is implemented the same way on the sensor board, the web console and the iOS app: acceleration is squared and accumulated over time, then turned into a 0–100 Glide Score, with state boundaries at 4 · 10 · 18. Because all three share one formula, what the board measures and what the app shows read in the same language.

Design

  • Five principles – warning is the golden time · silence = trust · speak only at thresholds · a priority order of senses · never blame the rider ("We've got you").
  • Haptics – a 225 ms on → 100 ms off → 225 ms on pattern tuned on real rides, with a different strength curve per direction.
  • Thirteen steps of care – from a gentle suggestion, to applying a change and telling the rider, to stopping the car if needed; intervention scales with severity.
  • Screens – five in-car display states, six Dynamic Island states, three widgets and two live activities, and 50+ alert messages.
  • Privacy over accuracy – no health-data integration, and face video is never stored.

Prototype

Three parts run on the same data.

  • Sensor board – an Arduino with two MPU6050s (one for the car, one for the head) and left/right vibration motors, sampling at 50 Hz and calibrating on 200 samples at start.
  • Web console – a Next.js console with ten sections, used to replay scenarios Wizard-of-Oz style. Deployed.
  • iOS app – SwiftUI, CoreMotion, AirPods head-motion and haptics. The build passes; it isn't on TestFlight yet.

Activity

exclusiveyon-a11y / glidePrivate
main145 Commits
  • TypeScript32.8%
  • Swift27.6%
  • HTML20.6%
  • JavaScript11.7%
  • C++4.8%
  • CSS1.3%
  • C1.1%
AI pair programming86%

125 of 145 commits written together with Claude Code

145 contributions since Apr 24, 2026

MayJun
Mon
Wed
Fri
LessMore

Commits on Jun 20, 2026

  • chore(glide-ios): TestFlight 준비 — HealthKit 제거, 프라이버시 매니페스트·암호화 고지

    exclusiveyon-a11y committed

    df759cb

Commits on Jun 12, 2026

  • feat(glide-ios): 온보딩·로그인 개편, Vision Band Active Head Tilt, 레이더 예보, 접근 도로주행

    exclusiveyon-a11y committed

    648443b
  • feat(glide-ios): 멀미 AI 분석 페이지·차량세팅 공통 컴포넌트·리포트 전체화면

    exclusiveyon-a11y committed

    d287655

Commits on Jun 11, 2026

  • polish(glide-ios): 동승자 고지·AI 지도·상태어휘 통일·레이더 화질·정리

    exclusiveyon-a11y committed

    675676e
  • polish(glide-ios): 전반 라이팅·컬러 일관성 검토 반영

    exclusiveyon-a11y committed

    249fc0f
  • feat(glide-ios): 노션 반영(주행 프로파일·다인 탑승 케어) + 리포트/UI 정리

    exclusiveyon-a11y committed

    d824ce2
Snapshot as of 2026-09-18

Results

−77%
Sickness metric (MSDV) vs the shortest route
−78%
Stop-and-go
+18%
Extra travel time

Where a person steps in

  • By itself – the sickness figure (MSDV) is measured continuously and spoken before it crosses the line.
  • By hand – intervention is proportional to severity: from a light suggestion, through acting and then saying so, to stopping the car — thirteen steps. The trade between time and comfort is always the passenger's to make.
  • Silence is designed too – below the threshold it says nothing. A system that always talks gets switched off.

Reflection

  • When the design document is wrong, fix the document. The point is to protect the experience, not the numbers.
  • UX inconsistency is usually an information-architecture problem. Vehicle settings scattered across several screens became one shared component.
  • Build demos for the worst conditions.
  • The pivot – from a consumer ride-hailing app to an SDK for carmakers plus a companion app that works in any car.
  • Next – in-car A/B tests, direct Bluetooth, and a personalised model.