summaryrefslogtreecommitdiff
path: root/driver_ubx.c
Commit message (Collapse)AuthorAgeFilesLines
* SiRF driver. Bug fix in code to set used flags on SBAS satellites.Michael Tatarinov2011-10-061-1/+3
| | | | Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
* splint revealed some problems with the previous commit.Eric S. Raymond2011-09-181-3/+5
|
* Sort out some issues with PRN handling.Eric S. Raymond2011-09-181-1/+1
| | | | | | | | | Add macros for classifying PRNs into GPS, GLONASS, DGPS. Document the PRN ranges on the gps_json manual page. It turns out that U.S. GPS authorities reserve 1-64 for GPS birds, not just 1-32. So the way we map GLONASS PRNs had to change. This required a regression-test rebuild for the geostar driver.
* Correction for SBAS satellite use bit code.Eric S. Raymond2011-09-181-0/+4
|
* Remove more duplicative logging. All regression tests pass.Eric S. Raymond2011-06-171-6/+2
|
* Cut down on gpsd_hexdump_wrapper() calls.Eric S. Raymond2011-06-171-2/+2
| | | | | | | | | | | | | | | This awkward construct seems to have triggered some sort of toolchain bug. The symptom is that gpsd_hexdump_level has different values depending on whether we test it inside or outside of hex.c. As a first step towards eliminating this global, we throw out a bunch of hex logging that is duplicative or not really needed for production drivers. Experimental drivers can call the hex dumper unconditionally. The goal is to reduce the number of uses of this variable to eliminate it withoud doing violence to the internal APIs. This is a first step. All regression tests pass.
* Removed duplicative ntpshm_put() in the UBX driver.Eric S. Raymond2011-04-031-9/+0
|
* Regularize some names.Eric S. Raymond2011-04-011-8/+8
|
* gps_maskdump() has been a CPU hog. Drastically reduce the number of calls...Eric S. Raymond2011-03-311-2/+2
| | | | | ...and guard them with debug level so they won't be done when the output would never be shipped anywhere.
* Re-identify most *_IS flags with corresponding *_SET flags.Eric S. Raymond2011-03-271-9/+9
| | | | | | | | | | | Required so clients looking at flag masks in data exported via the shared-memory interface will see the right thing. These were separated originally in order to avoid pushing the reqyuired width of the gpsdata.set flag mask over 32 bits. It became 64 bits in the Version 5 API change, so that constraint went away. All regression tests pass.
* Clear up some confusion about *_SET vs.. *_IS defines.Eric S. Raymond2011-03-261-1/+1
| | | | | | | | | *_SET masks are library-side and for the set member of the fisx structure. *_IS masks are daemon-side and used only in the status mask returned by the packet analyzer methods, and code in the core library that uses same. Never the twain shall meet. All regression tests pass.
* Make all drivers set the PPSTIME_IS mask where appropriate. It's not yet used.Eric S. Raymond2011-03-231-2/+2
| | | | All regression tests pass.
* Patch to allow uBlox to send time to ntpd/chronyGary E. Miller2011-03-101-5/+12
| | | | Patch from Benoit Donnette. Still needs the proper fudge.
* Regularize #ifdefs. All regression tests pass.Eric S. Raymond2011-03-041-2/+2
|
* Verbosity suppression. All regression tests pass.Eric S. Raymond2011-02-281-0/+2
|
* Remove pass_rtcm(),Eric S. Raymond2011-02-271-1/+1
| | | | | Replace it wuth what it calls, gpsd_write(). Requiresd only a prototype tweak and some casts, no logic changes. All regression tests pass.
* Bug fixes and improvements for the NTRIP code.Andre Naujoks2011-02-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | The first thing I had to do to make RTCM work at all, was to remove the separate poll for the socket (the change in gpsd.c). The same stuff is done in consume_packet, so there is no loss here. In fact the duplicated read caused constant lock losses on the RTCM stream because of missing data, which was already read by the now removed read. Add RTCM2 passthrough to the UBX driver: versions of the firmware since 7.0 can handle this. The change in net_ntrip.c adds another string to the valid strings for rtcm2 to be recognized. See: http://www.sapos-ni-ntrip.de:2101/sourcetable.htm for the sourcetable of the server. The mountpoint I am using is EPS_NI. The problem is the RTCM1_ data format. The people from sapos confirmed, that this is a RTCM2 stream and so far it works. All regression tests pass. Signed-off-by: Eric S. Raymond <esr@thyrsus.com>
* Refactor time handling yet again. All regression tests pass.Eric S. Raymond2011-01-211-2/+2
|
* Add some suitable warning comments.Eric S. Raymond2011-01-211-0/+5
|
* Added a driver-type flags member to the driver method structure.Eric S. Raymond2011-01-191-0/+1
| | | | All regression tests pass.
* splint cleanup. All regression tests pass.Eric S. Raymond2011-01-181-1/+3
|
* Refactor time resolution. All regression tests pass.Eric S. Raymond2011-01-171-22/+2
|
* Introduce GPS_TIME_VALID flag for GPS time validation.Eric S. Raymond2011-01-171-1/+3
|
* More deheader testing. All regression tests pass.Eric S. Raymond2011-01-131-0/+1
|
* A lot of subframes are invalid, only SUBFRAME_IS on good ones.Gary E. Miller2011-01-031-4/+3
|
* Reporting framework for subframes. All regression tests pass.Eric S. Raymond2011-01-031-0/+1
|
* Rename the bits.h macros to be explicit about operand length.Eric S. Raymond2010-12-261-25/+25
| | | | | | With most machines being 64-bit now, the assumption that "word" = 16 bits and "long" = 32 bits is increasingly archaic. This commit removes it from our naming conventions.
* Be explicit about the type and signedness of subframe data.Eric S. Raymond2010-12-241-2/+3
|
* More header portability audting with a new version of deheader.Eric S. Raymond2010-12-221-1/+3
|
* Insert GPS week rollover checks everywhere we rely on GPS time.Eric S. Raymond2010-12-201-0/+2
| | | | All regression tests pass.
* Subframe decoder will need PRNChris Kuethe2010-12-111-1/+1
|
* More deheaderizing. All regression tests pass.Eric S. Raymond2010-12-011-6/+0
|
* XXX -> FIX-ME: Avoids false matches with autoconf cruft.Eric S. Raymond2010-05-121-1/+1
| | | | | | | So we can grep for things that need to be cleaned up without a lot of noise. All regression tests pass.
* Reindent. All regression tests pass.Eric S. Raymond2010-04-261-5/+5
| | | | | Most of the bulk of this one is the xgpsspeed code, which was not formerly incldecd in reindenting.
* Clear DOPs only when we get a skyview report.Eric S. Raymond2010-04-201-1/+6
| | | | | | | | | | | | | | | This solves the disappearing epx/epy bug on SiRFs, but it was actually a systemic problem that affected several drivers. Navigation solution messages were clearing DOPs, making it impossible for the error modeller to compute estimates. New logic: Clear DOPs only when we get a skyview report. They'll be regenerated by our visibility-matrix calculation when the skyview sentence is analyzed. If a sentence from the device supplies a DOP between the time the visibility calculation is done and when the next fix is reported, it will override our computed value. This might change later! This change required a regression-test rebuild.
* Splint and cppcheck cleanup. All regression tests pass.Eric S. Raymond2010-04-201-1/+1
|
* Eliminate a lot of private copies of gps_tow for one global copy inGary E. Miller2010-04-181-3/+7
| | | | sesion->context.
* remove unused #if 0 codeChris Kuethe2010-04-181-6/+0
|
* grab bytes in the correct orderChris Kuethe2010-04-171-20/+4
|
* Condition out recent change to 50BPS handling in italk and ubxGary E. Miller2010-04-171-2/+4
| | | | | protocols. They are still broken, HAVE been broken for a while as shown by jumping leap seconds.
* Tests by Chris Keuthe show that itrax has the same 50BPS issues asGary E. Miller2010-04-161-2/+8
| | | | | SiRF had. ubx probably the same. So pulled the 50BPS parity checking into a common subroutine for common use.
* Collapse various copies of gps_week into one in gps_contxt_t.Gary E. Miller2010-04-161-5/+5
|
* Doc update and reindent.Eric S. Raymond2010-04-161-1/+1
| | | | All regression tests pass. Codebase splints and cppchecks clean.
* reject RXM_SFRB packets with bad preambleChris Kuethe2010-04-141-2/+5
|
* A note about the way UBX transmits NAV dataChris Kuethe2010-04-141-1/+2
| | | | | Also, print the receiver channel and source PRN to help with decoder comparisons between different protocols
* Reindent a couple more drivers. All regression tests pass.Eric S. Raymond2010-04-141-318/+343
|
* Protect more displayed structures from indent.Eric S. Raymond2010-04-131-0/+2
|
* ubx refactoring, from esrChris Kuethe2010-04-131-27/+25
|
* Refactor serial ntpshm_put() calls.Eric S. Raymond2010-04-121-5/+3
| | | | | | | | | | | | | | | These calls move out of scattered places in the drivers into one spot in libgpsd_core.c where they can be guarded with consistent validity checks. Time offset is now computed by a new driver method, ntp_offset(), which has access through the session structure to the baud rate, the tag of the sentence last received, etc. If the ntp_offset() method returns NAN, no notification is shipped. The logic of these methods replicates the sentence and baud-rate specific computations that were embedded in individual sentence methods before. All regression tests pass.
* Make the client library and daemon use different sets of state-flag masks.Eric S. Raymond2010-04-091-8/+8
| | | | | | | | | | | | | | | | | Large patch, no actual executable code changes except in three debug dumpers. Breaks up the *_SET status macros so the client side continues to use them, but the daemon uses a similarly-named set with an _IS suffix. This frees up two mask bits in both sets - the client side no longer needs to have REPORT_SET and CLEAR_SET bits, and the daemon side no longer needs to have VERSION_SET and POLICY_SET. The only actual code change is that the maskdump.c module, generated by maskaudit.py, splits in half - one child now dumps client-side flags, the other daemon-side flags. One other function call in a debug dumper in libgps_core.c changes. All regression tests pass.