Question

I have a server running a C# server app. The app is supposed to periodically connect through a GSM modem to a set of devices(touchpads running android 2.2) and download some files. It's the first time I come across GSM communication so I'm really lost. So far I'm guessing i need AT commands to communicate but I'm not sure how.

I'm guessing first step would be dialing ATD. When I get a response, how can i ask the device to send me data? Do I need to code an app/service on the device that answers my calls? The data i need is stored into txt files on my SD card, but i can put it anywhere if it makes it easier.

It would be really nice if you could help me with some AT code that does similar things or anything that helps me understand how to make this work.

Thanks

Was it helpful?

Solution

You will need an Internet server to mediate (or at least initiate) communication between the mobile-network devices. This will need to have a server-type Internet Service Provider - ie, firewall that allows the desired incoming connection requests, an IP address that's static at least in the short term, a domain name pointed at it, etc.

At that point your server running the C# program has no need for a GSM modem of it's own (unless wired service is unavailable to its location). If you do connect it via GSM, then you'll need yet another server with a server-type ISP to setup connections between it and the tablets, so you might as well just run your C# program on that machine.

Essentially, you will not directly deal with GSM at all - you'd just be writing applications to run on top of a somewhat limited IP network which doesn't permit connection requests to the clients. The android stack on the tablets entirely conceals the process of interacting with the built-in GSM modem from the application developer - you just see a normal network sockets interface, in java or C.

If you want to do something with direct radio communication between a server and tablets in a small area, look at wifi or something like zigbee.

OTHER TIPS

For this type of communication C2DM would be perfect for you. But you do need to write an app to respond to your request and upload the data to the server as well as writing a push message script for the server

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top