- For individual users
- Instant access to solutions
- Ask your tech questions
- Start your 30-day Free Trial
Main Topics
Browse All TopicsDear Sir/Madam,
Hi there, i am a master student from Hong kong Polytechnic
University. Since i am now doing a research on on embedded
application by using GR47 + m2mpower package, i encountered
sorts of problems, may i ask u a few questions here?? May be
it juz take u a few minutes to answer my question.
I wanna set up TCP/IP connection since it it workable by
using GR47. SO, i try the source example code by using
m2mpower application. I download the code on to the GR47 and
it is not workable though.
the IP and Port i want to connect:
IP: 202.125.204.109
Port: 1500
And the another side i wrote a java program which is
listening the socket(i am sure the java program is
workable). And the java is gonna receive the data which is
sending from GR47. But i still cant receive response....
The question here i wanna ask is:
1) TCP connection is running based on GPRS on GR47??
i try to type these commands in hyper terminal:
AT+CGDCONT=1,"IP","3-DB-GP
OK
*it seems tat GPRS is workable
2) Are there any problems in my m2mpower script??
(i juz copy them from example script, should be alright)
3) Do u have any suggestions on how can i connect my Gr47 to
the destination socket??
eg.IP: 202.125.204.109
Port: 1500
Sorry for spending ur time on my questions. Cuz it is very
urgent, so i do appreciate ur help. Anyway, i am looking
forward to ur reply. thx a lot!!
Best Regards,
Roy
THe C Script of m2mpower:
main()
{
int APPS_CALL_STATUSBYTE = 5;
int RINGING = 1;
char Buff[33];
char TCP_CONNECTED = 2;
int Port = 1500; /* 1500*/
int IPAddr = 0xCA7DCC6D; /*202.125.204.109*/
int DATASIZE =256;
char Data[DATASIZE] = "Send Packet";
int TCP_STATUS_BYTE = 14;
char SckNum;
int err;
char Timeout = 0;
int Size;
/*Waiting for request then sendind data start afterwards*/
while(1)
{
prtf("\nWaiting for incoming call...");
if(gtb(APPS_CALL_STATUSBYT
{
clip(Buff,32);
prtf("\n Ringing from %d",Buff);
break;
}
dlys(1);
/*TCP Connection and sendind data*/
err = pdpa(1,1);
if(!err)
{
err = ipo(1,1,&SckNum); /*PDP context 1, TCP Type*/
}
if(!err)
{
err = tcpc(SckNum,Port,IPAddr);
if(!err)
{
while((gtb(TCP_STATUS_BYTE
{
prtf("\n waiting for connection!");
dlys(1);
Timeout++;
}
if(Timeout < 100)
{
Timeout = 0;
Size = DATASIZE;
err = tcps(SckNum,Data,&Size);
if(!err && Size == DATASIZE)
{
prtf("\n Sent OK!");
}
}
}
}
break;
}
}
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
Business Accounts
Answer for Membership
by: NagavaliPosted on 2006-01-12 at 03:43:06ID: 15680226
Sorry that I could not go through your script completely. There a couple of points:
1. TCP/IP connection uses GPRS (answer to your question)
2. You need to verify if the machine running Java program to accept socket connection is accessible from the modem. Fire walls on both (client and server) sides should allow such connections.
3. If the above is there, then you need to check if your service provider is blocking traffic on any particular ports. You can try out with different ports.
Let me know if none of the above works.