From MikroTik Wiki
Jump to navigation Jump to search

Applies to RouterOS: v3, v4, v5, v6 +


Package requirement: gps
Sub-menu: /system gps
Standards: GPS, NMEA 0183, Simple Text Output Protocol

Global Positioning System (GPS) is used for determining precise location of a GPS receiver.

Configuration Properties

Property Description
channel (integer [0..4294967295]; Default: 0) Port channel used by device
coordinate-format (dd | dms | ddmm; Default: no) Which coordinate format to use, "Decimal Degrees", "Degrees Minutes Seconds" or "NMEA format DDDMM.MM[MM]"
enabled (yes | no; Default: no) Whether GPS is enabled
gps-antenna-select (external | internal; Default: internal) Depending on model. Can be used to select internal antenna, if device has one.
init-channel (integer [0..4294967295]; Default: ) Channel for init-string execution
init-string (string; Default: ) AT init string for GPS initialization
port (string; Default: ) Name of the USB/Serial port where GPS receiver is connected
set-system-time (yes | no; Default: no) Whether to set router's date and time to one received from GPS.

Monitoring Status

Command: /system gps monitor

This command is used for monitoring the data received from a GPS receiver


Property Description
date-and-time (date) Date and time received from GPS
latitude (none | string) Latitude in DM (Degrees Minute decimal) format
longitude (none | string) Longitude in DM (Degrees Minute decimal) format
altitude (none | string) Altitude based on GPS data
speed (none | string) Current moving speed of the GPS unit
destination-bearing (none | string) The direction toward which a GPS is moving
true-bearing (none | string) The direction toward which a GPS is moving
magnetic-bearing (none | string) The direction toward which a GPS is moving
valid (yes | no)
satellites (integer) Number of satellites seen by the device.
fix-quality (integer) Quality of the signal
satellites (integer) Number of satellites seen by the device.
horizontal-dilution (integer) Horizontal dilution of precision (HDOP);

Note: The time is not stratum 1 as RouterBOARD devices do not have PPS implemented as of RouterOS v6. This might change with new NTP server in v7.

Basic examples

Check port usage, only one instance can use serial port simultaneously

[admin@MikroTik] /port print
Flags: I - inactive 
 #   DEVICE NAME                     CHANNELS USED-BY                   BAUD-RATE
 0          serial0                         1 Serial Console            auto   

In case there is one port and it is used by console, release it from console menu:

[admin@MikroTik] > /system console print 
Flags: X - disabled, U - used, F - free
 #   PORT                                                                       TERM                                                                     
 0 U serial0                                                                    vt102 

[admin@MikroTik] > /system console disable 0  

Adjust port settings specific for your device (leave "auto" for LtAP mini)

[admin@MikroTik] /port> set 0 baud-rate=4800 parity=odd
[admin@MikroTik] /port> print detail 
Flags: I - inactive 
 0   name="usb1" used-by="" channels=1 baud-rate=4800 data-bits=8 parity=odd stop-bits=1 flow-control=none

Enable GPS

[admin@MikroTik] /system gps> set enable=yes port=usb1
[admin@MikroTik] /system gps> print 
          enabled: yes
             port: usb1
          channel: 0
     init-channel: 0
  set-system-time: no

Monitor status

[admin@MikroTik] /system gps> monitor  
  date-and-time: jul/02/2015 14:36:08
             latitude: N 56 57' 32.262''
            longitude: E 24 9' 7.262''
             altitude: 36.700001m
                speed: 0.000000 km/h
  destination-bearing: none
         true-bearing: 0.000000 deg. True
     magnetic-bearing: 0.000000 deg. Mag
                valid: yes
           satellites: 7

Port and GPS settings for LtAP

/port set serial1 baud-rate=115200
/system gps set port=serial1 channel=0 enabled=yes

We have also created an in-depth article about live GPS tracking, using scripting and a web server: Manual:GPS-tracking.


Note that sometimes in order to make GPS module to be recognized under RouterOS you need to change the baud-rate setting in the '/port' menu.

LtAP mini has low gain GPS antenna build in, for better experience we suggest using additional external antenna

Switch between internal and external antennas under GPS menu:

[admin@MikroTik] > /system gps set gps-antenna-select=external

On some modems with GPS support you need to send multiple init commands for the continuous GPS monitoring, for example, for Huawei cards you need to send "AT^WPDST=1,AT^WPDGP" init string to get continuous monitoring.

[ Top | Back to Content ]