I appreiate the response.
I was just trying to debug it with this code.
case pF5sCollectTheData: //header is 27 bytes, message 30 per sv no delimters 990bytes possible
TimerA = millis();
// trial1
Serial.println("entering F5 data collection state");
while( messageF5 == false){
for( n=0 ; n<800; n++){
Serial2_WaitForByte(&tempArray[n]);
if (tempArray[n] == 0x03 && tempArray[n-1] == 0x10){
messageF5 = true;
Serial.println("F5 complete in array");
}
}
}
if (messageF5 == true){
n = 27;
for(int b=0; b<8 ; b++){
Serial.println(tempArray[n], DEC);
Serial.println(tempArray[n+29], DEC);
n = n + 30;
}
state = Fini;
}
break;
So I get an expected output for the first few satilites. Each segment has an unused byte that should always be 0 and each should start with a system ID 1,2, ect. So maybe I can search down the whole array finding the 1,2,ect and check to see if +29 bytes there is a 0. Based on that I should have very good odds that it would be a good segment.