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

Support Linux / Windows JVM targets #380

Open
danielgruber opened this issue Sep 19, 2022 · 16 comments
Open

Support Linux / Windows JVM targets #380

danielgruber opened this issue Sep 19, 2022 · 16 comments

Comments

@danielgruber
Copy link

Currently, the Kable Library does not support Windows or Linux targets.

There are libraries like https://github.com/weliem/blessed-bluez, that support Windows or Linux. It would be great to investigate if this could be an approach for kable to extend the platform compatibility. I really like the APIs from Kable, so I would prefer using such a library for all platforms instead of using different ones.

@twyatt twyatt changed the title Integrate Blue Falcon to support Linux / Windows JVM Targets Support Linux / Windows JVM targets Sep 19, 2022
@saket
Copy link

saket commented Oct 12, 2022

Same request for macOS!

@twyatt
Copy link
Member

twyatt commented Oct 12, 2022

Same request for macOS!

@saket MacOS is already supported. 🙂

@saket
Copy link

saket commented Oct 12, 2022

I'm sorry, I meant support for macOS through JVM

@twyatt
Copy link
Member

twyatt commented Jun 21, 2023

I've done some initial investigation into this. DBus seems to be the standard approach to communicating with Bluez on JVM (it is what Blessed Bluez library, that was linked, is doing).

Unfortunately, my development machine is a Macbook, and macOS doesn't have DBus out-of-the-box — it can be set up, but it seemed like a bigger lift than I have time to take on right now.

I might try to get a hold of a Raspberry Pi (with BLE) for testing, but ideally I may look into getting an affordable Linux box for developing this feature.

All that is to say: I am interested in moving the needle on this one, but it will likely be a long ways out.

@donadev
Copy link

donadev commented Aug 7, 2023

Good morning, any update on this? :)
I've been using this library for a while, and I would love to be able to use it in the JVM as well!

@twyatt
Copy link
Member

twyatt commented Aug 7, 2023

Unfortunately, no new movement yet. I've been swamped with other projects and haven't yet invested in a machine that I can install Linux on (for developing this feature).

I am very interested in adding support for this, but I imagine it will be a couple months before I can focus on this again. 😢

@konpach
Copy link
Contributor

konpach commented Jan 21, 2024

Any update here? Could a first step be to provide void implementation(throws e.g. some runtime exception) so it's possible to compile this for jvm along with other targets (iOS, android). Otherwise we need to wrap BLE interface in expect and provide kable as an actual implementation in the available targets.

@twyatt

This comment was marked as outdated.

@konpach

This comment was marked as outdated.

@konpach
Copy link
Contributor

konpach commented Jan 30, 2024

@twyatt if the project is not open for contribution I am happy to send/upload the code change and you can review and add it to the project. I am talking about adding a void jvm implementation as proposed above.

@twyatt

This comment was marked as outdated.

@konpach

This comment was marked as outdated.

@twyatt

This comment was marked as outdated.

@cedrickcooke
Copy link
Contributor

Might be possible to implement with JNI bindings to this: https://github.com/OpenBluetoothToolbox/SimpleBLE

@cedrickcooke
Copy link
Contributor

Looks like they changed their license so we can't use this without reaching out, but they have exceptions for other open-source BLE libraries like https://github.com/thegecko/webbluetooth, so it might still be possible.

@twyatt
Copy link
Member

twyatt commented Jun 10, 2024

I sent an email to SimpleBLE on Jun 6, 2024, I'll post updates on this issue if I hear back.

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

No branches or pull requests

6 participants