Note: The 10 Hz version is described here.
Based on my first GPS data logger I made a new version which is even smaller than the initial design and should be able to fit in any rocket, RC model etc. The new GPS data logger uses micro-SD card and 3.7v LIPO battery as power source. The board was also optimized and the new size is 20mm x 27mm – less than a standard SD card as you can see on the picture to the right.
The design is based on my first GPS data logger – microSD card, GPS module, LDO power supply and PIC18F25J11 micro controller – all parts are easily obtainable from on-line sources like Ebay or Aliexpress. However some of the pins were changed and the switch transistor for the SD card power supply was removed.
Using the GPS data logger is also quite simple:
– Connect to at least 3.3v power supply, the maximum is 5.5 volts.
– Place the SD card with SETTINGS.TXT file on it in the socket
– Switch the GPS logger on
– Wait until the SD card is initialized and all data files are created – thus wait until the SD card LED stops blinking
– If the SD LED remains solid on, then there’s something wrong with settings file or the SD card – for the exact reason please check the LOG_x.TXT file on the card (the file structure is explained further down)
– Wait until the GPS LED start blinking, indicating that the GPS signal is found and correctly decoded
– Press and hold for 1 second the SMD button to start the GPS data logging
– The NMEA GPS data stream will be decoded and recorded in the corresponding text data files (the file structure is explained further down)
– Stop the GPS data logging press and hold the button again and wait until all files are closed, hence until the SD LED remains solid off
* To safely remove the SD card you need first to stop the data logging and make sure that the SD LED is off when you remove the card
** The power consumption is the sum of the SD card power consumption, the GPS module and the data logger power consumption. If the sampling time is 10sec or less, then the data logger and the GPS module power supply will be always on. The SD cards can draw between 2mA and 100mA depending on the manufacturer and the model. The data logger’s own consumption is 8mA and the GPS uses about 30mA when fully powered. If the sampling time is more than 10sec, then depending on the sampling rate, different power schemes will be used and some parts will be switched off to conserve energy between each data point record.
Write the sampling time in the first line. The sampling time is expressed in seconds. The minimum sampling time is 2s and the maximum is 99999999s. Make sure that there is a semicolon after the sampling time. After the sampling time, write the number of points to be taken. 0 means no point limit. The minimum point number is 1 and the maximum is 99999999. Make sure that there is a semicolon at the end.
SETTINGS.TXT – this file contains the sampling rate and the number of data points to be recorded. This file has to be present on the SD card for the proper function of the GPS Logger
In total 7 files are created for each new GPS data logging. The name of each file indicates what information it will contain and “x” for the serial number of the record (not an absolute serial number but relative to the current number of files on the card)
LOG_x.TXT – contains the data logger system and status information
GGA_x.TXT – contains the $GPGGA message (Fix information)
GSA_x.TXT – contains the $GPGSA message (Overall Satellite data)
GSV_x.TXT – contains the $GPGSV message (Detailed Satellite data)
RMC_x.TXT –contains the $GPRMC message (Recommended minimum data for GPS)
VTG_x.TXT – contains the $GPVTG message (Vector track an Speed over the Ground)
GPS_x.KML – this file has all data points converted from DDDMM.MMM to DDD.DDDDDDDD and it is in the format used by Google Earth and Google Maps to display a path in 3D over the ground. To use this file, simply load it in Google Earth.
The PCB manufacturing files and the MCU firmware can be downloaded from here: