         pData = estimated_position.formDataString();
         if (dataFile) dataFile.print(pData);
         Serial.print(pData);
+        Serial3.print(pData);  // send data to C4 path planner
         pObstacles = obstacleDetect();
         if (dataFile) 
         {

0: Monitor
1: INU
2: Tx: Estimated state; 
      $ESTIM,<east_mm>,<north_mm>,<speed_mmPs>,<bearing>,<time_ms><positionStndDev_mm>*CKSUM
      $OBSTCL,<number>,<obstacle1_range_mm>,<obstacle1_bearing>, ...*CKSUM
   Rx: Desired course
      $EXPECT,<east_mm>,<north_mm>,<speed_mmPs>,<bearing>,<time_ms>*CKSUM
      // at leat 18 characters
3: GPS
  Rx: $GPRMC,...  typically 68 characters

{
  pinMode(GPS_POWER, OUTPUT);
  char* GPSString;
  char* protocol =  "$PSRF100,1,4800,8,1,0*0E"; // NMEA
  char* disable =   "$PSRF103,02,00,00,01*26\r\n";
  char* querryGGA = "$PSRF103,00,01,00,01*25";
  bool GPS_available = false;
  Serial3.begin(GPSRATE);   
  digitalWrite(GPS_POWER, LOW);         // pull low to turn on!
  Serial.flush();
  Serial3.flush();
  delay(5000);
  // prints title with ending line break 
  Serial.println(" GPS parser");  
//  Serial.print("Acquiring GPS RMC...");
  checksum(protocol);
  Serial3.println(protocol);
  disable[10] = '2';
  checksum(disable);
  Serial3.println(disable);   // no GSA

  GPS_available = estimated_position.AcquireGPRMC(70000);
  Serial.println(TimeHeader);
  Serial.println(StartTime);
