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\$ – Chris Stratton Jun 20 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 at 1:20
  • \$\begingroup\$ @Chris Indeed, for now, the resistor doesn't seem to solve my issue. \$\endgroup\$ – personal_cloud Jun 21 at 0:51

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.

| improve this answer | |

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.