NMEA 2000 Shield

That was I expected. When it comes to situation that send fails continuously, internal buffers are full and so it gives error. This means that no message goes out. This is normally caused, when there is no connection to the bus. Most common error has been that CAN-L and CAN-H has been crossed or chip (MCP2562) STBY signal is not connected to GND. Also missin terminal resistor is common reason, but that you already checked.

I just made a test with due. When it is connected to the bus, but there is no other devices on, it start to give error. Immediately, when I turn on any other device, it start to send normally.