cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F767 Nucleo VCP USB setup with safe power scheme

JMoho.2179
Associate

HI team, I am attempting to setup an STM32F767ZI Nucleo-144 board application with the USB setup as a FS device VCP (virtual com port). My board uses external power input via VIN but there is no guarantee that it will be powered up BEFORE the USB port is plugged into a host PC. This is something I cannot expect to control with our final product. I can fully expect our USB device and a target PC to be powered up nearly simultaneously. I found that depending on the order of connections, Windows will either find the USB VCP or report the USB device as UNKNOWN with no VID/PID.

I then found in the reference document for the Nucleo board (UM1974, section 6.10) a warning saying that the USB port cannot be used to power the board and that the Nucelo board must be powered before attaching to a host otherwise damage to the Nucleo board can be done via current injection.

Here is the section:

Warning:USB Micro–AB connector (CN13) cannot power the Nucleo-144 board. To avoid damaging the STM32, it is mandatory to power the Nucleo-144 before connecting a USB cable on CN13. Otherwise there is a risk of current injection on STM32 I/Os.

So now I believe I understand what might be causing my problem.

So my questions are:

  1. Is there a way around this so I can safely plug the nucleo based device into a PC with any combination of Nucleo and PS power combinations?
  2. Is there a better STM7 class Nucleo board that might not suffer from this potential danger of damage?
  3. Is there a layer of hardware generally added between the USB port and a MCU that would typically protect in this scenario? Is there a reference schematic for such a protection layer?

Any other suggestions for creating a reliable VCP on a powered USB device? One other option is to add a USB to serial TTL converter chip like a CP2102 and use this instead of the built in VCP.

Thanks in advance!

1 REPLY 1

I personally would run a jumper wire from USB VBUS (from R62 or C54) to E5V.

Unless that causes problems with any of your equipment attached to the Nucleo, potentially not expecting Nucleo being powered from the PC.

JW