Trouble attaching GPRS (hangs)

Hello!

I'm having some trouble running the "gprs.attachGPRS(GPRS_APN, GPRS_LOGIN, GPRS_PASSWORD)" function.

The GSM works fine, sent some SMS everything went as expected.

The problem is that when I try to attach to GPRS with my APN the comand hangs and never leaves this state.

By placing Degub outputs on this funcion, I've managed to track the command that blocks the message.

In the "GSM3ShieldV1DataNetworkProvider.cpp" file,
in function : void GSM3ShieldV1DataNetworkProvider::attachGPRSContinue()
The command: theGSM3ShieldV1ModemCore.print('\r');

No Error message, just blocks in this function.

Any solutions? By the way, what is the functionality of the "power button" in the shield? Nothing seems to happen when i press it.

I'm running the shield on top of Arduino UNO with 12V/1A power supply.

Thank you very much

I'm not sure if it's related but try placing a delay between entering the PIN and attaching gprs. Don't try to do them together as I found out here:
http://forum.arduino.cc/index.php?topic=173860.0

As for your second question, by press and holding the button for a couple of seconds, you turn off/on the shield

MathiasVDA:
I'm not sure if it's related but try placing a delay between entering the PIN and attaching gprs. Don't try to do them together as I found out here:
GPRS connection problem - Arduino GSM Shield - Arduino Forum

As for your second question, by press and holding the button for a couple of seconds, you turn off/on the shield

It Worked! :smiley:

Thank you very much!

They should solve this issue.

masp:
They should solve this issue.

I couldn't agree more! I already reported it but haven't yet received a response

dear both,
wooho! i was experiencing the same issue.
the delay solved mine, too.
i can live with that workaround.
thanks!

Helo :slight_smile:

I do not agree..... The solution you are proposing is not coherent. Ive tryed it and it does not last in the long run, some say delay 1000 other delay 3000. Yes its a workaround, but why not adress the source of the problem and stop the restart mechanism once in for all. I propose the Arduino crew comment on this in the GSM examples, so there be no more misunderstandings.

The shield restarts by default. one needs to --->

if((gsmAccess.begin(PINNUMBER, false)==GSM_READY) &

in order to not restart again. Since gsmAccess.shutdown(); turns off the gsm module, its duple confetti to boot up, and then straight after to restart, which makes the pour Arduino confused. Unless anyone can tell us why this is mandatory?

Although I'm not using this shield particularly, when I wrote the library to support my own product based on other chip, I would have a timeout and several times retry mechanism in the GPRS attaching method. Some times, the base station will not have enough allocation for GPRS slots as voice calls gets higher priority. And yes, the delay won't work in all cases. Just try moving from different service provider, and you'll notice it won't work for all cases with the delay approach.