First version : 24.04.2014
I have just retrieved a small gps buy from ebay, called Mini GPS (enf pg03), cost around 20€ …It is a small size and portable GPS receiver with data collecting and calculating functions. It also provides indication of geograpic coordinates, directions, world time, distance, milage, and velocity information. Its high-sensitive direction indication guide user to go back original departure position or go to the presetted target position. The unit shows clear travelling date in detail, such as, the direction of the target position, distance, satellite time, and velocity information in usage.
This small unit do not provide to record tracking informations … so, start to disassemble it, in the goal to record NMEA sentence.
The unit run with a Venus638FLP GPS chip, find the pin N°44, it’s an output of the
asynchronous UART port, solder a small part of wire on this pin, or follow the
track to the “test point“.
You need a SDCard shield to ensure recording the data from NMEA sentences, to avoid loss of data, I prefer use microSD shields with level translator like this one from Adafruit, or from Catalex (ebay).
– Connect to Arduino:
GND to GPS
Pin 2 (Arduino) to Pin 44 (GPS)
Take 3.7v from the GPS unit to power your Arduino and SDCard Shield, the original batterie is too small, i have change it by a more larger batterie from a cellphone (1400mha), the power consomption is around 60ma.
– TinyGPS librarie:
In the code you can see:
SoftwareSerial nss(2, 0); // GPS Wire to Pin 2
nss.begin(9600); // Baudrate of Venus638FLP is 9600
In the line 56 you can choice what you want to log:
/////// Get and process GPS Data ///////
void gpsdump(TinyGPS &gps)
float flat, flon; // Lat, Long
float fkmph = gps.f_speed_kmph(); // Speed in km/hr
float falt = gps.f_altitude(); // +/- altitude in meters (seem to be elevation, in fact)
float fc = gps.f_course(); // Course in degrees
unsigned long age;
gps.f_get_position(&flat, &flon, &age);
Serial.print(” lat “);
Serial.print(” lon “);
Serial.print(” kms “);
Serial.print(” course “);
Serial.print(” elevation “);
Upload the sketch, put a micro sd card in the shield (FAT32), ensure you have a log.txt file in root, run the SerialMonitor, you can see the data writed on the SDCard.
You can use prototyp board to solder all of elements and put them in a nice small box.
(todo photo serialmonitor)