Skip to main content
Associate
September 13, 2026
Solved

Migrated from STM32C011J6M6 (SO8) to STM32C091FCP6 (TSSOP20), stlink device not finding MCU at power up

  • September 13, 2026
  • 5 replies
  • 82 views

Having problem getting STM32C091FCP6 that is new (not otherwise programmed) to respond to STLINK device at power on.

Details-

Preparing to move a project from STM32C011J6M6 to STM32C091FCP6 to obtain larger pin count and larger memory capacity. On first attempt to attach STLINK V2 device to the target containing a new STM32C091FCP6 (SWDIO, SWCLK and GND to a device on 3.3V power), STLINK not starting as expected (power is being applied before STM32CubeProgrammer is commanded to “Connect.”

To rule out PCB layout error on the (new) STM32CX091FCP6-based version of project, I attached another (also new from supplier) MCU to STLINK V2 device attaching only SWDIO, SWCLK and GND to STLINK, applied 3.3V power (all other pins open), and again STLINK not handling “Connect” command as expected. STM32CubeProgrammer is reporting “unable to get core ID” and/or “DFU_TARGET_CMD_ERR.

The development environment (STM32CubeProgrammer) and STLINK device firmware are up-to-date.

The STM32C091FCP6 devices are from batches supplied by US distributor (as are STM32C011J6M6 devices being tested), so they are presumably in factory default configuration (option bytes/bits that would affect power-on behavior).

I can find on other culprit.

Asking here if there’s something I’m missing about power-on behavior or sequencing of the STM32C091FCP6 (expect that STLINK  MCU pins are active at power-on. BOOT0 pin is shared with one of these two pins so I’m not sure if there is any other way to influence power-on behavior for a device in as-delivered/factory default configuration.

Thanks for any pointers/advice, and happy to provide any clarifying information requested.

 

Best answer by wb0gaz_dgft

OK, finally got this working - problem was a short in the handmade interface cable from the STLINK V2’s 20 pin connector (why did ST not provide a convenient way of extracting the STLINK signals?) I was using to reach the STM32C091 MCU. At this point the STM32C091 MCU is responding like the STM32C011 MCU, requiring only power, ground, SWCLK and SWDIO to establish link for firmware/option download/upload.

Thanks to AScha.3 and MM..1 for your assistance; as it turns out the MCU is happy as long as the NRST/PF6 pin is pulled up to 3.3V (via resistor) and the wiring otherwise between the STLINK V2’s 20 pin connector and the target is working as intended. It appears that reset is not required, using only “Software Reset” option in STM32Programmer (as was the case for me with STM32C011.)

Now back to work…...

 

5 replies

MM..1
Super User
September 13, 2026

You miss NRST and knowledge. STM32C091FC with empty flash start system bootloader and this block STLINK access…

Connect under reset is required.

Associate
September 13, 2026

Hello MM..1, thank you for quick reply. I am still not able solve this.

I now review section 3.5 (RESET) of STM32C011 datasheet and STM32C091 datasheet. I can find no difference in text (identical.) I cannot find difference in datasheet manual Reset or PF2 behavior between STM32C011J6M6 and STM32C091JCP6.

I do not understand how fresh device STM32C011J6M6 can start STLINK mode at power-up just with PF2/Reset pulled to 3.3V at power-up, but fresh device STM32C091FCP6 cannot do this.

STM32Programmer (current version) has three Reset mode options - “Software”, “Hardware”, “Core”. I do not have option of “Connect Under Reset”. Is “Connect Under Reset” implied by one of three Reset mode options in software?

In my experiment with new/fresh STM32C011J6M6, at power-up for fresh MCU, I begin with NRST pulled to 3.3V, then STLINK/STM32Programmer can discover in “Software” Reset mode. STLINK Device Reset pin is not connected to MCU PF2.

In my experiment with new/fresh STMC091JCP6, at power-up for fresh MCU, I begin with NRST pulled to 3.3V, then STLINK/STM32Programmer cannot discover in “Software” Reset mode. STLINK Device Reset pin is not connected to MCU PF2.

I am sorry to report I am still stuck right now.

Thank you again for your help!

MM..1
Super User
September 13, 2026

Pulled directly to 3,3V is incorrect , hope you use pull up resistor. And programmer for STM have MODE for connection and next setup for systematic resets many years…
 

 

AScha.3
Super User
September 13, 2026

And important : your “STLINK V2”   is genuine or the stick ? Because the st-link sticks have no working hardware reset !

Only possible then :

  • connect (rst pulled hi) in dfu mode to UART , using a RS232/TTL - USB adapter
  • pull rst low and try to connect st-link in CubeProgrammer mode >under reset< + >hardware reset< 
If you feel a post has answered your question, please click on " Best Answer ".
wb0gaz_dgftAuthorBest answer
Associate
September 13, 2026

OK, finally got this working - problem was a short in the handmade interface cable from the STLINK V2’s 20 pin connector (why did ST not provide a convenient way of extracting the STLINK signals?) I was using to reach the STM32C091 MCU. At this point the STM32C091 MCU is responding like the STM32C011 MCU, requiring only power, ground, SWCLK and SWDIO to establish link for firmware/option download/upload.

Thanks to AScha.3 and MM..1 for your assistance; as it turns out the MCU is happy as long as the NRST/PF6 pin is pulled up to 3.3V (via resistor) and the wiring otherwise between the STLINK V2’s 20 pin connector and the target is working as intended. It appears that reset is not required, using only “Software Reset” option in STM32Programmer (as was the case for me with STM32C011.)

Now back to work…...