View previous topic :: View next topic |
Author |
Message |
varadharaj
Joined: 09 Apr 2012 Posts: 19 Location: Salem
|
RE: GPRS transmitter and receiver |
Posted: Wed May 20, 2015 5:05 am |
|
|
HI,
I am trying to create a wireless transceiver system with sim900 and pic16f877a. I tried with sms/call based transceiver system. The system has two modules. One is transmitter/transmitter which is having controller and sim900. Another module is receiver/transmitter which is having sim900 and controller.
The transmitter initiates the communication and receiver receives the data by sms/call. if it is receives then it will acknowledge to the transmitter. These modules solve my problem and working perfectly. But the problem is DELAY. The delay is between 12 seconds to 20 seconds.
For this, I am planning to go for GPRS based communication. I want to know whether we can simply send and receive the data as in sms module or client/server concept do i need to implement?
If it is client/server, then can i send the acknowledgement to the client?
thanks _________________ Embedding Innovation |
|
|
ckielstra
Joined: 18 Mar 2004 Posts: 3680 Location: The Netherlands
|
|
Posted: Wed May 20, 2015 6:42 am |
|
|
What you want to do is possible. Just check a few things first:
- Does your SIM card support data transport? Test by setting up a TCP connection to a random website as explained here.
- Does your provider assign a static IP address? You'll have to ask them. Most providers don't and this will make it more difficult to setup a connection (who to 'call' if you don't know the number of your other device?)
When you don't have a static IP-address you will have to use a dynamic DNS service, for example www.noip.com. Too bad support for dyndns isn't integrated into the modem, you'll have to write some code yourself. Here is example code from the Arduino: http://www.open-electronics.org/arduino-ddns-dynamic-dns/
I suggest you browse the list of SIM900 Application notes: http://wm.sim.com/producten.aspx?id=1019
Since I didn't want to register on their website, here is a direct link to the TCP/IP Application Note: http://www.electrodragon.com/w/images/a/a7/SIM900_TCPIP_Application_Note_V1.02.pdf
The TCP/IP transparent mode sounds very promising, turning the SIM900 into a direct serial link (like using a serial cable).
This question is not related to the CCS compiler or to the PIC so you will get better response on other forums like www.edaboard.com.
Just one big warning: the PIC16F877A is running at 5V and the SIM900 at 3V. This is known to create problems. There are electronics circuits to make the 3V/5V conversion work but since you want to use this very, very, old PIC model I have my doubts. Things will be much easier when you choose a PIC model that runs at the same 3V, for example the models with 'LF' instead of 'F' in the model number will do. |
|
|
varadharaj
Joined: 09 Apr 2012 Posts: 19 Location: Salem
|
|
Posted: Wed May 20, 2015 11:35 pm |
|
|
Hi Cliestra,
Thanks for your reply. Please correct me if i understood wrongly.
1) If i get 2 static or dynamic IPs, i can easily transmit and receive the data without using client - webserver concept. Am i correct?
Just using send and receive commands (I am not considering the hard steps in transmit and receive), I can open the port always for receiving and transmitting the data.?
Is it correct?
Thanks _________________ Embedding Innovation |
|
|
ckielstra
Joined: 18 Mar 2004 Posts: 3680 Location: The Netherlands
|
|
Posted: Thu May 21, 2015 6:44 am |
|
|
Yes, that's correct. You don't have to write a webserver and client. The modem has a program inside that allows you to directly send and receive your data (like a direct connection with a serial cable).
Once you have a connection you can always send and transmit data. Note that this will consume more power than in your original SMS application. Perhaps not a good idea for a battery operated device but you'll have to do these calculations yourself.
Note that setting up the connection might be difficult. This depends very much on your provider giving a static IP-address or not (most providers give dynamic IP-addresses). |
|
|
|