Category Archives: Measurement

The full DSS930 reverse engineering

Last time we looked at the amplifier output and found some strange problems. This time we isolate the DSP and verify that in fact, the problem comes from here and is actually worse than previously thought.

 

Now that it’s clear we need to design a replacement DSP, we need to understand all the system level communication going on. With the help of some probes a logic analyzer, a spreadsheet and educated guesswork we managed to do just that.

Files -as promised in the videos- here:

https://www.itsonlyaudio.com/files/HOST TO DSP commands.ods

https://www.itsonlyaudio.com/files/DSS COMMAND MANCHESTER DECODING.ods

https://www.itsonlyaudio.com/files/digital gain vs volume step on RC.ods

The circuit boards for the upgrades have been gathering dust for about a year already. Customers seem to not judge this my highest priority, and fair enough. But fear not, wheels are turning. Next up: upsampling.

Philips DSS930 – A Loudspeaker Ahead Of Its Time. Part 1: A Dark Secret

In the early 90s Philips were at the top of their game when they introduced the DSS930, a digital-input only, active DSP loudspeaker far ahead of its time. We got our hands on a pair, investigate the design and the state of these classics and discover a design flaw that has gone unnoticed for 30 years.

 

 

 

Functional check and repair of a Bose 1800 “Professional Solid State Dual Channel Power Amplifier”

 

bose1800 thermal cam

Fire in the disco

 

Two posts in one year? Is the world ending? Well, yes, but not just today.

I’ve been visited by a pair of handsome Bose 1800 amps over the past weeks. They needed a DC output delay / DC protection relays because apparently that tech did not yet exist in the mid 1970s. Those solid state devices were still a bit scary, I suppose. Continue reading

So, the cat’s out the bag

I had this project saved for later publication, but the first delivery seems to have succeeded quite well. Analog guru Duke Aguiar, who sells the LPT interface cable to the Audio Precision APIB bus (with a USB solution in the works!), has received and favourably tested my recreation of the AES17 compatible 20 kHz brick-wall measurement filter for Audio Precison System One/Two.

Before I knew what hit me there was already a review post up at DIYaudio!

The performance is stellar, like the original AP and much less costly

[source]

Brick-wall 20 kHz lowpass filter compatible with Audio Precision System One/Two

Now available for order – webshop here!

SACDenhancer revisited – part I

About four and a half thousand years ago, I designed (SA)CD player output stages with vacuum tubes and at some point came up with a transistor version, called the SACDenhancer.

Original version, ca. 2003 AD

In double blind tests this was a big preference over the built-in opamp solution. It spawned off a plethora of discrete output stages from various manufacturers and modification shops that were all the rage in the day. I had some pretty good spectrum analyzer but never could find definitive measurable differences between the standard output stage and this one.

Fast forward 15 years and I’m still getting requests for this design, so I had a PCB made. Both fabrication and measurement capabilities have moved quite a bit forward in the meantime.

Reboot, ca. 2016 AD. How nice you can now get solder mask in ‘UltrAnalog’ colour palette from China.

This version follows the original schematic but adds a second output stage for fully differential processing. As such the schematic stays ridiculously simple – just a long-tailed input stage and emitter follower output. Couldn’t be simpler (I tried. Believe me. It wasn’t good).

Basic performance

Test conditions unless otherwise specified – 1V rms differential, 997 Hz input, AES17 measurement filter, unweighted

THD+N : -99 +/- 0.5 dB

Best THD : 109 dB @ 0.7Vrms input

SNR: 100 +/- 2 dB

Frequency response linearity: +/- 0.02 dB, 20 Hz – 20 kHz

Gain linearity: +/- 0.025 dB

THD+N vs. Freq

THD vs Level

Crosstalk

Intermodulation, 1k sine 1:1 with swept sine from 60 kHz to 6 kHz

Good news – the performance indicators are all green: no defects. This is pretty much as well-behaved as you might expect from a discrete design. But while it clearly says there’s nothing wrong with how this will sound, it does not prove it will sound better than an opamp either.

Balls to the wall

So let’s pit this thing against an opamp stage and see what happens. In the left corner, representing the heavyweight class, the Analog Devices OPA275. The challenging contestant, some ridiculous discrete design from some dude in 2003 thinking they know better. All that and more, in part 2…

Arduino software control for WM8804/WM8805

WM8804 application board (eBay) modified to output CLKOUT pin (yellow-black wire)

Recently I needed a special type of I2S signal, namely a 4 signal set of DATA, BCLK, FCLK and also an MCLK of 49.152 MHz.

Many modern DACs, DSPs and digital power amplifiers need this high clock frequency. And of course you would want this signal to be synchronous to the Frame Clock such that the converter has a fixed number of MCLK per FCLK cycles so as to minimize jitter.

Many S/PDIF receivers implement a fixed clocking in hardware mode which limits your options and flexibility, so it is worth exploring software control. It is really not so hard. Continue reading

Measuring USB devices with an Audio Precision System One or Two

There is one thing the older Audio Precision System One and Twos don’t have which can be quite annoying: they don’t have USB host functionality. And given that all the processing and clocking happens inside the unit, the control software can’t reroute the digital signal generator to a USB output.

Tenor T7022, an often-encountered USB receiver. Does it do bit correct feed-through?

Of course you can use a PC to feed the USB sound card and measure the output with the AP, but then you don’t have the generator signal to do e.g. sweeps or automation. The best of course would be to somehow get to a full loop starting at the AP signal generator back to the analyzer. After quite a lot of tinkering, I managed to do just that.

Continue reading