// called by interrupt service routine when incoming data arrives
void receiveEvent (int howMany)
{
/* while (Wire.available () > 0)
{
char c;
c = Wire.read ();
if (c=='A'){
Wire.beginTransmission (OTHER_ADDRESS);
byte a[11] = {p3tr,p4tr,p5tr,p6tr,p7tr,p8tr,p9tr,p10tr,p11tr,p12tr,p13tr};
Wire.write(a,11);
Wire.endTransmission ();
Serial.println(c);
}
Inside a receiveEvent you don't need beginTransmission and endTransmission. Just do the write.
And since it is an ISR don't do any serial prints. So more like:
// called by interrupt service routine when incoming data arrives
void receiveEvent (int howMany)
{
if (Wire.read () =='A')
{
byte a [11] = {p3tr, p4tr, p5tr, p6tr, p7tr, p8tr, p9tr, p10tr, p11tr, p12tr, p13tr};
Wire.write (a, sizeof a);
}
}