summaryrefslogtreecommitdiff
path: root/italk.c
Commit message (Collapse)AuthorAgeFilesLines
* Refactor sending of control strings.Eric S. Raymond2009-01-061-8/+10
| | | | | | | | Most drivers now have a control_send method that takes a payload. provides whatever checksuming and leader/trailer bytes are needed, and ships it to a specified active device. This change should not alter any behavior. All regression tests pass.
* This diff goes most of the way to getting us splint-clean again.Eric S. Raymond2009-01-051-1/+1
|
* Add a wrapper function around gpsd_hexdump to avoid hexdumping buffers...Chris Kuethe2008-12-271-2/+3
| | | | | | | | ...and copying ascii strings around when they're not going to be printed. This saves quite a lot of CPU. I processed a 50MB ubx binary file. With no "-D" options, this saved nearly 2.2M calls to gpsd_hexdump and the processing time for this file went from 84 seconds to 35 seconds.
* whitespace fixesChris Kuethe2008-08-031-5/+5
|
* No longer necessary to define LITTLE_ENDIAN_PROTOCOL.Eric S. Raymond2008-07-151-1/+0
| | | | All regression tests pass.
* Rename the little-endian bit-unpacking macros to be explicit about their LEness.Eric S. Raymond2008-07-151-29/+29
|
* 'typename' is a reserved word in C++. Gary E. Miller2008-01-191-2/+2
| | | | | Change to 'type_name' so gpsd pieces can be used with C++. Reported by Matt Roberds <mattroberds@cox.net>.
* Minor splint cleanups. All regressio tests pass.Eric S. Raymond2008-01-011-2/+2
|
* fix my fix of satellite info parsing.Chris Kuethe2007-12-271-5/+7
| | | | | | it works better now, but i still haven't figured out how Fastrax' GPSWorkbench gets its satellite info. it was showing way more satellites.
* fix the satellite info decoding. Chris Kuethe2007-12-261-18/+15
| | | | | i'm obviously the only person who uses the itrax driver, and i don't even do it all that often...
* Pull the device_readonly variable into the global context structure.Eric S. Raymond2007-06-011-5/+0
| | | | | | | Note that the implementation is now somewhat different. Before, this flag prevented low-level writes to the device. Now it prevents operations that could *cause* low-level writes -- notably subtype probes, mode changes, and baud-rate changes.
* splint cleanups, and move a static to wre it belongs in the driver structure.Eric S. Raymond2007-06-011-17/+18
|
* use gpsd_write() or italk_write() rather than write().Chris Kuethe2007-04-061-1/+7
| | | | thus, italk_write() must avoid write() when device_readonly is set.
* fix compiler warning. from Mick DurkinChris Kuethe2007-01-281-1/+1
|
* Move the historical italk2 code to the italk3 driver. Chris Kuethe2007-01-181-0/+140
| | | | | It's unlikely to ever be compiled, but it may be useful reference material for the itrax3 protocol.
* italk may not need this "ping"Chris Kuethe2007-01-181-0/+2
|
* This ping is not necessary here. Chris Kuethe2006-12-311-1/+1
| | | | | iTalk tends to be chatty on its own, and I haven't met any itrax3 receivers that need to be woken up.
* italk now parses satellites, time, leap seconds and position. Chris Kuethe2006-12-301-3/+68
| | | | we're close to another working driver.
* More iTalk joy.Chris Kuethe2006-12-291-7/+156
| | | | | Now decodes leap seconds and sv status; navigation solution to follow soon.
* I prefer hex notationChris Kuethe2006-12-291-1/+1
|
* extract and dispatch on the correct byte of the bufferChris Kuethe2006-12-291-4/+6
|
* having both enable-italk and enable-itrax is dumb. Chris Kuethe2006-12-281-6/+7
| | | | | | | now, all itrax features (including italk and $PFST) shall be controlled with enable-itrax. obviously i'm hacking on italk again, so make the italk driver compile again.
* Fix small error in the non-functional italk driver. From Andreas StrickerChris Kuethe2006-12-151-1/+1
|
* Check in regress-builder, after having used it to detect some minor buildEric S. Raymond2006-11-301-1/+1
| | | | problems created by the last big refactoring patch.
* Change the configurator method to take a packet sequence number argument...Eric S. Raymond2006-11-271-2/+2
| | | | ...the same way probe_subtype does, and for the same reason.
* Make this compile (Mick Durkin)Chris Kuethe2006-11-141-1/+1
|
* Split wrapup method into revert and wrapup. The revert method is onlt calledEric S. Raymond2006-11-141-0/+7
| | | | if configuration is enabled.
* Convert some log levels I missed first time around.Eric S. Raymond2006-11-021-1/+1
|
* Define uniform log level macros.Eric S. Raymond2006-11-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | This patch defines a uniform set of log levels and changes all gpsd_report() instances to use them. In most cases (I'd say about 80%) this will make no observable difference, as the numeric log levels the code was using were not too badly inconsistent anyway. The new log level macros are defined and described in gpsd.h. The main thing I wanted was to be able to consistently force dumping of all I/O to devices and clients with -D 4. Some drivers didn't honor this. One or two still may not through lack of an internal write() wrapper that does logging; there will need to be some followup changes. Level 0 messages are always displayed, but to make the semantics clearer there are two defines LOG_ERR and LOG_SHOUT. Level 5 is still super-raw I/O reporting. Level 6 and 7 messages are tagged RAW_LOG+1 and RAW_LOG+2; I was particularly careful about these because we have one report of a user who is getting good results from Garmin serial only at -D 7 or up, and perish forbid I should interfere with that bug being found.
* Drivers have to explicitly set the driver_mode field when they do a switch...Eric S. Raymond2006-11-011-4/+5
| | | | | ...whether or not they actually do anything. Otherwise it may not have the right value when somebody queries it.
* Make this compile againChris Kuethe2006-10-301-3/+3
|
* Split the "initializer" driver method in two.Eric S. Raymond2006-10-301-3/+3
| | | | | | | | | | | There is now a new method, "configurator". The initializer method probes the driver for subtype information (such as a firmware rev) without changing any device settings. The configurator method does things like selecting which packets should send. At the moment, these two methods are always called in tandem, so there has been effectively no change in behavior. Soon, though, gpsctrl will call the initializer method but *not* the configurator.
* iTrax supports a "ping"Chris Kuethe2006-10-271-1/+8
| | | | | | | This ping seems to be wired to an NMI, or seems to be handled by a task running at higher priority than the NMEA or iTalk output processes - ping responses interrupt other messages. Let's use this to help probe for itrax receivers...
* Rename config.h so it can be installed as gpsd_config.h...Chris Kuethe2006-10-261-1/+2
| | | | | | ...for those who want to build their own apps linked against libgps and want the headers to work. Works on OpenBSD, tested by Jeff Francis on OS X and Linux
* Add a new capability to the generic driver structure: wakeup...Eric S. Raymond2006-10-261-0/+1
| | | | | | | | | | ...a function to be called just after the autobaud hunt sets the line speed each time. Use this to get rid of the internal baud hunt loop in the True North driver; instead, the ID query and rate-setting strings will be sent by the wakeup hook. Note: this patch is untested. I'm pretty certain it will work, but somebody needs to try it on live hardware.
* italk now honours --disable-reconfigureChris Kuethe2006-10-101-0/+4
|
* Add subversion ID tags near the beginning of every file.Chris Kuethe2006-09-211-0/+1
| | | | First line where possible, second line for scripts called with #!
* Warning and splint cleanup.Eric S. Raymond2005-08-201-2/+2
|
* True North support integrated.Eric S. Raymond2005-08-011-0/+1
| | | | | | It's not compiled in by default, but it does require one architecture change -- device channels is now a driver- specific capability, since the Thales GPS our TrueNorth user is working with has 14 channels.
* Use gpsd_hexdump().Eric S. Raymond2005-07-191-27/+7
|
* Switch to using C99 initializers everywhere.Eric S. Raymond2005-07-161-13/+13
|
* Architecture extension; handle variable sample rates.Eric S. Raymond2005-07-111-2/+4
|
* First cut at iTrax and iTalk support.Eric S. Raymond2005-07-111-0/+143