STM32F4 Speaker and Microphone USB
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2015-12-07 7:10 AM
The original post was too long to process during our migration. Please click on the attachment to read the original post.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2016-08-03 10:23 AM
You are not alone. It seems that ST engineers are just weak to get an answer. I seen that LPC users solved such problems and generate a lot of project with mic+speaker both
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-04-03 7:14 AM
Hello,
Up,
Same for me, it works alone but not together.
Can someone provide a simple example with mic+speaker please ?
AR
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-05-26 8:47 AM
I have descriptors figured out. PC identifies the device as both speaker and microphone. But I cam not getting IN stage call back for isochronous IN endpoint. Has any one figured it out?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-06-01 5:39 AM
Hi,
The host needs to send IN packets, you can tell the rate of these IN packets with a field in the standard descriptor of your Endpoint. Check that everything ok (endpoint available and well configured, terminal connected to EP...), it's easier with 'tdd.exe' if you are on Windows, and it will tell u if something wrong. I can send u a working example too, to check the differences with a specific soft.
+
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-06-01 1:53 PM
Hi Andy, Thank you for the response.
I got the IN endpoint to work. If I configure the endpoint to have a maxPacketSize of any thing more than 128, host ends up reading only 4 bytes.
I configured the endpoint to 64 bytes MPS and it works fine. To use this, I tried 16K, 2 channel, 2 bytes per frame configuration. 16000 * 2 * 2 /1000 gives me the MPS of 64.
Any idea if this restriction is form Windows or from STM32F407?
Now I am facing the audio distortion issue. I have I2S full duplex mode configured for audio communication which is connected to an external codec. Trying to figure out if the issue is from I2S or the synchronization of buffers.
Thanks once again,
Pradeep.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-06-02 3:02 AM
Hi,
ok just found, check if u have this code below in the USBD_AUDIO_Setup() function (in usbd_audio.c) :
case USB_REQ_SET_INTERFACE :
if ((uint8_t)(req->wValue) <= USBD_MAX_NUM_INTERFACES) { haudio->alt_setting = (uint8_t)(req->wValue); if( haudio->alt_setting == 1) { USBD_AUDIO_DataIn(pdev,0x81); } }U can change the alt_setting condition if u have other configuration.
If this doesnt work, send me your config descriptor, ill have a look
AR.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-06-08 8:44 PM
Thanks Andy,
I got it to work.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2017-08-21 11:23 PM
Can you share your code? Thank you.
