Skip to main content
Associate
Aug 21, 2025 10:59 AM UTC
Solved

Internal pull-up/down resistors in the Rx/Tx pins for CAN

Split from this thread.

i've had the same issue. Set the internal pull-up on Rx pin and pull-down on Tx pin.

This topic has been closed for replies.
mƎALLEm
mƎALLEmBest answer
ST Technical Moderator
Aug 21, 2025 1:16 PM UTC

It's comprehensible but it should be a pull-up and not a pull down resistor. May be to handle the transients and to ensure the node are asserting recessive state if the pin is not yet initialized.

But you need to check if the transceiver has that pull-up on Tx internally:

Ex, MCP2551:

mALLEm_0-1755782104410.png

So if the transceiver has that resistor, you don't have to activate the resistor from the MCU side.

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.

8 replies

mƎALLEm
ST Technical Moderator
Aug 21, 2025 11:02 AM UTC

@kam8711 : You should not enable pull-down on Tx pin.

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.
kam8711Author
Associate
Aug 21, 2025 11:15 AM UTC

why?

mƎALLEm
ST Technical Moderator
Aug 21, 2025 12:00 PM UTC

In loopback mode, Tx and Rx are internally connected by hardware. If you enable the pull-up on Rx and the pull-down on Tx, a voltage divider will be formed on Tx/Rx path by the pull-up/pull-down resistors which should be avoided.

Please keep only the pull-up resistor on CAN_Rx pin.

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.