summaryrefslogtreecommitdiff
path: root/gps.h
Commit message (Collapse)AuthorAgeFilesLines
* RTCM3 is unsigned byte, not chars.Gary E. Miller2016-04-201-1/+1
| | | | | | | | | | | | | | This was causing problems in sign extension. On amd64/Gentoo sign was extended: (unsigned int)(char 0x80) became: 0xfffffff80 But on Pi2/Wheezy the same thing became: 0x80. The obvious fix is to make it unsigned, as god intended. All regression tests pass on pi2/wheezzy and amd64/gentoo.
* Improve comments in satellite_t.Gary E. Miller2016-04-131-2/+3
|
* Removes non-ASCII characters from gps.h comments.Fred Wright2016-04-101-2/+2
| | | | | | | | | | | | | Testing maskaudit.py with Python 3 revealed that two comments in gps.h (lines 285 and 294) were using non-ASCII minus signs in the comments. This resulted in exceptions with Python >=3.3 and LANG unset. Since there's no intention to actually use non-ASCII characters here, it doesn't seem worthwhile to fix the code. TESTED: Using a version of SConstruct patched to use the target Python for build helpers, ran "scons build-all" with all six supported Python versions.
* Comment in the code the accuracy needed for cm level lat/lon.Gary E. Miller2016-03-281-0/+11
|
* Add concept of a GPS-disciplined oscillatorMichael Brown2016-02-091-2/+13
| | | | Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
* By popular demand, restore STATUS_DGPS_FIX to public interface.Eric S. Raymond2016-01-291-1/+2
|
* Increment API version.Reinhard Arlt2015-05-181-1/+2
|
* Add navigation data to gps.h.Reinhard Arlt2015-05-181-1/+22
|
* Document assumptions about NMEA satellite IDs and PRNs more thoroughly.Eric S. Raymond2015-04-071-4/+6
|
* Update PRN numbers reference. Also PRNMAX definition.Sanjeev Gupta2015-04-071-5/+6
|
* Change TODO, needd a place to store precision in gps_data_t.Gary E. Miller2015-04-021-0/+1
| | | | That is where the JSON read wwould put the data.
* Retire splint from our set of static analyzers.Eric S. Raymond2015-03-301-26/+16
| | | | | | | | | | | | | | | | | | | The proximate cause was that we've been seing emission of error messages that were randomly and disturbingly variable across different environments - notably Raspbian and Gentoo splint gave nontrivially different results than Ubuntu 14.10 splint. And this was *not* due to Ubuntu patches! A pristine splint built from the 3.1.2 tarball on Ubuntu didn't match the Raspbian and Gentoo results either. But this has been coming for a while. Easy access to more modern static analyzers such as coverity, scan-build and cppcheck has been decreasing the utility of splint, which is unmaintained and somewhat buggy and not easy to use. Only file not cleaned is ppsthread.c, because Gary has been working on it during this cleanup. All regression tests pass. PPS observed live on GR601-W.
* Hide a macro that doesn't need to be exposed.Eric S. Raymond2015-03-081-6/+2
|
* Clean up the HAVE_* namespace in conditionalization macros.Eric S. Raymond2015-03-071-3/+3
|
* Begin factoring out ntplib.Eric S. Raymond2015-03-071-0/+3
| | | | | | | All knowledge of the ntpd SHM format is now confined to the three files ntpshm.h, ntpshmread.c, and ntpshmwrite.c. No logic changes. All regression tests pass. PPS works on GR-601W.
* Worst reason to remove an ugly kluge ever.Eric S. Raymond2015-02-261-8/+0
| | | | | | | | | | | This change removes some macros which assured both source and object compatibility with client API version 6.0 in spite of some internal renames. But it turns out the gps.h we shipped had a broken inclusion and would have blown up any compile if it was used from /usr/include, anyway. So nobody can have built with the changed names and we can remove this cruft.
* gps.h gets installed in /usr/include and must not use other GPSD-specific files!Eric S. Raymond2015-02-261-1/+0
| | | | | | | It's bad that this get past me. Anybody who tries writing a C client with 3.12 is going to lose. Requires a release to fix. All regression tests pass.
* TOFF JSON message implemented and documented.Eric S. Raymond2015-02-231-0/+3
| | | | | | All regression tests pass. PPS observed live with gosmon. gpsmon presently ignores this message, but shout display its contents near PPS.
* Abolish all confusing uses of the word 'drift' for a time delta.Eric S. Raymond2015-02-231-5/+13
| | | | No logic changes. All regression tesrs pass. Live PPS observed.
* Feature removal - delete last remnants of old pre-JSON protocol from libgps.Eric S. Raymond2015-02-221-1/+0
| | | | | All regression tests pass. Clients are working live. PPS observed on Macx-1.
* Avoid overexposure of an internal mask. EOF_SET -> EOF_ISEric S. Raymond2015-02-201-1/+1
| | | | | | | | Also, use PPSDRIFT_SET as a client-side status flag for JSON PPS rather than the (not yet shipped) TIMEDRIFT_SET. Next release we're probably going to add a drift object for in-line time. No logic changes. All regression tests pass.
* Comment typo fix. No code changes.Eric S. Raymond2015-02-151-1/+1
|
* Replace Gary's magic number 22 with TIMESPEC_LEN.Eric S. Raymond2015-02-121-1/+0
| | | | All regression tests pass.
* splint cleanup. All regressiion tests pass.Eric S. Raymond2015-02-091-1/+1
|
* Add function timespec_str(), and use it.Gary E. Miller2015-02-051-0/+1
| | | | | Converting a timespec to a printable string is odd, so placed in a new function for ease of use.
* Fix PPS vars in client-mode gpsmon.Eric S. Raymond2015-02-031-1/+1
| | | | All regression tests pass.
* Comment possible numeric overflow in timespec_diff_ns()Gary E. Miller2015-02-021-0/+1
| | | | | timespec_diff_ns() should not be used is the delta is more than about 2 seconds.
* Revert the change abolishing the "pps" policy flag, it broke gpsmon client mode.Eric S. Raymond2015-02-021-0/+1
| | | | All regression tests pass.
* Add comment warning not to use doubles in PPS math.Gary E. Miller2015-02-011-2/+2
| | | | | | | | | WARNING! Loss of precision UNIX time to nanoSec precision is 62 significant bits UNIX time to nanoSec precision after 2038 is 63 bits a double is only 53 significant bits. You can not do PPS math with doubles
* Note potential loss of precision in timestamp_tGary E. Miller2015-01-311-0/+7
|
* API major version bump.Eric S. Raymond2015-01-251-3/+4
|
* Document recent changes.Eric S. Raymond2015-01-251-2/+4
|
* Add do { ... } while (0) around assignment in macroMatt2015-01-231-1/+1
| | | | | | | | | | Add the customary do { ... } while (0) around this macro which expands to executable code (as opposed to an expression). I believe this is not necessary when, as in this case, the code is a single line. But a) it costs nothing, b) it might become multi-line one day, and c) it looks wrong to my C programmer eyes - alarm bells ring every time I read it, and I don't want to blunt that generally healthy reaction.
* Add compiler.h with compiler specific macros.Zbigniew Chyla2015-01-211-8/+1
| | | | | Use new macros (UNUSED, PRINTF_FUNC) where appropriate. This change doesn't affect generated binary code.
* Clean STATUS_DGPS_FIX out of the public interface. All regression tests pass.Eric S. Raymond2015-01-131-2/+1
|
* Fix a namespace-pollution issue that causes OS X build failures.Eric S. Raymond2015-01-091-16/+0
| | | | All regression tests pass.
* Better way to avoid glibc dependency.Eric S. Raymond2014-09-291-0/+1
| | | | | | | Returns us to something amost identical to the original code. Sigh. Timezones are a swamp. All regression tests pass.
* Remove some custom code, at the cost of introducing a glibc depenency.Eric S. Raymond2014-09-251-1/+0
| | | | Dependency soon to be fixed. All regression tests pass.
* Refactor representation of satellite data into an array of structs...Eric S. Raymond2014-09-221-5/+9
| | | | | | | | | | | | | | | | | | ...from a set of parallel arrays. This change flushed out a longstanding bug in the computation of DOPs for estimated error bars. Some test-load rebuilds were required: geostar-geos1m-binary.log.chk: With this change error estimates are computed and reported. trimble-lassen_iq-3dfix.log, trimble-lassen_iq-3dfix.log: the change revealed a bug in the computation of satellite-seen bits. Error estimates did not change. navcom.log: Error estimates changed. With these rebuilds, all regression tests pass.
* Remove a qualifying comment left over from the old polling interface.Eric S. Raymond2014-09-051-16/+2
|
* Drop the obsolete tag field from JSON output. Bump the minor protocol number.Eric S. Raymond2014-08-241-6/+3
| | | | | | | Required a regression-test rebuild, of course. The field is still set by the TSIP and SiRF drivers; the SiRF driver actually uses it. It may be possible to eliminate the TSIP uses, but so far attempting this has produced odd regression-test failures.
* Reduce space required by devicelist now that it's in the main structure.Eric S. Raymond2014-08-231-8/+3
|
* PPS is no kinger marked unstable/experimental.Eric S. Raymond2014-08-231-1/+0
|
* Device list fully moved out of terminal union; all regression tests pass.Eric S. Raymond2014-08-231-7/+8
|
* Full implementation of AIS 'structured' bit. All regression tests pass.Eric S. Raymond2014-08-231-0/+1
|
* libgps version bump to 22: AIS types 6 and 8 get 'structured' member.Eric S. Raymond2014-08-231-1/+4
|
* Cirresct specification annd processing of Inland AIS Type 10 message.Eric S. Raymond2014-08-181-3/+3
|
* Fix an out of bounds on pulse[] in ppsthread.cGary E. Miller2013-11-301-1/+1
| | | | | | The variable state used to be a boolean, and was used to index into pulse[] to find the last two edges. state became a mask and was accessing pulsep[] out of bounds, doing off things.
* Remove a bit of floating point that snuck into timespec_diff_ns()Gary E. Miller2013-11-301-2/+2
|
* timespec_diff_ns() must return a long, int is too short.Gary E. Miller2013-11-291-1/+2
|