Summary of PIC16F88 Delorme Tripmate GPS Logger
This project creates a serial data logger for the Delorme Tripmate GPS receiver using a PIC16F88 microcontroller. The modified device self-starts to output NMEA 0183 sentences, specifically parsing GPRMC data to record latitude and longitude coordinates. The system stores this position information for later retrieval, aiming to track runs in a backpack once weather permits.Parts used in the PIC16F88 Delorme Tripmate GPS Logger:
- Delorme Tripmate (GPSTripmate)
- PIC16F88 microcontroller
- NMEA 0183 serial connection components
- Backpack (intended use)
This project focused on creating a simple serial data logger for the Delorme Tripmate (also known as the GPSTripmate). The Tripmate is an older GPS receiver that can be purchased on eBay for <$20. I happen to have one that my family used a couple of years ago and it is still in great shape. It has been sitting in the back of my car for the past four years, so I finally decided to put it to good use. The plan was to create a GPS data logger that would record the position of the unit and allow me to read back the latitude and longitude after acquiring the data. My ultimate goal will be to use a small backpack to record my runs (once the weather warms up). This was a fun experiment because not only did I need to interface the PIC16F88to the Tripmate, but I also needed to parse the output and implement an efficient storage solution. Read on to find out more information about the project, see the schematic and soure code I wrote, and find out how the data was visualized.
Delorme Tripmate
The Tripmate was a GPS receiver manufactured by Delorme that was originally intended for use with their Street Atlas USA computer program. The Tripmate uses an RS-232 serial connection to send and receive data using the NMEA 0183 standard (i.e. 4800 baud, 8 data bits, 1 stop bit, no parity). The one interesting quirk about the Tripmate is that it needed to receive the string “ASTRAL” before it would output any information. I modified my Tripmate to self-start using a loopback modification. Now the Tripmate will output the NMEA strings whenever it is powered. More information about the self-start modification can be found on these websites:
- Modify the Delorme Tripmate to selfstart
- Tripmate Self-Start and External Power Mod
Once the Tripmate is modified to self-start, it will automatically output position and satellite information when power is applied. The sentences that the Tripmate outputs are GPRMC (Recommended minimum specific GPS/Transit data), GPGSA (GPS DOP and active satellites) GPGGA (GPS Fix Data), and GPGSV (GPS Satellites in view). We are specifically interested in the GPRMC sentence for this project.
$GPRMC sentence information
An example $GPRMC sentence sent by the Tripmate would be:
$GPRMC,123456,A,4234.4594,N,11233.2892,W,010.0,022.7,220107,015.5,W*77
This sentence contains the following information:
123456 UTC Time of fix 12:34:56
A Navigation receiver warning (A = Valid, V = Invalid)
4234.4594,N Latitude 42 degrees, 34.4594 minutes North
11233.2892,W Longitude 112 degrees, 33.2892 minutes West
010.0 Speed (Knots)
022.7 Course Made Good (Degrees)
220107 UTC Date of fix January 22, 2007
015.5,W Magnetic variation, 20.3 deg. East
*77 Checksum
The job of the microchip will now be to parse this data, discard any irrelevant information, and store the variables of interest (Latitude and Longitude).
For more detail: PIC16F88 Delorme Tripmate GPS Logger
Quick Solutions to Questions related to PIC16F88 Delorme Tripmate GPS Logger:
- How can I make the Tripmate output data automatically?
You must modify the unit with a loopback modification so it self-starts and outputs NMEA strings whenever powered. - What communication standard does the Tripmate use?
The device uses an RS-232 serial connection with the NMEA 0183 standard at 4800 baud, 8 data bits, 1 stop bit, and no parity. - What string must be sent to the Tripmate before it outputs information?
The string ASTRAL must be received by the unit before it will output any information. - Which NMEA sentence is specifically used for this project?
The project focuses on the GPRMC sentence, which contains recommended minimum specific GPS/Transit data. - What variables of interest does the microchip parse from the data?
The microchip parses the data to store only the latitude and longitude variables while discarding irrelevant information. - Can the Tripmate be purchased cheaply?
Yes, the older GPS receiver can be purchased on eBay for less than $20. - What is the ultimate goal of using this data logger?
The goal is to use a small backpack to record runs once the weather warms up.
Related projects
Exploring the PIC16F88 Microcontroller for Remote-Controlled Robotics
I. Design Summary The objective of this mechatronics system design project is to develop a straightforward control and interface platform for robotics...
Meters & Test Instruments · PIC16F688Determine capacitance by measuring the charging time using PIC16F688
When TEST botton is pressed, RA3 pin is set to "1". R2 and R3 are divide the voltage to 1/2 Vra3 which...
Beginner Tutorials · PIC16F1827Breadboard module for 18-pin PIC16F microcontrollers (PCB version)
Because of their compact size, ease of use and many built-in peripherals, the 18-pin PIC16F series processors (PIC16F628A, PIC16F88, and now PIC16F1827/47)...
Wireless & IoTExploring Various Applications of Microcontrollers: A World of Tiny Brains
Exploring Various Applications of Micro Controller Microcontrollers have become ubiquitous in the modern world with applications in nearly every industry. This student...
Wireless & IoTIntelligent Sips: Revolutionizing Dining with the SmartCup
Abstract The SmartCup Attachment is a comprehensive system designed for restaurants to monitor the liquid levels in their customers' cups. This system...
Wireless & IoTMaximizing Wi-Fi Capabilities with the Explorer 16 Development Board
As society progresses, the necessity for wireless communication is evolving from a mere luxury to an essential requirement. Wi-Fi, extending beyond conventional...
