I knew that speed and heading was working before when connected via USB to the F9P directly. I reconnected and looked. The speed and VTG was being sent to AOG via the GPS. This data is not transmitted in the panda code.
In the main .ino it is commented out to call the VTG_Handler
// Disabled VTG for now because speed is calculated by AOG
parser.addHandler("G-VTG", VTG_Handler);
I uncommented that code.
In the NMEA file I uncommented the following code.
void VTG_Handler()
{
// vtg heading
parser.getArg(0, vtgHeading);
// vtg Speed knots
parser.getArg(4, speedKnots);
//
// if (!isLastSentenceGGA)
// {
// if(useDual)
// {
// dualReadyGGA = true;
// }
// else
// {
// if (useBNO08x)
// {
// BuildNmea();
// }
// else if (!useBNO08x && !useCMPS) //To do maybe add No IMU option, may also be handy for IMU with dual
// {
// itoa(65535, imuHeading, 10); //65535 is max value to stop AgOpen using IMU in Panda
// BuildNmea();
// }
// else
// {
// gpsReadyTime = systick_millis_count;
// isTriggered = true;
// }
// }
// }
}
Now heading and speed work fine in AOG.
Why do the sketches say AOG calculates it. It apparently does not unless there is another setting somewhere.
Anyway with this all done the results look favorable. I am getting some issues when incorporating the IMU heading. Sometimes it just goes crazy. Otherwise it helps to stabilize the heading from the FIX. My setup on the mower has a roll cage that is not super stiff so it flexes around a little causing my heading to jump around. A mount to the cab of a tractor would be much better.