cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F446VET USB FS Peripheral isn't working

Azhan.1
Associate II

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 !

This discussion is locked. Please start a new topic to ask your question.
1 ACCEPTED SOLUTION

Accepted Solutions

0693W000000W8jXQAS.jpgThanks 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.

View solution in original post

4 REPLIES 4
waclawek.jan
Super User

DFU bootloader works?

JW

Azhan.1
Associate II

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....

waclawek.jan
Super User

Then the problem is either in the crystal/HSE, or in the USB connection (e.g. swapped DP/DM, improper protection circuitry etc.)

JW

0693W000000W8jXQAS.jpgThanks 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.