NMEA, jako protokół z wyboru, stosuje większość producentów odbiorników GPS, zaś akceptują wszyscy, poza producentami używającymi własnych protokołów do urządzeń dedykowanych (Garmin, Trimble, etc.).
Z grubsza rzecz biorąc, NMEA to protokół tekstowy (wolniejszy), SiRF cyfrowy - szybszy.
SiRF może być używany tylko z chipsetami SiRF (chyba?), NMEA z każdym (wyjątki j.w.) - bo to standard.
Protokół SiRF ma znacznie szersze możliwości od NMEA - może odpytywać chipset o różne rzeczy, a także różne dane do niego przesyłać. Konfiguracja odbiornika jest możliwa tylko przy użyciu protokołu SiRF, bo NMEA to tylko odbiór (poza przesłaniem pozycji next WPT, jeśli dobrze pamiętam). W NMEA możesz tylko pobierać większy lub mniejszy zakres oferowanych przez protokół danych (sentencji).
Zwykle jednak, nie ma to znaczenia dla większości aplikacji nawigacyjnych. I tak konfiguruje się odbiornik specjalnym, dedykowanym softem.
Moim zdaniem, akceptowanie protokołu SiRF przez aplikację nawigacyjną ma tylko tę zaletę, że nie ma problemu w sytuacji, kiedy przypadkowo zostanie protokół przestawiony na SiRF i aplikacja traci kontakt z odbiornikiem. I to nie zawsze.