Soundblaster Audigy 2 ZS front panel hacks

Reverse engineering a quality piece of audio hardware that holds more than it would appear

polprog, 20 apr 21

Back to homepage

What is it?

The SoundBlaster Audigy 2ZS was an audio card designed by Creative. The cards were launched in 2003, but the copyright date on my PCB says 2002. The Audigy 2ZS came in different form factors, and the PCI version had an optional front panel that would go into a 5.25" bay of the PC. The panel would connect back to the card via a ribbon cable, and allow the user to access many IO ports of the card in a comfortable way.

The front panel allows you to access the following interfaces:

The bare board powered on. Click this image to see a larger version, this works for all images on this page


I have made two videos about the front panel. The first one is shorter and gives you a general look at the device:

The second one is directed at more intermediate audience and shows the signals as seen through the audio signal path of the headphone output. I talk about S/PDIF and I2S, as well as show them on the oscilloscope:

Why all of this?

I've purchased the front panel two years ago, with no card. Initially, it was the golden connectors that caught my eye in the pile of electronics junk. I was looking for a parts source for future audio related projects and after talking to the person who ran the stand I was a happy owner of the panel with 30 PLN less in my pocket. After a closer look at home, I realized it was a self contained digital audio interface. At first I wanted to find out how to drive the headphone output, but eventually I reversed the entire audio related part of the front panel.

The first clue were the ICs. They were off the shelf converters, ADCs and DACs which was the first hint that the 40 pin header carried regular digital audio streams. I have also traced the TOSLINK input to a pin on the pin header. Then, looking at U17 (CS8415A - S/PDIF to I2S converter) and U19 (CS4392KZ, I2S DAC) that was right next to it has formed the next fragment of the overall picture.

The first success was feeding the panel power and a TOSLINK (that is optical) signal, which then I was able to see on the oscilloscope on the pin header (as an electrical signal). Then I traced the S/PDIF input to the CS8415A back to the pin header. I jumped the SPDIF output pin to the SPDIF input pin, and was surprised to see (and hear) the audio signal on the headphone output (precisely, on one of the pins of the volume potentiometer).

Schematic and pinouts

This is a simplified schematic of the internals of the front panel. You can see what signals and what ICs drive which outputs

Apart from the schematic, below is the pinout of the J1 pin header:
IN and OUT are from the panel's perspective
J1-1 10 pin header

n/c			1  2	no pin
n/c			3  4	GND
GND			7  8 	GND
Note: SPDIF I/O is shared between SPDIF and TOSLINK. SPDIF OUT is the same signal as OPTICAL OUT. SPDIF IN is either SPDIF input over RCA jack or OPTICAL IN over TOSLINK. The former has higher priority (SPDIF input disables optical input). See schematic. J1-2 28 pin header
AUX WS			 3  4 GND
AUX BCK			 5  6 GND
AUX 2 DATAO		 7  8 GND
AUX 1 DATAO		 9 10 GND
Headphones DAC MODE (*)	11 12 (Unknown TOSLINK out control signal) (**)
IRDATA (***)		13 14 GND
75 ohm to GND		15 16 GND
75 ohm to GND		17 18 GND
Unknown 		21 22 GND
Unknown			23 24 GND
Unknown			25 26 GND
Unknown			27 28 no pin

AUX 1 = Line/Mic in (bottom)
AUX 2 = RCA stereo in (top)
I2S System clock, word select and bit clock lines are shared between
AUX 1 and 2 inputs.

* Connected to M3 pin of CS4392 DAC driving headphones.

** Goes to an unknown Q2 which seems to be enabling an additional
driver for driving the SPDIF output

*** Goes to 87LPC762 one-time programmable microcontroller
which seems to deal with IR receiver.


IO paths

The IO interfaces on the board can be categorized into 4 units. Below is a brief description of each of them. For more details, see the schematic

TOSLINK and SPDIF input (to panel)

TOSLINK and SPDIF carry essentially the same data. TOSLINK is a fibre optic interface, and SPDIF is a balanced electrical interface. The data format is the same. On this board, the SPDIF signal comes in via an RCA jack, gets terminated by a 75 ohm resistor and the AC coupled into an SN75179B differential pair transceiver. The output from the transceiver then splits. One path is fed into a 74125 buffer (U20) and sent to the main IO buffer, the 74F245 (U6). The other path goes to a 74HC04 inverter based signal detector which switches the U20 buffer enable inputs accordingly. If an electrical signal is detected at the SPDIF input, the TOSLINK buffer gets disabled and the SPDIF buffer gets enabled. If no signal is detected (SPDIF is disconnected or inactive), the TOSLINK input is switched on.

The TOSLINK input is a receiver directly connected to the 74125 buffer (U2) mentioned before and the output goes to the common SPDIF path.

From the 74F245 (U6) the SPDIF signal goes to J1-1 pin 5 (see above). Because of the detector circuit, the SPDIF input has precedence.

TOSLINK and SPDIF output (from panel)

These two outputs do not need to be switched and therefore are connected in parallel. The SPDIF signal to the board comes in a J1-1 pin 9 and goes through the IO buffer (U6) into two units of U20 (74125), one of which is enabled permanently. These units drive the SPDIF out bus in parallel. The signal then forks - one path goes into another buffer and filter combo (this time implemented with two units from the U21 74HC04 inverter and some passives) to finally end up, isolated with a signal transformer on the RCA jakc (SPDIF output).

The other path of the signal goes directly to the optical transmitter for TOSLINK

The way this signal is wired means that the SPDIF and TOSLINK outputs serve the very same bits. There are no SPDIF-specific components, so this path can carry any other signal similar to SPDIF.

The TOSLINK and SPDIF IO part can be used as a general purpose optical to electrical converter (for similar signalling schemes)

AUX1 and AUX2 inputs

The two inputs of the device are implemented using UDA1361 I2S ADCs. The two ADCs share I2S clock signals, BCK (the bit clock) and WS (word select) as well as the ADC system clock (SYSCLK). All these three signals come in from the host (originally, the Audigy 2 card) on J1-2, via the U6 IO buffer.

AUX2 is the line level input via the RCA jacks. The analog frontend is very simple. The whole AUX2 analog circuit takes up 1/3 of the mezzanine board. Pin header JP2 carries both power and I2S bus for that ADC, which means that the mezzanine board alone can be operated as a standalone device.

AUX1 is the line level or mic input. It's equipped with a potentiometer and switch combo used to set the gain and mode (mic/line-in) of the input. The I2S input signals are shared between the two ADCs. I2S data output is also available at J1-2 pin header

Headphones out

The headphones output is the most complicated path on the panel. First, a SPDIF signal comes in at J1-2 pin 19 and goes via the (you guessed it!) U6 IO buffer. From the buffer, it goes directly into a CS8415A SPDIF to I2S converter. From that IC, a 24 bit I2S stream enters a CS4392KZ stereo DAC. The DAC output a balanced left and right audio signal which goes into the analog frontend and amplifiers.

The headphones output produces quite high quality sound, and it can do so at a very high volume. On my 600 ohm headphones, the limit of comfortable volume was at about 1/3 of the volume knob adjustment.

The CS4392KZ DAC has several selectable modes. In stand-alone mode (which is enabled on this board) pins M2 (8) and M3 (7) control the sample rate. M2 is permanently tied to ground via a pulldown resistor. M3 is driven directly from pin 11 of J1-2. Without any modifications it's possible to select the DAC mode between single speed without de-emphasis (M3 low) and quad speed (100kHz to 200kHz sample rate). The other modes are described in CS4392KZ datasheet.

Power supply mod

The board was originally powered with 5V and 12V through a standard mini-molex connector. Initially I was running it from an ATX power supply and it worked fine. Unfortunately, while filming the first part, I have unwittingly used a different ATX power supply. That power supply most likely overvolted the board (because of little load on the 12V rail) and the filtering inductors emitted a pop and a little smoke. I've cleared that short and replaced the input with a standard DC jack for 12V input, and a 7805 linear regulator for the 5V rail. The rest of the board seems to have got no harm from that incident.

That modification is pretty much the only electrical change you need to perform to be able to use the panel outside of a PC chassis. Of course, you can cut a mini-molex cable and make a small PCB with the jack and the 7805, which would be a noninvasive form of a power supply.

example connections

Simplified schematic for USB headphone DAC setup

Back to homepage