This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TLV320AIC3110: Whole chip configuration sequence, single headset mic configuration and headphone reinsertion not resulting in sound.

Part Number: TLV320AIC3110
Other Parts Discussed in Thread: TLV320AIC3206

I am building an aviation headset in the medium term but am currently building a test board to try a few things out first. I am making use of a single speaker, stereo headphones and a single mic input, connected to the headphone mic connection. I have based this evaluation / dev board on a similar arrangement as the Teensy audio shield, with Teensy 3.2 to conduct the IC configuration over I2C, send and receive I2S audio and control codec reset etc.

At the top level, I am after a recommended configuration sequence, including information on what must be powered down or muted before related registers are changed. 

In more detail, once I have the startup sequence sorted, I would like to better understand the fixed gain vs AGC and PGA better for both a musical synth/instrument type sampling application for the microphone but also, for the medium term, the removal of cockpit noise and preservation of user voice signal. 

One of the unusual behaviours I have observed with testing so far is that I have also noticed that when I remove the heaphones from the 3.5mm jack, the audio does not resume when I plug them back in.

I have based my current board configuration on the Teensy audio library configuration for the TLV320AIC3206 but there is not enough similarity between that chip's registers to be sure that I am doing the configuration correctly. I am able to play audio over I2S into the speakers and headphones, change the output volume and I am quite happy with this apart from the muted headphones when I reinsert them. I am able to configure the microphone and hear audio that is streamed to the Teensy over I2S and then back to the codec for output on headphones. The Teensy is able to add eg delays etc. I have managed to get the AGC working but I do think there is a bit of noise and would appreciate tips on a methodical process to follow to search the configuration space for optimal performance (sensitivity, noise rejection). Eventually this will mean cockpit background noise but I am happy to start in quieter environments and work up to that point.

  • Hi Simon,

    I am not very familiar with the Teensy Audio Shield or libraries. Could you point me to the schematic of the board?

    AIC3206 device can be configured to perform the insertion and/or removal  detection but the powering on and powering off of the headphone amplifiers have to be initiated by the host through I2C/SPI commands. It appears that the the removal event is being handled properly in the system but not the insertion event.


    Please refer to section 2.11.1 Headset Detection in the Application Reference Guide www.ti.com/.../ for details on how to enable this function.

    The sequence of steps to handle the insertion event would be-

    (1) Enable insertion detection interrupt with the appropriate de-bounce time

    (2) After interrupt, read sticky flag registers to check if headset insertion event is detected and

    (3) Power-on the headphone amplifiers if insertion event is detected.

    Please check and let us know which of the above three steps is not working on your system.  

    Diljith

  • Hi Diljith, 

    Thanks for the reply. I am not working with the AIC3206, I am working with the AIC3110. I only referred to that chip because the original code to configure my AIC3110 was informed by studying the Teensy library code for the AIC3206. Does your reference guide advice apply to the AIC3110? 

    Simon

  • Hi Simon,

    For AIC3110, please refer to section 7.3.10.5 Headset Detection of the datasheet https://www.ti.com/lit/gpn/tlv320aic3110/.

    Diljith

  • Thanks I will check this out and come back to you with findings Diljith.