[CYW43907] Full-Duplex I2S support ?

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
JoLE_3168931
Level 3
Level 3
First like received Welcome!

Hello,

I am currently designing a wireless VOIP-like product based on the 43907 MCU.

Reviewing the audio libraries/drivers, I found out a worrying comment in the I2S platform driver (platform_i2s.c):

/* FIXME Revisit when full-duplex is fully implemented! */

  static inline void I2S_LOCK_PORT( platform_i2s_port_t port ) {

      (void)0; /* TODO */

  }

Does it mean that I should not use the audio API in a multi-threaded application (with one TX thread and one RX thread) ?

What about a single thread application ?

As far as I know, there is no mention of such limitation in the documentation.

For now, I patched the WICED audio module to allow async IO and managing the full duplex transactions in a single thread (without any wiced_audio_wait_buffer() blocking call).

But is this enough ?

Thank you for your help.

0 Likes
1 Solution
RaktimR_11
Moderator
Moderator
Moderator
500 replies posted 250 replies posted 100 replies posted

CYW43907 I2S hardware supports full-duplex communication but the driver for that is not completely developed which is why you can see the comment mentioned in platform_i2s.c.

If you have already allowed async IO and can manage the full duplex transactions, I believe that should be enough.

View solution in original post

0 Likes
6 Replies