cancel
Showing results for 
Search instead for 
Did you mean: 

CAN TRANSMIT ALWAYS TIMEOUT

Rahul Gupta
Associate
Posted on June 15, 2018 at 11:37

Hey Hii

Iam trying to communicating two stm32f072 boards with can but i always found 'TIMEOUT ERROR' Why?

i create project using cubeMX software please provide me any solution on this it is URGENT.

Is there any BUG in HAL_CAN_TRANSMIT function or in HAL CAN library?

4 REPLIES 4
Posted on June 18, 2018 at 12:43

The CAN bus expects other devices on the bus to respond and acknowledge data reception.

You may have problems here if

a) There are no other devices listening

b) The baud/bit rates they are using disagree

c) The bus transceivers are not correctly implemented and working.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
T J
Lead
Posted on June 18, 2018 at 21:40

Are you using the transceiver ?

then you must use a Terminator on the wire.

the transceiver chip can only pull one way, the terminator pulls the signal back.

if you dont have a correctly connected slave (another device) then the CanBus will not be satisified and you will get timeouts.

you can see on the scope that the line is continually running,

because there is no slave to accept the CanBus signals and respond.

Posted on June 18, 2018 at 19:54

Sir iam using one board as can transmitter and another as can receiver i think it should work

Posted on June 18, 2018 at 20:35

I should be a millionaire, but I'm not.

Not going to play guess why it isn't working. Present what you're actually doing at a SW/HW level so it can be critically reviewed.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..