Link to home
Start Free TrialLog in
Avatar of sgs1970
sgs1970

asked on

Title: Listening to UDP port


Hi,
  I am doing a GPS application using Vb.net (Windows application).
The application is  listening to a UDP port where the GPS data is coming.
The test GPS unit is reporting to the server and I am able to identify the IP of GPS unit thru my  program  . But the actual data send from the gps unit is not available in my receiving application  . Instead, whenever some data comes , I see only 8 byte long junk characters in my application.
     (Strangely, if I run another application developed to recieve the GPS data exactly the same way from the same port - After that when I start my application I get all the GPS Data  and the 8 byte junk data.)
 
  Someone say something to be done with the socket layer.


Can you help me ?

   Sam
Avatar of vilia
vilia

What is the data format the GPS sends (NMEA or a proprietary format)? If it is NMEA you should receive a few packets every second.

NMEA sends sequences of alphanum data plus comma and CR/LF. Proprietary protocols usually use binary data. Did you try to hex dump incoming data?
 
What is the GPS model that you use?


Avatar of sgs1970

ASKER


Hi vilia ,
 I use intellitac X8 gps  units .  It may be a   proprietary format (my assumption) .
  I know only to hexdump a file .
   

    thanking you,
              samson
Samson,

the very frst thing you should look for is the technical documentation that describes GPRS UDP/TCP communication.

I have looked at:
http://www.systech.com.tw
pdf files:
Program Manual for InstallWizard-130        
Program Manual for Tracer-1.30

It looks X8 sends additional data in additon to GPS data on UDP/TCP.

If you do not find documentation, and you like hacking, you need to monitor comunication between the X8 and the Working program you have mentioned. It could be done by network/packet sniffing or puting a proxy between the X8 and the program.

Vilia
Avatar of sgs1970

ASKER


 Hi,
   Sorry for the delay as this is like a research  project  .

  I sniffed the port  . It seems like the GPS data is blocked to get into the port when my application runs .(Trying to receive but fails) . When the other application runs this blocking is someway removed and data is made available. This appears to me like people waiting for a free show. Until the guard opens the door, people need to wait.

    How do I get the key for this free show?

   Sam
Hi Sam,

The "blocking" you are tolking about is some kind of the communication protocol, probably.

In order to capture one you need a sniffer. You can use FramePad for example:
http://www.beesync.com/downloads.html
the one has a free trial period.

- Start FramePad and put IP filter both for Tx and Rx packets on the IP address of the GPS.
- Turn on GPS
- Start Application
(try different startup sequence as well)

You would see UDP packets. Look for the UDP port of the GPS (in the packets Application sends to the GPS). It coul be different then the Aplication UDP port. (UDP headers).

Analyze timing and data. Who sends what and when. (data portion of UDP packets).

If you can't decode portion or all of captured data. Try simply to send the same data from your application in the same sequence as the Working Appication does. (monitor correctness of the communication with sniffer).

Vilia
ASKER CERTIFIED SOLUTION
Avatar of vilia
vilia

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial