Search code examples
parsinggpsformattracking

Decode GPS Data - No idea what the format is


I have a GPS tracker that a friend lent me. It's a chinese model, with sparse documentation. It's got a built in gps and a gprs module (sim) and it's sending me my data to a particular IP address.

I can't figure out what all the numbers mean. I got latitude and long thanks to the N and E. but the rest I'm not sure about.

Here's an extract from my log:

4/28/2011 6:48:01 PM (001__450BP00BP05000001__450BP00110428A2451.6491N06700.6385E000.013474342.72000000000L0001ADFE)    
4/28/2011 6:48:18 PM (001__450BP00BP05000001__450BP00110428A2451.6491N06700.6385E000.013480942.72000000000L0001ADFE)    
4/28/2011 6:49:23 PM (001__450BP00BP05000001__450BP00110428A2451.6491N06700.6385E000.013490942.72000000000L0001ADFE)    
4/28/2011 6:50:33 PM (001__450BP00BP05000001__450BP00110428A2451.6362N06700.6297E000.0135016198.8300000000L0001ADFE)    
4/28/2011 6:51:39 PM (001__450BP00BP05000001__450BP00110428A2451.5203N06700.5738E000.0135114135.3800000000L0001AEFF)    
4/28/2011 6:51:42 PM (001__450BP00BR02110428V2451.4962N06700.5942E000.0135133143.7700000000L0001AF23)

Note: the exact string from the tracker is stored within the round brackets (...) I gave the dates and times because they may help decode the data if the tracker reports UTC time or something. Didn't see anything matching the time signature though


Solution

  • It would help if you post some more information (any serial numbers or other text on the device). However, the messages look like GPS518.

    I'm mostly guessing, but if I deconstruct the first line, I think this is the meaning:

    Request

    • 001 : ?
    • 450 : deviceid
    • BP00 : handshake
    • BP05 : command
    • 000001 : ?

    Response

    • 450 : device id
    • BP00 : command
    • 110428 : date (format yymmdd)
    • A
    • 2451.6491N : Latitude
    • 06700.6385E : Longitude
    • 000.0 : Speed (format nnn.n)
    • 134743 : Time (format hhmmssas UTC) You probably live in GMT-7
    • 42.720 : Heading/Bearing (?)
    • 00000000L : Elevation
    • 0001ADFE : ?

    There's a discussion here that might be of interest: http://sourceforge.net/projects/opengts/forums/forum/579834/topic/3871481

    After some googling, I found this. It seems to generate message in roughly the same format as the ones that you are receiving: http://kmmk.googlecode.com/svn/trunk/kmmk/src/com/gps/testmock/CommAdapterYD518.java