mirror of
https://github.com/kavishdevar/librepods.git
synced 2026-04-25 08:05:56 +03:00
[GH-ISSUE #115] Control via ESP32 BLE Bridge - Feasibility? #44
Labels
No labels
android
bug
documentation
enhancement
good first issue
help wanted
linux
pull-request
reverse-engineering
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/librepods#44
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @DEMoN881 on GitHub (May 2, 2025).
Original GitHub issue: https://github.com/kavishdevar/librepods/issues/115
I'm exploring the possibility of using an ESP32-based device (e.g., ESP32-S2 Mini) as a portable bridge to enable advanced AirPods Pro 2 control on non-Apple devices. The goal is to implement:
1.Battery status monitoring
2.Noise control mode switching (ANC/Transparency/Adaptive).. etc..
Motivation:
Many Android users cannot access AirPods' full feature set due to OS limitations. A portable ESP32 solution would be valuable for:
Devices with locked bootloaders
Situations where carrying a secondary Apple device isn't practical
Perhaps it will be possible to create an inexpensive gadget that will control Apple devices without root rights. It can be based on an ESP32 board or similar.
@kavishdevar commented on GitHub (May 2, 2025):
I have thought of this, but I am not sure if an ESP would be able to handle these many connections simultaneously - one for data exchange with phone for controlling airpods and battery etc., acting as a sink for phone, and a source, by forwarding received audio data to airpods. And, obviously the L2CAP connection with AirPods.
However, if you do manage to succeed at making ESP receiving and sending audio simultaneously, we could probably implement the other data relaying part of this!
@DEMoN881 commented on GitHub (May 2, 2025):
And it is necessary to trace the sound, if so, then it is sad. Don't airpods have multiple connections? If they hold it, then you can give commands from esp, and the sound itself from an android device.
@kavishdevar commented on GitHub (May 3, 2025):
They do, not exactly something like Bluetooth multipoint, but rather some proprietary multidevice connection method. Now either the Bluetooth of Apple devices is very optimized to quickly connect to audio, or airpods filter devices some other way to allow simultaneous connections from different apple devices.
I have noticed that all Apple devices can communicate to airpods, i.e. receive and send packets to AirPods. I am not sure if each apple device connects to airpods, or only one does and other devices talk to that device to which the airpods are connected.
@kavishdevar commented on GitHub (May 3, 2025):
Feel free to experiment with the ESP though, if you get 2 simulateneous audio connections, I might add this to the app! Also, if you daily drive linux, you could use BlueZ's awesome feature where your PC acts as a bluetooth speaker. And, I do have some cross-device features - so, you could play media and control airpods right from android. But everything is routed through linux.
@DEMoN881 commented on GitHub (May 3, 2025):
As soon as the headphones arrive, I will conduct tests:)