[ ABX/DBT test case ]
Updated: July 27, 2004

 
Introduction

Why do you NEED an ABX/DBT tester?

Well, it's the ultimate honesty tool. David Carlstrom describes it best on the ABX site:

Just as the placebo effect is removed from a drug test by a double blind procedure, we can remove it from an audio comparison by preventing the listener from knowing which component is which.
With this control, it becomes much harder for the listener to tell which component he is listening to. But if he hears a difference, we can be sure it is a real difference, not an auditory placebo effect.

Audiophiles are often shocked and offended by how much change there is in their "ability" to hear sonic differences when a comparison is done with a double blind protocol. They try to blame the slightest detail of the test equipment or procedure rather than realize that the blind test result is reliable and their previous experiences were tainted by the placebo effect.

 
More information (external links, will open in new window)
  • ABX Double Blind Comparator - a vast collection of literature, as well as statistical analysis tools.
  • PCABX - a very nice software ABX/DBT tool, including dozens of links to others, conceptual information and trial tests!
  • Hydrogenaudio forums - lots of talk w.r.t. perception and testing.
 
Why yet another ABX/DBT machine?

Software based testers such as PCABX will always put the PC in the signal path. With a good soundcard in the PC, this is not a bad thing an sich, but it is prohibitive for directly testing stand-alone equipment. For evaluating codecs or recordings that can be digitally transferred to the PC on the other hand, it's ideal.

In short:

  • PCABX for judging recordings and codecs
  • A hardware ABX for judging hardware

Browsing the web I did not find many easy and good implementations. Also, the ones available are very expensive, with the cheapest one at $600. I thought I could do better and make a simple design, available for everyone to reproduce.

How to keep the design simple...

By buying off the shelf as much as you can!

The hardware itself can be easy as pie.

All you really need is:

  • Three relays. Two switch either A or B to the output and a third disconnects the output whilst switching. Although it can be argued the third is a bit redundant I did want to keep it in nevertheless. The A-B relays might just bounce differently and one would have an advantage over the odds. Now the third is always the last to come on.
  • User control should be through infrared remote control. Thus the box can be connected with the shortest distance to the hardware, and the listener can be in the sweetspot.
  • An LCD should provide 'talkback' to the user, providing information on the current session and choice as well as a menu with his current options.
  • Controlling these relays and decoding the IR input is a microprocessor.
  • Whilst searching for an easily driveable LC Display, I came across Peter Anderson's serial LCD kit. Now this is easy, especially since there are also the accompanying LCD and a series of PICAXE microcontrollers available. This is a high-level, easy to use microprocessor. I've been looking for a successor to the BASIC Stamps for use in tutoring undergraduate student projects and this seemed a nice candidate. Also, the PICAXE bootstrap code has IR decoding for a Sony TV remote implemented so I'd only need to connect a sensor, thus substantially shortening the programming effort.
    Given the amount of software the ABX box would need, I settled on the PICAXE-28X. The 18X would have perfectly sufficed as well, but for the minimal price difference having the extra inputs for other projects seems nice.

    I used a spare Odeion I board to mount the relays and power supply on (after all, this is almost a preamp...). In- and outputs were hardwired to this board using silver cable from an old HP pulse geneator. The infrared sensor is a TSOP1738 that I removed from a scrapped project. It contains all preamplifiers and decoders and outputs TTL. No hassle. The case used was acquired through dumpster diving (hence the extra hole, in which the TSOP1738 was glued). As you can see, no expense has been spared.
     

Later... much later...

Finally, some spare time to connect the parts and write the software.

The microprocessor now contains a program that does the randomization of the process and keeps the results hidden from the user. In this way you can perform a double blind test on your own.

The handling of user commands via the IR is interrupt driven, so that whenever the processor is not busy handling commands, it is continuously calculating random numbers. This ensures the highest degree of unpredictability - the moment of sending the command to go to the next session is the moment when it is decided which will be X.

The processor allow the user to switch when he/she feels like it, as often as desired (minimum session length = 2 seconds), until a decision has been made. The user writes down his decision and proceeds to the next session, or exits to the main menu to either switch back and forth between ABX and DBT, or to stop the testing and view the outcome.

After a certain number of sessions (up to the user, with a maximum of 125), the results can be viewed. NOT before. Using P+ or P- one can scroll through the list, or by pressing 9 the list can be sent via RS232 to a PC.

After viewing the results, there is NO way to go back to the sessions without wiping the memory. This effectively eliminates any chance of forehand knowledge of the session states.

 

Software

The code is released under the same disclaimer as the schematics on this site.
Should you find serious bugs or statistical preference for A or B in this code, a mention is highly appreciated.

 

© UltrAnalog 2004