uint8_t data[] = "AA" + String(msg_counter , DEC);

You can not concatenate like that; data is only three bytes in size; there is no space to append. Either make everything Strings (not such a nice idea) or use something like below.

// buffer to hold up 31 characters and terminating nul character
// adjust size to needs
char buffer[32];
sprintf(buffer, "AA %d", msg_counter);
Serial.println(buffer);