Sony Headphones Client
This project features a PC alternative for the mobile-only Sony Headphones app.
Table of Contents
Disclaimer
THIS PROGRAM IS NOT AFFILIATED WITH SONY. YOU ARE RESPONSIBLE FOR ANY DAMAGE THAT MAY OCCUR WHILE USING THIS PROGRAM.
Download
You can download compiled versions of the client from the releases page.
Note: If you're getting an error like VCRUNTIME140_1.dll was not found
, you need to install the Microsoft VC++ Redistributable
.
Motivation
I recently bought the WH-1000-XM3s, and I was annoyed by the fact that I couldn't change their settings while using my PC. So I reverse-engineered the application (for intercompatibility purposes, of course), defined the protocol, and created with an alternative application with Mr-M33533K5.
Features
- Ambient Sound Control
- Disabling noise cancelling
- Virtual Sound - VPT and Sound Position
- Display battery life and fetch existing settings from device
- Equalizer
Supported Platforms And Headsets
- WH-1000-XM3: Fully works and supported
- WH-1000-XM4: Partially works, more work is needed
- MDR-XB950BT: Fully works
- And more! Check out Headset Reports
Headset Reports issue.
Please report about your experiences using other Sony headsets in the- Windows
- Linux
- macOS
-
TempleOS
For Developers
git clone --recurse-submodules https://github.com/Plutoberth/SonyHeadphonesClient.git
Issue this incantation to fix submodule issues:
git submodule sync
git submodule update
Protocol Information
Some enums and data are present in the code. The rest has to be obtained either statically or dynamically.
Sniffing messages - See this helpful comment by @guilhermealbm.
Compiling
Windows
cd Client
mkdir build
cd build
cmake ..
cmake --build .
Linux
Debian / Ubuntu:
sudo apt install libbluetooth-dev libglew-dev libglfw3-dev libdbus-1-dev
Fedora:
sudo dnf install bluez-libs-devel glew-devel glfw-devel dbus-devel
macOS
Use the provided xcodeproj file.
Contributors
- Plutoberth - Initial Work and Windows Version
- Mr-M33533K5 - BT Interface and Other Help
- semvis123 - macOS Version
- jimzrt - Linux Version
- guilhermealbm - Noise Cancelling Switch
License
Distributed under the MIT License. See LICENSE for more information.