STM32F446VET USB FS Peripheral isn't working
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-04-20 12:13 AM
Hi all,
I've met a weird issue, when using STM32F446VET chip to connect PC by USB, and PC alerts 'USB can't be recognized'.
I've go throught some related topics on the forum, but unfortunately all didn't help. For example,
1) disable VBUS sensing
2) increase stack and heap size to 0x2000 or even 0x10000 .
3) since the board is powered by USB, and STM32F446VET doesn't have VBUS pin. I've tried to add an external pull-up 1.5KΩ resistance
4) make sure USB clock is 48MHZ
When i try to inspect the code(STM32F446ZE-Nucleo example of STM32Cube_FW_F4_V1.25.0 package, downloaded from ST website), I found some other strange phenomenons:
1). the core provides USBRESET and ENUMDONE interrupts, but no OEPINT and IEPINT interrupts at all
2). the USB code provides RXF_LVL interrupt in OTG_GINTSTAT, but OTG_GRXSTSP remains 0, and OTG_DOEPTSIZ0 is 0x60080018(PKTCNT field is 1, indicating no packet is written into RX FIFO)
Has anybody met or solved similar question, or any other suggestion is really appreciated.
Thanks a lot !
Solved! Go to Solution.
- Labels:
-
STM32F4 Series
-
USB
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-04-20 7:39 PM
Thanks a lot @Community member . Your suggestion is super helpful. :thumbs_up:
After double checking DP/DM swapping probability, we found that J10's DP is connected to J3's DM, in other words, swapped !! And USB works after correcting them.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-04-20 1:07 AM
DFU bootloader works?
JW
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-04-20 1:26 AM
Hi @Community member ,
Thanks. I'm using another board, not Nucleo board, and without programing DFU bootloader...
But even i try with DFU example, the USB behavior is same....
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-04-20 2:05 PM
Then the problem is either in the crystal/HSE, or in the USB connection (e.g. swapped DP/DM, improper protection circuitry etc.)
JW
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
2020-04-20 7:39 PM
Thanks a lot @Community member . Your suggestion is super helpful. :thumbs_up:
After double checking DP/DM swapping probability, we found that J10's DP is connected to J3's DM, in other words, swapped !! And USB works after correcting them.
