Gpsd: Difference between revisions
No edit summary |
Rescuing 5 sources and tagging 0 as dead. #IABot (v1.6.2) (Balon Greyjoy) |
||
Line 25: | Line 25: | ||
It thus provides a unified [[Interface (computing)|interface]] to receivers of different types, and allows concurrent access by multiple applications. |
It thus provides a unified [[Interface (computing)|interface]] to receivers of different types, and allows concurrent access by multiple applications. |
||
It is commonly used on [[Linux]] and [[FreeBSD]] systems.<ref>[http://packages.debian.org/search?keywords=gpsd Debian packages of gpsd]</ref><ref>[https://admin.fedoraproject.org/pkgdb/acls/name/gpsd Fedora package of gpsd]</ref><ref>[http://www.freebsdsoftware.org/astro/gpsd.html gpsd FreeBSD] from the [[FreeBSD]] ports archive</ref> Distributed under the [[BSD licenses#3-clause|3-clause BSD license]], gpsd is [[free software]]. |
It is commonly used on [[Linux]] and [[FreeBSD]] systems.<ref>[http://packages.debian.org/search?keywords=gpsd Debian packages of gpsd]</ref><ref>[https://admin.fedoraproject.org/pkgdb/acls/name/gpsd Fedora package of gpsd] {{webarchive|url=https://web.archive.org/web/20111002061218/https://admin.fedoraproject.org/pkgdb/acls/name/gpsd |date=2011-10-02 }}</ref><ref>[http://www.freebsdsoftware.org/astro/gpsd.html gpsd FreeBSD] from the [[FreeBSD]] ports archive</ref> Distributed under the [[BSD licenses#3-clause|3-clause BSD license]], gpsd is [[free software]]. |
||
== Design == |
== Design == |
||
gpsd provides a [[TCP/IP]] service by binding to port 2947.<ref name="gpsd_man">[http://gpsd.berlios.de/gpsd.html gpsd manual page] gpsd project, retrieved 2011-07-11</ref> It accepts commands from that socket, and returns results back to it. These commands use a [[JSON]]-based syntax and return JSON responses<ref name="gpsd_man"/> (older, now obsolete versions used single-letter commands). Multiple clients can use gpsd's service in parallel, thus allowing multiple applications to use the data in parallel. |
gpsd provides a [[TCP/IP]] service by binding to port 2947.<ref name="gpsd_man">[http://gpsd.berlios.de/gpsd.html gpsd manual page] {{webarchive|url=https://web.archive.org/web/20110718125612/http://gpsd.berlios.de/gpsd.html |date=2011-07-18 }} gpsd project, retrieved 2011-07-11</ref> It accepts commands from that socket, and returns results back to it. These commands use a [[JSON]]-based syntax and return JSON responses<ref name="gpsd_man"/> (older, now obsolete versions used single-letter commands). Multiple clients can use gpsd's service in parallel, thus allowing multiple applications to use the data in parallel. |
||
Most GPS receivers are supported, whether [[Serial communications|serial]], [[USB]], or [[Bluetooth]]. Starting in 2009, GPSD supports [[Automatic Identification System|AIS]] receivers as well.<ref>[http://gpsd.berlios.de/history.html A Brief History of GPSD, "In July and August 2009 ESR redesigned the GPSD command protocol and gave gpsd the ability to read data from marine AIS receivers and pass it to clients."; retrieved 2011-05-01]</ref> Additionally gpsd supports interfacing with the UNIX network time protocol daemon [[ntpd]] via [[Shared memory (interprocess communication)|shared memory]] to enable setting the host platform's time via the GPS clock. |
Most GPS receivers are supported, whether [[Serial communications|serial]], [[USB]], or [[Bluetooth]]. Starting in 2009, GPSD supports [[Automatic Identification System|AIS]] receivers as well.<ref>[http://gpsd.berlios.de/history.html A Brief History of GPSD, "In July and August 2009 ESR redesigned the GPSD command protocol and gave gpsd the ability to read data from marine AIS receivers and pass it to clients."; retrieved 2011-05-01] {{webarchive|url=https://web.archive.org/web/20061014054342/http://gpsd.berlios.de/history.html |date=2006-10-14 }}</ref> Additionally gpsd supports interfacing with the UNIX network time protocol daemon [[ntpd]] via [[Shared memory (interprocess communication)|shared memory]] to enable setting the host platform's time via the GPS clock. |
||
== Authors == |
== Authors == |
||
gpsd was originally written by Remco Treffkorn with Derrick Brashear, then maintained by [[Russ Nelson|Russell Nelson]].<ref>[http://pygps.org/gpsd/CHANGELOG GPSD CHANGELOG]</ref> It is now maintained by [[Eric S. Raymond]].<ref>[http://gpsd.berlios.de/history.html GPSD History]</ref><ref>[http://thedailywtf.com/Articles/Bad-Code-Offsets-Open-Web-Innovation.aspx Bad Code Offsets: Open Web Innovation]</ref> |
gpsd was originally written by Remco Treffkorn with Derrick Brashear, then maintained by [[Russ Nelson|Russell Nelson]].<ref>[http://pygps.org/gpsd/CHANGELOG GPSD CHANGELOG] {{webarchive|url=https://web.archive.org/web/20070928120501/http://pygps.org/gpsd/CHANGELOG |date=2007-09-28 }}</ref> It is now maintained by [[Eric S. Raymond]].<ref>[http://gpsd.berlios.de/history.html GPSD History] {{webarchive|url=https://web.archive.org/web/20061014054342/http://gpsd.berlios.de/history.html |date=2006-10-14 }}</ref><ref>[http://thedailywtf.com/Articles/Bad-Code-Offsets-Open-Web-Innovation.aspx Bad Code Offsets: Open Web Innovation]</ref> |
||
== References == |
== References == |
Revision as of 22:30, 25 January 2018
Original author(s) | Remco Treffkorn, Derrick Brashear |
---|---|
Developer(s) | Eric S. Raymond |
Stable release | 3.16
/ January 8, 2016 |
Repository | |
Written in | C, Python |
Operating system | Linux, *BSD, Mac OS X, Android |
Platform | Any |
Size | ~110K LOC |
Available in | English |
Type | GPS |
License | BSD |
Website | www |
gpsd is a daemon that receives data from a GPS receiver, and provides the data back to multiple applications such as Kismet or GPS navigation software. It thus provides a unified interface to receivers of different types, and allows concurrent access by multiple applications.
It is commonly used on Linux and FreeBSD systems.[1][2][3] Distributed under the 3-clause BSD license, gpsd is free software.
Design
gpsd provides a TCP/IP service by binding to port 2947.[4] It accepts commands from that socket, and returns results back to it. These commands use a JSON-based syntax and return JSON responses[4] (older, now obsolete versions used single-letter commands). Multiple clients can use gpsd's service in parallel, thus allowing multiple applications to use the data in parallel.
Most GPS receivers are supported, whether serial, USB, or Bluetooth. Starting in 2009, GPSD supports AIS receivers as well.[5] Additionally gpsd supports interfacing with the UNIX network time protocol daemon ntpd via shared memory to enable setting the host platform's time via the GPS clock.
Authors
gpsd was originally written by Remco Treffkorn with Derrick Brashear, then maintained by Russell Nelson.[6] It is now maintained by Eric S. Raymond.[7][8]
References
- ^ Debian packages of gpsd
- ^ Fedora package of gpsd Archived 2011-10-02 at the Wayback Machine
- ^ gpsd FreeBSD from the FreeBSD ports archive
- ^ a b gpsd manual page Archived 2011-07-18 at the Wayback Machine gpsd project, retrieved 2011-07-11
- ^ A Brief History of GPSD, "In July and August 2009 ESR redesigned the GPSD command protocol and gave gpsd the ability to read data from marine AIS receivers and pass it to clients."; retrieved 2011-05-01 Archived 2006-10-14 at the Wayback Machine
- ^ GPSD CHANGELOG Archived 2007-09-28 at the Wayback Machine
- ^ GPSD History Archived 2006-10-14 at the Wayback Machine
- ^ Bad Code Offsets: Open Web Innovation