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.
