Showing results for 
Search instead for 
Did you mean: 

USB on STM32G0

Associate II

I developed a user device with a STM32G030 in it. Now I want to go to the market. But before that, I want to have a USB port on my board with which users can update their firmware in case my software has bugs. In the STM32G0x0 datasheet (RM0454) in chapter 28 there's a lot of USB talk going on. But I can find nowhere on the internet (ST or other) a simple description like put PA11 to D-, put PA12 to D+, put GND to GND. Put some HAL functions in your code and you'll have like a virtual com port. Now write some python code or whatever. In my world (guitar effect pedals) everyone has a USB firmware upgrade arrangement. Can someone please help me to get my users to put a USB cable in my device and their PC en and then see a waving hand, a smile and a 'finished' message? Help!


Accepted Solutions
Andreas Bolsch
Lead II

There's no USB in G030 nor G070, only in G0B0 (or G0B1, G0C1). And even for G0B0 it's unclear whether USB can be used with LQFP32 (for higher pin count packages definitely yes).

Pavel A.
Evangelist III

Here you can find a helping hand for your guitar effect pedal project:


Thank you!

Hi Andreas,

Thank you. I chose the G030 for it’s 32 pins (can stil solder it myself), low price and ‘low complexity’. Which 32 pins, low priced, low complex model should I choose that has USB on pins PA11 and PA12 that I can program myself to use inside my flash program? I thought about a first program that checks for updates of the second program. If no USB connection and / or no updates and / or download the update of the second program the first program calls my second program (elsewhere in flash) that is the main program. Is this a smart solution?