Latest version of MOD-GPS (with Ublox 7 UBX-G7020-KT chipset)

Suitable only for MOD-GPS units with UBX-G7020-KT chipset.

Demo examples

Arduino playground tutorial on U-blox

Arduino GPS uses U-blox

Demo examples with Olimex boards

Not yet available.

Recommended resources

U-blox 7 protocol specification and command set

For previous versions of MOD-GPS (with Mediatek MT3329 chipset)

The information below is suitable only for MOD-GPS units with MT3329 chipset. The information and the files below are not suitable for the units with UBX-G7020-KT chipset.

Demo examples with Olimex boards

OLIMEXINO-STM32 and MOD-GPS (Maple IDE example):

PIC32-PINGUINO and MOD-GPS (Pinguino IDE example):

Recommended resources

Command list suitable for MOD-GPS

MTK checksum calculator

Official GlobalTop video showing how to send a file with a stored command

Additionally, a very good GPS software is provided by GlobalTop at their web site. It is called "GlobalTop GPS viewer".


About default settings and changing the GPS settings:

The current chip in MOD-GPS is made by GlobalTop and they hard-program each chip with default settings. You can change these settings via the PMTK commands but you can't store the new settings (e.g. when you reset the device, default settings would be loaded). It might seem like a bad idea but their reasoning behind such a move is so if a customer stores really odd values that brick the device irrecoverably you can just reset it and have the default settings on.

How to change a setting:

The most changed setting is the one that stops the GPS coordinates from updating if your device changes position with less than 1m/s (3.6km/h). So what do you need to do to make it update constantly?

You need to connect the device to a COM port of a computer (or virtual COM port if using a device like OLIMEX MOD-USB-RS232). Then you need a proper terminal program like the open source Tera Term.

You open serial connection on the COM port that the GPS is associated to and then you send the command and press "Enter". The command we need for changing the minimum speed for update might be found in the PMTK command list and it is called "PMTK397,Nav Speed threshold". The command looks like:


,where "$" symbol is standard command identifier; PMTK number is command name; 2.0 represents 2m/s threshold; 3F is a checksum and everything requires to press "Enter" to be executed.

If you wish to lower it you need to change 2.0 to 0.0 and calculate the checksum using the web site above. The checksum for PMTK397,0.0 (using the web site above) is 3D. So we have to send the following command:

$PMTK397,0.0*3D and then to press "Enter".

About MOD-GPS powering:

MOD-GPS requires sufficient power in the 3.3V to 3.6V range. It will not work if your host board provides less than 3.3V. It is possible that it doesn't work with some Olimex boards when plugged to the UEXT due to not sufficient powering. For instance when using OLIMEXINO-328 and MOD-GPS you need to power the OLIMEXINO via the mini USB connector (or create a cable miniUSB to power jack connector) or there is a good chance the MOD-GPS would stay under powered. This is due to multiplexing between the RX line of the FTDI chip and the RX processor pin of OLIMEXINO-328 which leaves the RX line at a level a bit higher than 0.

If you wish to power the OLIMEXINO-328 from the PWR_J connector you need to disable the mini USB communication by cutting the SMT jumper RXD_E.


Under construction