l2c output corrupted

Hello dear community,

My new DFRduino GPS Shield just arrived. I plugged it on an Arduino UNO, uploaded some code in order to read the raw NMEA output via l2c. Works just fine unless at the beginnig of every message block serial monitor prints a line of 0xff- values(see attached picture).
According to the code each while(Wire.available())-loop in receive() causes the buffer to be filled with characters sent by the GPS-Shield. So what makes the shield send these values?

#include "Arduino.h"


#include <Wire.h>

#define BUFFER_LENGTH 32

int GPSAddress = 0x42; //GPS I2C address

void trans_init(){
  Wire.beginTransmission(GPSAddress);
  Wire.write(0xff);
  Wire.endTransmission();

  Wire.beginTransmission(GPSAddress);
  Wire.requestFrom(GPSAddress,BUFFER_LENGTH);
}

String receive(){
  String buffer ="";
  
  while(1){
    trans_init();
    while(Wire.available()){
      char ByteGPS=Wire.read();
      buffer+=ByteGPS;
    }
    return buffer;
  }
  Wire.endTransmission();
  
}

void setup() {
  
  Serial.begin(9600);

  Wire.begin();

}

void loop() {
  
  Serial.print(receive());
  
}

I'm using Windows 10 Pro, Arduino IDE 1.8.0
Product-Link:DFRduino GPS Shield For Arduino (ublox LEA-6H) - DFRobot