Skip to content

Releases

MousePods 1.0 — AirPods 3 head tracking via Apple RemoteHID

Choose a tag to compare

@starman-tech starman-tech released this 04 Nov 18:45

Your AirPods are a mouse. First release of MousePods: head tracking from AirPods 3 and AirPods Pro on Linux, without an Apple device.

What's new: never documented before

  • AirPods 3 motion data on a non-Apple host. Until now, every open-source head tracker listed AirPods 3 as untested or unsupported.
  • AirPods 3 ignore SensorDataWX. They expose their sensors through Apple RemoteHID (HID over AACP, RTBuddy channel 0x800). The full wire format is in REMOTEHID-PROTOCOL.md.
  • The L2CAP MTU hides the sensors. At 672 (the Linux default), the motion sensors are not announced. At 2582 (the iOS value), all 8 appear.
  • The AirPods 3 sensor catalog: devmotion6, accel, gyro, cma, kadabra, mando, neorelay, iedrelay, with decoded HID descriptors.
  • Rates up to ~210 Hz instead of 25 Hz, the units of the motion block, and how the buds power their sensors.

All findings, with evidence and the open questions: DISCOVERIES.md.

The software

  • Souris / pointeur / glisse modes, uinput mouse (Wayland and X11), no root.
  • A local app: live 3D orientation, settings, guided calibration, a sensor explorer and a packet log.
  • 37 automated tests, including a replay of real AirPods 3 captures.

Reverse-engineered with the help of Claude (Anthropic).