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.

TLV320AIC3254: Use 3 Mic. in AIC3254..

Part Number: TLV320AIC3254


Hi Team,

My customer wants to use total 3 Mic. for their design and found some problems. 

The work mode is as below.

1. while no external Mic3. plugin, the internal Mic1. and Mic2 are turn on.

2. Once the external Mic3. plugin, internal Mic1 and Mic2 need to be turned off

However, when Mic3 exists, they cannot turn off Mic1 and Mic2, all of 3 Mic. can hear the sound.

BTW, Mic3 can be turned off in this situation.

Please help to check if this is a setting issue or a hardware limitation.

Thanks.

Here is the code:

// internal mic
aud_i2c_write(0x00, 0x01); // Goto Page 1
aud_i2c_write(0x33, 0x68); // Mic Bias enabled, Source = LDO_IN, 2.5V
aud_i2c_write(0x34, 0x10); // 52: Left  MICPGA Positive Terminal Input Routing Configuration Register, IN2L is routed to Left MICPGA with 10k resistance
aud_i2c_write(0x36, 0x10); // 54: Left  MICPGA Negative Terminal Input Routing Configuration Register, IN2R is routed to Left MICPGA with 10k resistance
aud_i2c_write(0x37, 0x40); // 55: Right MICPGA Positive Terminal Input Routing Configuration Register, IN1R is routed to Right MICPGA with 10k resistance
aud_i2c_write(0x39, 0x10); // 57: Right MICPGA Negative Terminal Input Routing Configuration Register, IN1L is routed to Right MICPGA with 10k resistance
aud_i2c_write(0x3A, 0xF0); // Floating Input Configuration Register

// external mic
aud_i2c_write(0x00, 0x01); // Goto Page 1
aud_i2c_write(0x33, 0x68); // Mic Bias enabled, Source = LDO_IN, 2.5V
aud_i2c_write(0x34, 0x04); // 52: Left  MICPGA Positive Terminal Input Routing Configuration Register, IN3L is routed to  Left MICPGA with 10k resistance
aud_i2c_write(0x36, 0x04); // 54: Left  MICPGA Negative Terminal Input Routing Configuration Register, IN3R is routed to  Left MICPGA with 10k resistance
aud_i2c_write(0x37, 0x04); // 55: Right MICPGA Positive Terminal Input Routing Configuration Register, IN3R is routed to Right MICPGA with 10k resistance
aud_i2c_write(0x39, 0x04); // 57: Right MICPGA Negative Terminal Input Routing Configuration Register, IN3L is routed to Right MICPGA with 10k resistance
aud_i2c_write(0x3A, 0x0C); // Floating Input Configuration Register

And the schematics:

AUDIO CODEC-TLV320AIC3254_230322_1456.pdf

  • Hi,

    The settings look ok, you can leave register 0x3A to its default 0x00 since all inputs are routed to the terminals.

    When IN3 is used, both IN1 and IN2 are off already based on the settings above.

    Maybe due to close proximity of these mics, the signals are picked up by the other mic.

    The crosstalk of the input channels is quite high for this device.

    Regards

  • Hi Sir,

    Thanks for your reply! 

    So what you mean is the layout issue, not Mic proximity actually, right?

  • Hi,

    I meant from the settings, the path for mic1 and mic2 are off so it is not receiving data from those inputs.

    Maybe what they actually picked up is due to these mics are positioned closed enough that they are coupled into mic3.

    Ask them to silent the other 2 mics when using mic3 and check.