If I read it 7 or 8 times and think hard I'm sure I would make some progress.
My major stumbling block are the statements
using the CAN bus each node is a peer (no masters)
and
The actual data transmission is pretty quick, the data gets held in the CAN controller
Doesn't that make the CAN controller the master? Is this implemented in an Arduino device?
Where does the CAN controller get its data from?
Can you explain this
When a message comes, and has been verified, in it generates an interrupt, which triggers my routine.
Can you provide some samples of typical data (actual byte values) with an explanation.
...R