Plutoberth/SonyHeadphonesClient

Linux support

Closed this issue ยท 9 comments

Please react to this issue if you want Linux support

I'll try to work on it this weekend!

@jntnl42

Hey - please note: IBluetoothConnector has been changed since you forked.

- virtual void disconnect() noexcept(false) = 0;
+ virtual void disconnect() noexcept = 0;

Additionally, thread-safety requirements have been established. Only isConnected must be thread safe. The other functions in BluetoothConnectors don't need to be. See the header file.
I'll be pushing these changes to master in a bit, so you can just update from there.

Edit: I pushed all changes to master

Hi, I would love to have this on Linux and I volunteer to test it on Ubuntu and/or Fedora.

@jntnl42

Hey - please note: IBluetoothConnector has been changed since you forked.

- virtual void disconnect() noexcept(false) = 0;
+ virtual void disconnect() noexcept = 0;

Additionally, thread-safety requirements have been established. Only isConnected must be thread safe. The other functions in BluetoothConnectors don't need to be. See the header file.
I'll be pushing these changes to master in a bit, so you can just update from there.

Edit: I pushed all changes to master

Thanks for letting me know. I'll update my fork before I get started

Linux has bluetoothctl, which can be used (afaik) to send raw data to bluetooth device.
Could somebody describe protocol so I could try to use bluetoothctl to tweak device?
I mean, which data sequence should I send and what response should I expect.

@alexryndin I built the program so that people that want to add a new platform only have to copy a file from Dear Imgui and implement an interface for Bluetooth communication, so you don't actually need to understand the protocol. However, jimzrt has already implemented a Linux version! I'm just waiting for a couple of fixes and then it'll be merged.

@Plutoberth your software is great!
I just trying to go deeper and understand the protocol and commands and maybe create something like simplest bash script to control XM4 over d-bus or something. The problem is that I'm a total noob in bluetooth and dbus.

@Plutoberth your software is great!
I just trying to go deeper and understand the protocol and commands and maybe create something like simplest bash script to control XM4 over d-bus or something. The problem is that I'm a total noob in bluetooth and dbus.

Ahh, I see. Well, the format itself is documented in the CommandSerializer class, everything you need is there. Although some people have reported issues with the XM4, so it could take some time to adapt it.

Added by jimzrt and merged :)