Skip to content

Conversation

tim-gromeyer
Copy link
Collaborator

WIP, bare-bones implementation of FindMy protocol parsing for the ble scanner.

Can't test, since FindMy is not set-up for my AirPods (airpods are the only apple device in my whole household)

FindMy includes battery info, but it's very vague. See https://github.com/furiousMAC/continuity/blob/master/messages/findmy.md

@j-silver
Copy link

I'd like to test it on my MacBook, but apparently the AirPods can only be added to the FindMy network from an iOS device, and I don't have any.

Can you believe it?

@tim-gromeyer
Copy link
Collaborator Author

Nope that's just unbelievable. I also wanted to test it, but without any apple device I can't add it to the findmy network. I hate apple for it

@Luminoso-256
Copy link

I can give this a test real quick

@Luminoso-256
Copy link

Luminoso-256 commented Jun 28, 2025

Alright, so mixed results:
When I take an both pods out and put em in the case, I do get the case battery display:
image
However, once both of them are out, the case battery only gets picked up when the case lid is open. When the case lid is closed the app ui shows as fully disconnected and gives me no info.
In general closing the case gives me a disconnected notification/the app seems to think there's nothing more to it

@Luminoso-256
Copy link

Luminoso-256 commented Jun 28, 2025

Looking through the PR itself, doesn't look like i'm getting any of the new proximity pair messages at all in the debug output - so it seems like the above described behavior is just what main does already

@tim-gromeyer
Copy link
Collaborator Author

Yeah it's just a proof of concept, and I can't test it. Have you build the librepods app (in linux folder), or the ble scanner in linux/ble? Because this pr implements it im the ble scanner

@Luminoso-256
Copy link

sorry, missed that initially.
built the BLE subtarget, couple things:

  • needed elevation to pick up anything at all (qt.bluetooth.bluez: Missing CAP_NET_ADMIN permission. Cannot determine whether a found address is of random or public type.)
  • it does pick up a device pretty regularly, which i assume to be my case, however it fails to correctly get any of the data from said device (no battery status, etc.)
    image
    The status it detects from the device does correctly update with actions though - moves from 0x62 when right is out to 0x64 when both back in case, so this is clearly the right device.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants