Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Sending GPS location data over GSM phone

Status
Not open for further replies.

traxonja

Advanced Member level 4
Joined
Apr 6, 2004
Messages
109
Helped
2
Reputation
4
Reaction score
1
Trophy points
1,298
Activity points
1,184
Hello,

How can I transfer some data (20bytes) overa GSM telephone? I have a GPS receiver and I wanna make a GPS locator. I've done it this way: The PIC is connected to S25 Siemens and to the GPS receiver. When phone rings, PIC picks up the line, gets data from the GPS and starts sending the data (numbers) via DTMF. The problem is that gsm telephone sends DTMF tones VERY SLOW! There is no configuration of speed or anything.

So, is there a way to send data AS MODEM DATA via GSM phone??

I am using AT commands for sending DTMF tones for now.

Any idea would be great!

Oh, I also added another DTMF coder chip to send codes and it works very fast!! The problem there is that audio quality of gsm network is very BAD so on the other side I cannot decode the tones sent from the gps (gsm).

Thanks for reading,
Trax
 

Re: Sending data over GSM phone

Why don't u just use sms?
or a data connection from one gsm to another?

Just put your gsm in data mode (AT+CBST=71,0)
Or call in data mode with another GSM

Connect another gsm to a PC/Laptop/PDA with serial connection/irda/bluetooth/... and write a small application to get the data you want.

now you have 9600 baud (some gsm networks support even faster rates)
(Think about the latency (sender<->receiver) if you write a protocol! I've seen latencies of several seconds in full duplex mode)

Antharax

btw, gsm already is digitized data with some heavy compression probably designed for speech signals (thus probably allot of distortion for other signals). Probably the frequency range of GSM is limited and/or your baudrate is too high (don't try to use a 56k baudrate for your dtmf over gsm because it probably won't work ;-) )
I think you're trying with your DTMF technique the same as dialing with a normal telephone to a fax and use a 'piano' to play your fax document.
 

Re: Sending data over GSM phone

thank you very much for the idea. i did try to get it to work as a "modem" but there was no success. whenever i dial the GSM in my car it picks up AS A VOICE CONNECTION :?

how do i switch it to "data" mode? does this AT+CBST=71,0 do that?

i could not find anything about this AT command? switching the data rate with it?

ok than, i will try as soon as i get some time to continue on that project.

thanks alot.

Trax
 

Re: Sending data over GSM phone

traxonja,
In fact, if you want to send DTMFs tones "over" anyone link cellular digital the "other side" tones received are BAD.

The solution, I believe is to use GPRS. It's "data channel of GSM".
And, exists in the market a variety of GSM modem that use this channel.

Regards
 

Re: Sending data over GSM phone

I think some operators require that they enable data mode for your phone...for instance if you want to use data/fax calls...normally you get a 2nd number for that...

GPRS is not GSM..it is a packet service...and you can´t make GPRS to GPRS calls...

Maybe you can try to generate tones by PIC itself? Sort of morse-code with different tone/pulse duration? Detecting on the other side should be fairly simple then...
 

Re: Sending data over GSM phone

well i could do that! but the problem remains even there. the main problem why i stopped was that data i receive from the remote device is VERY SLOW. imagine this; they are stealing your car (for example) and it is in motion, moving away. when i get the data (it's position) it will be the position where it was a minute ago ! i would rather get the real-time position and the only solution is GPRS, or, as Antharax sait, making the gsm phone work as a data modem. the GPRS is off since my network provider do not provide GPRS service :(. the only thing left to do try is making the phone work as an data modem. the data i want to transmit is onla 16 bytes, any speed. (i get it from GPS device on 2400 bauds, and than i have to re-switch asembler routine for serial comm. to 19200 to communicate with the GSM (siemens s25 for example) to use AT commands. everything works for now, the only problem is how to transfer that little data as fast as possible. there was an idea of sending DATA via SMS, which is a very nice idea. in that case I would have to check if the GSM phone has enough pre-paid credit so send the SMS. so, that's off.

anyway, i must make the phone work in data mode, and transmit 16bytes (any speed, i repeat) to the other side. on the other side can be a dialup modem (fixed line) or dialup via another GSM...

the morse code kind comm. is also good idea!

Stay cool.

Trax
 

Re: Sending data over GSM phone

Traxonja,
There are some issues with GSM data call. First, to distinguish between data call and voice call: a data call is initiated with ATD<number>CR, and a voice call is initiated with ATD<number>;CR , Cr obviously is enter. It is absolutely necessary to have data service activated by the provider. But for small ammount of data, SMS is the faster sollution since you are worried about speed. Like normal modems which exchange informations between them in the initial phase of the call, untill the connection is actually made, the GSM modems are not capable to send data immediately after the peer answered to a data call. A negotiation phase also occurs, and this may take from 10 to 30 seconds. Only after that you will be able to send data. Usually, a SMS reaches the other side under 10 seconds in normal network conditions.

/pisoiu
 

Re: Sending data over GSM phone

Also keep in mind that during the negotiation phase the gsm sends with high power and when speakers or radio is near the gsm antenna you hear the corresponding beep beep beep on the speaker. This might get the thief's attention ;-)

The AT+CBST=71,0 sets the bearer service to 9600 baud ISDN
have you tried to set it to 9600 V.32 and talk with your modem?

Code:
0 Auto selection of baud rate
4 2400bps V.22bis
6 4800bps V.32
7 9600bps V.32
12 9600bps V.34
15 19200bps V.34
68 2400bps V.110 (ISDN)
70 4800bps V.110 (ISDN)
71 9600bps V.110 (ISDN)
75 14400bps V.110 (ISDN)
79 19200bps V.110 (ISDN)
80 28800bps V.110 (ISDN)
81 38400bps V.110 (ISDN)
82 48000bps V.110 (ISDN)
83 56000bps V.110 (ISDN)

But this is from the Sony-Ericson GM47/48 embedded GSM module. I don't know if your phone supports these modes.

SMS is possible but if you want to follow the car it could be quite expensive.
GPRS is not supported by all providers (and i think it is IP based with dynamic IP's. It might be difficult to contact your car when you don't have the IP). When your car is going to another country it's possible that your connection fails. So enable calls from and to other countries ;-).

I think that making data calls is the best solution for you, and it might be possible to keep the connection open to send new coordinates every X seconds. Just connect your GSM's to 2 serial ports on a PC and dial from the one to the other using hyperterminal on 9600 baud (or 19200) (with no hardware flow control). (received data from modem is enclosed between <0x0D><0x0A>. When the connection is made only the characters you type are received)

Code:
Hyperterminal 1                     Hyperterminal 2
------------------------------------------------------------
type: All commands you need         type: All commands you need
      to init your modem                  to init your modem 
    
type: ATD12345678<CR>  
                                    RING
                                    type: ATA<CR>
CONNECT 9600                        CONNECT 9600
type: Are You There
                                    Are You There
                                    type: Yes!
Yes!

(Don't forget to close the connection ;-) )

You can test communication in this way.
You can also try communication between a modem and a gsm in this way but i think it's difficult to follow your car with a wired connection ;-)
Hope this helps.

Antharax
 

    traxonja

    Points: 2
    Helpful Answer Positive Rating
Sending data over GSM phone

Regarding SMS speed . It is guarrantied SMS reception by Service Center as soon as SMS sending session will be terminated - becuase last message in remote operation invokation will be Service center confirmation . But it is not guarrantied when Service Center will send your SMS to destination . So there could be unexpected delays for few minutes .
From other side , there is feature SMS waiting which allow to deliver failed SMS if phone was switched off as soon as phone will make attach or locupdate .
While using data call if mobile is moving , there could be problem with handover from one cell to another , resulted in little bit delayed signal ot if bad network planning - this will be resulted in call drop .
Actual modem is located on MSC switch side in modem pool .
Mobile delivers its data packets via different packet protocol and modem pool implements data buffering if modem connection speed is slower or higher than actual fixed data transfer rate from mobile to MSC .
So if you are planning to have real time information exchange this must be taken into account .
 

Re: Sending data over GSM phone

Hi,

No I didn't try seting it to v32 :( YET :D . The hyperterminal session you described above made my day :)

I will take all suggestions in consideration. When I finish this project I'll post it here.

As Boardstiff requested;

here is the source I've written a month-two ago when I stopped developing this. I can't recall it's current condition and it's rather complicated :)

I will write it from the start when I make the GSM work as a modem, thanks to Antharax.

So,

this is the deal. I have S25 Siemens, and RoyalTec RGM-2000 GPS receiver. GSM works on 19200 bauds, GSP works on 4200 bauds. So, the source is complicated because I didn't want to use two different RS232 routines in asembler because PIC has only 1kb. So, I used only one and I had to deal with FSR ... alot!

Anyways, when the phone rings, PIC picks up the line by ATA. Then, PIC gets string of data from the GPS. Then, it starts sending it via AT commands via DTMF.

Then, it sould hang up.

That's all for now.

As I said, I don't like the source because it's a little messed up as I don't remember alot of it, so continuing from this point would make me loose a few hours.

I will try that with a hyperterminal and two GSMs, if that works I'll be veeeeery happy :)

Thanks man!
Talk to you all soon.

Trax
 

interfacing the gsm modem with gps

could u please tell the further procedings of this project since we r working on this(where we r interfacing the gsm modem with the gps with the 8051 microcontroller).
we r using the wavecom module in our gsm modem,we r using the hyerterminal to communicate with the modem.

thax,
deepak
 

Re: Sending data over GSM phone

hello,

this was the idea: Connecting the GSM phone with a GPS over a PIC.

Now, it you take my asm program I uploaded here, and put it in the PIC16F84A, connect a GPS TXpin (data out) to PORTB1, connect GSM phone TX pin to PORTA1 and GSM phone RX pin to PORTA0.

Call the GSM phone, it will answer, wait a second and start sending the data from the GPS (current location) via DTMF tones. It will work VERY SLOW because of AT commands of the GSM phone (it can't work any faster than that). So, if you call it from the hyperterminal you would get the data because your computer modem will decode those DTMF tones and you will be happy.

I am not happy with this because it works slow. The solution would be to use data connection between two GSM phones as Antharax posted above.

If you are wondering how the PIC software works you can see that in the code. If it is messy for you, I could explain.

Hope I helped,
Trax
 

Re: Sending data over GSM phone

in case reveive phone can we read caller id from GSM how to send command
 

Re: Sending data over GSM phone

in current PIC listing it is not implemented. however it can be implemented very easily because GSM phone (as I remember) does send caller id info (the calling party) if you set it via AT commands. that is a good idea because than only you from your phone can locate your vehicle :)
 

yes it is quite possible to know the
inconning call number.the AT commoand used to know the incomming number is AT+CLIP=1,is enabling the caller ID
and AT+CLIP=0,is disabling the caller ID
and AT+CLIP?,is to find out the current set default value.
hope this helped you.

thax,
deepak
 

where is that project on their site???

could you post url here, as I can't find it there among ~20 existing schematics.

Trax
 

deepu_7ap said:
yes it is quite possible to know the
inconning call number.the AT commoand used to know the incomming number is AT+CLIP=1,is enabling the caller ID
and AT+CLIP=0,is disabling the caller ID
and AT+CLIP?,is to find out the current set default value.
hope this helped you.

thax,
deepak

thanx deepak, i have a list of their AT commands in PDF. You can find it on the net somewhere for download. If you don't have it, I could post it here.

Trax
 

I don't know whether it's a good idea to use callerID for identification. Caller ID is not always available when you are in another country.
Perhaps you could use a "secret word" for authentication ;-)
(or do it the good way with a private and public key pair. Messages are signed with the private key and the public key is used to verify whether the message has the correct origin)

But then again, if the telephone-number isn't on the SIM, how is someone going to find the number? A car thief normally ain't a communications expert. And when he knows it's there, he will just pull the plug ;-)


Antharax
 

no anthrax we can over come that problem by putting an alternative power supply which will be activated when the original power supply comming from the vehicle battery is plugged off.the thief definitely cant imagine of a alternate power supply.

trax could u please tell me how to know the cell broadcasting channel(CBCH) of the gsm network using the AT commands.
i mean which AT command is used to find out the CBCH.and how do i decode it if its in the hex format.
hope u will come out with an answer.

thax
deepak
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top