-
Notifications
You must be signed in to change notification settings - Fork 64
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
BLE Module for Linux with BlueR #314
Comments
I'd be interested to have a shot at this issue. To give me little headstart, could you point out at what point the BLE module is started from the flutter app? And regarding the existing prototypes, what branches should I have a look at? Thanks. |
@6d7a great! I'm here for questions and discussions! There are a few points about compatibility: 1) The communication via the protobuf sys messages between libqaul and the blemodules. This is the common API for all system dependent modules.The module can be found here: The protobuf communication between libqaul and the blemodule is defined in this protobuf file: This protobuf file creates the following rust source code: The communication principle is relatively simple, libqaul sends a 'request' message and the module responds with the correlating 'response'. The program flow is the following: a) At program startup the blemodule is loaded and libqaul sends a
2) The already existing modules for Android and iOS that are being integrated at the moment.
We have a custom writable GATT service to send direct messages to a device:
GeneralAt the moment we are fixing some last issues of the Android module on the branch ble-startup-fixing We will document the exact behaviour of it for that it can be used as a reference. The BLE communcation shall be enhanced over the next months. It has been implemented this way for the biggest compatibility (compatible with bluetooth 4 devices). There are more specific BLE-modes in Bluetooth 5 that can increase range and bandwith and have the possibility to broadcast bigger amount of data to all devices nearby. To have a linux version for developing and testing would be very helpful. I hope this was helpful and gave you a first overview. |
@MathJud, great! Thanks for the explanation. I'll give it a go and push some WIP PRs along the way. I still haven't wrapped my head around the RPC call chain, so just to recap (using Android):
Thanks again for the help |
Thanks again for this helpful PR! The interconnection between libqaul's BLE connectivity-module and the Android BLE module is done in the branch It is referenced to this PR #533 I rebased your branch on the And created the following PR from it: #539 I change the following things:
TODO: The BLE module should send it's messages to libqaul.
Please don't hesitate to interact on it! |
Create a BLE (Bluetooth Low Energy) module in rust which compatible to the two existing modules for Android & iOS.
Existing android BLE module:
https://github.com/qaul/qaul.net/tree/main/qaul_ui/android/blemodule
It shall do the following things:
The module is independent and will communicate via protobuf to the controlling backend library libqaul.
BlueR
is the official Bluetooth low energy repository for for rust.https://github.com/bluez/bluer
Prototypes with partial functionality already exist.
The text was updated successfully, but these errors were encountered: