Scope
Android
Problem or use case
First of all, thank you for LibrePods. It is currently one of the best ways to use AirPods on Android.
I would like to propose a research effort regarding AirPods firmware updates from Android devices.
Background
Apple currently distributes AirPods firmware updates only through Apple devices (iPhone, iPad, Mac). As a result, Android-only users often have no practical way to update their AirPods firmware.
While investigating this topic, I found an official firmware package for AirPods Pro 2 (Lightning):
Firmware Version: 8B39
Device Identifier: A2618
Bundle Identifier: com.apple.MobileAsset.UARP.A2618
Website to download:
https://theapplewiki.com/wiki/OTA_Updates/AirPods_(2nd_generation)
5176e6ec8ab7860869bece22f5c35308129eed87.zip
The package contains:
BuildManifest.plist
Restore.plist
Info.plist
firmware.uarp
This suggests that Apple distributes AirPods firmware through UARP (User Accessible Request Protocol).
Proposed solution
Potential Feature Roadmap
Phase 1 – Firmware Awareness
Detect current AirPods firmware version
Check whether a newer firmware version exists
Notify users when an update is available
Display firmware release information
Phase 2 – Firmware Research
Investigate the UARP update process
Understand firmware package structure
Determine whether firmware transfer requires an Apple device or only a transport mechanism
Document authentication and signature validation requirements
Phase 3 – Android-Based Updates (if technically feasible)
Download official firmware packages
Transfer firmware through Android
Let AirPods perform their own signature verification
Provide a safe update workflow
Alternatives considered
Questions
Has the LibrePods team already investigated UARP or the AirPods firmware update process?
Would firmware version checking and update notifications be considered in scope for LibrePods?
Even if direct firmware installation is not currently feasible, update detection alone would already be very useful for Android-only users.
I would be happy to help with testing and documentation if there is interest in exploring this area.
Scope
Android
Problem or use case
First of all, thank you for LibrePods. It is currently one of the best ways to use AirPods on Android.
I would like to propose a research effort regarding AirPods firmware updates from Android devices.
Background
Apple currently distributes AirPods firmware updates only through Apple devices (iPhone, iPad, Mac). As a result, Android-only users often have no practical way to update their AirPods firmware.
While investigating this topic, I found an official firmware package for AirPods Pro 2 (Lightning):
Firmware Version: 8B39
Device Identifier: A2618
Bundle Identifier: com.apple.MobileAsset.UARP.A2618
Website to download:
https://theapplewiki.com/wiki/OTA_Updates/AirPods_(2nd_generation)
5176e6ec8ab7860869bece22f5c35308129eed87.zip
The package contains:
BuildManifest.plist
Restore.plist
Info.plist
firmware.uarp
This suggests that Apple distributes AirPods firmware through UARP (User Accessible Request Protocol).
Proposed solution
Potential Feature Roadmap
Phase 1 – Firmware Awareness
Detect current AirPods firmware version
Check whether a newer firmware version exists
Notify users when an update is available
Display firmware release information
Phase 2 – Firmware Research
Investigate the UARP update process
Understand firmware package structure
Determine whether firmware transfer requires an Apple device or only a transport mechanism
Document authentication and signature validation requirements
Phase 3 – Android-Based Updates (if technically feasible)
Download official firmware packages
Transfer firmware through Android
Let AirPods perform their own signature verification
Provide a safe update workflow
Alternatives considered
Questions
Has the LibrePods team already investigated UARP or the AirPods firmware update process?
Would firmware version checking and update notifications be considered in scope for LibrePods?
Even if direct firmware installation is not currently feasible, update detection alone would already be very useful for Android-only users.
I would be happy to help with testing and documentation if there is interest in exploring this area.