Detection of remote disconnection


Hello All

I’m puzzled about the behaviour of an application using Open AT that should be ludicrously simple. In order to keep a PAYG SIM card active my embedded application automatically makes calls to preprogrammed “voice” telephone numbers. The call is initiated in the normal manner using adl_CallSetup and there is no problem in making a connection and receiving all the events associated with making the call. However, when the remote connection is disconnected the embedded application receives no event at all. My handler for call-events, registered using adl_callSubscribe, receives nothing!

I have tried putting in a handler for the “NO CARRIER” unsolicited response, but again nothing is received.

After one minute my application times out and forces the line to be disconnected. The call-event handler receives all the usual responses from the modem.

To summarise: the call-event handler sees all the events associated with calling, ringing and connecting, but nothing for when the line is disconnected by the remote end.

Any ideas?



Although I can’t think of anything to fix this particular situation, might it be simpler to keep the SIM active using SMS, rather than dialling a call?

Check your specific provider’s terms, but I think most (all?) the UK providers count sending an SMS as an action to keep the SIM active…


Thanks for the suggestions.

The problem gets even stranger because I’ve now discovered that dailling the Fastrack modem with an Orange SIM card inserted results in an “Arm exception 1 55 a”, according to the remote trace tool, and connection is not established.
If I disable the Open AT application and dial the Fastrack modem again it simply resets.
This problem does not occur with a Vodafone SIM card. Huh!?

The Open AT version is 3.10. Any ideas greatly received.



Have you tried completely deleting the Application with AT+WOPEN=4 ?

Are you running this in the target, or using the “Remote” mode?

Different operators do configure their SIMs differently, and the different networks do behave differently; eg, see: … php?t=1622

So, if your application “works” with one network, but not another, it suggests that you have a latent bug that just happens not to manifest on the “working” network…


Thanks for your help Awneil. I’ll try to find out how the memory has been allocated, or not.

Richard B.