Sidetone and Battery status for Logitech G930, G533, G633, G933 SteelSeries Arctis 7/PRO 2019 and Corsair VOID (Pro) in Linux and MacOSX
翻譯準備中
其他C++ · CGitHub @Sapd自行安裝營運者未確認
試用過了嗎? 點一下就好,不需要登入。
製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗A cross-platform tool to control USB gaming headsets on Linux, macOS, and Windows. Manage sidetone, battery status, LED lights, equalizers, and more.
Check the Supported Devices table below to confirm your headset is covered.
The quickest way to install is through your platform's package manager. Prefer a ready-made binary? Grab one from the Releases page — every release ships GPG-signed source, Linux (AppImage / .deb / .rpm / portable), macOS, and Windows (installer + portable) builds. The rolling continuous pre-release tracks the latest master.
Ubuntu / Debian — PPA
sudo add-apt-repository ppa:sapd/headsetcontrol
sudo apt update && sudo apt install headsetcontrol
Fedora — COPR
sudo dnf copr enable thesapd/headsetcontrol
sudo dnf install headsetcontrol
RHEL / CentOS Stream / Rocky / AlmaLinux 10 — COPR
hidapi ships in EPEL on the RHEL family, so enable that first:
sudo dnf install epel-release
sudo dnf copr enable thesapd/headsetcontrol
sudo dnf install headsetcontrol
Arch Linux — available in the AUR
yay -S headsetcontrol # or the -git variant for the latest master
NixOS
# configuration.nix
environment.systemPackages = [ pkgs.headsetcontrol ];
services.udev.packages = [ pkgs.headsetcontrol ]; # for udev rules
Or run without installing: nix run nixpkgs#headsetcontrol
Gentoo — nitratesky overlay
eselect repository enable nitratesky
emerge -a app-misc/headsetcontrol
FreeBSD
pkg install headsetcontrol
Homebrew
brew install sapd/headsetcontrol/headsetcontrol
Append --HEAD for the latest development version. A portable binary is also available on the Releases page — it is a self-contained universal build (Apple Silicon and Intel) that needs no Homebrew and runs on macOS 13.3 or newer.
Download the installer or the portable .exe from the Releases page.
Debian / Ubuntu
apt-get install build-essential git cmake libhidapi-dev
Fedora
dnf install cmake hidapi-devel g++
Arch Linux
pacman -S git cmake hidapi
RHEL / CentOS / Rocky / AlmaLinux
dnf install epel-release
dnf groupinstall "Development Tools"
dnf install git cmake hidapi-devel
openSUSE
zypper in -t pattern devel_basis
zypper in cmake libhidapi-devel
FreeBSD
pkg install hidapi cmake
macOS
brew install hidapi cmake
Xcode (from the App Store) is required for the compilers.
Windows — for compilation using MSYS2/MinGW, see the Development Guide.
git clone https://github.com/Sapd/HeadsetControl && cd HeadsetControl
mkdir build && cd build
cmake ..
make
sudo make install
On Linux, make install also installs udev rules for non-root access. Reload them with:
sudo udevadm control --reload-rules && sudo udevadm trigger
| Device | Platform | sidetone | battery | notification sound | lights | inactive time | chatmix | voice prompts | rotate to mute | equalizer preset | equalizer | parametric equalizer | microphone mute led brightness | microphone volume | volume limiter | bluetooth when powered on | bluetooth call volume | microphone noise filter | sidetone status | anc | anc startup mode | anc button modes | microphone attachment status | microphone mute status | headset volume | light color |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Logitech ASTRO A50 Gen 4 | All | x | x | x | x | x | x | x | x | x | ||||||||||||||||
| Logitech ASTRO A50 Gen 5 | All | x | x | x | x | x | x | r | ||||||||||||||||||
| Logitech G522 LIGHTSPEED | All | x | x | x | x | x | x | x | x | x | x | |||||||||||||||
| Logitech G533 | All | x | x | x | ||||||||||||||||||||||
| Logitech G535 | All | x | x | x |
Platform: All = Linux, macOS, Windows | L/M = Linux and macOS only | L/W = Linux and Windows only
* Only available on some product variants of that device. Sidetone status reading, for instance, is verified only for the SteelSeries Arctis Nova 7 Gen 2 (1038:227e). Sidetone on the Corsair Virtuoso XT/SE is verified only for the XT (1b1c:0a64, 1b1c:0a62).
Note: Some Corsair headsets may need additional configuration - see Adding a Corsair device. Some headsets (HS80, HS70 wired, RGB Elite, Virtuoso other than the XT) expose sidetone via ALSA mixer instead.
Note: HyperX Cloud Alpha 2 Wireless - while HyperX NGENUITY is running, changing any audio setting in it (sidetone, game/chat balance, equalizer preset, ...) makes NGENUITY write all of them back from its own saved values, which can undo changes made with HeadsetControl. Close NGENUITY, or make the change in NGENUITY instead.
# Show available options for your headset
headsetcontrol -h
# Show all options
headsetcontrol --help-all
# Get battery status
headsetcontrol -b
# Set sidetone level (0-128)
headsetcontrol -s 64
# Read the current sidetone level (when supported)
headsetcontrol -s
# Turn off LEDs
headsetcontrol -l 0
# Set the LED color, which also turns them on (applies to every LED zone)
headsetcontrol --light-color ff8000
# -l and --light-color together: the color is applied last, so it wins
headsetcontrol -l 0 --light-color '#00ff00'
# Set auto-off timer (minutes, 0 = disabled)
headsetcontrol -i 30
# List device capabilities
headsetcontrol --capabilities
# or shorthand
headsetcontrol --caps
For scripting and integration with other tools:
# JSON output
headsetcontrol -o json
# YAML output
headsetcontrol -o yaml
# Environment variables
headsetcontrol -o env
See docs/LIBRARY_USAGE.md for building applications on top of HeadsetControl.
For debugging and reverse-engineering headset protocols:
# List all HID devices
headsetcontrol --dev -- --list
# Send raw HID data
headsetcontrol --dev -- --device 0x1b1c:0x1b27 --send "0xC9, 0x64" --receive
HeadsetControl can be used as a library with C++ and C APIs. Build with shared library support:
cmake -DBUILD_SHARED_LIBRARY=ON ..
make
See docs/LIBRARY_USAGE.md for complete documentation.
For development without hardware:
headsetcontrol --test-device -b
Want to add support for a new headset or improve the software? See the Development Guide.
Adding a new device requires capturing USB traffic between the headset and its Windows software using Wireshark or USBlyzer (a VM with USB passthrough works well).
Also by me:
Released under GPL v3.
HeadsetControl is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
If you find this useful, please star the repository!
| Logitech G633/G635/G733/G933/G935 | All | x | x | x |
| Logitech G431/G432/G433 | All | x |
| Logitech G930 | All | x | x |
| Logitech G PRO X 2 LIGHTSPEED | All | x | x | x | x | x |
| Logitech G PRO X 3 LIGHTSPEED | All | x | x |
| Logitech G PRO Series | All | x | x | x |
| Logitech Zone Wired/Zone 750 | All | x | x | x |
| Corsair Headset Device | All | x | x | x | x | x |
| Corsair Wireless V2 Headset Device | All | x | x | x | x |
| Corsair Virtuoso XT/SE | All | x* | x | x | x |
| SteelSeries Arctis (1/7X/7P) Wireless | All | x | x | x |
| SteelSeries Arctis (7/Pro) | All | x | x | x | x | x |
| SteelSeries Arctis 9 | All | x | x | x | x |
| SteelSeries Arctis Pro Wireless | All | x | x | x |
| SteelSeries Arctis Nova 3 | All | x | x | x | x | x |
| SteelSeries Arctis Nova (5/5X) | All | r | x | x | x | x | x | x | x | x | x | x |
| SteelSeries Arctis Nova 7 | All | x | x | x | x | x | x | x | x | x | x | x | x* |
| SteelSeries Arctis Nova 7P | All | x | x | x | x | x | x | x | x | x |
| SteelSeries Arctis 7+ | All | x | x | x | x | x | x |
| SteelSeries Arctis Nova Pro Wireless | All | x | x | x | x | x | x |
| SteelSeries Arctis Nova 3P Wireless | All | x | x | x | x | x | x | x |
| SteelSeries Arctis GameBuds | All | x |
| HyperX Cloud Alpha Wireless | All | x | x | x | x |
| HyperX Cloud Alpha 2 Wireless | L/W | r | x | x | x | x |
| HyperX Cloud Alpha S | All | r | x | x | x |
| HyperX Cloud Flight Wireless | All | x |
| HyperX Cloud II Wireless | All | x | x |
| HyperX Cloud II Wireless (Kingston) | All | x | x | x |
| HyperX Cloud 3 | All | x |
| ROCCAT Elo 7.1 Air | All | x | x |
| ROCCAT Elo 7.1 USB | All | x |
| Audeze Maxwell | All | x | x | x | x | x | x | x | x | x | x | x |
| Audeze Maxwell 2 | All | x | x | x | x | x | x | x | x | x |
| Lenovo Wireless VoIP Headset | All | x | x | x | x | x | x | x | x |
| Plantronics Voyager 8200 UC (BT600) | L/W | x | x | x | x | x |
| Jabra Link 380 (paired headset) | L/M | x | x | x | x | x | x | x |
| Jabra Link 390 (paired headset) | L/M | x | x | x | x | x | x | x |
| Jabra Evolve2 65 Flex (USB) | L/M | x | x | x | x | x | x | x |
| Sony INZONE Buds | All | x |
| Sony INZONE H5 | All | x | x | x | x |
| Sony INZONE H9 II | All | x | x | x | x | x | x | x | x | x | x | x |
| Sony PULSE 3D | All | x |
| MCHOSE X9 Wireless | L/W | x |
| MCHOSE V9 Pro Wireless | L/W | x |
| Razer BlackShark V2 Pro (PlayStation) | All | x |
| HeadsetControl Test device | All | r | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | x | r | x |