Cis mode - Mic issues

Hi,

With this setup in Issue with Stereo Sound from External Codec on nRF5340 DK (SDK v2.6.2) , I successfully built a CIS mode using my nRF5340 DKs, enabling stereo sound while the microphone is active.

However, I am currently experiencing several issues:

  • The recorded microphone signal is accelerated, playing back faster than it was recorded.
  • The input signal quality is poor when using an analog microphone, but it improves significantly with a digital microphone.
  • When using the microphone and playing audio through the headset simultaneously, the recorded sound is barely audible (very low signal strength).
  • Occasionally, one of the DKs disconnects, causing a complete loss of audio.

Any insights into what might be causing these issues? and how might they be solved?

Thank you in advance—I truly appreciate your time and support.

Best regards,
Abdulmohaimen Algamoudi 

Parents
  • Hi,

    On which specific board do you experience issues?

    Do you still use NCS v2.6.2?

    Best regards,
    Dejan

  • Hey Dejan,
    The nrf5340 audio DK as well as the BC40C from Fanstel.
    The sdk is V2.8.0

    Thank you in advance

    Best regards,
    Abdulmohaimen Algamoudi 

  • Hi Dejan,
    Thank you so much—Looking forward to your feedback. 

    I truly appreciate your time and support.

    Best regards 
    Abdulmohaimen 

  • Hi Abdulmohaimen,

    Previous demo worked for combining L and R into one frame and sending it to a single headset. I have checked internally the requirements which could be supported by the CPU. 
    Scenario of having CIS gateway sending stereo channel stream (combined left and right into a frame) to 2 headsets and having USB as interface to collect MIC from both headsets, will probably (i.e. can be expected to) overload available bandwidth. Unfortunately, it cannot be expected that gateway side will be able to handle
    - encoding 2 streams for 2 headsets
    - decoding 2 streams from MIC in both headsets
    - use USB as audio interface

    Best regards,
    Dejan

  • Hi Dejan,

    Thank you for your feedback.

    However, the issue with the accelerated microphone signal persists even when using a single headset board connected to the gateway, running the initial code from the nRF SDK (without no modification with on board codec and using the jack onboard nrf5340 by pluginng headphone with mic to it). You might want to try the initial setup pf the sdk yourself—by enabling:

    CONFIG_STREAM_BIDIRECTIONAL=y
    

    in the prj.conf file, you should be able to hear the accelerated  recorded microphone signal.

    The main problem for me right now is the accelerated microphone signal. Ideally, I can like to use just one headset board and still achieve a proper CIS mode that handles both left and right channels.

    Could you advise how to fix this microphone issue? It occurs even with the initial configuration of the nrf SDK, or using only one headset board and the extarnal hardware codec.

    Thanks in advance!

    Best regards,
    Abdulmohaimen 

  • Hi Abdulmohaimen,

    Abdulmohaimen said:
    However, the issue with the accelerated microphone signal persists even when using a single headset board connected to the gateway, running the initial code from the nRF SDK (without no modification with on board codec and using the jack onboard nrf5340 by pluginng headphone with mic to it).

    Is scenario the same as shown in the picture previously, just with one headset instead of two? Which code changes (specified in your second ticket) are now relevant to gateway and headset? Please provide details about the setup and code changes in this case. If you want to keep your code changes private, you can specify changes in your second ticket. If you do so, please let me know here.

    Best regards,
    Dejan 

  • Hi Dejan,

    Is scenario the same as shown in the picture previously, just with one headset instead of two? Which code changes (specified in your second ticket) are now relevant to gateway and headset?


    Yes, it's the same, with the same changes applied. However, as I mentioned earlier, the issue with the accelerated mic signal also occurs with the default configuration of the nRF5340 Audio DK and its original SDK code. Both scenarios are shown in the figure below.

    Best regards,
    Abdulmohaimen

Reply
  • Hi Dejan,

    Is scenario the same as shown in the picture previously, just with one headset instead of two? Which code changes (specified in your second ticket) are now relevant to gateway and headset?


    Yes, it's the same, with the same changes applied. However, as I mentioned earlier, the issue with the accelerated mic signal also occurs with the default configuration of the nRF5340 Audio DK and its original SDK code. Both scenarios are shown in the figure below.

    Best regards,
    Abdulmohaimen

Children
  • Hi Abdulmohaimen,

    The issue might be related to CPU. Bidirectional communication with USB can stress CPU too much on a gateway side so that it cannot handle MIC return properly. This can lead to some packets being dropped which causes audio stream to become distorted. Potential solution could be switching to 16 KHz as default for bidirectional communication. You could try to test (make a trial) using the following latest branch
    https://github.com/rick1082/sdk-nrf/commits/cis_stereo_audio_sink_pre280/
    Please not that this is a demo branch and therefore there is no warranty or support guarantee. The code in this demo branch is provided as-is. You should do your own testing to check and verify desired functionality.

    Best regards,
    Dejan

Related