DAX Virtual Audio
Status: Supported · Applies to: FlexRadio · Platforms: Linux, macOS
DAX (Digital Audio eXchange) creates virtual audio devices on your computer that digital-mode programs (WSJT-X, fldigi, JS8Call, VARA and others) use as their sound card. Receive audio flows from a slice to the program, and the program's transmit audio flows back to the radio, all through AetherSDR with no cables.
DAX is a FlexRadio feature. On other radio families the DAX applet, menu entry and overlay button are hidden; use the TCI Server for audio there.
Requirements
| Platform | DAX |
|---|---|
| Linux | Built in. Needs PipeWire. Receive channels are native PipeWire streams; they also show up through PipeWire's PulseAudio and JACK layers. |
| macOS | Built in, through the DAX Virtual Audio Driver that ships in the AetherSDR DMG; install it from there. If it is missing, enabling DAX shows "DAX Audio Driver Missing". |
| Windows | No built-in DAX driver. The DAX applet says "No built-in DAX driver on Windows. Use TCI, or SmartSDR DAX." Use the TCI Server (audio and CAT over one connection), or FlexRadio's own SmartSDR DAX. |
Setup
Turning DAX on
- The DAX Audio applet (applet-tray button DAX) has a DAX: Enabled / Disabled button at the bottom.
- Settings → Autostart DAX with AetherSDR is the same setting: while it is on, DAX starts every time you connect. This menu entry is not shown on Windows.
Assigning a slice to a DAX channel
The radio sends a slice's audio to the DAX channel set on that slice. Choose it on the slice's VFO widget → DAX tab (DAX Ch). The channel list follows the radio's capacity, and a slice on a channel the radio cannot back shows Off.
The panadapter overlay's DAX flyout is for IQ instead: it holds IQ Ch and the WFM button (see DAX IQ Streaming).
Checking the devices (Linux)
pactl list sources short | grep aethersdr # DAX 1..N capture devices
pactl list sinks short | grep aethersdr # TX device
Stale devices left by a crash are cleaned up the next time DAX starts.
Using DAX
Transmit audio
When a digital program transmits in a digital mode (DIGU, DIGL), its audio from AetherSDR TX goes to the radio. Voice modes use your microphone. You don't switch anything by hand.
Wiring WSJT-X (Linux and macOS)
- Put the slice in DIGU and set its DAX channel to 1.
- Turn DAX on, and turn on a Rigctld CAT port (see CAT Control).
- In WSJT-X, File → Settings → Audio: Input AetherSDR DAX 1, Output AetherSDR TX.
- Settings → Radio: Rig
Hamlib NET rigctl, Network Server127.0.0.1:4532, PTT MethodCAT.
Full walk-through: WSJT-X Integration.
Other programs
| Program | Modes | Audio in | Audio out | Rig control |
|---|---|---|---|---|
| WSJT-X / JTDX | FT8, FT4, JT65, Q65, WSPR | AetherSDR DAX n | AetherSDR TX | Rigctld CAT port, or TCI |
| fldigi | PSK, RTTY, MFSK, CW, … | AetherSDR DAX n | AetherSDR TX | Rigctld CAT port |
| JS8Call | JS8 | AetherSDR DAX n | AetherSDR TX | Rigctld CAT port |
| VARA HF/FM | VARA | AetherSDR DAX n | AetherSDR TX | Rigctld CAT port |
| Dire Wolf | APRS, packet | AetherSDR DAX n | AetherSDR TX | — |
For packet and APRS you may not need an external modem at all: see AetherModem Packet Radio.
Two programs on two slices
Give each program its own DAX channel and its own CAT port (with a different VFO A slice).
Reference
Devices
AetherSDR offers up to eight RX channels plus one TX channel. The number of RX channels follows the connected radio's slice capacity (for example 8 on a FLEX-6700, 4 on a FLEX-6600 or 8600, 2 on a FLEX-6300 or 6400). Rows and devices above that number are not shown.
| Device | Direction | Purpose |
|---|---|---|
| AetherSDR DAX 1 … DAX 8 | Capture (input) | Receive audio from whichever slice is assigned that DAX channel |
| AetherSDR TX | Playback (output) | Transmit audio to the radio |
The DAX Audio applet
Each RX row shows DAX n:, the slice currently assigned to that channel (or "—"), and a combined level meter and gain slider. The TX: row shows which slice holds transmit and the gain applied to audio coming from your program. Gains are saved per channel.
Known issues
- On macOS, a digital-mode program's transmit audio can reach the AetherSDR TX meter while the radio sends no RF (#4554).
- On macOS, DAX transmit can stop sending audio to the radio altogether until AetherSDR is restarted (#5870).
- On macOS with a FLEX-8000-series radio, DAX receive audio can come out chopped and very quiet (#3837).
Troubleshooting
The program hears no audio
The slice has no DAX channel, or the program is reading a different device.
- On the slice's VFO widget → DAX tab, set a DAX Ch.
- In the program, choose the matching AetherSDR DAX n input.
- On Linux,
pactl list source-outputsshows which device each program is reading.
Transmit audio does not reach the radio
The program sends to the wrong device, or the TX slice is in a voice mode.
- Set the program's audio output to AetherSDR TX.
- Put the TX slice in a digital mode (DIGU or DIGL).
A DAX row is missing
The connected radio has fewer slices than that channel number, so AetherSDR does not show it. Use a lower channel number.
WSJT-X shows "Error in Sound Input"
DAX was switched off while WSJT-X was using it.
- Turn DAX back on.
- Restart WSJT-X.
There is no DAX on Windows
AetherSDR ships no DAX driver on Windows.
- Use the TCI Server, which carries audio and CAT over one connection, or FlexRadio's own SmartSDR DAX.