Page 1 of 1

Address Priorities

PostPosted: Fri Mar 15, 2019 9:28 am
by Trevan
Hi,

I'm just starting out and doing some lessons on CAN so please excuse if this a silly question.

From what I have learnt about the arbitration process, my understanding is the lowest address will get priority on the bus. Looking at the default addressing in my M1 it appears that it uses address 0x7F0 while the other devices like LTC, PDM and C125 range from 0x400-0x600.

Is my understanding correct regarding the priorities? Without understanding the details I would have assumed you would want messages from the M1 to take priority.

Cheers,
Trevan

Re: Address Priorities

PostPosted: Fri Mar 15, 2019 10:10 am
by adrian
Hi Trevan,

Although technically correct, it really doesn't matter in this case. If there is a message clash the one that loses arbitration is sent immediately after the message that wins (as long as it doesn't have another clash).

The maximum length of a CAN message is around 120-130 bits give or take some stuff bits. So if a message gets delayed by 1 message then it is a roughly 130uS delay (assuming a 1Mbit bus). The highest rate we transmit any messages out of the ECU is 100Hz (every 10ms) so the delay is nearly 2 orders of magnitude smaller than the transmit time.

So in this case it really doesn't matter what addresses are used, you'll never notice the delay even if there is a clash.

Adrian McGregor
MoTeC Australia

Re: Address Priorities

PostPosted: Fri Mar 15, 2019 11:22 am
by Trevan
Hi Adrian,

Yes that makes a lot of sense. Classic example of textbook theory vs real world practice.

Thanks for the response mate.

Cheers,
Trevan