One section of the STM32L431 manual (46.4 Pinout and debug port pins) says:

To avoid any uncontrolled I/O levels, the device embeds internal pull-ups and pull-downs on the JTAG input pins:

  • JTMS/SWDIO: internal pull-up

In another section (46.8 debug port), it says:

For SWDIO bidirectional management, the line must be pulled-up on the board (100 kOhm recommended by ARM).

Are both of these statements correct? How can this be?

People seem to be getting other ARMs working without an external pullup on SWDIO but my STM32 isn't working so I'm trying to narrow down the cause.

  • \$\begingroup\$ That's probably not the cause of your issue \$\endgroup\$ Jun 20, 2020 at 0:52
  • \$\begingroup\$ are you trying to not only compare two different st parts but even more distant an st part vs an nxp? Even two different st parts are not expected to have the same specs but certainly parts from a different company are not remotely expected to conform. the swd pins are not necessarily tied directly to the arm core, there are I/O pads and other treatment, often muxes, etc. But if the documentation for the part says to do something, then do it...Without a care for whatever any other part from any other vendor does. (or worse ARM trying to dictate something like this in a "standard header") \$\endgroup\$
    – old_timer
    Jun 20, 2020 at 1:20
  • \$\begingroup\$ @Chris Indeed, for now, the resistor doesn't seem to solve my issue. \$\endgroup\$ Jun 21, 2020 at 0:51

1 Answer 1


It is inconsistent. However the recommendation from ARM may be copied directly, as it does not assume that there would be internal pull-up on the SWDIO pin, but ST put an internal pull-up.

More than often it reads that the internal pull resistors on JTAG/SWD port eliminates the need for external resistors.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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