Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
configuration:gpsd [2016/05/13 12:09]
juraschek [cli status interface]
configuration:gpsd [2019/02/28 10:30] (current)
juraschek [GPS over IP]
Line 7: Line 7:
     * cli status interface     * cli status interface
     * inside of SDK Skripts     * inside of SDK Skripts
 +    * SNMP 
 ====== Webinterface ====== ====== Webinterface ======
  
-The Webinterface ​already give you access to the GPS Data. This can be suitable to have a quick look on the current status of a vehicle.+The Webinterface ​gives you access to the GPS Data. This can be suitable to have a quick look on the current status of a vehicle.
  
 ===== Status Page ===== ===== Status Page =====
Line 15: Line 16:
  
 {{ :​configuration:​screenshot_-_130516_-_13_57_52.png?​nolink |}} {{ :​configuration:​screenshot_-_130516_-_13_57_52.png?​nolink |}}
- 
- 
  
  
Line 24: Line 23:
 {{ :​configuration:​screenshot_-_130516_-_13_51_36.png?​nolink |}} {{ :​configuration:​screenshot_-_130516_-_13_51_36.png?​nolink |}}
  
 +====== Data format NMEA-0183 ======
 +
 +source: http://​freenmea.net/​docs
 +
 +**NMEA-0183 prefixes (Talker IDs)**
 +NMEA protocol can be sent by different equipment. It can be identified by so called Talker Id. Most known one is, of course $GP_ - GPS.
 +  * GA - Galileo
 +  * GL - GLONASS Receiver
 +  * GP - Global Positioning System (GPS)
 +  * GN - Global Navigation Satellite System (GNSS), combined services
  
  
Line 37: Line 46:
  
 <code javascript>​ <code javascript>​
-// get JOSN+// get JSON
 ?​WATCH={'​enable':​true,'​json':​true} ?​WATCH={'​enable':​true,'​json':​true}
 // get NMEA // get NMEA
 ?​WATCH={'​enable':​true,'​json':​false} ?​WATCH={'​enable':​true,'​json':​false}
 ?​WATCH={'​enable':​true,'​nmea':​true} ?​WATCH={'​enable':​true,'​nmea':​true}
 +?​WATCH={'​enable':​true}
 </​code>​ </​code>​
  
 For more information on the new JSON interface see [[http://​www.catb.org/​gpsd/​client-howto.html]] For more information on the new JSON interface see [[http://​www.catb.org/​gpsd/​client-howto.html]]
 +
 +
 +<​konsole>​
 +telnet nb 2947
 +Trying 192.168.1.1...
 +Connected to nb.
 +Escape character is '​^]'​.
 +{"​class":"​VERSION","​release":"​3.15","​rev":"​3.15","​proto_major":​3,"​proto_minor":​11}
 +?​WATCH={"​enable":​false,"​nmea":​true}
 +{"​class":"​DEVICES","​devices":​[{"​class":"​DEVICE","​path":"/​dev/​ttyUSB1","​driver":"​NMEA0183","​activated":"​2018-11-10T20:​28:​27.019Z","​flags":​1,"​native":​0,"​bps":​9600,"​parity":"​N","​stopbits":​1,"​cycle":​1.00}]}
 +{"​class":"​WATCH","​enable":​false,"​json":​false,"​nmea":​true,"​raw":​0,"​scaled":​false,"​timing":​false,"​split24":​false,"​pps":​false}
 +?​WATCH={"​enable":​true}
 +{"​class":"​DEVICES","​devices":​[{"​class":"​DEVICE","​path":"/​dev/​ttyUSB1","​driver":"​NMEA0183","​activated":"​2018-11-10T20:​28:​32.020Z","​flags":​1,"​native":​0,"​bps":​9600,"​parity":"​N","​stopbits":​1,"​cycle":​1.00}]}
 +{"​class":"​WATCH","​enable":​true,"​json":​false,"​nmea":​true,"​raw":​0,"​scaled":​false,"​timing":​false,"​split24":​false,"​pps":​false}
 +$GLGSV,​3,​1,​09,​78,​02,​045,​37,​70,​70,​292,​31,​73,​09,​226,​39,​80,​68,​236,​26*69
 +$GLGSV,​3,​2,​09,​79,​52,​040,​24,​69,​41,​158,​23,​88,​10,​040,​21,​87,​10,​355,​19*62
 +$GLGSV,​3,​3,​09,​71,​20,​323,​23*5B
 +$GPGSV,​4,​1,​14,​05,​31,​198,​45,​07,​06,​070,​36,​08,​07,​025,​30,​13,​80,​302,​33*7C
 +$GPGSV,​4,​2,​14,​15,​43,​295,​48,​17,​01,​129,​36,​20,​05,​327,​30,​21,​04,​300,​37*71
 +$GPGSV,​4,​3,​14,​24,​10,​254,​36,​28,​57,​098,​32,​30,​38,​068,​39,,,,​39*44
 +$GPGSV,​4,​4,​14,​38,​27,​209,​33,​49,​31,​184,​45*7A
 +$GPGGA,​102924.0,​5008.019319,​N,​00834.241599,​E,​1,​09,​0.7,​238.6,​M,​48.0,​M,,​*5E
 +$GNGNS,​102924.0,​5008.019319,​N,​00834.241599,​E,​AAN,​12,​0.7,​238.6,​48.0,,​*2E
 +$GPVTG,​240.2,​T,​240.7,​M,​0.0,​N,​0.0,​K,​A*26
 +$GPRMC,​102924.0,​A,​5008.019319,​N,​00834.241599,​E,​0.0,​240.2,​280219,​0.5,​W,​A*19
 +$GPGSA,​A,​2,​05,​08,​13,​15,​20,​21,​24,​28,​30,,,,​0.9,​0.7,​0.6*3E
 +$GNGSA,​A,​2,​05,​08,​13,​15,​20,​21,​24,​28,​30,,,,​0.9,​0.7,​0.6,​1*3D
 +$GNGSA,​A,​2,​70,​73,​80,,,,,,,,,,​0.9,​0.7,​0.6,​2*30
 +$GNGSA,​A,​2,​219,​221,​222,​227,​228,,,,,,,,​0.9,​0.7,​0.6*13
 +$GNGSA,​A,​2,,,,,,,,,,,,,​0.9,​0.7,​0.6,​3*3A
 +$GLGSV,​3,​1,​09,​78,​02,​045,​37,​70,​70,​292,​31,​73,​09,​226,​39,​80,​68,​236,​27*68
 +$GLGSV,​3,​2,​09,​79,​52,​040,​24,​69,​41,​158,​23,​88,​10,​040,​21,​87,​10,​355,​26*6E
 +$GLGSV,​3,​3,​09,​71,​20,​323,​21*59
 +$GPGSV,​4,​1,​14,​05,​31,​198,​45,​07,​06,​070,​35,​08,​07,​025,​33,​13,​80,​302,​34*7B
 +$GPGSV,​4,​2,​14,​15,​43,​295,​48,​17,​01,​129,​36,​20,​05,​327,​30,​21,​04,​300,​37*71
 +$GPGSV,​4,​3,​14,​24,​10,​254,​36,​28,​57,​098,​31,​30,​38,​068,​39,,,,​39*47
 +$GPGSV,​4,​4,​14,​38,​27,​209,​34,​49,​31,​184,​45*7D
 +$GPGGA,​102925.0,​5008.019336,​N,​00834.241660,​E,​1,​10,​0.6,​238.6,​M,​48.0,​M,,​*5E
 +$GNGNS,​102925.0,​5008.019336,​N,​00834.241660,​E,​AAN,​14,​0.6,​238.6,​48.0,,​*20
 +$GPVTG,​240.2,​T,​240.7,​M,​0.0,​N,​0.0,​K,​A*26
 +$GPRMC,​102925.0,​A,​5008.019336,​N,​00834.241660,​E,​0.0,​240.2,​280219,​0.5,​W,​A*10
 +$GPGSA,​A,​2,​05,​07,​08,​13,​15,​20,​21,​24,​28,​30,,,​0.9,​0.6,​0.6*38
 +$GNGSA,​A,​2,​05,​07,​08,​13,​15,​20,​21,​24,​28,​30,,,​0.9,​0.6,​0.6,​1*3B
 +$GNGSA,​A,​2,​70,​73,​80,​87,,,,,,,,,​0.9,​0.6,​0.6,​2*3E
 +$GNGSA,​A,​2,​219,​221,​222,​227,​228,,,,,,,,​0.9,​0.6,​0.6*12
 +$GNGSA,​A,​2,,,,,,,,,,,,,​0.9,​0.6,​0.6,​3*3B
 +$GLGSV,​3,​1,​09,​78,​02,​045,​37,​70,​70,​292,​31,​73,​09,​226,​38,​80,​68,​236,​25*6B
 +$GLGSV,​3,​2,​09,​79,​52,​040,​24,​69,​41,​158,​23,​88,​10,​040,​21,​87,​10,​355,​26*6E
 +$GLGSV,​3,​3,​09,​71,​20,​323,​21*59
 +$GPGSV,​4,​1,​14,​05,​31,​198,​46,​07,​06,​070,​31,​08,​07,​025,​31,​13,​80,​302,​34*7E
 +$GPGSV,​4,​2,​14,​15,​43,​295,​48,​17,​01,​129,​36,​20,​05,​327,​30,​21,​04,​300,​37*71
 +$GPGSV,​4,​3,​14,​24,​10,​254,​36,​28,​57,​098,​31,​30,​38,​068,​39,,,,​39*47
 +$GPGSV,​4,​4,​14,​38,​27,​209,​34,​49,​31,​184,​45*7D
 +$GPGGA,​102926.0,​5008.019356,​N,​00834.241727,​E,​1,​09,​0.6,​238.5,​M,​48.0,​M,,​*52
 +$GNGNS,​102926.0,​5008.019356,​N,​00834.241727,​E,​AAN,​13,​0.6,​238.5,​48.0,,​*23
 +$GPVTG,​240.2,​T,​240.7,​M,​0.0,​N,​0.0,​K,​A*26
 +$GPRMC,​102926.0,​A,​5008.019356,​N,​00834.241727,​E,​0.0,​240.2,​280219,​0.5,​W,​A*17
 +$GPGSA,​A,​2,​05,​08,​13,​15,​20,​21,​24,​28,​30,,,,​0.9,​0.6,​0.6*3F
 +$GNGSA,​A,​2,​05,​08,​13,​15,​20,​21,​24,​28,​30,,,,​0.9,​0.6,​0.6,​1*3C
 +$GNGSA,​A,​2,​70,​73,​80,​87,,,,,,,,,​0.9,​0.6,​0.6,​2*3E
 +$GNGSA,​A,​2,​219,​221,​222,​227,​228,,,,,,,,​0.9,​0.6,​0.6*12
 +$GNGSA,​A,​2,,,,,,,,,,,,,​0.9,​0.6,​0.6,​3*3B
 +
 +</​konsole>​
  
 ==== Clients ==== ==== Clients ====
Line 65: Line 139:
 GNSS1 module type:               me909 GNSS1 module type:               me909
 GNSS1 module info:               ​Manufacturer:​ Huawei Technologies Co., Ltd. GNSS1 module info:               ​Manufacturer:​ Huawei Technologies Co., Ltd.
-                                 Model: ME909u-521 +.                                ​Model: ME909u-521 
-                                 ​Revision: 11.235.07.00.00 +.                                ​Revision: 11.235.07.00.00 
-                                 ​IMEI: 860461024127634 +.                                ​IMEI: 860461024127634 
-                                 ​+GCAP: +CGSM+.                                ​+GCAP: +CGSM
 GNNS1 system: ​                   GPS GNNS1 system: ​                   GPS
 GNSS1 signal: ​                   present GNSS1 signal: ​                   present
Line 111: Line 185:
  
 ====== SDK Scripts ​ ====== ====== SDK Scripts ​ ======
 +
 +Within the SDK you can reach the gps data by requesting the status parameter as in the cli example or you can retrieve the data from the gps over IP daemon to distribute it further. ​
 +
 +Cli data can be retrieved as follows: ​
 +<code c >
 +status=nb_status("​gnss"​);​
 +dump(status);​
 +</​code>​
 +
 +Result:
 +
 +<code c >
 +struct(15): {
 +  .GNSS1_MODULE_TYPE = string[5]: "​me909"​
 +  .GNSS1_MODULE_INFO = string[126]:​ "​Manufacturer:​ Huawei Technologies Co., Ltd.  Model: ME909u-521 ​ Revision: 11.235.07.00.00 ​ IMEI: 860461024127634 ​ +GCAP: +CGSM"
 +  .GNSS1_LONGITUDE = string[8]: "​8.572821"​
 +  .GNSS1_HDOP = string[4]: "​6.00"​
 +  .GNNS1_SYSTEM = string[3]: "​GPS"​
 +  .GNSS1_VDOP = string[4]: "​0.90"​
 +  .GNSS1_LATITUDE = string[9]: "​50.134294"​
 +  .GNNS1_LAST_FIX = string[19]: "​2016-05-08 03:​42:​16"​
 +  .GNSS1_ALTITUDE = string[6]: "​146.90"​
 +  .GNSS1_PDOP = string[4]: "​6.00"​
 +  .GNSS1_SATELLITES_USED = string[1]: "​4"​
 +  .GNSS1_VERTICAL_SPEED = string[5]: "​0.000"​
 +  .GNSS1_SATELLITES_INVIEW = string[2]: "​12"​
 +  .GNSS1_SIGNAL = string[7]: "​present"​
 +  .GNSS1_HORIZONTAL_SPEED = string[5]: "​0.000"​
 +}
 +</​code>​
 +
 +==== SNMP ====
 +It's possible to poll the postition via SNMP. 
 +You will find the entries "​gnssLat"​ latitude and "​gnssLon"​ longitude in the private MIB. 
 +Please be aware that the update interval will be 3s. 
 +
 +
 +===== Example Scripts =====
 +
 +  * Sending NMEA String on the serial interface: [[sdk:​gps2serial]]
 +  * Forward NMEA String to a UDP Server: [[sdk:​scripts:​gps-udp-client]]
 +  * Enable/​Disable WLAN depending on the current position: [[sdk:​scripts:​gps-monitor]]
 +  * Creating CSV Logfiles with location data: [[sdk:​connection-statistics]]