I made a custom STM32 board. The board uses a STM32F103C8T6 microcontroller. The USB connection doesn't work. The computer says that the device is unrecognizable and spits out and error 43.
I've added wires and the ST-Link recognizes the device. My friend and I tried to solve this problem by adding uploading a bootloader. Sadly, even after downloading the bootloader the computer doesn't recognize the STM32. We know it isn't a hardware issue and the STM32 isn't malfunctioning as we established communication through an ST-Link.
Does anyone have a good bootloader which would make the STM32 recognize the USB?
Here are the files to the schematic and PCB layout. Disclaimer, D1 on the PCB doesn't overlap with the D- line. The pull-up resistor on the D- line and the 2 capacitors on D+ and D- aren't populated. If someone could help, I would greatly appreciate it.
https://drive.google.com/drive/folders/17ogapeF5vPjRlwgKhuiX-hZLILS2P0dm?usp=drive_link
\$\begingroup\$
\$\endgroup\$
Add a comment
|
1 Answer
\$\begingroup\$
\$\endgroup\$
The F103 cannot communicate with USB unless you upload some program that can communicate over USB.
The F103 does not have built-in USB pull-up so you need an external USB pull-up.
And the reason why the PC thinks something is plugged in even if you do not have any of the pull-ups installed is that the D- wire shorts to 3V3 on the PCB, at the solder pad of the power LED D1.