cancel
Showing results for 
Search instead for 
Did you mean: 

STM32G0 series Programmers & Debuggers

sagar_bn
Associate II

Hello All,

I'm new to ST products. We are using STM32G041F8P6 in our project. This IC will be programmed through I2C/USART and there's no JTAG available for this chip. Please suggest some low-cost programmers/debuggers.

Thank you

1 ACCEPTED SOLUTION

Accepted Solutions
Danish1
Lead II

Jtag would use too many pins. Instead you have to use SWDIO and SWCLK so you need a debugger that supports that protocol. You should also wire up Reset.

ST-Link is a good choice.

I think Olimex have a solution as well.

If you already have a Nucleo board, you might be able to repurpose the built-in STLink for your prototypes.

View solution in original post

5 REPLIES 5
Danish1
Lead II

Jtag would use too many pins. Instead you have to use SWDIO and SWCLK so you need a debugger that supports that protocol. You should also wire up Reset.

ST-Link is a good choice.

I think Olimex have a solution as well.

If you already have a Nucleo board, you might be able to repurpose the built-in STLink for your prototypes.

sagar_bn
Associate II

Hi Danish,

Thanks for the reply. I have 2 Queries, please clear my doubts:

  1. Can I program the internal Flash using Serial Wire Debug Interface
  2. If USART is used for programming, Is debugger required ? Can I directly send the USART commands through my PC (USB to RS232 and then RS232 to USART) to the UART pins of the board.
  1. Yes. That (or full-blown JTAG) is how I program all my stm32. And that’s how people program the stm32 Nucleo demo boards.
  2. A debugger isn’t required if you’re using one of the serial interfaces supported by the bootloader that’s built into your stm32. You will need a jumper on the BOOT0 pin to select between your code and the bootloader. “TTL-level�? USB-to-serial adapters exist. But you lose the ability to interactively debug your code; for me that would be a huge loss.
sagar_bn
Associate II

Hi Danish,

Thanks for the very good explaination.

Can u please give little more info on Boot0 pin - is it only to select booting from system flash, user flash, or embedded SRAM. Does this Boot0 pin selection to be taken care if we are programming through UART/I2C ? Is there any pin settings to be done to program from UART/I2C ?