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

Bluetooth needs refactoring #11

Open
lamemakes opened this issue May 5, 2023 · 1 comment
Open

Bluetooth needs refactoring #11

lamemakes opened this issue May 5, 2023 · 1 comment
Labels
enhancement New feature or request

Comments

@lamemakes
Copy link
Owner

Putting this here to keep track and outline the issue in case anyone was feeling up the the task.

Basically Bluetooth will need a refactor. As it stands, the Bluetooth service does not run on it's own Process. It is leveraged by other services (ie. media & phone/ANCS) to easily get BluezMediaPlayer and BluezDevice objects. This approach currently requires the service using Bluetooth to keep track of devices and make appropriate bluetooth state pushes to the UI.

This is icky and adds a lot of complexity & room for error to the overall program, along with making it hard to leverage the Bluetooth service for any service down the line.

The ideal solution here would be to make the Bluetooth service more self-contained, less reliant on external services, and easier to access APIs. This was my initial approach as can be seen here, but this seemed to put a lot of strain on DBus as accessing Bluetooth properties for the latest info/states required accessing of the dasbus proxy every time. Can be it's own process, but I'm trying to avoid process creation unless absolutely needed.

Rage on 🫡

@lamemakes lamemakes added the enhancement New feature or request label May 5, 2023
@lamemakes
Copy link
Owner Author

With this refactor will also come the ability to pair bluetooth device via the PILOT Drive UI, rather than having to rely on the host OS

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