The last time I tried NMEA protocol (admittedly at least 2 years ago) I got a large slow attitude oscillation that was very visible in the PFD. When I switched to UBX protocol, the oscillation cleared right up. I recall that was with a UBX GPS that was configured to output all the correct packets for both NMEA and UBX. I suspect that the NMEA protocol isn't sending enough good reliable velocity information, and the EKF doesn't like it. It is possible that the EKF tuning that was done some time (before or after this?) has cleared it up or made it worse. It is possible that if you know how to tune an EKF you might get NMEA working. It is possible that NMEA works fine as it is right now.
I can tell you the NMEA packets that LP reads so you can configure the GPS to output them (from NMEA.c):
{
.prefix = "GGA",
.handler = nmeaProcessGxGGA,
},
{
.prefix = "VTG",
.handler = nmeaProcessGxVTG,
},
{
.prefix = "GSA",
.handler = nmeaProcessGxGSA,
},
{
.prefix = "RMC",
.handler = nmeaProcessGxRMC,
},
#if !defined(PIOS_GPS_MINIMAL) /* Revo etc. also looks at these packets */
{
.prefix = "ZDA",
.handler = nmeaProcessGxZDA,
},
{
.prefix = "GSV",
.handler = nmeaProcessGxGSV,
},
#endif // PIOS_GPS_MINIMAL