cancel
Showing results for 
Search instead for 
Did you mean: 

Can I use a USB C Breakout Board with a Nucleo board?

stillinbeta
Associate

I'm working on a design for a custom keyboard, but I want to test as many components individually as I can before I start ordering parts.

I have a Nucleo-G0B1RE (STM32G0B1), and I've carefully traced the PA11 [PA9] and PA12 [PA10] pins, and connected them to the D- and D+ pins on a Sparkfun USB C breakout board with standard jumper wires. I connected GND to one of the MCU's ground pins and VBUS to the AVDD/PF4 - VREF+ pin.

I don't have any inline resistors - the STM32G0B1 is supposed to have its own pull-up resistor for the DP line.

This doesn't work at all - not only do no computers detect a device, even using a known-working cable, my logic analyser (connected to the bottom pins of the Nucleo) shows not a single blip on the USB data lines. It's only 24MHz, so not fast enough to properly debug FS USB, but I'd expect to see _something_.

On the software side, I've mostly been working with Rust, specifically the Embassy project. But out of desperation, I tried flashing the USB-HID-Device sample code with the STM32CUBEIDE, and despite working step-through debugging there were no dice.

My question is - am I missing something obvious? Is there some resistor needed somewhere, is my board fried, do I need to spend more on a new logic analyzer? I've been tearing my hair out for weeks.

Thanks in advance for your help!

1 REPLY 1
AScha.3
Chief III

> no computers detect a device, not a single blip on the USB data lines

so check: short to gnd ? or dp-dn reversed? + 1k5 on wrong line or off ?

because "device" is at first checked by the host, even your device doing nothing useful, host gets 1k5 line pulled and then checking: who is there...?

disconnect anything from the usb data lines, (standard jumper wires are too long) keep them short (<5cm), drilled together; check gnd connection wire-good. check with DMM the dp line is pulled up !

++

>and VBUS to the AVDD/PF4 - VREF+ pin

oh no ! vbus usb is 5V , the chip /vdd , vref+ is 3.3v !!! 5v kill the cpu...

check: only debug usb connected: can flash/debug and cpu still "normal" connect ?

so try again, with 5v to vin usb on the board . NOT to 3v3 !

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