Using the GNSS enabled range of Siretta Industrial Modems allows you to provide a lat/long position fix to your application.

Position information can be used in many wide ranging applications but it is mainly used for determining your exact position on the globe or providing an accurate time anywhere in the world.

Most applications either need to have a live streaming position to show a position on a map and to track an asset, device or person. Alternatively applications need to periodically identify where a device is but not require a constantly updated positon. An example of this might be to identify where a device has been installed in the country.

Default Setup for all Modems to turn on the GNSS Engine

Send the following command to initialise the GNSS engine:
AT$GPSP=1

Once the antenna has been connected and the GNSS engine has been initialised with the AT$GPSP command, the GNSS engine will try to obtain the satellite timing information and download the constellation to obtain a position fix.

Return Instant Position (Identify periodically where a device is located)

Send the following command to return the immediate position information for the current location:
AT$GPSACP

This will return the following information broken down as follows:

$GPSACP:<UTC>,<latitude>,<longitude>,<hdop>,<altitude>,<fix>,<cog>,<spkm>,<spkn>,<date>,<nsat>

where:

<UTC> – UTC time (hhmmss.sss) referred to GGA sentence

<latitude> – format is decimal minutes ddmm.mmmm N/S (referred to in NMEA GGA sentence)
where:
dd – degrees
00..90
mm.mmmm – minutes
00.0000..59.9999
N/S: North / South

<longitude> – format is decimal minutes dddmm.mmmm E/W (referred to in NMEA GGA sentence)
where:
ddd – degrees
000..180
mm.mmmm – minutes
00.0000..59.9999
E/W: East / West

<hdop> – x.x – Horizontal Diluition of Precision (referred to in NMEA GGA sentence)

<laltitude> – x.x Altitude – mean-sea-level (geoid) in meters (referred to in NMEA GGA sentence)

<fix> – x Fix Type – 2D position only or 3D position and altitude
0 – Invalid Fix
2 – 2D fix
3 – 3D fix

<cog> – ddd.mm – Course over Ground (degrees, True) (referred to in NMEA VTG sentence)
where:
ddd – degrees
000..360
mm – minutes
00..59

<spkm> – x.x Speed over ground (Km/hr) (referred to in NMEA VTG sentence)

<spkn> – x.x- Speed over ground (knots) (referred to in NMEA VTG sentence)

<date> – ddmmyy Date of Fix (referred to in NMEA RMC sentence)
where:
dd – day
01..31
mm – month
01..12
yy – year
00..99 – 2000 to 2099

<nsat> – nn – Total number of satellites in use (referred to in NMEA GGA sentence)
00..12

Example Use of GPSACP message:
Send the following command to the modem over the serial port connection:
AT$GPSACP

Each time this command is issued to the modem it will respond with position information of the current position. The more often you send the command, the more often the position information will be returned to the user. As a result it can be used as often as required without tying up the serial port so that other commands can be issued in between position update messages. This gives maximum flexiblilty on the serial port usage and allows multiple functions to executed in quick succession without any blocking of the port or waiting for the serial port to become available.

Response:
$GPSACP: 122330.000,4542.8106N,01344.2720E,2.25,338.0,3,0.0,0.02,0.01,240613,04
OK

Stream Live Position (Live streaming to show a position on a map)

Send the following command to initialise the GNSS engine:
AT$GPSP=1

Once the antenna has been connected and the GNSS engine has been initialised with the AT$GPSP command, the GNSS engine will try to obtain the satellite timing information and download the constellation to obtain a position fix.

Send the following command to start streaming live NMEA position informatiomn to the serial port updated in real time:
AT$GPSNMUN=<enable flag>[,<GGA>,<GLL>,<GSA>,<GSV>,<RMC>,<VTG >] where:

<enable flag> – Enable or disable the streaming sentence with different streaming options
where:
0 – NMEA data stream de-activated (default)
1 – NMEA data stream activated with the following unsolicited response syntax:
$GPSNMUN:<CR><NMEA SENTENCE><CR>
2 – NMEA data stream activated with the following unsolicited response syntax:
<NMEA SENTENCE><CR>
3 – dedicated NMEA data stream. It is not possible to send AT commands in this mode unless the escape sequence ‘+++’ is issued to the serial port at which point the user can return to command mode.

<GGA> – Global Positioning System Fix Data
where:
0 – disable (default)
1 – enable

<GLL> – Geographical Position – Latitude/Longitude
where:
0 – disable (default)
1 – enable

<GSA> – GPS DOP and Active Satellites
where:
0 – disable (default)
1 – enable

<GSV> – GPS/GLONASS Satellites in View
where:
0 – disable (default)
1 – enable

<RMC> – recommended Minimum Specific GPS Data
where:
0 – disable (default)
1 – enable

<VTG> – Course Over Ground and Ground Speed
where:
0 – disable (default)
1 – enable

Example Use of GPSNMUN message:
This command only needs to be issued once and the modem will respond with the position messages selected indefinitely. The position messages will be returned every second and the serial port will be dedicated to providing the position updates until a ‘+++’ cancel command is issued.

Send the following command to the modem over the serial port connection to stream live NMEA information:
AT$GPSNMUN=3,0,0,0,1,0,0,0
OK

Response:
Give the current frame selected (GSA)
$GPSNMUN:
$GPGSA,A,3,23,20,24,07,13,04,02,,,,,,2.4,1.6,1.8*3C
$GPGSA,A,3,23,20,24,07,13,04,02,,,,,,2.4,1.6,1.8*3C
$GPGSA,A,3,23,20,24,07,13,04,02,,,,,,2.4,1.6,1.8*3C
$GPGSA,A,3,23,20,24,07,13,04,02,,,,,,2.4,1.6,1.8*3C