CAN init with almost all available CAN libs I found: “Canbus_V2” and “Canbus_V3” and “CANInterface”. The last one needed some change in CAN_CS, since it used the Arduino MEGA port settings.
What does not work:
Receiving any message over CAN… it is VERY silent
Sending reports ‘success’ but nothing is received on the other end. Even worse, the transceiver on the other end simply reports error frames after any sending attempt. This gives me the indication that the 2515 chip works, but is misconfigured!
Test approach:
compile everything
try setting CAN speed according to rest of the CAN bus (in my case 125Kb), but also tested against Vector CANoe with 250 and 500.
try sending or receiving messages (no filters applied, using default settings from above mentioned CAN libraries)
Any thoughts? I’m entirely clueless. At least I want to know how I can get closer to identify the issue… at the moment its just a red brick to me
resistor missing at the end of the CAN bus. This was caused by a broken resistor in my case (it was open basically)
the receiver had issues, too. the sending of messages actually worked, but the receiver had an issue with it’s receive buffers
the wiring was inverted at some point (after changing to many things at the same time)
So after all: the code and board works
The only thing that probably would have made things a lot easier: some specific documentation about the actual CAN setup in “end user language”. I had to dig into many supplier documents (such as the 2515 and 2551 documents) to get answers about the CAN configuration on the shield. In my case the resistor configuration was probably easy to understand from a hardware guys point of view, but not from a “software dude” :roll: