Wednesday, 18 October 2017

Digital DI Box 05 - Proof of concept

Digital DI Box 05 - Proof of concept

I finally made it to the actual proof of concept stage where I can actually see if the Digital DI box is possible at all

Test setup

Since I don't have (yet) another TQFP-44 socket to properly test the balancing/unbalancing of audio signal, I had to drive the inverted audio through the same MCU.


Audio IN (orig) ----> ADC0 -> Invert -> DAC0 -> Audio OUT (inverted)
                        |
                        +---------+
                                  |
                     Shift to adjust for time delay
                                  |
                                  v

Audio IN (inverted) -> ADC1 ---> Subtract -> DAC1 -> Audio OUT (final)

Time delay shift is tricky to measure precisely, there is no guarantee the inverted signal is exactly one measuring cycle away from the original.

Results

The resulting signal was difficult to obtain without some tweaking of the ADC data.

First of all there is a DC bias imposed by the ADC itself. It varies over time, depending on many factors such as original audio volume, temperature, etc. The DC bias makes it hard to subtract inverted signal from the original without overflowing , it had to be adjusted manually. NB: use low pass filter to capture the DC component on separate ADC channel to remove it.

Secondly the time delay between the inverted and original signals caused distortions in the output. Accurate measure of the delay would help, although I am not sure how to perform it reliably. May need to run a few tests with predefined waveform on DAC to understand the timing of conversion.

Overall if the above two problems get solved I can postulate that the Digital DI Box is possible to implement with minimal external components. I will wait for the socket, with two MCs I should be able to test balancing/unbalancing without (significant) time delay.

No comments:

Post a Comment

Is low level programming still relevant these days?

The levels of abstraction have made the application programming much easier and faster. But everything comes at a price. This is a new ...