Skip to content

Releases

AirPods Overlay v2.7

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28

AirPods Overlay v2.7 fixes the session and BLE paths behind the stuck "no session" status.

  • Starts AAP after the selected AirPods reach an audio-connected state, pauses scanning during the Classic channel attempt, and tries both socket modes with bounded timeouts.
  • Parses split and combined AAP packets before exposing battery, ANC, ear placement, or identity data.
  • Fixes in-ear pause and lid-close reactions for rotating BLE addresses.
  • Keeps strict identity filtering tied to the selected pair and closed until its key is verified.
  • Reports Android 11 Bluetooth incompatibility instead of retrying forever when both socket modes time out.

The overlay and BLE fallbacks remain available when an Android 11 Bluetooth stack blocks AAP. Exact battery, ANC control, live AAP ear events, and IRK capture still require that channel.

Validation: 58 unit tests passed, Android CI passed on PR #8, and CodeRabbit approved the merged revision. No TV was available through ADB for device-side verification.

AirPods Overlay v2.5

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28

AirPods Overlay v2.5 improves Bluetooth connection recovery and makes AAP communication more reliable.

  • Reassembles AAP packets across Bluetooth socket reads.
  • Waits for Android Bluetooth profiles before changing connection policy.
  • Adds a Settings action to restore the TV's normal auto-connect behavior.
  • Reports clearer connection and overlay failures.
  • Protects AirPods identifiers from device backups and adds signed release builds.

The Settings redesign prototypes are not included in this release.

AirPods Overlay v2.4

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28

The connect popup now uses the Mono Compact design.

Press OK anywhere on the pill to connect, or Back to dismiss it. The pill keeps the same size while it moves through Ready, Connecting, and Connected, so the text no longer jumps between states. Connected uses a small green status dot instead of a checkmark.

The popup also has new AirPods 4 artwork, courtesy of iStore United Kingdom.

This build uses the same Android certificate as v2.3, so it can install over the previous release.

APK SHA-256: 662F65069574ADE5C56BFD007EB355FA3A1108DFB7A2353377B7C9AEF52AB9F0

AirPods Overlay v2.3

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28

Automatic case detection works again in v2.3.

Version 2 could reject an AirPods beacon before it reached the popup. This release restores distance-based detection by default, verifies identity keys before enforcing them, and resets the popup correctly when the case closes or the beacon session ends.

Android 10 and 11 users will be asked to allow background location so scanning can continue over other TV apps. The live beacon view now explains why each frame was accepted or rejected.

After installing, leave both strict filters off for the first test. Wake the case near the TV and confirm that the live beacon line says accepted. You can turn the identity filter on after the app reports that the key is verified.

If Android reports a package conflict while updating from v2.2, uninstall the old build first. v2.2 was signed with a different Android debug certificate.

APK SHA-256: 857ADC84BC32AB31A60A06B446706F5433031AC3CCF6CFDCE2068628F0A369AC

AirPods Overlay v2.2

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28
  • Fixed the connect popup never appearing after the first AAP session. Since v2.0, capturing the identity key switched beacon filtering from signal strength to cryptographic address matching, but the key arrived from the AirPods in the opposite byte order from what the verifier expected, so every beacon failed the check. The verifier now accepts the key in either order; a genuine address only ever matches one, so the "Only my AirPods" filter is exactly as strict as intended.

AirPods Overlay v2.1

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28
  • Added an open source licenses screen. A new About section in settings opens it; it has the full GPL-3.0 and Apache-2.0 texts plus credits.
  • The project is now licensed under GPL-3.0, with attribution to CAPod, OpenPods, LibrePods, PodsCompanion, and Icons8.

AirPods Overlay v2.0

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28
  • The app now talks to your AirPods directly after they connect, using Apple's own accessory protocol. That gets you exact battery percentages and noise control switching (Off / ANC / Transparency / Adaptive) from the TV.
  • Auto-pause: playback pauses when you take a pod out of your ear and resumes when both are back in.
  • Auto-disconnect: close the case lid with the pods inside and the connection drops immediately.
  • Identity matching: after your first session, the app recognizes your specific AirPods by their identity key and ignores everyone else's. This replaces the old distance-based guessing.
  • Model filter, so only AirPods 4 (ANC) beacons can trigger the popup.
  • A brief "Connected ✓" pill appears whenever the AirPods connect. It doesn't take remote focus.
  • Minimum Android version is now 9 (API 28).

AirPods Overlay v1.8

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28
  • Battery percentages are gone from the popup. The beacon data was too unreliable on AirPods 4 to show numbers worth trusting. Raw values are still visible in the settings debug feed. Accurate battery came back in v2.0 by a different route.

AirPods Overlay v1.7

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28
  • An attempt to fix the inaccurate battery percentages. The app now smooths readings across multiple Bluetooth frames and throws out known-bad values. That helped with stability, but the numbers stayed unreliable on AirPods 4, and v1.8 removed the battery display.

AirPods Overlay v1.6

Choose a tag to compare

@NathanGlasby NathanGlasby released this 18 Oct 10:28
  • Rename your AirPods in the popup. A new "Popup name" setting shows a custom name (say, "Nate's AirPods") instead of the Bluetooth device name. Display only; the pairing itself is untouched.