cancel
Showing results for 
Search instead for 
Did you mean: 

CAN Bus doesn't work in normal mode between two MCUs

mr_vineet
Associate II

Hello,
Hope you all doing well..!!

I am using two microcontrollers i.e., for transmitting data I have to use STM32F407VET6 and for receiving I have to use STM32F407VGT6 also I have to connect MCP2551 CAN Transceiver. I am transmitting data from one board and receiving data from another board through CAN Bus Protocol Communication

However, the data is not transmitted and received. I have properly checked the hardware connections and terminated the bus at both ends with 120-ohm resistors.

IDE: STM32CubeIDE

Which step should I follow for communication between boards?

Thank You in advance!!


22 REPLIES 22

@mr_vineet wrote:

It needs to connect Rs to Ground for both the transreceiver??


As @SofLit said earlier:

"this pin is to put the transceiver in a standby mode. So you can't send/receive anything on the bus"

For the system as a whole to work, you need to be able to both transmit and receive.

It needs to connect Rs to Ground for both the transreceiver??

Indeed for each transceiver Rs pin must be (at least) tied to the GND.

You need to share the module's schematics.

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

I have attached the Transceiver Datasheet.

The datasheet only describes the chip itself.

We also need details of those boards ("modules") on which you have the the Transceivers mounted!

The schematic(s) for those boards will tell you whether they ground the  Rs pin or not.

 

 

AndrewNeil_1-1712922341794.png

 

I've already the transceiver datasheet need the schematics of the module.

You didn't give feedback about my previous questions.

Need more effort from your side to help you efficiently.

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

Hello @mr_vineet ,

Any news regarding your issue? did you solve it? if yes how? as it could be helpful for other community members.

 

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.
Karl Yamashita
Lead III

The RS pin is already grounded through a 4.7k resistor. 

Show a diagram on how you've connected each of the pins on the CAN module to your STM32F407. Is this a custom board? Do the two STM32F407 have a ground reference between them or are they isolated from each other besides just the 2 CAN wires? 

Tips and Tricks with TimerCallback https://www.youtube.com/@eebykarl
If you find my solution useful, please click the Accept as Solution so others see the solution.

The RS pin is already grounded through a 4.7k resistor. 


According to the schematics? Do you have it?

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

No, I am still facing an issue with the same.

I have connected CAN_Tx  to Transceiver Tx and CAN_Rx to Transceiver Rx.
CAN H and CAN L are connected from both transceivers to the same.

I also maintained the same ground for both boards.