0
\$\begingroup\$

So I recently bought the STM32F103C8T6 "black pill" dev board along with the ST-LINK/V2 dongle (more probably a Chinese clone). After much struggling I figured out that I need to hold down the dev board's reset button for the dongle to detect the MCU but then when I connected the dongle to my STM32F429 Discovery board, it detected the F429 without having to hold down reset.

I know the connection process has a "Connect with reset" option where you connect a reset pin to the board and the dongle does the hard reset for you, but I monitored the pin and it doesn't do the reset (probably a Chinese flaw?).

It's not the end of the world, it's just weird that the 103 needs to be in reset to connect, but the 429 doesn't. The 103's SWD pins aren't assigned other functions so that's not the issue. Any insight would be greatly appreciated.

Why do I need to have the 103 in reset and not the 429?

\$\endgroup\$
  • \$\begingroup\$ You haven't got a question in there. Hit the edit link ... \$\endgroup\$ – Transistor Jul 19 at 17:45
1
\$\begingroup\$

A key driver of your problem is likely that the overwhelming majority of the compact little unofficial "ST-LINK" dongles do not actually drive their labeled reset pin, as the pin is connected to a different GPIO than wherever whatever firmware they are runnings thinks it is. You can verify this while watching the pin with a storage scope triggered on it. As they say, "you get what you pay for"

As a result, they won't work in a situation where you need to actually assert the target's actual reset line automatically. Substitute an actual ST-LINK or use a Discovery or Nucleo board recent enough to be able to drive the reset (the early ones could not do that either)

\$\endgroup\$
  • \$\begingroup\$ You still should be able to software resent the chip, eh? \$\endgroup\$ – Voltage Spike Jul 19 at 20:39
  • \$\begingroup\$ @VoltageSpike - a soft reset is only possible when it is responding to the SWD, so when the original problem is that it isn't responding to that, you can't issue it an SWD command to reset. The fact in many cases you don't need to do an explicit hardware reset is probably how these dongles shipped with such a PCB vs. firmware mismatch - they work until you hit a situation where you actually need to assert the reset. \$\endgroup\$ – Chris Stratton Jul 19 at 20:42
0
\$\begingroup\$

It shouldn't but it may have to do with the Boot1 and Boot0 settings, and you may be in a weird mode.

Try the JP1 jumpers and make sure that they are in the same configuration as the F429 Boot0 should be low and Boot1 high.

Make sure the clone matches the datasheet, and there is nothing else connected to the SWD pins (which there could be on the clone)

enter image description here

https://wiki.stm32duino.com/images/5/52/Black_Pill_Schematic.pdf

\$\endgroup\$
  • \$\begingroup\$ BOOT0 is low and BOOT1 is high on the black pill and on the 429 discovery BOOT0 is low and BOOT1 is high with a 120k pullup. \$\endgroup\$ – BdT141 Jul 19 at 20:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.