cancel
Showing results for 
Search instead for 
Did you mean: 

USB enable/disable pin on STM32F107

g_giacomello
Associate II
Posted on October 23, 2010 at 11:32

USB enable/disable pin on STM32F107

#stm32f107-usb-bootloader-working-without-pull-up-on-dp
7 REPLIES 7
g_giacomello
Associate II
Posted on May 17, 2011 at 14:12

Yes it is STM32F107. If I use USBUF02W6 as transceiver, then can I have problems to disconnect the device? It seems that to have a permanent internal D+ pullup. What transceiver do you suggest (NO BGA)?

Tank You

tsuneo
Senior
Posted on May 17, 2011 at 14:12

Are you talking about STM32F107, instead of STM32F017 ?

For STM32F107, D+ pull-up is integrated in the chip.

No extra port pin is required.

Tsuneo

tsuneo
Senior
Posted on May 17, 2011 at 14:12

USBUF02W6 (EMI filter w/pull-up) is not good for STM32F107.

D+ pull-up resistor isn't cut off on this chip.

STM3210C-EVAL for STM32F107VCT mounts EMIF02-USB03F2 (U4)

http://www.st.com/stonline/products/literature/um/15082.pdf

This EMI filter chip also integrates D+ pull-up, but the EVAL board leaves Rpu terminal NC.

These EMI filter/ TVS chip fit well for this purpose.

ON semi 

NUF2030XV6

http://www.onsemi.jp/pub_link/Collateral/NUF2030XV6-D.PDF

NUP4016

http://www.onsemi.jp/pub_link/Collateral/NUP4016P5-D.PDF

etc.

For self-powered device, select a TVS chip without high-side diode on D+ line

High-side diode disturbs VBUS detection. VBUS voltage is kept high at disconnection, passing through this diode and D+ pull-up.

For example, some EVAL boards mount USBLC6-2 for self-powered device, but it's wrong choice.

USBLC6-2 (good for bus-powered, but not for self-powered)

http://www.st.com/stonline/products/literature/ds/11265.pdf

Tsuneo

johnmarkmelanie
Associate II
Posted on May 17, 2011 at 14:12

I was curious if driving +5.0 V DC into PA9 while the microprocessor was powered down might cause a problem.  So I gave it a try, but I was unable to damage the chip.

johnmarkmelanie
Associate II
Posted on May 17, 2011 at 14:12

I had the same problem.  I could not get the bootloader to connect without adding an external pull-up on USB_DP.  However the real problem was with the USB_VBUS input on port PA9.  My circuit dropped the voltage from +5.0 V DC to +3.3 V DC from USB_VBUS to PA9.  The system memory (factory masked ROM) USB bootloer or USB hardware will not maintain a connection if the voltage on port PA9 is too low.  I changed my circuit to allow the +5V DC from USB_VBUS to run directly to port PA9 and now the USB bootloader works without needing any external pull-up on USB_DP.  There is an analog comparator circuit inside the microprocessor for monitoring the USB_VBUS voltage.  I do not know at what threshold voltage the internal pull-up circuit will drop out.  But +3.3 V DC is definitely too low.

The microprocessor I am using is the STM32F107VCT6 with a date code of 031 (or the 31 week of 2010).

tsuneo
Senior
Posted on May 17, 2011 at 14:12

> I was curious if driving +5.0 V DC into PA9 while the microprocessor was powered down might cause a problem.

On the datasheet, PA9 of STM32F107VCT6 is assigned to ''FT'' I/O level - ie. 5V-tolerant port. Usually, 5V-tolerant port is expected as partial-powerdown tolerant, too, by its structure. But the datasheet doesn't specify it. Usually, powerdown tolerance is shown as input leakage current at VDD = 0V. I don't see this parameter on the Electrical characteristics section on the datasheet.

Therefore, confirm it by asking to ST directly.

> So I gave it a try, but I was unable to damage the chip.

Do you mean you are connecting PA9 directly to USB VBUS (5V)?

You should have a protection resistor across VBUS and PA9, around 100k. With this resistor, leakage current is limited, even if the port would not be partial-powerdown tolerant.

Tsuneo

johnmarkmelanie
Associate II
Posted on May 17, 2011 at 14:12

Q) Do you mean you are connecting PA9 directly to USB VBUS (5V)?

A) Yes, however my new circuit will have a 1k-ohm resistor and a capacitor to ground.

ASCII Art:

USB_VBUS ---/\/\/\/\---+---||--- Ground

                                     |

                                     +--- PA9