SonyHeadphonesClient icon indicating copy to clipboard operation
SonyHeadphonesClient copied to clipboard

WH-1000-XM5 Support

Open Evo-c opened this issue 2 years ago • 19 comments

Would it be possible to add support for the XM5, at the moment it's unable to connect and this tool is literally the lifeline for using Sony headphones on a PC.

Evo-c avatar Jun 22 '22 09:06 Evo-c

Just got one of these too and I'll look into what's going on if I get some time. I would really just like to be able to shut off Speak-to-chat on PC since it seems to find a way to turn itself back on. I hate that feature.

Tatsh avatar Aug 07 '22 13:08 Tatsh

Awesome :) I finally have some time again, so I'll be able to help :)

Plutoberth avatar Aug 07 '22 19:08 Plutoberth

I've found that if you turn it off using the phone app it does save when using the PC, I also highly recommend turning off the "hands-free" mode as Windows tends to switch to that and not switch back again so you end up using that as your main output which is really bad quality.

To save time for those interested, to disable hands-free open settings, select "Bluetooth & devices" then "Devices" and scroll down and click "More devices and printers settings" then right click properties the XM5 and untick "Hands-free telephony" under services.

Evo-c avatar Aug 19 '22 15:08 Evo-c

Linux is switching back and forth to hands-free thanks in part to Pipewire. It's not perfect but it is working unlike a while ago. I think only once it failed to switch back after ending a call. Chrome can handle the switching, but not sure what the protocol is to trigger it on Linux.

Tatsh avatar Aug 19 '22 16:08 Tatsh

The service UUID on this headset is 956c7b26-d49a-4ba8-b03f-b17d393cb6e2. Once I switch to that it can get status and send commands but sending commands does not do anything.

Ongoing there needs to be an abstraction layer to separate commands for different models because they don't seem to be the same on every model.

Tatsh avatar Aug 27 '22 05:08 Tatsh

I think the command set being used has changed. In the Android code there's reference to message.mdr.v2.table1 where as the currently supported commandsare in mdr.v1.

There are more values for ASM inquired type:

   ASM_ON_OFF((byte)33),
   ASM_SEAMLESS((byte)34),
   MODE_NC_ASM_AUTO_NC_MODE_SWITCH_AND_ASM_SEAMLESS((byte)21),
   NC_AMB_TOGGLE((byte)48),
   NC_MODE_SWITCH_AND_ASM_ON_OFF((byte)18),
   NC_MODE_SWITCH_AND_ASM_SEAMLESS((byte)20),
   NC_ON_OFF((byte)1),
   NC_ON_OFF_AND_ASM_ON_OFF((byte)17),
   NC_ON_OFF_AND_ASM_SEAMLESS((byte)19),
   OUT_OF_RANGE((byte)-1);

Tatsh avatar Aug 27 '22 06:08 Tatsh

@Tatsh you can toggle speak to chat directly on the headphones by holding the touchpad for roughly one second with two fingers. This doesn't seem to be documented anywhere but I found out by accident recently.

lunaneff avatar Nov 24 '22 13:11 lunaneff

@Tatsh you can toggle speak to chat directly on the headphones by holding the touchpad for roughly one second with two fingers. This doesn't seem to be documented anywhere but I found out by accident recently.

I found that out too recently.

Tatsh avatar Nov 24 '22 13:11 Tatsh