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.

TLV320AIC3204: Stereo Differential  ICS-40638 giving 2 Channel of data not combining data

Part Number: TLV320AIC3204

Tool/software:

Dear TI Team 

I am trying to record data from the Stereo Differential  ICS-40638 ..Please find the below snap shot from schematics 
Which is connected to IN3_L and IN3_R .

Used command 

arecord -D hw:1,0 -r 96000 -c 2 -f s32_le /userdata/In3L_IN3R__Sterio_ICS-40638-1V_10Kohm.wav

Wav file 

In3L_IN3R__Sterio_ICS-40638-1V_10Kohm.wav file shows that we have 2 channel output, but for differential Mic we should get one channel output which is combined output from IN3_L and IN3_R.

please correct if i am wrong.

  • Hi,

    Can you paste a register dump? Let's check where the IN3_L and IN3_R are routed - they could be configured to be either left or right ADC, or differentially into the left or right ADC. It looks like maybe you have IN3_L into the left ADC and IN3_R into the right ADC. 

    Best,
    Mir

  • Hi Mir

    Please find the attached dump

     

    ================Page 0 dump ==========================================
    
    root@rk3576-buildroot:~# i2cdump -f -y 3 0x18 b
         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
    00: 01 00 00 00 00 00 00 00 00 00 00 10 00 00 08 08    ?..........?..??
    10: 7a 7a 04 04 00 00 00 00 00 00 00 00 00 00 00 00    zz??............
    20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    30: 00 00 00 00 04 00 40 04 00 40 00 28 28 00 00 00    ....?.@?.@.((...
    40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    70: 00 00 00 00 00 00 00 00 00 00 00 05 00 00 00 00    ...........?....
    80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    
    
    root@rk3576-buildroot:~# i2cset -fy 3 0x18 0 01
    WARNING! This program can confuse your I2C bus, cause data loss and worse!
    I will write to device file /dev/i2c-3, chip address 0x18,
    data address 0x00, data 0x01, mode byte.
    Continue? [Y/n] y
    root@rk3576-buildroot:~# i2cget -fy 3 0x18 0
    WARNING! This program can confuse your I2C bus, cause data loss and worse!
    I will read from device file /dev/i2c-3, chip address 0x18, data address
    0x00, using read byte data.
    Continue? [Y/n] y
    0x01
    
    
    ================Page 1 dump ==========================================
    root@rk3576-buildroot:~# i2cdump -f -y 3 0x18 b
         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
    00: 01 00 00 00 00 00 00 00 00 00 00 10 00 00 08 08    ?..........?..??
    10: 7a 7a 04 04 00 00 00 00 00 00 00 00 00 00 00 00    zz??............
    20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    30: 00 00 00 00 04 00 40 04 00 40 00 28 28 00 00 00    ....?.@?.@.((...
    40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    70: 00 00 00 00 00 00 00 00 00 00 00 05 00 00 00 00    ...........?....
    80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
    root@rk3576-buildroot:~#
    

  • Hi Nitin,

    Thanks for the dump. Mir is out of office today and will follow up with you on Monday.

    Thanks,
    Jeff McPherson

  • Hi,

    In page 1, registers 0x34-0x39 are setting the IN3L and IN3R microphone routing. Currently, you have IN3L going to left mic PGA and IN3R going to right mic PGA. You probably want to set register 0x37 to 00 to not route IN3R to the right MICPGA, and instead set register 0x36 to 0x04 to set IN3R to the left MICPGA with 10k resistance on the negative terminal. For your reference, here are my notes on your nonzero registers in page 1:

    00 01 #page 1
    0b 10 #overcurrent detection enabled for hpl and hpr
    0e 08 #left channel dac reconstruction filter output is routed to LOL
    0f 08 #Right Channel DAC reconstruction filter output is routed to LOR
    10 7a #hpl driver muted, gain is -6dB -> this is weird, it says it is not possible to mute when it is at this volume
    11 7a #same for HPR
    12 04 #LOL is not muted, +4dB gain
    13 04 #LOR not muted, +4dB gain
    34 04 #0000 0100 in3l is routed to left micpga with 10k resistance
    36 40 #0100 0000 cm is routed to left micpga via cm1l with 10k resistance
    37 04 #in3R is routed to right micpga with 10k resistance
    39 40 #cm is routed to right micpga via cm1r with 10k resistance
    3b 28 #left micpga gain is enabled, 20dB
    3c 28 #right micpga gain is enabled, 20dB

    Let me know if you have more questions.

    Best,
    Mir

  • Hi Mir 
    Thank you for reply i will check this on next week , and update you . Thank you so much for helping out .