2
votes

This was already asked here https://stackguides.com/questions/25460743/gps-tracker-tk103-how-to-send-message-through-server. But there isn't any answer!

Receiving data from GPS Device:
I have a TCP server setup which is receiving data from various GPS Trackers (TK103, GT02 etc). Each GPS devices initiates the request, server accepts it, and starts receiving NMEA data. Works pretty well.

Sending data to GPS Device via SMS:
Currently, we have to send SMS to individual devices for all sorts of configuration. This is very tedious and inaccurate.

Sending data to GPS Device via GPRS (this is what we want to achieve):
We want to use TCP or UDP to send commands to devices over GPRS for all sorts of configuration. I have no idea about this.

  1. Do we have to use AT commands? If so, then how?
  2. Or the same SMS command over TCP?
  3. I have read that GSM providers don't allow incoming connections/data over GPRS. Is that true?
  4. If not, then what is the solution and how to do it?

Please help.

3
You probably got no answer because you were asking for a distributed comms system to be debugged whilst giving only some server-side code. Such systems cannot be debugged by looking at a few lines of code.Martin James
did you find any solutions ?isaiasmac
did you find any solution to this?Malkit Singh

3 Answers

2
votes

According to the GPS device you are using, you can either contact the device supplier for the device gprs protocol or google for the device protocol. There are plenty of forums that discusses the GPRS protocols of the GPS devices. One if which had helped me before was http://www.gpspassion.com/ I have worked with TK103 for a while and prepared an Excel file with the command protocols. Here is the GPRS protocol for the device: https://www.dropbox.com/s/ozydwbltr9p6mlv/GPRS-Data-Protocol.xls?dl=0

Note: SMS commands has no relation to the GPRS commands

1
votes
report every 1 mins **,imei:XXXXXXXXXXXXX,C,60s 
report every 10 mins    **,imei:XXXXXXXXXXXXX,C,600s...
report every 10 secs    **,imei:XXXXXXXXXXXXX,C,10s 
report every 20s    **,imei:XXXXXXXXXXXXX,C,20s 
report every 30 mins    **,imei:XXXXXXXXXXXXX,C,030m
Set timezone = BST  **,imei:XXXXXXXXXXXXX,I,1
Set timezone = GMT  **,imei:XXXXXXXXXXXXX,I,0
STOP tracking       **,imei:XXXXXXXXXXXXX,D
Where XXXXXXXXXXX is the unique IMEI

**,imei:<IMEI>,B - Single track (like calling the tracker)
**,imei:<IMEI>,C,20s - 20s polling
**,imei:<IMEI>,C,01m - 1m polling
**,imei:<IMEI>,D - Disable multi tracking
**,imei:<IMEI>,E - Stop alarm (stops move, stockade alarms)
**,imei:<IMEI>,G - Set move alarm
**,imei:<IMEI>,H,060 - 60 k/mph overspeed 
**,imei:<IMEI>,I,+9 - Set timezone to +9h
**,imei:<IMEI>,N - Return to SMS mode ('noadminip')
0
votes

Acceptance of commands are device software functions - choose a device that supports commands over GPRS

Incoming connections/data over GPRS is dependent on the service you purchase from your carrier. Standard mobile services assume you are internet browsing (so is possible for a fee - look at specialist M2M service providers).

However the best practice is to have your server respond to incoming position reports with a set of commands as a network connection is active at the point that it's sending you a position report (and you can take advantage of the lower tariffs)