/home/nenadalm/arduino-1.5.7/libraries/GSM/src/GSM3MobileMockupProvider.cpp: In member function 'int GSM3MobileMockupProvider::begin(char*)':
/home/nenadalm/arduino-1.5.7/libraries/GSM/src/GSM3MobileMockupProvider.cpp:49:2: error: 'Serial' was not declared in this scope
Serial.println("GSM3MobileMockupProvider::begin()");
delayMicroseconds seems to have an opposite problem: "inside loop" is printed 5 times in a row (even if there should be 1000s delay between these prints).
GSM3_NetworkStatus_t GSM3ShieldV1AccessProvider::begin(char* pin, bool restart, bool synchronous)
{
Serial.println("method begin");
pinMode(__RESETPIN__, OUTPUT);
// If asked for modem restart, restart
if (restart)
HWrestart();
else
HWstart();
unsigned loopCnt = 5;
theGSM3ShieldV1ModemCore.gss.begin(9600);
// Launch modem configuration commands
ModemConfiguration(pin);
// If synchronous, wait till ModemConfiguration is over
if(synchronous)
{
Serial.println("before loop");
// if we shorten this delay, the command fails
while(ready()==0 && loopCnt--) {
Serial.println("inside loop");
delayMicroseconds(1000000000);
}
Serial.println("after loop");
}
return getStatus();
}
"Currently, the largest value that will produce an accurate delay is 16383. This could change in future Arduino releases. For delays longer than a few thousand microseconds, you should use delay() instead."