Just some hints about potential error sources.... not sure if those informations would help nevertheless...
I just encounterd 1 issue about a Due and a Mega:
First, when reading through ressources about interfacing a Raspi to Arduinos, they all (implicitely) refer to Uno-like AVR boards, and point out that i2c would work well between both boards because the Raspi has built-in pull-ups but "the Arduino" hasn't.
In fact, that is not true in general:
It's correct that the UNO has no built-in pullups, BUT THE MEGA AND THE DUE HAVE!
The Mega (AVR) has pullups to +5V and the Due (ARM) has pullups to +3.3V (on TWI(0) ).
Nevertheless, the internal Mega pullups can be disabled by a setting in avr/twi.c,
and for the Due - even if the pullups on TWI(0) can NOT be disabled - one may use TWI1 (the 2nd i2c port) instead which has NO pullups at all.
As I am currently stuck to my Raspi-Due-UART communication, I abandonded my I2C comm attempts.
But if (e.g. Gordon...?) would provide some good working code for alternatingly exchanging raw arrays of bytes between Raspi and (either) Arduino I would gladly try to find out if there were issues about Due and Mega which could be fixed by that.
@Gordon: about your last post saying
I have little inclanation to further this myself.
after all, " little inclination" would not compulsorily mean "NO inclination" , so perhaps there would still be a little space for hope for future developments and enhancements, what do you think...?
