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.

using tinycap headset loopback not working

Other Parts Discussed in Thread: TWL6040

Hi,

In my project i am using omap4430 & twl6040.

i am able to record voice using Sound recorder application with headset. But if i using tinycap application headset recording in playback loop is not working.

Commands i am issuing are

#DL configuration
tinymix 38 1 #DL1 PDM Switch
tinymix 50 0 #DL2 Mixer Tones
tinymix 54 1 #DL1 Mixer Tones
tinymix 78 1 #Earphone Playback Switch
tinymix 81 0 #Headset Right Playback
tinymix 82 0 #Headset Left Playback
tinymix 83 0 #Handsfree Right Playback
tinymix 84 0 #Handsfree Left Playback
tinymix 7  0 #DL1 Tones Playback Volume
tinymix 35 118 #DL1 Gain
#UL configuration
tinymix 4 2 #AMIC Equalizer
tinymix 60 11 #MUX_UL11
tinymix 61 11 #MUX_UL10
tinymix 86 0 #Analog Left Capture Route
tinymix 56 1 #DL1 Mixer Capture
tinymix 9 115 #DL1 Capture Playback Volume
tinycap /data/a.wav -d 1 -c 2 -e 3 -r 48000 -b 32 -t $1

using above sequence i am observing with below cmd

adb shell omapconf show abe atc

ATC for McPDM DL is running (Transfer form DMEM to HW IP):
    ATC pointer are moving (w:5 r:5)
    Base:0x40183800, iter: 24, FIFO size:120

ATC for McPDM UL is running (Transfer form HW IP to DMEM):
    !!! HW IP pointer not moving
    !!! ABE pointer not moving
    Base:0x40183a00, iter: 4, FIFO size:120

ATC for CBPr4 is running (Transfer form DMEM to HW IP):
    ATC pointer are moving (w:5 r:5)
    Base:0x40182400, iter: 1, FIFO size:120

ATC for CBPr5 is running (Transfer form HW IP to DMEM):
    ATC pointer are moving (w:5 r:5)
    Base:0x40182c00, iter: 1, FIFO size:120

Request you to please help me to resolve my issue.

Thanks,

Gaurav

  • Hi Gaurav,
    On what OS are you working, in order to replicate your configuration. I guess the muxing may be different, have you tried the loopback with different kind of input?
    Regards,
    Boyko
  • Hi,

    I am developing my project on Android kitkat.

    No issue seen if i use main mic as source on DL1 & HS as sink on DL2.

    I am not 100% sure but it seems some issue with DL1 when we use HS as source (input) for loopback using tinycap and DL2 as sink (output).

    Able to resolve my issue by doing changes in tinycap.c 

    Thanks

    -------------------------------------------------------------------------------

    In continuation to my earlier post

    Hi,

    It seems my workaround is not working 100%. 

    Need experts help to resolve my issues.

    Need to know why PDM-UL path pointers are 'NOT' moving, while PDM-DL path pointer are moving when the issue occurs. To my understanding (might be fully wrong) this scenario can only occur if the clocks are hold back & not release.

    I dumped data using tinycap from PDM-UL path and it is all garbage.

    For my experiments i tried, if i route the sink/output to DL2/speaker no issue is seen & after this if route the sink/output to DL1/headset no issues.

    But if again run the sequence HS as input/source & HS as output/sink issue is seen again.

    I check using omapconf all the registers related to audio seems fine. Only difference between working & not working case is PDM-UL pointers are not moving.

    Please, note i am using only tinycap executable to execute my sequence along with tinymix to configure the ABE controls.

    Currently, i am blocked in my debugging any inputs will be helpful.

    Thanks,