cancel
Showing results for 
Search instead for 
Did you mean: 

USB CDC Problems on windows 10

Hallo everyone, I have an Olimex Dev Board with the STM32F407ZGT6 on it. I implemented the USB Middleware as VCP (Virtual COM Port) and it worked perfectly well on my windows 7 PC. Since I migrated to windows 10 I've been unable to connect to the VCP.

NB: I have not modified my code.

I will be thankful if someone could hint me on how to solve this problem. Thanks in advance.

1 ACCEPTED SOLUTION

Accepted Solutions
Bob S
Principal
9 REPLIES 9
Pavel A.
Evangelist III

What software is on the Windows side? (ex . Teraterm, something your own?)

Do you use a custom driver on Win 10 or the in-box one?

-- pa

I use HTerm or Putty. What do you mean by in-box driver?0690X00000AqUlfQAF.png

The Device Manager clearly shows that everything is working well but I can't get connected to it.

Bob S
Principal
BKrag.211
Associate

I had the same issue, where WIndows 7 works fine, but Windows 10 doesn't.

But there is a solution =)

Uninstall STM32 ST-LINK Utility.

While your Dev Board is connected, uninstall and delete the "STMicroelectronics STLink Virtual COM Port (COMxx)" device from device manager.

This should completely remove the ST driver dated sometime in 2017, which seems to be incompatible with ST Link Utility!

(And this ST driver from 2017 is probably automatically being installed the first time you connected the board, but without yet having the STM32 ST-LINK Utility installed)

Then reinstall STM32 ST-LINK Utility and remember to install the device driver, which is prompted for during installation. Now everything works perfect =)

This time you will see a ST driver dated sometime in 2013 in the device manager, which is the device driver installed together with the STM32 ST-LINK Utility.

Maybe ST should make their tool compatible with their own latest driver from 2017 and not the one from 2013...

Surprisingly I could open the COM Port with Teraterm. After trying with HTerm and Putty which could not open.

Unfortunately this did not work for me. I did exactly what you described in your post. In the Device Manager the new driver was dated 2013. I dont know what else to do.

Thanks for the Link but I dont have any idea of what should be written under CDC_SET_LINE_CODING and CDC_GET_LINE_CODING cases. Thanks for sharing.

I'm sorry to hear that.

Personally I had the issue on a Nucleo-F411RE board, where the issue was solved following these steps.

Before solving it, the STM32 ST-LINK Utility showed this in the settings window after pressing the refresh button.

0690X00000AqXzGQAV.png

Thanks so much for your help and link. I found the solution to my problem. I had to add the codes under CDC_SET_LINE_CODING and CDC_GET_LINE_CODING. Thanks again.