Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

are devices type GPS518 supported?

2010-09-29
2013-06-12
1 2 > >> (Page 1 of 2)
  • Slash Mnemonic
    Slash Mnemonic
    2010-09-29

    Hi,

    I have GPS tracker device type GPS518..but when the IP and port set to my ip server and port opengts 31200 there is show info like this

    Recv: 283038313233343536373839304250303530303030383132333435363738393031303039323941303
    635352E393232355331303734312E39313932453030302E3030333036353734312E3736303030303
    0303030304C303030414631313229283038313233343536373839304250303530303030383132333
    435363738393031303039323941303635352E393232355331303734312E39313932453030302E303
    0333037333434312E37363030303030303030304C303030414631313229283038313233343536373
    839304250303530303030383132333435363738393031303039323941303635352E3932323553313
    03734312E39313932453030302E3030333038303634312E37363030303030303030304C303030414
    63131322928303831323334353637383930425030353030303038313233343536373839303130303
    9323941303635352E393232355331303734312E39313932453030302E3030333038333934312E373
    63030303030303030304C30303041463131322928303831323334353637383930425030353030303
    0383132333435363738393031303039323941303635352E393232355331303734312E39313932453
    030302E3030333039313134312E37363030303030303030304C30303041463131322928303831323
    3343536373839304250303530303030383132333435363738393031303039323941303635352E393
    232355331303734312E39313932453030302E3030333039343434312E37363030303030303030304
    C3030304146313132292830383132333435363738393042503030303030303831323334353637383
    93048534F29283038313233343536373839304250303530303030383132333435363738393031303
    039323941303635352E393232355331303734312E39313932453030302E3030333130313634312E3
    7363030303030303030304C303030414631313229283038313233343536373839304250303530303
    030383132333435363738393031303039323941303635352E393232355331303734312E393139324
    53030302E3030333130343934312E37363030303030303030304C303030414631313229283038313
    233343536373839304250303530303030383132333435363738393031303039323941303635352E3
    93232355331303734312E39313932453030302E3030333131323134312E373630303030303030303
    04C30303041463131322928303831323334353637383930425030353030303038313233343536373
    8393031303039323941303635352E393232355331303734312E39313932453030302E30303331313
    53434312E37363030303030303030304C3030304146313132292830383132333435363738393042
    Recv: (
    081234567890BP05000081234567890100929A0655.9225S10741.9192E000.003065741.7600000
    0000L000AF112)(081234567890BP05000081234567890100929A0655.9225S10741.9192E000.00
    3073441.76000000000L000AF112)(081234567890BP05000081234567890100929A0655.9225S10
    741.9192E000.003080641.76000000000L000AF112)(081234567890BP050000812345678901009
    29A0655.9225S10741.9192E000.003083941.76000000000L000AF112)(081234567890BP050000
    81234567890100929A0655.9225S10741.9192E000.003091141.76000000000L000AF112)(08123
    4567890BP05000081234567890100929A0655.9225S10741.9192E000.003094441.76000000000L
    000AF112)(081234567890BP00000081234567890HSO)(081234567890BP05000081234567890100
    929A0655.9225S10741.9192E000.003101641.76000000000L000AF112)(081234567890BP05000
    081234567890100929A0655.9225S10741.9192E000.003104941.76000000000L000AF112)(0812
    34567890BP05000081234567890100929A0655.9225S10741.9192E000.003112141.76000000000
    L000AF112)(081234567890BP05000081234567890100929A0655.9225S10741.9192E000.003115
    441.76000000000L000AF112)(081234567890B
    Pa
    rsing: (081234567890BP05000081234567890100929A0655.9225S10741.9192E000.003065741
    .76000000000L000AF112)(081234567890BP05000081234567890100929A0655.9225S10741.919
    2E000.003073441.76000000000L000AF112)(081234567890BP05000081234567890100929A0655
    .9225S10741.9192E000.003080641.76000000000L000AF112)(081234567890BP0500008123456
    7890100929A0655.9225S10741.9192E000.003083941.76000000000L000AF112)(081234567890
    BP05000081234567890100929A0655.9225S10741.9192E000.003091141.76000000000L000AF11
    2)(081234567890BP05000081234567890100929A0655.9225S10741.9192E000.003094441.7600
    0000000L000AF112)(081234567890BP00000081234567890HSO)(081234567890BP050000812345
    67890100929A0655.9225S10741.9192E000.003101641.76000000000L000AF112)(08123456789
    0BP05000081234567890100929A0655.9225S10741.9192E000.003104941.76000000000L000AF1
    12)(081234567890BP05000081234567890100929A0655.9225S10741.9192E000.003112141.760
    00000000L000AF112)(081234567890BP05000081234567890100929A0655.9225S10741.9192E00
    0.003115441.76000000000L000AF112)(081234567890B
    In
    valid number of fields

    what is this mean?

    is my devices supported by OpenGTS?

    Thanks,
    Dody

     
  •  monicar
    monicar
    2010-09-29

    Hi Dody,

    is this the device you are talking about?
    http://www.aitcl.com/manage/upload/20106711284514.pdf

    > In valid number of fields
    >what is this mean?

    This means that the server you are using doesn't understand the data format

    >is my devices supported by OpenGTS?

    Servers avaliable with OpenGTS are in this directory:
    OpenGTS_2.2.7/src/org/opengts/servers
    in opensource OpenGTS_2.2.7 it contains
    aspicore
    gtsdmtp
    icare
    sipgear

    so I don't think your device is supported.
    Lets make a server for it right here in a true opensource way.
    Unfortunately the pdf user manual I have found only contains protocol for SMS
    communication so if you have information on GPRS protocol of the device please
    provide it here. It will help us to help you.
    Anyway data set by your device looks like simple ASCII format to me.
    Every packet is enclosed in parenthesis  - '()'.

    This
    0655.9225S10741.9192E
    looks like GPS coordinates.

    To make basic server we need to know device ID.
    Probably it is:
    081234567890BP
    or
    05000081234567890100929A

    Tell which number is the tracker ID and I will make a simple server and post the
    code here.

     
  • Slash Mnemonic
    Slash Mnemonic
    2010-10-01

    Hi Monicar,

    Thank you for your attention…

    actually i don't know which is number the tracker ID…..is that number GSM SIMCard? or..?

    my number SIM is 0815295066856

    sorry i'm newbie…

     
  •  monicar
    monicar
    2010-10-05

    Contact the seller of the device and ask for info on GPRS/IP data protocol. If it doesn't work-
    Look for any numbers on the device, in the battery compartment, in docs you get with the device, write the numbers down.
    Set all device options you can with SMS, write down the values you set.
    Search a file containing ASCII representation on the data from the device for data and set config values.
    If nothing works you will have to configure different devices to send data to different ports, but thats a really bad solution.

     
  • Carlos Diaz
    Carlos Diaz
    2010-10-06

    Hi,

    I am working with one of those devices, this is the ASCII output:
    (013632782450BP05000013632782450101005A2038.3383N10315.1368W000.0040654116.4900000000L00000000)(013632782450BP05000013632782450101005A2038.3383N10315.1368W000.0040724116.4900000000L00000000)(013632782450BP05000013632782450101005A2038.3383N10315.1368W000.0040754116.4900000000L00000000)(013632782450BP00000013632782450HSO)(013632782450BP05000013632782450101005A2038.3383N10315.1368W000.0040824116.4900000000L00000000)(013632782450BP05000013632782450101005A2038.3383N10315.1368W000.0040854116.4900000000L00000000)(013632782450BP05000013632782450101005A2038.3383N10315.1368W000.0040918116.4900000000L00000000)(013632782450BP05000013632782450101005A2038.3383N10315.1368W000.0040924116.4900000000L00000000)

    You just need to parse the fields using a custom server. I am working one with perl, but I am still behind,
    Carlos

     
  •  monicar
    monicar
    2010-10-07

    Hi ocon,
    so you know the data protocol? Can you share with the community? If you post the protocol or your perl code I will  make a java server and post it here.

     
  • Carlos Diaz
    Carlos Diaz
    2010-10-18

    Hello Monicar,

    I didn't saw your reply, I was not monitoring this post. Now that I see it, I will like to contribute as much as possible. I am testing with different models and I am not goot in Java, so I did a crappy perl server that essentially gets the fields with a regex and post them to a url using the included gprmc application. This is the important code:

                            if ($buf =~ /(\d{2})(\d{2}.\d{4})N(\d{3})(\d{2}.\d{4})W(\d{3}.\d)/){
                            $deg=$1;
                            $seg=$2;
                            $cseg=$seg/60;
                            $ldeg=$3;
                            $lseg=$4;
                            $clseg=$lseg/60;
                            $spd=$5;
                            $lat=$deg+$cseg;
                            $lon=$ldeg+$clseg;
                            $url="http://example.com:8080/gprmc/Data?Dev=$dev&acct=$act&lat=$lat&lon=-$lon&speed=$spd";
    

    If you need more details I will be more than glad to provide them. I am also using the same approach for a gps103b device, listening to a different port, but of course I will like to have a more standard way of doing this.

    I extracted the values my self by recording different actions with the device, just after I finished I realized that slashnemonic already posted a link that explains the gprs output. I didn't know about the heading field, I will like to know how is expressed and how to integrate it to my server (or your's if you help us).

    Thank you!
    Ocon

     
  •  monicar
    monicar
    2010-10-18

    Hi Ocon,
    we still don't know how to get device ID from the data packet.
    The code you have posted parses lat lon and makes a URL to see it on a map. The URL also contains $dev variable which is probably the device ID, but its not parsed by the regex.
    Most likely  device ID is first number in the packet(ends with 'BP'), but only someone who has the tracker can confirm that.

     
  • Carlos Diaz
    Carlos Diaz
    2010-10-19

    Hello Monicar,

    I am defining my $dev manually earlier in the code, I am not using the data from the device itself as you pointed out. But as per the different outputs from different devices, I can tell you that everything before the A letter is unique, so we can easily use the string before BP, after BP and before A or even everything before A, as it never changes within a device, but is not the same across different devices.

    I read on a post that before BP its the serial number, I will search that on the device as soon as I can (not very soon thou). I am also intrigued about the last digits of the string (after L) and the heading values. Any idea of what are those fields?

    If you need output or testing, I can provide lots of debug data I have or even set specific testing (such as drive north, stop, drive south, etc etc..)

    Regards,
    Ocon

     
  •  monicar
    monicar
    2010-10-20

    I'm going blind. slashmnemonic has already posted this link
    http://gps-trace.com/forum/viewtopic.php?pid=4655
    to code that parses device ID(imei). The code uses regex.
    The packet format looks fixed field size to me. So I changed the code from regex to unpack. Its easier to convert to OpenGTS.
    #!/usr/bin/perl
    $line = '(056984735175BP05000056984735175100901A2016.0687S07007.5785W000.0143400250.6800000000L0003F18C)';
    $line =~ tr/\(//d;
    $line =~ tr/\)//d;

    my @fld = unpack("A12 A7 A12 A6 A1 A9 A1 A10 A1 A5 A6 A5", $line);
    print join(':', @fld) . "\n";

    $input->{imei} = $fld;
    $input->{date} = $fld;
    $input->{lat} = $fld;
    $input->{lon} = $fld;
    $input->{lat_sign} = $fld;
    $input->{lon_sign} = $fld;
    $input->{speed} = $fld;
    $input->{time} = $fld;
    $input->{heading} = $fld;

    foreach my $key (sort(keys(%{$input}))){     print $key . ':' . $input->{$key} . "\n";}

    prints:
    056984735175:BP05000:056984735175:100901:A:2016.0687:S:07007.5785:W:000.0:143400:250.6
    date:100901
    heading:250.6
    imei:056984735175
    lat:2016.0687
    lat_sign:S
    lon:07007.5785
    lon_sign:W
    speed:000.0
    time:143400

    lon:07007.5785  is 0 padded. It makes me think the packet is fixed field size format.
    Strange that imei field is only 12 digits. Is it hex?
    Field BP05000 is probably at least 3 fields 'B', 'P', '05000'. 'B' and 'P' no idea. '05000' is probably packet type.
    For fields that are after '250.6' have no idea. Can be anything: HDOP, digital inputs, analog inputs etc.
    Do you have any software that works with the tracker so output of the software can be compared to packets?
    Can you configure the tracker to report by SMS, maybe it'l give us a clue?
    Will post OpenGTS function that parses known fields.

     
  •  monicar
    monicar
    2010-10-20

    This page
    http://gps-trace.com/?page=hw&type=auto&id=gps518_vt
    tells us that GPS518 is actually STAR TRACKER by GPS ENGINEERS.
    But googling by this keywords gives so many links… I don't own the device… So maybe someone motivated will do the research?

     
  • Carlos Diaz
    Carlos Diaz
    2010-10-28

    hello Monicar,

    I registered to that website and they say that they Identify the tracker by Serial Number, so maybe the first fields are not the IMEI, but a SN.

    Any of the 3 devices that I have reply to my sms, so I cant test against SMS as suggested earlier, but I think I can work with this for the meantime, I will still try to figure out the rest of the values.

    Is there anyway you cold help us to translate this to a JAVA server? I haven't been able to figure out how its coded, I am far from being a developer, all I do is search, read and test, thats why I dont see any point on changing the regex to HEX in your post either.

    thank for all your help, I will keep testing and keep you posted, as I am having issues with a 103 model, I cant even vet it to work with traccar server, if you have any advise for that GPS device, I will appreciate it too.

    Ocon

     
  • Slash Mnemonic
    Slash Mnemonic
    2010-11-13

    Thank Monicar,

    i was test with GPS518, but the result like this…

    Starting TCP listener thread on port 31200  …
    Starting UDP listener thread on port 31200  …
    Ignoring CommandPort listener
    Remote client port: /182.8.47.238:2020
    Begin TCP communication: 182.8.47.238
    Timeout: 0x283038353232303630383930344250303530303030383532323036303839303431303131313041303635342E363936355331303733382E32363739453030302E3030383231343635392E38313030303030303030304C303043303841423729283038353232303630383930344250303530303030383532323036303839303431303131313041303635342E363838385331303733382E32383139453030302E3030383232303636322E34353030303030303030304C303043303841423729283038353232303630383930344250303530303030383532323036303839303431303131313041303635342E363738365331303733382E33303033453030302E3030383232323035392E39393030303030303030304C303043303841433029283038353232303630383930344250303530303030383532323036303839303431303131313041303635342E363730355331303733382E33313534453030302E3030383232333336352E35343030303030303030304C303043303841433029283038353232303630383930344250303530303030383532323036303839303431303131313041303635342E363639355331303733382E33313737453030302E3030383232343736332E32373030303030303030304C303043303841433029
    Read timeout
    End of session …
    End TCP communication: 182.8.47.238
    Remote client port: /182.3.112.4:2020
    Begin TCP communication: 182.3.112.4

    always timeout…

     
  • Slash Mnemonic
    Slash Mnemonic
    2010-11-13

    Sorry guys,

    i was test it and working

    Please edit on Constants.java on gps518 folder like this

        public static final boolean ASCII_PACKETS           = false;
        public static final int     ASCII_LINE_TERMINATOR = new int { '\r', '\n', '(' };

    Work fine now….

    Thanks Monicar….thanks all…

     
  • gopi nath
    gopi nath
    2010-11-15

    Hi this is gopinath, i am also need of gps518 server tracker file. please find the protocal of gps518.

    GPS Tracker Communication Protocol

    1. Summarize
    This tracker connects to platform server with TCP. The way for connection is that device connects to the platform server forwardly. After connecting to the platform server, tracker will feedback a enrolling message. The enrolling message contains the device’s ID. If the device received the answer from the platform server, it will stop to sending enrolling message but send continuous feedback message. The continuous feedback message not contains the device ID. The platform server binds the device by connection. One connection represents a device ID. When the connection cuts off, the device will connect the platform server automatically and send out a device enrolling message. Beside, the device will send out a hand-shaking message intervals of time. The hand-shaking message contains Device ID. After receiving the handshaking answer message from the platform server, the device waits for sending the handshaking message in next period.
    1.1 Updated Version Instruction
    V1.4   2008/10/23 1、Increase setting the data send intervals of ACC Switch
    2、Increase the controlling of device’s restarted command
    V1.5
    2008/11/4 1、Increase the setting Geo-fence command

    2. Message Instrument
    2.1 Data Type definition
    Data Type Instruction
    CHAR Single ASCII code character
    C_STRING Contain ASCII character string. When fix digits, fill in Binary system of bank(0x20H)on right for lacking digit to fix a long time except for special instruction.
    N_STRING
    Contain the digit character string of 0.9. When fix digits, fill in ASCII code 0(Ox30H) on left for lacking digit except for special instruction.
    H_STRING
    Contain the digit character string of O. F. When fix digits, fill in ASCII code 0(Ox30H) on left for lacking digit except for special instruction.
    HEX_STRING
    Hexadecimal system character string. Such as 1, use “31” for indication. When fix digits, fill in ASCII code 0 (Ox30H) on left for lacking digit except for special instruction.
    BIN Binary system data
    BYTE 8 digits without symbol integer,0..255
    2.2 Message format
    GPS Tracker exchanges the information with network gateway through data frames transmitting,using TCP protocol. Full data frames structure definition for GPRS is as following:
    Head Serial number
    / Time Command Message Body Trail
    1 byte 12 byte 4 byte N byte (N≤1K) 1byte
    Each Full data frame must contain: Head symbol, Serial Number/ Time, Command word, Message body, Trail symbol
    2.3 Message field definition Y
    2.3.1 Head/Trail symbol digit
    Symbol digit figures the beginning and ending of the message frame. 0x28H (character “(” ) as beginning symbol,and 0x29H (character “)” ) as ending symbol.
    2.3.2 Command word
    Length:4 bytes,C_STRING character
    Function:Define the type of operated message for data frame transmitting, and figures the function of data. The definition is as following,
    Table 2 Message Definition
    Main first types of Message Second types of Message Message serial NO. # Command description Remark

    A
    (Down Message)

    P
    00 One time calling message 3.1.5 Device parameter message
    01 Response handshake signal message 3.1.1
    03 Read device parameter configuring message
    04 Read device operated status message
    05 Device login response message  3.1.2
    07 Center No. configuring message
    11 Cell phone NO. configuring message
    12 Setting vehicle high and low limit speed 3.1.8
    15 Monitor Command
    17 Read device cell phone configuring
    Q 00 Common Message General communication message

    01 Attemper Message
    02 Answer of calling message(Taxi)
    03 Calling Message(Taxi)
    04 Navigation Message
    R 00 Isochronous for continues feedback configuring 3.1.3 Vehicle positioning Message
    Answer message
    01 Isometry for continues feedback configuring
    05 Set ACC open sending data transmiting intervals 3.1.12
    06 Set ACC open sending data transmiting intervals 3.1.13
    S 01 Answer Alarm Message 3.1.4
    Answer  signal
    07 Answer Message for getting customer successfully (Taxi)
    T 00 Control the restarted message of the device 3.1.11 Control signal
    V 00 Circuit control signal 3.1.9
    01 Oil control signal 3.1.10
    02 One key configuring command
    03 Read one key configuring
    X 00 Answer currency up explaining result message Expanding message
    01 Alarm configuring message
    02 Device Function configuring command
    03 Device mode configured command
    04 Intialized device command
    05 Setting Geo-fence Message 3.1.14
    B
    (Up Message)
    O 01 Alarm message 3.2.4 Alarm message
    P 00 Handshake signal message 3.2.1

    Device status message
    02 Answer device parameter configured message
    03 Answer device operated status message
    04 Answer calling message 3.2.5
    05 Anser device login response message  3.2.2
    12 Answer vehicle high and low speed limit 3.2.8
    07 Message for getting customer successfully (Taxi)

    R 00 Isochronous for continues feedback message 3.2.6 Vehicle positioning message

    01 Isometry continous feedback message
    02 Continues feedback ending messsage3.2.7
    05 Answer the Setting ACC open sending data transmiting intervals 3.2.12
    06 Answer the Setting  ACC open sending data transmiting intervals 3.2.13
    S 04 Answer attempered Message Answer message
    05 Answer reading called configuring number
    06 Answer calle configuring number
    08 Answer setting isochronous feedback message 3.2.3
    09 Answer setting Isometry feedback message
    20 Answer response calling message (Taxi)
    21 Answer calling message(Taxi)
    23 Answer navigation message
    T 00 Answer the restarted message of the device 3.2.11
    U 00 Answer the Setting Geo-fence Message 3.2.14
    V 00 Answer circuit control 3.2.9 Answer control sign

    01 Answer oil control 3.2.10
    02 Answer enquiring of one key setting
    Reserved the non- definition message for expanding message in future
    The words in red is the functions the device had.
    2.3.3 Device ID
    Length:15 bytes (Fixed);  Type: C_STRING.
    Function:This field for fixing the device. Only when the device sends the device login message and handshake message, it will send the device ID, and other message will not send device ID. The platform fixs device by device ID. The usual format for device ID is ”0000” + ”telephone number”. The reference format is : ”000013612345678”
    2.3.4 Message running NO. / Time
    Length:12 bytes (Fixed); Type: C_STRING
    When centre need response message, the 12 bytes figures the message running NO. And device’s feedback should have the same running NO. with the sent message by the centr.Other time, the 12 bytes is the time field.
    2.3.5 Message body
    Length:no fixed,<=1024 bytes,also can be blank。
    Function:Confirm the server data message under corresponding command.
    3. Command Message
    3.1.Down Message(platform server sending)
    3.1.1 Answer handshake signal message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AP01 C_STRING 4
    Message body Message content C_STRING 3
    Message content HSO
    Ending identifier ) CHAR 1
    For example:
    (040331141830AP01HSO )
    Figures the sending message time is 2008-8-30-14:18:30, down response handshake signal message.
    Response No need response
    Instruction: This message is available to all device
    3.1.2 Device login response message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AP05 C_STRING 4
    Message body Message content C_STRING non
    Message content
    Ending identifier ) CHAR 1
    For example
    (040331141830AP05)

    Instruction: This message is available to all device
    3.1.3 Same time continues feedback configure
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AR00 C_STRING 4
    Message Body C_STRING 8
    Message Content AR00XXXXYYZZ
    AR00:Fixed key words
    XXXX:Interval for each message of continues feedback. hex。Unit:Second, 4 characters in all, H_STRING. The max is 0xFFFF seconds。When XXXX=0,the device stops continues feedback.
    YYZZ:The total time for feedback, 16 advance  system. Unit:YY:Hour、ZZ:Minute. 4 characters in all,H_STRING,The max is 0xFFFF,ie:255 hours 255 minutes. When YYZZ=0, according to the time intervals, continues feedback.
    When both XXXX and YYZZ are not 0,it figure that feedback according to the time intervals, when it up to the total time, it automaticly stop to feedback
    Ending identifier ) CHAR 1

    For example:
    (040331141830AR0000140024)
    Figures the sending message time is 2008-8-30-14:18:30. Down fixed time to set continues feedback. Feedback GPS data every 20 (16*1 + 4) seconds and feedback 36 (16 * 2 + 4) minutes in all.
    Response Device response BS08
    Sending mode Short Message, GPRS
    Instruction This message is available to ecolomic device and navigation device. In the mode of SMS to continues feedback, if set time interval is less than the Min time interval (Set by the device manufacturer),it will continues feedback according to the Min time interval, otherwise continues feedback according to the set time. The data mode is the same as the SMS mode.
    3.1.4 Answer Alarm Message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AS01 C_STRING 4
    Message body C_STRING 1
    Message Content AS01X
    X:The type of alarm for BO01X up alarm message.1character,16 advance system, ASCII character
    0:Cut off vehicle oil          1: Happen accident    2:Vehicle rob (SOS help)
    3:Vehicle anti-theft alarm    4:Vehicle low speed alarm
    5:Vehicle over speed alarm   6. Alarm out of Geo-fence
    Ending identifier ) CHAR 1
    For example:
    (040331141830AS012)
    Figures the sending message time is 2008-8-30-14 :18:30, answer the up vehicle rob police
    Response No need response
    Instruction: This message is available to all device
    3.1.5 One time enquiry message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AP00 C_STRING 4
    Message body Message content C_STRING 0
    Message body
    Ending identifier ) CHAR 1
    For example:
    (040331141830AP00)
    figures the sending message time is 2008-8-30-14 :18:30,closed the oil。Down one time calling message.
    Response Device response BP04
    Instruction: This message is available to all device
    3.1.8 Setting vehicle high and low limit speed
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AP12 C_STRING 4
    Message Body Message content C_STRING
    Message Content H050L030
    Ending identifier ) CHAR 1
    For example:
    (080830141830AP12 H050L030 )
    figures the sending message time is 2008-8-30-14 :18:30.Setting the up limit speed is50km/h,low limit is 30km/h.When up limit is 000,it figures cancel alarm up limit, and When down limit is 000,it figures cancel alarm down limit. Less 3 digits of the speed, full 0 on left. Alarm refer to 3.2.4。
    Response BP12
    Instruction: This message is available to all device
    3.1.9 Circuit control signal
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AV00 C_STRING 4
    Message Body Message content C_STRING
    Message Content “1”or“0”, “1”figures opening circuit,“0”figures closing circuit.
    Ending identifier ) CHAR 1
    For example:
    (080830141830AV00 0 )
    Figures the sending message time is 2008-8-30-14:18:30, closed the circuit.
    Response BV00
    Instruction: This message is available to all device
    3.1.10 Oil control single
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AV01 C_STRING 4
    Message body Message content C_STRING
    Message content “1”or“0”,“1”figures opening oil,“0”figures closing oil。
    Ending identifer ) CHAR 1
    For example:
    (080830141830AV01 0 )
    figures the sending message time is 2008-8-30-14 :18:30,closed the oil。
    Responds: BV00
    Instruction: This message is available to all device
    3.1.11 Control the restarted message of the device
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AT00 C_STRING 4
    Message body Message Content C_STRING
    Message content no
    Ending identifier ) CHAR 1
    For example
    (080830141830AT00)
    Figures the sending message time is 2008-8-30-14 :18:30,the device restart.
    Response BT00
    Instruction: This message is available to all device
    3.1.12 Set ACC open sending data intervals
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AR05 C_STRING 4
    Message body Message content C_STRING
    Message content AR05XXXX
    AR05:Fixed keywords
    XXXX:The time for sending data intervals for the ACC Open, hex. Unit:Second
    Ending identifier ) CHAR 1
    For example
    (080830141830AR050014)
    Figures the sending message time is 2008-8-30-14:18:30, it sends back intervals 20 seconds when the ACC is opening.
    Response BR05
    Instruction: This message is available to all device
    3.1.13 Set ACC close sending data intervals
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AR06 C_STRING 4
    Message body Message content C_STRING
    Message content AR06XXXX
    AR06:Fixed keywords
    XXXX:The time for sending data intervals for the ACC Open,          Hex. Unit:Second

    Ending identifier ) CHAR 1
    For example
    (080830141830AR06003C)
    Figures the sending message time is 2008-8-30-14 :18:30,it sends back intervals 20 seconds when the ACC is closing.
    Response BR06
    Instruction: This message is available to all device
    3.1.14 Setting Geo-fence Message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word AX05 C_STRING 4
    Message body Message content C_STRING
    Message content AX05 N,D, Minlatitude, Maxlatitude, G, Minlongitude, Maxlongitude
    AX05:Fixed Keywords
    N:”0” or “1”,”0”, figures cancel Geo-fence, “1”figures sets Geo-fence.
       If for cancelling the Geo-fence, the back data cannot be sent out.
    D:Standard for latitude, N, north latitude; S: south latitude.
    Minlatitude: lower limit for latitude, Format: DDFF.FFF, DD:latitude’s degree (00 ~ 90), FF.FFF:latitude’s cent (00.0000 ~ 59.999),reserve three digit decimal fraction.
    Maxlatitude:upper limit for latitude, Format: DDFF.FFF, DD:latitude’s degree (00 ~ 90), FF.FFF:latitude’s cent (00.0000 ~ 59.999),reserve three digit decimal fraction.
    G:Standard for longitude, E, east longitude; S: south longitude. W: west longitude
    Minlongitude: lower limit for longitude, Format: DDDFF.FFF,DDD: Longitude’s degree (000 ~ 180), FF.FFF:longitude’s cent (00.0000 ~ 59.999), reserve three digit decimal fraction.
    Minlongitude:upper limit for longitude, Format: DDDFF.FFF,DDD: Longitude’s degree (000 ~ 180), FF.FFF:longitude’s cent (00.0000 ~ 59.999), reserve three digit decimal fraction.

    Ending identifier ) CHAR 1
    For example
    (080830141830AX051, N,2245.318,2246.452,E,11233.232,11355.175)
    Figures the sending message time is 2008-8-30-14 :18:30.Set Geo-fence.,lower limit for latitude is 22  degree  45.318 cent,upper limit for latitude is 22 degree 46.452 cent; lower limit for longitude is 112  degree  33.232 cent,upper limit for longitude is 113 degree 55.175 cent.
    Response BU00
    Instruction: This message is available to all device
    3.2.Up message(The device Sending)
    3.2.1 Handshake signal Message
    Message Field Field value Type Length (byte) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BP00 C_STRING 4
    Device ID Device ID C_STRING 15
    Message body C_STRING 3
    Message content 0000136123456780HSO
    Ending identifier ) CHAR 1
    Example::
    (040331141830BP00000013612345678HSO)
    figures the sending message time is 2008-8-30-14 :18:30.Up data handshaking message, “000013612345678”is device’s ID。
    Response Centre service response  AP01
    Instruction: This message is available to all device

    3.2.2 Login message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BP05 C_STRING 4
    Device ID Terminal ID C_STRING 15
    Message body C_STRING 60
    Message content 15 terminal  ID + GPS data

    Ending identifier ) CHAR 1
    Example:
    (080524101241BP05000013612345678080524A2232.9806N11404.9355E000.1101241323.8700000000L000450AC)
    Response: Centre service response AP05
    Instruction: This message is available to all device
    3.2.3 Continuous answer setting isochronous feedback message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BS08 C_STRING 4
    Message Body C_STRING 8
    Message Content BS08XXXXYYZZ
    BS08:Fix key words
    XXXX:interval of time every each return news。Unit:second,total of 4 bytes,H_STRING,up to 65535 seconds。XXXX=0, stop to return message。
    YYZZ:total return time,Unit:YY:Hour、ZZ:Minute。Total of 4 bytes,hexadecimal,up to FFFF,means 255 hours and 255 minutes。When YYZZ=0,then ceaselessly return according to the interval of time。
    When XXXX and YYZZ unequal to,then means ceaselessly return by time interval,stop return until reach the total time。
    Ending identifier ) CHAR 1
    Example:
    (040331141830BS0800050014)
    Showing the time for send message at 14:18:30 March 31,2004,return GPS data every 5 seconds,total of 20 minutes。
    Response: No need to response
    Instruction This message applies to economically terminals and navigational terminals。Ceaselessly return, after the mode of short message. If the interval of set time is less than the interval of minimum time(set by the terminal manufacturers),then the time of ceaselessly return according to the interval of minimum time,if not, then according to the interval of the set time。Data model and short message model are the same.
    3.2.4 Alarm message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BO01 C_STRING 4
    Message Body C_STRING 61
    Message Content BO01X+GPS data
    BO01:Fixed keywords
    X:Specific alarm information code,1 byte,Hexadecimal。
    Alarm information:
    0:Vehicle power off   1:Accident      2:Vehicle robbery(SOS help)
    3:Vehicle anti-theft and alarming    4:Lowerspeed Alert
    5:Overspeed Alert    6:Alarm when out of Geo-fence
    Ending identifier ) CHAR 1
    Example:
    (080331061830BO019061830A2934.0133
    N10627.2544E040.0080331309.6200000000L000770AD)
    Showing the time for send message at 14:18:30,March 31,2008,add 8 hours is china time. Alarm message and vehicle robbery。GPS data acquisition time is March 31,2008,Universal time is 6:18:30。“A” shows the data available,29 degrees,34.0133 minutes north latitude,106 degrees 27.2544 minutes east longitude,speed is 040.0 km/h,the angle is 309.62 degrees, from due north。”L” means the sum of distance, unit is meter,mileage statistic。
    Response: Centre response AS01
    Instruction This message applies to all terminals。Send the information up to 10 times every30 seconds,No longer to send the information after receive the platform response。
    3.2.5 Answer Calling Message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BP04 C_STRING 4
    Message Body C_STRING Random length
    Message Content BP04+GPS data
    BP04:fix Command Word。
    Ending identifier ) CHAR 1
    Example
    (080525141830BP04080525A2934.0133N
    10627.2544E000.0141830309.6200000000L00000023)
    Showing the time for send message at 22:18:30,on May 25.Upterminal news(center response by one roll call),GPS data acquisition time is May25,2008,Universal time is 14:18:30,”A” shows the data available,29 degrees,34.0133 minutes north latitude,106 degrees 27.2544 minutes east longitude,speed is 0km/h,the angle is 309.62 degrees, from due north.。
    Response No
    Instruction: This message is available to all device
    3.2.6 Isochronous for continues feedback message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BR00 C_STRING 4
    Message body C_STRING
    Message body BR00+GPS data
    Message content ) CHAR 1
    Ending identifier
    Example
    (080612022828BR00080612A2232.9828N11404.9297E000.0022828000.0000000000L000230AA)
    Response No
    Instruction This message applies to economically terminals and navigational terminals。Continuously return total time and distance,or receive the message of stop continuously return message from the center., then send the ending message to center。
    3.2.7 Continues feedback ending message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BR02 C_STRING 4
    Device ID C_STRING Random length
    Message body BR02 + GPS data
    Message content ) CHAR 1
    Ending identifier
    Example:

    Response: No
    Instruction This message applies to economically terminals and navigational terminals。Continuously return total time and distance,or receive the message of stop continuously return message from the center., then send the ending message to center
    3.2.8 Setup the speed of the Car
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BP12 C_STRING 4
    Message body Message Content C_STRING
    Message body H0501L030
    Message content ) CHAR 1
    Ending identifier
    Example:
    (080831141830BP12 H0501L030 )
    Instruction: This message is available to all device
    3.2.9 Control circuit
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Serial number/Time C_STRING 12
    Command Word BV00 C_STRING 4
    Message Body Message Content C_STRING
    Message Content “1”or“0”,“1” means circuit has been opened,“0” means circuit has been closed
    Close Identifier ) CHAR 1
    Example:

    Response: No
    Instruction: This message is available to all device
    3.2.10 Control oil
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BV01 C_STRING 4
    Device ID Message content C_STRING
    Message body “1”or“0”,“1”means oil has been opened,“0”means oil has been closed。
    Message content ) CHAR 1
    Ending identifier
    Example:

    Response: No
    Instruction: This message is available to all device
    3.2.11 Answer the restarted message of the device
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BT00 C_STRING 4
    Message Body Message Content C_STRING
    Message Content no
    Ending identifier ) CHAR 1
    Example:

    Response: No
    Instruction: This message is available to all device
    3.2.12 Answer the Setting ACC open sending data intervals
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BR05 C_STRING 4
    Message Body Message Content C_STRING
    Message Content no
    Ending identifier ) CHAR 1
    Example:

    Response: No
    Instruction: This message is available to all device
    3.2.13 Answer the Setting  ACC close sending data intervals
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BR06 C_STRING 4
    Message Body Message Content C_STRING
    Message Content no
    Ending identifier ) CHAR 1
    Example:

    Response: No
    Instruction: This message is available to all device
    3.2.14 Answer the Setting Geo-fence Message
    Message Field Message Value Type Length (Character) Instruction
    Beginning identifier ( CHAR 1
    Running NO./Time C_STRING 12
    Command word BU00 C_STRING 4
    Message Body Message Content C_STRING
    Message Content BU00N
    BU00:Command
    N:0 or 1,“0”figures answer the cancelling Geo-fence. “1” figures answer setting Geo-fence.
    Ending identifier ) CHAR 1
    Example:

    Response: No
    Instruction: This message is available to all device

    4. Appendix
    4.1. The format definition of GPS location message
    Message Field Message Value Type Length (Character) Instruction
    Time YYMMDD N_STRING 6 Two bytes for each year/month/day
    The availability of GPS data CHAR 1 “A” or “V”. “A” means the availability of GPS data,”V” means the invalidation of GPS data.
    Latitude N_STRING 9 The unit is degree for he front two bytes,from  0~90;the unit is cent for later seven bytes。
    Latitude indicator “N” or “S” CHAR 1 “N” means north latitude,”S” means south latitude
    Longitude
    N_STRING 10 The unit is degree for he front three bytes, from  0~180;the unit is cent for later seven bytes
    Longitude indicator “E” or “W” CHAR 1 “E” means east longitude,”W” means west longitude
    Speed N_STRING 5 The unit is km/h
    Time HHMMSS N_STRING 6 Two bytes of the year/month/day
    Orientation N_STRING 6

    IO State

    “0” or “1”

    N_STRING

    8 The 8 bits of IO
    The first bit representative of the main power switch, "0" means the main power-on, "1", means the main power-off.
    The second bit on behalf of the ACC (ignition), "0" means  ACC off, "1" means ACC on.
    Other reservations
    Milepost CHAR 1 “L” mean Mileage
    Mile data H_STRING 8 Mile data,Unit: Meter
    The total mileage. The max is 0xFFFFFFFF

    if this is not in detail. Monicar pls let me have ur email id i will forward to you.

    regards,
    S. Gopinath

     
  • gopi nath
    gopi nath
    2010-11-26

    I need help regarding the installation of OpenGts on VPS. I deployed the OpenGTS on VPS(virtual private server)with the config of 2gbram. I asked the service provider to open the port-31000 in router. And they did it. I used my tracking unit gps518. I did not get any data from my unit to the server. So please help me regarding this. Is ther need for port maping,if so, please let me know how to do that. And let me know where to look for the incomming data on server.

    Anyone's help regarding this will be appreciated with advance thanks.

    Thanks&Regards,
    S. Gopinath

     
  • Carlos Diaz
    Carlos Diaz
    2011-01-07

    I got it to work… I was able to understand how the GTS server's concept works thanks to Monicar !

    I am still having some issues with this server… Some of the packages are not being process due to this hex char: 0x for example:

    [WARN_|01/07 03:24:38|ServerSocketThread$ServerSessionThread.readPacket:1936] Timeout: 0x3031333633323738323435304250303530303030313336333237383234353031313031303741323033322E393031354E31303331382E30323338573030302E303033323631313231362E353230303030303030304C303030303032444629
    [WARN_|01/07 03:24:38|ServerSocketThread$ServerSessionThread.run:1482] Read timeout [@ 94]
    [INFO_|01/07 03:24:38|ServerSocketThread$ServerSessionThread.run:1505] End of session ...
    

    To put it on prespective, packs like this work fine:

    [INFO_|01/07 03:24:34|TrackClientPacketHandler.getHandlePacket:391] Recv[HEX]: 3031333633323738323435304250303530303030313336333237383234353031313031303741323033322E393031354E31303331382E30323338573030302E303033323630313231362E353230303030303030304C303030303032444629
    [INFO_|01/07 03:24:34|TrackClientPacketHandler.getHandlePacket:393] Recv[TXT]: 013632782450BP05000013632782450110107A2032.9015N10318.0238W000.0032601216.5200000000L000002DF)
    [INFO_|01/07 03:24:34|TrackClientPacketHandler.parseInsertRecord_ASCII_1:506] Parsing: 013632782450BP05000013632782450110107A2032.9015N10318.0238W000.0032601216.5200000000L000002DF)
    [INFO_|01/07 03:24:34|TrackClientPacketHandler.parseInsertRecord_ASCII_1:550] modemID:13632782450b fixtime:1286528412 latitude:0.5483583333333333 longitude:3.3003966666666664 speedKPH:0.0 heading:16.52
    

    If you need packages or even access to the server, I can share it, so we can help others with a working server, in the meantime I am still using my perl server….

    Thanks to all!
    ocon

     
  • metacreo
    metacreo
    2011-03-03

    "If you need packages or even access to the server, I can share it, so we can help others with a working server, in the meantime I am still using my perl server."

    Yea  please… share its

    [INFO_|03/04 01:44:17|DBConnection.getDBConnection:354] New Connection [main] jdbc:mysql://localhost:3306/gts?characterEncoding=UTF-8&useUnicode=true&characterSetResults=utf8
    [INFO_|03/04 01:44:18|TrackServer._startTCP:264] Starting TCP listener thread on port 30006 [timeout=15000ms] ...
    [WARN_|03/04 01:44:18|TrackServer.<init>:229] Ignoring CommandPort listener
    [INFO_|03/04 01:44:46|ServerSocketThread$ServerSessionThread.run:1354] Remote client port: /xxx.xxx.xxx.xxx:2020[30006]
    [INFO_|03/04 01:44:46|TrackClientPacketHandler.sessionStarted:252] Begin TCP communication: xxx.xxx.xxx.xxx [Fri Mar 04 01:44:46 EET 2011]
    [INFO_|03/04 01:44:50|TrackClientPacketHandler.getHandlePacket:415] Empty packet received ...
    [WARN_|03/04 01:44:54|ServerSocketThread$ServerSessionThread.readPacket:1950] Timeout: 0x3031323231313332313637334250303530303030313232313133323136373331313033303341353434342E343431374E30323531362E32323539453030322E393233343431393237312E353130303030303030304C30303030303029
    [WARN_|03/04 01:44:54|ServerSocketThread$ServerSessionThread.run:1492] Read timeout [@ 92]
    [INFO_|03/04 01:44:54|ServerSocketThread$ServerSessionThread.run:1515] End of session ...
    [INFO_|03/04 01:44:54|TrackClientPacketHandler.sessionTerminated:266] End TCP communication: xxx.xxx.xxx.xxx
    

    server not work :(

     
  • metacreo
    metacreo
    2011-03-04

    I added in  Constants.java :

    public static final int     ASCII_LINE_TERMINATOR = new int { '\r', '\n', '(' };

    And have the same warning:

    [WARN_|03/04 10:43:09|ServerSocketThread$ServerSessionThread.readPacket:1950] Timeout: 0x3031323231313332313637334250303530303030313232313133323136373331313033303441353434342E343337304E30323531362E32313734453030302E3030383432333733322E36323030303030303030304C30303030303029
    

    After changed  { '\r', '\n', '(' }; to  { '\r', '\n', ')' };
    log output is:

    [INFO_|03/04 10:50:54|TrackClientPacketHandler.sessionStarted:252] Begin TCP communication: xxx.xxx.xxx [Fri Mar 04 10:50:54 EET 2011]
    [INFO_|03/04 10:50:57|TrackClientPacketHandler.getHandlePacket:391] Recv[HEX]: 283031323231313332313637334250303530303030313232313133323136373331313033303441353434342E343335344E30323531362E32373338453030322E303038353032363130322E393130303030303030304C303030303030
    [INFO_|03/04 10:50:57|TrackClientPacketHandler.getHandlePacket:393] Recv[TXT]: (012211321673BP05000012211321673110304A5444.4354N02516.2738E002.0085026102.9100000000L000000
    [INFO_|03/04 10:50:57|TrackClientPacketHandler.parseInsertRecord_ASCII_1:507] Parsing: (012211321673BP05000012211321673110304A5444.4354N02516.2738E002.0085026102.9100000000L000000
    [ERROR|03/04 10:50:57|TrackClientPacketHandler.parseInsertRecord_ASCII_1:511] String is too short
    

    Please help to resolve this problem
    Thanks.

     
  • Adrian Ojeda
    Adrian Ojeda
    2011-05-30

    Hello
    I have the same problem than Metracreo, Please somebody can help us??
    thanks so much!!

     
  • metacreo
    metacreo
    2011-06-17

    Its worked :)
    TrackClientPacketHandler.java
    change /* pre-validate */
    if (s.length() < 10) {
    Print.logError("String is too short");
    return null;

    10 to 90…95

     
1 2 > >> (Page 1 of 2)