XBee returning 0xFF

I have an XBee S6B wired up to TX/RX3 on a Mega ADK. When I send +++ to the Serial3, I get 0xFF returned over and over again from the Xbee and printed to the serial output.

Can anyone advise why this might be?

Sketch:

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
  Serial3.begin(9600);
}

void loop() {

  if (Serial.available()) {    
    String str = Serial.readStringUntil('\r');  
    if (str == "+++")
    {
      Serial3.print("+++");
      Serial.println("Config");
    } else
    {
      Serial3.print(str);
      Serial3.print("\r");
      Serial.print(str);
    }
    
    //Serial3.print("\r");
    //Serial.println(str);
  }
  
  if (Serial3.available()) {
    byte str = Serial.read();  
    Serial.println(str, HEX);
  }
  
}
  if (Serial3.available()) {
    byte str = Serial.read();  
    Serial.println(str, HEX);
  }

You check to see if data is available from Serial3 and then read Serial?!?

Whooops, schoolboy error.

Thanks,

Steven