KEF X300A Subwoofer Output (finally) solved


The KEF X300A self-powered speaker system, despite its charms, seems to have been less popular than it could have been for a couple of big reasons:
  1. The electronics in many units seem to have suffered - maybe capacitors were under-specified and wore out prematurely. Some have reported success recapping the power supply and DAC boards.
  2. I/O: No SPDIF input, only indirect (ADC -> DAC based) analog input, and the biggest complaint:
  3. No subwoofer output, despite their small size.
I looked at the whole package including several people's photos of the circuit boards (including - honourable mention to the FCC) and theorized thus:
  • The inter-speaker link is a USB cable. Synchronizing two audio streams to Hi-Fi levels using USB audio is not trivial. Especially so in 2012, when the speaker was developed.
  • SPDIF is now very mature, very well supported and behaved, way simpler than USB, and if you use the same devices and hardware logic delays, in perfect synchronization always.
  • There is a Wolfson (Cirrus) WM8805 SPDIF transceiver (rx/tx) on one of the main (Left) speaker boards. This wouldn't be necessary at all if they weren't transmitting SPDIF someplace.
  • The USB connector on the DAC board that goes to the Right speaker is marked DGND / RX / TX / OUT. What? No standard USB +5V? In its place a signal named "OUT"? Hmm...
  • I concluded that they must have used SPDIF for the inter-speaker audio link.
To make a long story short, it turns out that "OUT" on the USB connector bound for the Right speaker is indeed SPDIF. It's stereo, too. Why make your life difficult? It's much easier just to send the full digital stream to the other side and only send the right channel to the local amplifier.

Why didn't KEF simply sell a $0.50 USB to RCA dongle for U$D 99.95? They could have made a killing and at the same time satisfy the one "con" that every single reviewer listed with the product: No subwoofer output.

If anyone still has these lively little self-powered speakers, you can now connect to a subwoofer in direct digital glory.

The Plumber

For your amusement, the "OUT" pin at 0.5us / division, when the speakers were driven with a 44100Hz USB audio signal:
Last edited:
  • Like
Reactions: 1 user
Hey, I still have a pair of X300A so I was happy to find this post! If I understand correctly, you are saying that we can connect a subwoofer to the port that is normally used for connecting the right speaker. But how would I connect the right speaker if that port is occupied? I assume we need a USB splitter that splits the signal for a subwoofer and for the right speaker. However, I tested this approach by connecting the right speaker via a splitter but this did not work. Do you have suggestions?
Greetings mydomino85,
I just hacked up a couple of USB cables. All four signals on the USB cable need to go through to the slave speaker undisturbed. All you need to send SPDIF to a subwoofer is to tap "+5" (actually SPDIF) and ground and connect these to, e.g., an RCA jack. I can post a drawing or photo in a few days if that'll help.
A USB splitter would need to be a passive device, i.e. not a hub or similar. The inter-speaker link is acually not USB at all!
(Inexpert) drawing as promised:

USB wiring is (normally):
Black: Ground
White: Data-
Green: Data+
Red: Vcc (+5V)

X300A wiring is:
Black: Ground
White: UART rx
Green: UART tx

A simple hack is to:
  1. Solder the wires of two USB pigtails (the two halves of a USB patch from X300A Master to Slave) to a small prototyping board
  2. Connect all signals (red to red, black to black, etc.) so that the pigtails connect the X300A Master to Slave correctly.
  3. Connect a short wire to an RCA plug (or jack, to taste) as shown, Black to the shield, and Red to the center, as shown
I'd suggest keeping the SPDIF tap to the RCA connector (and DAC) short-ish, since the SPDIF drive signal isn't designed to drive more than a single cable to the Slave speaker. I'm using ~3' to my external DAC without any problems. You could also choose to use a USB-A jack instead of the USB-B mini in order to plug the existing Master-to-Slave USB cable into it.
By all means!
As I've mulled over better/easier/quicker ways to implement the hack, I came across this USB breakout connector, which could be used instead of the proto board and mini USB (and doesn't require any solder!):
  1. Connect the USB A male pigtail to the connector
  2. Connect an RCA jack pigtail to +5V and ground, as above.
  3. Plug the connector on the pigtail to the Master inter-speaker connector, and plug your same old USB cable into the connector to go to the Slave unit.