The GPS world is full of shoddy, poorly-documented designs. All
too many devices have behaviors that drive the harried maintainers of
gpsd
to shake their heads and mutter What where they
thinking
?
This page goes beyond the merely ordinary and commemorates the really special blunders — bugs and design errors so consumately brain-dead that the only possible responses are either rage or helpless laughter.
By naming and shaming the vendors who perpetrated these egregious blunders, we hope to exert some pressure for higher quality standards in the future.
Your contributions are welcome. If you're describing a firmware bug, it's best if you can identify the firmware version or range of versions it applies to.
These are the screwups that lead us to wonder if the GPS chipset vendors ever actually test their hardware.
The best evidence that the GPS industry is run by morons is the quality (or, rather, utter lack of quality) of their chipset documentation. You would think they'd have figured out by now that good and readily available documentation, making it easy for others to interface to their hardware, will sell more hardware. But no; most vendors make documentation difficult to get, and it rends to be both incomplete and vague when you get it. A few vendors go above and beyond the normal stupidity...
Some versions of the SiRF protocol manual, including 1.4, describe the data widths in the time portion of the Geodetic Navigation Information packet incorrectly. If you trust them, you will extract garbage from good packets.
The Garmin GPS chipset issues a number of important messages that Garmin has explicitly refused to document.
GPS chipset vendors love their proprietary binary protocols. There
is some excuse for this, given that the industry standard
NMEA
0183 grew by a series of kluges and accretions and would probably have
turned out better if it had been designed by chimpanzees on crack
— but you'd think the vendors would at least make sure that
their binary protocols are a functional superset of NMEA. But no; in
the laugh-one-minute, puke-the-next world of GPS chipsets, it ain't
so...
SiRF binary mode delivers HDOP but not PDOP or VDOP. SiRFs in NMEA mode deliver all three.
EverMore NMEA delivers UTC time. EverMore binary protocol delivers only GPS time, which has a time-varying offset from UTC — and no way to query the offset.