Open-source Elgato Wave XLR controls and a PipeWire audio mixer.
Adjust microphone gain, mute, phantom power, and headphones from a native Linux desktop.
Rust · GTK4 · libadwaita · PipeWire
Bahasa Indonesia · Install from source · Wave XLR Linux setup · FAQ · Contribute · Test results
CadisWave is free, open-source Wave XLR software for Linux, developed by Rama Aditya (CADIS). It provides Elgato microphone controls, application audio routing, independent mixes, and software effects through PipeWire. Use it as a native Linux alternative for Wave Link control and mixing workflows. See the feature limits before switching.
| Project facts | Details |
|---|---|
| Platform | Linux desktop with PipeWire; native Rust, GTK4, and libadwaita |
| Physically tested device | Original Elgato Wave XLR, USB 0fd9:007d |
| Interface languages | English and Bahasa Indonesia |
| Install route | Build from source; see Linux setup |
| License and maintainer | MIT; Rama Aditya (CADIS) |
| Test evidence | Software checks and physical results, recorded on 2026-10-04 |
Actual GTK interface, captured with controlled test data. Meter values show a test fixture.
| Feature | What you can do |
|---|---|
| Device dashboard | Read input levels, adjust gain, toggle mute, and control headphones. |
| Compact controls | Keep key controls nearby. Use the tray when your desktop provides a tray host. |
| PipeWire mixer | Manage application sources, independent mixes, outputs, scenes, and software effects. |
| English and Indonesian | Change the interface language without restarting audio or USB workers. |
| Confirmed device state | Read confirmed hardware values. Keep pending edits separate from actual device state. |
| Capture monitoring | Check capture byte activity and connection status. Enable disruptive recovery explicitly. |
| Compact controls | Application settings |
|---|---|
![]() |
![]() |
These screenshots show the application with controlled GTK fixtures. They are not design mockups. See screenshot provenance for capture details.
| Device | USB ID | Mapped controls | CadisWave physical checks |
|---|---|---|---|
| Wave XLR | 0fd9:007d |
Gain up to 75 dB, mute, phantom power, headphones, low impedance | Tested; see results |
| XLR Dock | 0fd9:00a6 |
Gain, mute, phantom power, headphones, low impedance | Not tested here |
| Wave:3 | 0fd9:0070 |
Gain, mute, headphones, monitor mix | Not tested here |
| XLR Dock MK.2 | 0fd9:00c7 |
Gain, mute, phantom power, headphones, monitor mix, low impedance | Not tested here |
Mapped controls have protocol tests. This does not establish physical acceptance for every model or firmware. Read hardware support before using another device.
Clipguard, hardware low-cut, LED changes, hardware persistence, and sample-rate changes remain unavailable. Original Wave XLR hardware monitor mix is not mapped. Use Mixer for software low-cut, gate, compression, EQ, delay, and mono effects. Unknown hardware dial modes disable dial edits.
Use Rust 1.98.1, GTK 4.14+, libadwaita 1.5+, libusb 1.0, and pkg-config. Runtime audio uses PipeWire, pipewire-pulse, WirePlumber, ALSA utilities, and SWH LADSPA plugins.
On Ubuntu 24.04, install the dependencies:
sudo apt install build-essential pkg-config libgtk-4-dev libadwaita-1-dev libusb-1.0-0-dev \
pipewire pipewire-pulse wireplumber alsa-utils pulseaudio-utils swh-plugins
rustup toolchain install 1.98.1 --component rustfmt --component clippyBuild and install as your login user:
git clone https://github.com/RamaAditya49/cadiswave.git
cd cadiswave
cargo build --release --locked --workspace --bins
make install PREFIX="$HOME/.local"
"$HOME/.local/bin/cadiswave"Open Settings to select a language. Open Mixer for sources, effects, scenes, and device selection.
| Shortcut | Action |
|---|---|
M |
Toggle mute |
| Arrow keys on the dial slider | Adjust the selected value |
Ctrl+R |
Reconnect |
Run install.sh as your login user for a system installation.
The installer stages and checks files before requesting administrator access.
See hardware setup, Bazzite installation, and troubleshooting.
Enable Follow hardware mute in a processed capture source editor to synchronize mute with the selected Wave device.
Keep the old installation until the new build passes its checks.
Stop the legacy openwave.service before granting CadisWave vendor control.
CadisWave rejects a second vendor owner. Optional import preserves existing settings.
Follow the migration and recovery guide.
The desktop runtime owns USB synchronization, including hidden tray operation. The capture daemon maintains input streams. It does not replace the desktop USB owner.
CadisWave controls the original Wave XLR on Linux through USB and ALSA synchronization. It provides gain, mute, 48 V phantom power, headphone volume, and low-impedance controls. See physical test results and the setup guide.
Elgato's Wave Link 3 setup guide lists Windows, Mac, and Windows on Arm. It does not list Linux. CadisWave is an independent Linux application for device controls and PipeWire mixing. It does not provide every Wave Link feature.
Yes. Use the PipeWire mixer to manage application sources, capture sources, sends, independent mixes, and outputs. Select a published mix as the input in OBS or a voice application. Read the routing walkthrough before changing your active audio routes.
Physical checks used Zorin OS 18.1 with GTK 4.14.5, libadwaita 1.5.0, and PipeWire 1.0.5. CI runs on Ubuntu 24.04. The Bazzite and Fedora Atomic guide describes another installation route; those images have no recorded physical acceptance here. See verification for build dependencies and test limits.
CadisWave provides device controls, routing, scenes, and host-side effects. Clipguard control, hardware low-cut, LED changes, device persistence, and sample-rate changes remain unavailable. Original Wave XLR hardware monitor mix is not mapped. See device support for each model's scope.
Use the source installation steps for the current native application.
Existing v0.1.x releases belong to the earlier OpenWave application.
They are not current native CadisWave builds.
Yes. Select English or Bahasa Indonesia in Settings. Language changes do not restart the audio or USB workers. Read the Indonesian README for installation and support details.
Start with the contributor guide. Read the architecture, protocol reference, and localization guide. Use GitHub issues for bugs and feature requests. Include your device model, USB ID, and reproduction steps.
Developed and maintained by Rama Aditya (CADIS).
CadisWave is an independent project derived from OpenWave by rikkichy and contributors. CadisWave implementation and original application artwork: Rama Aditya (CADIS) and contributors. The MIT license retains the original copyright. CadisWave is not an Elgato product.
Design archives and mockup files remain outside this repository. The screenshots above are application documentation.


