nRF5340 Audio - 3 streams broadcasting

Hi Nordic Team,

Is there any way to input 3 audio streams (through I2S ) on nRF5340DK board are there any extra I2S Port available to input one more sinusoidal signal and what might be some hardware limitations for the same .

Regards
Sainath

Parents
    • After reading through the hardware schematics , looks like the Headphones (Audio Out ) port cannot be used.
    • From the CS47L63 datasheet , its mentioned that it has 4 analog microphone (DMIC) inputs, can the team suggest the requisite pins on CS47L63 which is on the Audio DK board to provide the input ?
    • Or any other suggestion that can be used , can both USB and I2S be used simulataneously?
  • Hi Sainath,

    Nambiar said:
    After reading through the hardware schematics , looks like the Headphones (Audio Out ) port cannot be used.

    That's right. You can use this only for Audio out.

    Yes, you should be able to use USB and I2S simultaneously. But please note that the current USB implementation only has 2 (stereo) endpoints. So as of now, using USB for an additional third input is not an option.

    -Priyanka

  • Yes but I was thinking to use both USB & I2S at the same time then in that case I am getting at least 4 streams at once . That is possible right ?

    What you meant is I cant increase the USB endpoint to 3 , to take in 3 mono audio channels, ?

Reply
  • Yes but I was thinking to use both USB & I2S at the same time then in that case I am getting at least 4 streams at once . That is possible right ?

    What you meant is I cant increase the USB endpoint to 3 , to take in 3 mono audio channels, ?

Children
  • Hi Sainath,

    Apologies for the delay. The main issue is the CPU power. Encoding each stream takes ~30 % CPU, so as of now due to limitations, we support only two streams. But regarding using USB & I2S at the same time, I have inquired internally and will get back to you.

    -Priyanka

  • Thanks for the response , awaiting the feedback. 

  • Hi Sainath,

    The problem with the CPU processing time is not with fetching the data, but with encoding it. It doesn't matter if there is 2 streams from USB and 2 from I2S, it will still require about 120% CPU to encode them (~30% per channel). Also, the USB takes 20% + CPU as well. So I would say it is quite difficult.

    -Priyanka

  • So the only possible way would be to use a Softdevice and use NRF5340 as only the controller and let it receive the raw PCM encoded packet (3 streams) .

  • I don't think that is also a good idea. That would lead to a much too high bit rate. The sole reason for having the codec there is to reduce bitrate.

    -Priyanka