Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve performance with iOS scanning and service discovery #266

Open
adamfowleruk opened this issue Jul 5, 2024 · 0 comments
Open

Improve performance with iOS scanning and service discovery #266

adamfowleruk opened this issue Jul 5, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@adamfowleruk
Copy link
Collaborator

Currently when introspecting iOS devices without Herald installed there is a significant pause, especially in busy areas. This occurs due to the 200ms wait on Android when connecting to and introspecting iOS devices. This is done because 'deep backgrounded' iOS devices don't advertise their services, but are still accessible via GATT.

In the first instance, reduce, remove, or make async, or increase the max number of simulataneous connections for Android Herald API. (Async is likely the best approach here as discovery takes milliseconds).

In the second instance, look at making some performance gains in other ways:-

  • Introduce a new flag called 'enhancedServiceIntrospection' disabled by default - this adds a feature flag for the current 'check iOS via GATT anyway' capability
  • Check the advertisements for the Linux Foundation manufacturer data area, as well as the Herald service, to bypass the need to connect for discovery completely (Will work for both V1 and V2 protocol)
  • Prioritise actions for all devices with LF manufacturer ID prior to introspecting any other devices
@adamfowleruk adamfowleruk added the enhancement New feature or request label Jul 5, 2024
@adamfowleruk adamfowleruk added this to the v2.3 milestone Jul 5, 2024
@adamfowleruk adamfowleruk self-assigned this Jul 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant