Výsledky výzkumu a další informace nejen
z oblasti přístupových telekomunikačních sítí.
Access server ISSN 1214-9675
Server vznikl za podpory Grantové agentury ČR.
21. ročník
Dnešní datum: 22. 03. 2023  Hlavní stránka | Seznam rubrik | Ke stažení | Odkazy  

Knihu o FTTx

Matlab server - on-line výpočty a simulace

E-learning - on-line kurzy

Napište nám

Redakční rada - pokyny pro autory a recenzenty


Lokalizace polohy

* GPS Communicator – Tool for Analysis of NMEA Protocol

Vydáno dne 07. 02. 2011 (11958 přečtení)

Nástroj pro analýzu protokolu NMEA. NMEA protocol is used for communication between GPS chip and host device in navigation equipment. The software tool developed for analyzing of NMEA is introduced and presented in this paper. The interface of the developed software enables to monitor visible satellites, levels of signal received from satellites, monitor MNEA communication, and determination of user’s location based on analysis of information received from satellites.

GPS Communicator – Nástroj pro analýzu protokolu NMEA

Tento článek se zabývá protokolem NMEA používaným pro komunikaci mezi GPS čipem a ostatními částmi navigačního zařízení. Dále je v tomto článku popsán software vyvinutý pro analýzu NMEA protokolu. Vytvořený software umožňuje monitorování viditelných satelitů, úrovní signálu přijímaných uživatelským zařízením od jednotlivých satelitů, monitorování komunikace protokolem NMEA a dále je možné zobrazit současnou polohu uživatele.


The identification of a user’s location in satellite navigation (positioning) systems is based on measurement of delay caused by signal propagation from several satellites to the user. The derived delay is recalculated to distance between the satellite and the user., The distance from at least four satellites must be known to determine precise position in three dimensions by processing of four unknown parameters: latitude, longitude, altitude, and time.

Commonly, the most utilized navigation system is GPS (Global Positioning System) [1]. The development of GPS system is dated to 1960, when the study of feasibility was created. The system is financed by Pentagon (Ministry of Defense of USA) since 1973. The first satellite was launched five years later and the system was fully completed in 1995.

As shown in Fig. 1, GPS system consists of three parts: space segment, ground segment, and users segment.


Fig. 1 – Segments of GPS system

The ground segment provides controlling and monitoring functions to the GPS system. Therefore, it is composed of a control station, deployed in US military base at Colorado Springs, and several monitoring stations. The monitoring stations analyze the states, positions, and technical condition of all satellites. All obtained information is forwarded to the control station. The purpose of the control station is to evaluate this information and decide whether a control procedure (e.g. adjustment of a position of a satellite) is required.

The space segment consists of up to 32 satellites deployed on six orbits with inclination of 55°. The orbits are in distance of 20180km above earth. Thus, the turnaround time of each satellite is 11 hours an 58 minutes. This constellation ensures the visibility of at least of four satellites anywhere on the earth surface. However, roughly eight of them are usually visible from the majority of earth. The satellites, entitled NAVSTAR, are manufactured by Rockwell International. The satellites are of the weight of 860 kg, and among others all of them are equipped with very precise atomic clock, solar panels (with span of 5.2 m) or with driving system. Each satellite periodically transmits navigation information to enable localization of users [2].

The user’s segment is represented by common GPS equipment. The general structure of the equipment is depicted in Fig. 2. Basically, it is composed of GPS chip and host device. The GPS chip is responsible for processing of data and information received from all available satellites via RF (Radio Frequency) block. The output information is further delivered to the host part by using NMEA 0183 (National Marine Electronics Association) protocol.


Fig. 2 – User's equipment

Format of information for navigation

All satellites transmit a navigation message with length of 1500 bits using bitrate 50 bps. Hence the complete transmission of one message consumes 30 seconds. One message is separated into five subframes with equal length of 300 bits. Each subframe is composed of ten words. The first and second word of each subframe is occupied by TLM (Telemetry) and HOW (HandOver Word). The TLM word carries preamble, information on telemetry and parity bits. The word HOW contains information on time-of-week, alert flag, anti-spoof flag, subframe ID, and parity bits. The other eight words are different for each subframe and contain further supplementary information such as ephemeris, almanac, states of satellites, etc. (see Fig. 3).


Fig. 3 – Format of navigation message

The navigation message is transmitted by satellites. The message is coded and modulated as follows. At first, the message is added to the C/A (Coarse/Acquisition) or P (Precise) code. The C/A code is a code with short duration. On the other hand, the P code is very long code and thus it cannot be easily broken by unauthorized users. Opposite to C/A, the P code is not available for public use. The coded message is modulated to one of carrier as depicted in Fig. 4. Two (or more) carriers are utilized to minimize the negative impact of ionosphere (see [3] for more information on other carriers).


Fig. 4 – Multiplexing of signals and carriers

NMEA protocol

The navigation message is processed by GPS chip and the output is delivered to the host part of navigation equipment using NMEA 0183 protocol [4]. This protocol is designed for communication between marine electronics equipment and other devices. The serial communication between devices is performed in form of sentences in ASCII code. Transmission rate is 4800 baud. The latest version of general MNEA protocol, i.e., v4.0, contains 59 types of sentences. Several of them are used for GPS navigation only. All sentences used by GPS receivers start with prefix “GP”. The most important sentences for GPS navigation are following:

  • GPGSA – GPS DOP (Dilution of Precision) and active satellites
  • GPRMC – Recommended minimum specific GPS/Transit data
  • GPGSV – GPS Satellites in view
  • GPGGA – Global Positioning System Fix Data

The structures and examples of all four messages are presented in Fig. 5.


Fig. 5 – Structure and examples of selected NMEA message

Tool for NMEA analysis – “GPS Communicator”

The software tool “GPS Communicator” for monitoring and processing of NMEA protocol is developed in C++, with GUI in Qt and embedded web browser for online displaying of user’s position. The tool supports all conventional GPS equipments which communicate using serial port. Navilock USB GPS receiver NL-302U SiRF III (see [5]) was used in our testing.

The interface of software contains control part for selection of communication speed and communication serial port and three parts as shown in Fig. 6: Location, Communication, and Map.

The tab “Location” shows information on status of navigation, position of user, and exact GPS time. Also the list of all visible satellites and SNRs are included. All satellites which signal is not used for determination of the position, e.g., due to low SNR, are colored in red.


Fig. 6 – Main window and Location tab

The second tab, “Communication”, shows online communication between GPS chip and host unit (see Fig. 7). All NMEA sentences are displayed and can be analyzed. The title of individual sentences is highlighted by blue color. All parameters of each sentence are shown in conventional order depending on the type of sentence.


Fig. 7 – Real time communication between GPS chip and host unit

The last tab, “Map”, depicts the position of user in google maps based on the information extracted from NMEA communication (see print screen in Fig. 8). The current location is highlighted by green arrow.


Fig. 8 – Depicting of users position in map

The above described tool is available for free at [6].


This paper describes an analysis of communication between GPS chip and host unit. This communication exploits NMEA protocol. To analyze NMEA the software “GPS Communicator” is developed. This tool enables to display all information contained in sentences of NMEA protocol. The output of protocol analysis can be displayed in form of map and parameters or in form of list of NMEA sentences. The tool can be used in cooperation with any conventional GPS module.

This work has been supported by the grant FRVŠ No. 939/2010/F1a and MSM6840770014.


[1] GPS System Description, Global Positioning System Precise Positioning Service Performance Standard, 2007.
[2] NAVSTAR Global Positioning System: Interface specification, Navstar GPS Space Segment/Navigation User Interfaces, Revision D, Dec. 2004.
[3] Rocken, C. - Johnson, J. M. - Braun, J.J. - Kawawa, H. - Hatanaka, Y. - Imakiire, T., Improving GPS surveying with modeled ionospheric corrections, Geophysical research letters, Vol. 27, No. 23, pp. 3821-3824, 2000, doi:10.1029/2000GL012049.
[4] NMEA 0183 Standard, available at: http://www.nmea.org/content/nmea_standards/nmea_083_v_400.asp.
[5] Technical specification of Navilock NL-302U, available at: http://navilock.de/produkte/gruppen/3/Kabel_Empfaenger/61422_NL-302U_Sirf_3.html?show=spec.
[6] Software GPS Communicator, available at: http://matlab.feld.cvut.cz/download.php?sekce=14.

Autor:        Z. Bečvář, R. Hák
Pracoviště: České vysoké učení technické v Praze, FEL

Informační e-mail Vytisknout článek
Projekty a aktuality
01.03.2012: PROJEKT
Výzkum a vývoj nového komunikačního systému s vícekanálovým přístupem a mezivrstvovou spoluprací pro průmyslové aplikace TA02011015

01.01.2012: PROJEKT
Vývoj adaptabilních datových a procesních systémů pro vysokorychlostní, bezpečnou a spolehlivou komunikaci v extrémních podmínkách VG20122014095

09.10.2010: PROJEKT
Výzkum a vývoj datového modulu 10 Gbit/s pro optické a mikrovlnné bezdrátové spoje, FR-TI2/621

09.01.2010: PROJEKT
Sítě s femtobuňkami rozšířené o řízení interference a koordinaci informací pro bezproblémovou konektivitu, FP7-ICT-2009-4 248891

09.11.2008: PROJEKT
Ochrana člověka a techniky před vysokofrekvenčním zářením, FI-IM5/202

20.06.2008: Schválení
Radou pro výzkum a vývoj jako recenzovaný časopis

01.04.2007: PROJEKT
Pokročilá optimalizace návrhu komunikačních systémů pomocí neuronových sítí, GA102/07/1503

01.07.2006: Doplnění sekce pro registrované

12.04.2005: Zavedeno recenzování článků

30.03.2005: Výzkumný záměr
Výzkum perspektivních informačních a komunikačních technologií MSM6840770014

29.11.2004: Přiděleno ISSN

04.11.2004: Spuštění nové podoby Access serveru

18.10.2004: PROJEKT
Optimalizace přenosu dat rychlostí 10 Gbit/s, GA102/04/0773

04.09.2004: PROJEKT
Specifikace kvalitativních kritérií a optimalizace prostředků pro vysokorychlostní přístupové sítě, NPV 1ET300750402

04.06.2004: PROJEKT
Omezující faktory při širokopásmovém přenosu signálu po metalických párech a vzájemná koexistence s dalšími systémy, GA102/03/0434

Web site powered by phpRS PHP Scripting Language MySQL Apache Web Server


Tento web site byl vytvořen prostřednictvím phpRS - redakčního systému napsaného v PHP jazyce.
Na této stránce použité názvy programových produktů, firem apod. mohou být ochrannými známkami
nebo registrovanými ochrannými známkami příslušných vlastníků.