I think you can't connect to a GPRS device, it has to do the connecting. We encountered this with our GPRS module, G-4500-SIM300, http://www.icpdas-usa.com/products.php?PID=3287 . What you can do is send an SMS via e-mail from the central location. Have your GPRS device programmed to respond by initiating a GPRS connection to the central location. It needs to be running a TCP connection server.

The most common method is to send the device an SMS which requests the device to create a session and connect to your central server.Th edevice has to be connected to gsm network but does not have to have an active PDP session to recieve the SMS.

You cannot communicate with the device is it is not connected to the radio network.

Early days we used to send a SMS to the unit asking it to "call" home. Today, the most common way is to let the GPRS device (SIM) have its own IP address, private or public. The device should always be connected to the MNO GPRS network waiting to be addressed by the server. We provide global connectivity (SIM) with fixed IP addresses which make you have server initiated communication and treat your remote devices as they where connected to your LAN.

You do not need a fixed IP address for this to work. You simply have the device always connected , but there are issues with this .Firstly teh device sues more power when connected and keeping it connected all tehtime can drain the battery . Secondl;y being always connected is a heavu use of network resource and you will find that operators will dislike such arrangemenst.

Puiblic IP addresses are also a bad idea. Having your device visible on teh public internet is never a good idea.

In general then is fine for a small project with no batterry constraints but not for a sizeable deployment.

I'm aware of other "cowboy" designed network making workarounds to have server initiated communication, but these are not very popular when it comes to large rollouts. Managing these will get you to be an operator of your own which will cost both in capex and head-counts killing your project. Fixed private IP addressing is the only sustainable way of achieving global M2M Eco-system.

Many devices do not have an issue with the power supply so being connected 24/7 is not a problem. I agree, fixed IP is not very productive for these applications. On the other hand, battery powered devices are very often a part of an asset management applications, and will not need server initiated but device initiated communication as its main task.

When you mention MNO as a problem I could agree when it comes to massive rollouts like AMR but in general I don't see this as a problem today, maybe in US but not in the rest of the world. MNO loves M2M as it's their next growth area.

You do not need a fixed IP address to connect to a device. Fixed IP addressing has nothing to do do with server initiated communication.

You cannot ,under any existing mobile network initiate communication from server to a mobile device without the device already being connected.It is a myth created by some MVNOs that you need fixed IP addressing. These MVNOs tend to be the ones that provide this service and are therefore pushing it as a differentiator. It is useful in some application but it is not essential.

re your comments about cowboy networks. Can you explain to me how you get a device to connect to network withou the device initating the process.I would be ver interested in this.

If you read my response above you find I'm saying the device should always be connected through GPRS to the MNO waiting to be talked to. If this device has a fixed IP you can access it as any IP devices in a network, no need for wake-up call or workarounds (SMS/call) to find its current dynamic address.

When talking about "cowboys designed network" I'm referring to the way a network is designed logically not MNO physical networks. The device will of course always initiate the attachment to the MNO and if/when it's thrown out it should automatically reconnect to it.

When designing a network we always recommend to use private IP range to keep it private, if you have server initiated communication needs.

Some of our clients need long session timers (for a variety of reasons) and one of the by-products of this is that the network can therefore contact the device directly via GPRS as long as the session is active. One of the projects uses an active session timer of 24 hours and achieves actual session lengths of over 10 hours. To control the session timers we provide a dedicate Access Point to each client (to allow APN, IP and other GGSN controls). Note also that this project does not rely on the session being up and can use an SMS to the device injected via SMPP to get the device to initiate a session (just as mentioned above).

There are a few threads on session length that some may find interesting (this one http://m2m.com/message/1699#1699 includes the reasons that sessions may be shorter than expected).

Note also that SMS cost more than GPRS on a byte for byte basis - but can be cheaper on power... it seems that for the timebeing we will need to use both (are there any M2M projects that are part of the LTE trials yet?).

David

ps - just about all our APs use private IPs that are either routed via VPN or are NAT'ed to a public IP for internet access. We had one client that loaded up public IPs into our DHCP and ran tunnels from the device to provide complete end-to-end protection of the data (but this is not the norm).

we are using the same way. M2M device creates TCP-IP connection to the server and hold it. Sometime it sends refresh packet. When server has data for M2M device, server put it to opened TCP-IP socket. Server looks like small ICQ for machines, anybody can sent data to somebody. Some m2m units hold connection whole 24 hours without interrupt, some units must reestablish connection 2x, 4x .. per day. (one BTS in area and many talking people)

But our operators are closing inactive connection during 10 minutes (our experience) ane we need refresh packets.How to I can set session timer? Where? At mobile operator?

They all talk for wake up by SMS only. A SMS travel 6 to 10 seconds, 6 to to minutes, 6 to 10 hours, 6 to 10 days, 6 to 10 weeks or endless. A USSD travels less than one second. A comparison of USSD with all other bearers in GSM you get here: https://www.box.com/s/f29af6fd6b2442ee2304

Another instant wake-up method can be using CLI based Wake-up, Server can have dial-up modem, client will detect number and disconnect call. Or Server can send known set of rings for different options before hangup.