cancel
Showing results for 
Search instead for 
Did you mean: 

I made a PCB board with STM32F407VGT6 (MCU) + STM32F103CBT6 (Debugger). I get the message ''Usb device not recognizable''. Any idea why?

SSyme.1
Associate II

Hi all, I made a PCB board with STM32F407VGT6 (MCU) + STM32F103CBT6 (Debugger). I get the message ''Usb device not recognizable'' when I try to connect it to my computer via USB. I include the pics of my schematic. I followed the schematic of STM32F407G-DISC1

11 REPLIES 11
TDK
Guru

Does the STM32F103 have ST-Link firmware on it?

You're also going to have issues with MCO trying to drive a crystal, unless you don't load some components.

If you feel a post has answered your question, please click "Accept as Solution".
SSyme.1
Associate II

Just to take some things out of the equation, I read the correct voltages on all of the relevant pins.

I haven't loaded any firmware to the STM32F103 but how am I supposed to do that if the device is not recogized?

Can you please elaborate what do you mean by ''load some components''?

Do you think my schematic is correct in terms of wiring the controllers?

TDK
Guru

I think this has a fundamental flaw. The STM32F103 on the Discovery board has ST-Link loaded. Yours does not. ST-Link is a proprietary code, so you probably don't have access to it to be able to load anyway.

You load data onto the STM32F103 the same way you program any other chip. Typically through the ST-Link SWD interface, or a bootloader. Possibly through the DFU USB bootloader.

> Do you think my schematic is correct in terms of wiring the controllers?

I didn't study it, but your 8MHz MCO output from ST-Link is driving a 8MHz crystal. Crystals shouldn't be driven this way. You should choose if you want the ST-Link 8 MHz output as the clock source, or the 8MHz crystal. Can't do both. You can fix this by either not loading the 100ohm resistor, or not loaded the crystal.

If you feel a post has answered your question, please click "Accept as Solution".
SSyme.1
Associate II

ok I took this crystal arrangement from the schematic of STM32F407G-DISC1 which is official. By ''load the resistor'' you mean to apply 3.3V to the R23 resistor?

I mean not load the physical resistor on the board. This would sever the connection between MCO and your other chip.
If you feel a post has answered your question, please click "Accept as Solution".

ok I will try this and post an update, thank you very much for helping me!

SSyme.1
Associate II

So I tried to bypass STM32F103CBT6. I used the STlink V2 to program the main controller STM32F407VGT6 via SWD and it works fine, this is good news. 

At the moment I have no clue how to program the STM32F103CBT6 on my board with the ST link firmware. If I find a way I will share it here

Thank you!

One option is to harvest a chip that already has the firmware from a nucleo or similar board or something.
If you feel a post has answered your question, please click "Accept as Solution".
SSyme.1
Associate II

According to them: ''Making your own ST-LINK V2 from STM32 Blue-Pill or STM32 Black-Pill'' I need to attach Tx and Rx pins of my usb to uart cable to the Tx and Rx of the chip and load a specific hex file. Unfortunately the Tx and Rx pins of my chip are not exposed so it's going to be a challenge..