• Welcome to ASR. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Reference ABX hardware design and implementation

Not sure if the logistics of making physical units of this ABX comparator available for the masses has been hashed out yet.

If not and someone has connections for a US-based manufacturer (trying to avoid tariffs and headache), I am willing to be the point person for US distribution. Meaning, I will front the bill for prototypes and testing units and the manufacturing of, say 30-50 units, depending on interest, minimum order and unit cost and will distribute the units at the cost of the total US paper to production per unit.

I rather not do it, but based on what I am reading, this is just a design and spec doc and individuals need to find a way to get it made, sounds like a royal pain in the booty.

Again, I rather not be the point person and I rather be the guy who just order and pay for my own unit. . .but again, trying to make this easy for everyone interested.
Wow, that's an incredibly generous offer. I don't think having two sources of manufacturing works well because it's a precision instrument that needs testing and calibration. But tariffs to the USA from Australia are only 12.5% right now, and that'd be on the distributor pricing not the retail.
 
Progress update. I've decided to split the speaker-level switching PCB into its own enclosure. Better thermals, possibly easier sound isolation for relay switching clicks, and more optionality for people who don't want to do amp/speaker switching. That means a DE15/VGA connector joins the control/digital/analog box to the speaker/amp box. Here are the PCB renders for the mosfet and relay options. The mosfet option is silent but costs ~3x the relay option in parts.

Screenshot 2026-08-14 at 15.29.57.pngScreenshot 2026-08-14 at 15.29.24.png
 
I continue to get request after request for me to review preamps and the DACs. Most of these incorporate HDMI ARC or eARC.
Can you further elaborate the specific signal chain? I'm not 100% sure if I understand this HDMI use case.

Why not optical, or coaxial or other kinds of digital input. . . USB? Not all DACs support HDMI, or eARC. Also are there any handshake for HDMI before signal transfer? If so, would random HDMI switching screw up the handshake?
 
There is and on multiple levels.
Then the ABX device needs to have it's own computer/controller to make that handshake and maintain the signal on all active HDMI connections and the computer/controller has some kind of buffer to store the signal and the ability to switch between HDMI internally to transfer the signal in the buffer.

I imagine Erin's use case is:

Digital source stream -> (DAC A)/(DAC B) -> Preamp

Which is what Josh was testing, how did Josh set it up on his AVA ABX?
 
Last edited:
ChatGPT: "Which digital audio connection that doesn't require a handshake"


If by “handshake” you mean a digital audio connection that can carry audio without the source and sink needing to negotiate capabilities, the main answer is:

S/PDIF (coaxial or optical/TOSLINK)

No EDID/HDMI-style handshake.

The transmitter simply sends a digital audio stream.

The receiver locks onto the incoming S/PDIF signal and decodes it.

Supports PCM and, depending on the implementation, compressed formats such as Dolby Digital/DTS.

Optical TOSLINK is particularly straightforward because there is no electrical connection between devices.


However, there is an important distinction:

ConnectionHandshake / negotiation?Notes

S/PDIF coaxNoVery simple point-to-point digital audio
TOSLINK opticalNoSame S/PDIF protocol over optical
AES3NoProfessional balanced digital audio; essentially one-way
I²SNoChip-to-chip interface, not normally a consumer cable connection
HDMI ARC/eARCYesUses HDMI/CEC/EDID-type communication
USB AudioYes, to establish/configure the deviceHost enumerates the USB audio device
DisplayPortYesLink training and capability negotiation
AVB/Dante/AES67Yes / network-dependentNetwork discovery/configuration and clocking mechanisms


If your actual goal is “I need digital audio that will keep working even when the receiver is powered off/rebooting, changes inputs, or has flaky HDMI handshaking,” then TOSLINK or coaxial S/PDIF is usually the simplest solution.

If you tell me the two devices you're connecting, I can tell you which connection genuinely avoids the handshake problem—including obscure options like AES3, ADAT, S/PDIF, or analog fallback.

If that is correct and that is Erin's use case, then consider TOSLINK or coaxial S/PDIF switching as most DACs don't support HDMI but do support TOSLINK or coaxial S/PDIF.

Despite I rather have USB switching, but that too requires a handshake.
 
Then the ABX device needs to have it's own computer/controller to make that handshake and maintain the signal on all active HDMI connections and the computer/controller has some kind of buffer to store the signal and the ability to switch between HDMI internally to transfer the signal in the buffer.

I imagine Erin's use case is:

Digital source stream -> (DAC A)/(DAC B) -> Preamp

Which is what Josh was testing, how did Josh set it up on his AVA ABX?
See earlier post where I shared the proposal I've given to Erin, which is indeed SPDIF based: https://www.audiosciencereview.com/...-design-and-implementation.72589/post-2656729

That said, there _are_ OEM options that aren't horrible for true HDMI ARC splitting, Shenzhen THXtek being the notable option. But I don't want to go down that path unless I have to.
 
Despite I rather have USB switching, but that too requires a handshake.
Well exactly, and even harder then HDMI. Erin's requirement isn't to test the quality of the HDMI connection, it's to test devices downstream of it. If you're sending signal over USB then it's genuinely a "bits are bits" situation, and the switching should happen on the source device (PC or whatever), or use a couple of USB-to-spdif converters and use the ABX device to mute and switch.
 
Real-time analog A/B switching cannot be used directly when two digital sources are involved that have independent clocks, similar to analog sources (turntables etc) which are not in sync anyway (unless they have SMPTE syncing means which only some pro/broadcast reel-2-reel machines had). It's as simple as that.

The only chance you'd have is to read back both analog outputs and apply a clever software control-loop to force them to stay in sync by dynamic resampling of the digital feed, speeding up the slower device and braking down the faster one (so that both devices get resampled data, for fair conditions). If you are lucky you could use the USB feedback loop data in a specialized USB driver directly (with a really huge integration time).
 
Last edited:
And we're back to square one. An ABX testing system is comprised of two pretty independent parts, the analog ABX switcher box (the project we're discussing here) and the source arbiter (or whatever name would be appropriate) that makes sure the analog output of two devices under test is and stays exactly in sync (with regard to both delay and drift).

Splitting digital streams that contain/embed the actual playback clock is possible (easy with SPDIF and I2S over HDMI, less easy with eARC etc). Splitting digital streams that are pure data with no clock (like USB) is a tougher problem.
 
And we're back to square one. An ABX testing system is comprised of two pretty independent parts, the analog ABX switcher box (the project we're discussing here) and the source arbiter (or whatever name would be appropriate) that makes sure the analog output of two devices under test is and stays exactly in sync (with regard to both delay and drift).

Splitting digital streams that contain/embed the actual playback clock is possible (easy with SPDIF and I2S over HDMI, less easy with eARC etc). Splitting digital streams that are pure data with no clock (like USB) is a tougher problem.
Precisely. Definitely out of scope for this project.
 
did not read all feedback, but is keeping a load on the not connect amp discussed? some amps could give unpredictable results on this sudden load change. (tube amps dont like it at all)
 
Tube amps (or any amps with higher output impedance) can't be ABX'd as level matching is not possible anyway and FR differences would dominate (unless that is the property to be tested, of course). With the rare exception of speciality speakers being used with a 100% flat impedance (better than 1% flatness or so).
 
did not read all feedback, but is keeping a load on the not connect amp discussed? some amps could give unpredictable results on this sudden load change. (tube amps dont like it at all)
The approach is to use the line level stage for matching and fading, so amp switchover happens with no programme being played. I’m sure some amps might still have a problem, but most will be fine with it - it’s just the same as unplugging a speaker cable with no music playing
 
One could handle the FR problem, though, by pre-EQing the feeds to the amps so that the voltage response at the speakers is the exactly the same. That's how I've done my measurements and ABX compares of high impedance and true current drive amplifiers for active speaker duty. Only one changed variable, back-EMF handling.

I agree some basic resistive load on the "off" channel could be useful, but I would handle that externally, and it would require twice as much relays. With the modular approach that could be feasible. But for now let's care about the core of the system and handle the corner cases later.
 
And again we have a conundrum, the amps shouldn't be aware of being ABX'd and have signal and load all the time for fair conditions. But that's impractical unless we'd have a speaker dummy load which is a full replica of the monitor speaker's impedance (possible to do, but totally out of scope here).
 
@mcdn, some notes before I'm mostly off for the weekend:

I'm not sure whether your supply scheme really implements full galvanic isolation of the analog section (which obviously includes the ADC etc). It should not connect to "world" other than only via the analog ins and outs, otherwise the use of a isolated DC/DC for the audio supply voltages is moot.

In other words, all supply voltages must be derived from isolated supplies, either using the +-15V module's outputs, or a separate module for 5V/3.3V domain if more power / better efficiency is required. Ideally medical rated ones.

Also any digital connection to the world like USB for the uC must be isolated.

Alternatively, assuming all control is done via I2C, then use I2C isolators, and I2S for the ADC must be isolated as well, so that the analog section and everything connected to it is isolated from the world that way.

As for the speaker level measurement, consider some significant low-pass filters to get rid of PWM switching frequencies of class-D amps which might cause trouble of demodulation or aliasing. I would see no problem with setting a low corner frequency just above 1kHz or so as we don't need absolute precision here, only relative precision between channels/DUTs.
Also, I would not make assumptions about the nature of the speaker signals, rather I'd use an analog balanced front-end (AC-coupled, incorporating the mentioned filters) creating a re-referenced single-ended output to feed the ADC.
 
I think there is no need to relativize everything. With "normal" solid state amps, it is possible to make a recording using main system loudspeakers and taking signal from their binding posts. Then the recordings can be level matched and abx tested. I have found a barely audible difference only in case of one class D non-PFFB design, which I would not classify as a "normal" amplifier.
 
@mcdn, some notes before I'm mostly off for the weekend:

I'm not sure whether your supply scheme really implements full galvanic isolation of the analog section (which obviously includes the ADC etc). It should not connect to "world" other than only via the analog ins and outs, otherwise the use of a isolated DC/DC for the audio supply voltages is moot.

In other words, all supply voltages must be derived from isolated supplies, either using the +-15V module's outputs, or a separate module for 5V/3.3V domain if more power / better efficiency is required. Ideally medical rated ones.
Yeah, I've gone back and forth on this a little bit. Would it be better to use the _very expensive medical grade_ +-15V rails to derive the 5V and 3V3 digital supplies, or put them behind a separate isolated converter, thus keeping their ground return separate? Either seems to have pros and cons.
 
Also any digital connection to the world like USB for the uC must be isolated.
USB connection (unless it's an audio input) is all temporary for service purposes.
Alternatively, assuming all control is done via I2C, then use I2C isolators, and I2S for the ADC must be isolated as well, so that the analog section and everything connected to it is isolated from the world that way.
Well we have ICs with both audio and I2C signals, like all the muxes. Right now the digital power, signals and digital_gnd for those is separate from the audio +-13V and audio_gnd, but it'a still a monolithic IC so not sure what else we can do.

As for the speaker level measurement, consider some significant low-pass filters to get rid of PWM switching frequencies of class-D amps which might cause trouble of demodulation or aliasing. I would see no problem with setting a low corner frequency just above 1kHz or so as we don't need absolute precision here, only relative precision between channels/DUTs.

The ADC has its own antialiasing filter with a -3dB corner at 1.3MHz, and we've also got a 2-pole LPF in front of it, giving -8dB at 400kHz and -18dB at 1.3MHz. I think we should be OK but will test and lower our corner freqs if needed.

Also, I would not make assumptions about the nature of the speaker signals, rather I'd use an analog balanced front-end (AC-coupled, incorporating the mentioned filters) creating a re-referenced single-ended output to feed the ADC.
I mean that's kind of what we have, just implemented as two AC coupled inputs to ADC L/R. We don't need ideal fidelity here, just enough to decently level match some power amps.
 
Back
Top Bottom