cancel
Showing results for 
Search instead for 
Did you mean: 

Etching Brds - USB Prob - Solution Found

jlchoobs
Associate II
Posted on July 24, 2012 at 20:15

I am building my own stm32f4 boards. The code runs, but I cant get the USB to be recognized by windows - just Device-Not-Recognized. But the same code works on my DemoBoard.

I followed the DemoBoard Schem except for the EMID02USB03F2 chip.

USB connected as :

PA9 - UsbVbusP1

PA11 - /\/\ - UsbDmP2 (res=20R)

PA12 - /\/\ -UsbDpP3 (res=20R)

PA10 - UsbIdP4

GND - UsbGndP5

I still do not have the USB working on my own Boards (while it does work on the Demo Board). And, I followed the Demo Brd Schem explicitly.

Except that I did not add the EMID02USB03F2 chip. Is this neccessary ? - It was not suggested in the Specs.

Anybody have any useful ideas ?

0690X0000060MlmQAE.gif

18 REPLIES 18
tsuneo
Senior
Posted on July 25, 2012 at 21:29

Swqpped D+/D- connection

Connection from the D+/D- pins of the USB receptacle to the MCU USB DP/DM pins may be swapped.

This trouble is often seen on custom boards.

In this trouble, PC detects device plug-in, but it fails enumeration (unknown device).

To confirm this troulbe, run USBView on your PC, and click ''Unknown device'' on the connection tree.

USBView output when D+/D- connections are swapped

 - Unknown device

 

 Device Descriptor:

 bcdUSB:             0x0000

 bDeviceClass:         0x00

 bDeviceSubClass:      0x00

 bDeviceProtocol:      0x00

 bMaxPacketSize0:      0x00 (0)

 idVendor:           0x0000

 idProduct:          0x0000

 bcdDevice:          0x0000

 iManufacturer:        0x00

 iProduct:             0x00

 iSerialNumber:        0x00

 bNumConfigurations:   0x00

 

 ConnectionStatus: DeviceFailedEnumeration

 Current Config Value: 0x00

 Device Bus Speed:      Low   <----------

 Device Address:       0x00

 Open Pipes:              0

If the stm32f4 (Unknown device) is detected as low-speed, the D+/D- connections are swapped.

MS USBView, distributed on FTDI site

http://www.ftdichip.com/Support/Utilities/usbview.zip

Tsuneo

jlchoobs
Associate II
Posted on July 26, 2012 at 07:15

STM32 Manuals and Schematics CORRECTION - USB Pinout Backwards

In Manufacturing my own Boards, and with the assistance of Tsuneo,

I have found that the SPECS specify the USB PINOUT Backwards.

This is afterI analyzed the Specs and Schems

- which match my Eagle Pcb Files and my Boards.

And, I tested this from Cable-end to Micro-Pins with a MultiMeter.

The UsbVBus+ and UsbGND are Correct,

but the UsbDm and UsbDp are specified BACKWARDS

in both Stm32F4_Ref Manual and the Discovery Board Schems.

No, you can not just flip the cable - Only TWO of the PINS are Backwards.

PINOUT CORRECTION below :

  p1=UsbVBUS -> PA9

  p2=UsbDM     -> res=20R ->  PA12  (not PA11)

  p3=UsbDP      -> res=20R ->  PA11  (not PA12)

  p4=UsbID       -> PA10

  p5=UsbGND   -> GND

-> Take HEED of this NOTE CORRECTION before making Boards !

------------------------------------------------------------------

Tsuneo,

You are kidding me.  I see the results as you say.  So the schematics are backwards ?

Yes, I use USB-View, besides a Usb packet logger analyzer.

Let me check the Usb connections.

I forgot about this simple issue.  For example, just Google for USB PLUG PINOUT IMAGE , then click the images page.  Notice that the Plug on the Right is labeled Gnd D- D+ V+ , which should be Gnd D+ D- V+.  This error has been on there for years like this - and is still there. 

Bingo ! - That fixes it.

So, looking at the Stm32f4Discovery and Stm3240g and Stm32405_RefMan. 

And scanned over my Eagle Pcb Files which match the Schems and Spec.

-- It seems that they have the Pinouts backwards !

I followed these Pinouts - but they are backwards - CORRECTION below :

p1=UsbVBUS -> PA9

p2=UsbDM     -> res=20R ->  PA12  (not PA11)

p3=UsbDP      -> res=20R ->  PA11  (not PA12)

p4=UsbID       -> PA10

p5=UsbGND   -> GND

Sounds ridiculous that this Error went through the Manuals and specs,

- but I have seen it before.

Explains why I have not seen and I can not find Schems and DIY Projects for the STM32 with USB.

Tsuneo, thanks - for the unique and constructive idea and solution.

--------------------------------------------------------------------------------

From: chinzei.tsuneo

Connection from the D+/D- pins of the USB receptacle to the MCU USB DP/DM pins may be swapped.

 ConnectionStatus: DeviceFailedEnumeration

 Device Bus Speed:      Low   <----------

If the stm32f4 (Unknown device) is detected as low-speed, the D+/D- connections are swapped.

 

mk299
Associate III
Posted on July 26, 2012 at 11:25

Would you mind to post a screenshot of your original schematic? Maybe it would help to clarify the problem.

frankmeyer9
Associate II
Posted on July 26, 2012 at 11:53

So for the Nonsense Posting members - seems that following To-The-Spec is Wrong.

 

Post your Nonsense somewhere else ...

 

Just stop asking nonsense questions.

jlchoobs
Associate II
Posted on July 26, 2012 at 13:44

Whats left for me to list ?

Just look in the Manuals yourself that I listed: Stm32f4Discovery_Board_Manual Schem at end, and Stm32f405_Ref_Man fig 343 on page 934.  The Pinouts do not function hooked up this way - DM and DP need be reversed PA12 and PA11.

I tested this from cable end to Micro Pins to UsbDM and UsbDP pins are specified backwards.
cm600
Associate II
Posted on July 26, 2012 at 15:22

It is working for me 🙂 PA.11 D- PA.12 D+

See attachment for SCH.

________________

Attachments :

BB.png : https://st--c.eu10.content.force.com/sfc/dist/version/download/?oid=00Db0000000YtG6&ids=0680X000006HtUM&d=%2Fa%2F0X0000000aQj%2FuNfQQfpm6rl6vsIs0CCsZf.vm2Ov4_lF4ua3LB3WsL0&asPdf=false
Posted on July 26, 2012 at 16:44

It is working for me 🙂 PA.11 D- PA.12 D+

Here too, and the ST-LINK USB connector is demonstrably connected PA11 DM, PA12 DP of the STM32F103's on several different discovery designs and matches the schematic. I haven't drunk enough Kool-Aid this morning to go pull uDFN packages off the board.

Everyone needs to do their own due diligence, but I'm not buying into this conspiracy nonsense.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
mk299
Associate III
Posted on July 26, 2012 at 20:19

I did exactly what you supposed me to do and looked into the manuals (DM00039084 & DM00031020 and the datasheet DM00037051), but I was not able to reconstruct your problem. I can't see any error there.

When I read the following sentence from [DEAD LINK /public/STe2ecommunities/mcu/Lists/cortex_mx_stm32/Flat.aspx?RootFolder=/public/STe2ecommunities/mcu/Lists/cortex_mx_stm32/STM32 Manuals and Schematics CORRECTION - USB Pinout Backwards&currentviews=49]your first post in this thread:

<cite>

I forgot about this simple issue.  For example, just Google for USB PLUG PINOUT IMAGE , then click the images page.  Notice that the Plug on the Right is labeled Gnd D- D+ V+ , which should be Gnd D+ D- V+.  This error has been on there for years like this - and is still there.

</cite>

I guess that you switched the pinout of your connector according to one of the several wrong images like, e.g.

http://www.google.de/imgres?imgurl=http://wiki.bemaniso.ws/w/images/e/e9/USB_A_pinout.jpg&imgrefurl=http://wiki.bemaniso.ws/wiki/How_to_make_parallel_adapters&h=145&w=205&sz=9&tbnid=7dep87ZBSKq7zM:&tbnh=93&tbnw=132&prev=/search?q%3DUSB%2BPLUG%2BPINOUT%2BIMAGE%26tbm%3Disch%26tbo%3Du&zoom=1&q=USB+PLUG...

, instead of using a more trustful source as for example

http://en.wikipedia.org/wiki/Universal_Serial_Bus#USB_standard_connectors

or

http://www.usb.org/developers/docs/usb_20_071012.zip

.

Because of this I asked for a screenshot of your schematic.

jlchoobs
Associate II
Posted on July 26, 2012 at 21:54

What conspiracy - Bugs just happen ...

Maybe it is backwards on the Board.

I was refering to a later Design File v1065 , while the Printed File is v945.

I think that I had swapped the pins after they were printed in design.

Usb is on the Bottom of the Board and I probably got them backwards.

Thanks for the help - for the members who did the research.