Problemi con Modulo SIM900 GSM

Buongiorno a tutti,

come da oggetto, il problema che sto riscontrando è nella comunicazione tra il mio SIM900 (della SIMCOM) e Arduino 2009.

Da precedente post, sto utilizzando:

-Arduino 2009;

Mentre dall'immigine allegata, ho collegato i PIN di ricezione e trasmissione sulla porta 0 e 1 di arduino per la comunicazione Seriale in modalità software (ho provato anche in modalità hardware, impostando le porte di trasmissione sui pin 7-8, ma il risultato non cambia).

Ho usato la libreria GSM, presente all'interno della sezione "Manages" e il codice utilizzato è quello di esempio "Receive Voice Call", che di seguito riporto:

#include <GSM.h>

// PIN Number
#define PINNUMBER ""

// initialize the library instance
GSM gsmAccess;
GSMVoiceCall vcs;

// Array to hold the number for the incoming call
char numtel[20];

void setup()
{
  // initialize serial communications and wait for port to open:
  Serial.begin(9600);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for Leonardo only
  }

  Serial.println("Receive Voice Call");

  // connection state
  boolean notConnected = true;

  // Start GSM shield
  // If your SIM has PIN, pass it as a parameter of begin() in quotes
  while (notConnected)
  {
    if (gsmAccess.begin(PINNUMBER) == GSM_READY)
      notConnected = false;
    else
    {
      Serial.println("Not connected");
      delay(1000);
    }
  }

  // This makes sure the modem correctly reports incoming events
  vcs.hangCall();

  Serial.println("Waiting for a call");
}

void loop()
{
  // Check the status of the voice call
  switch (vcs.getvoiceCallStatus())
  {
    case IDLE_CALL: // Nothing is happening

      break;

    case RECEIVINGCALL: // Yes! Someone is calling us

      Serial.println("RECEIVING CALL");

      // Retrieve the calling number
      vcs.retrieveCallingNumber(numtel, 20);

      // Print the calling number
      Serial.print("Number:");
      Serial.println(numtel);

      // Answer the call, establish the call
      vcs.answerCall();
      break;

    case TALKING:  // In this case the call would be established

      Serial.println("TALKING. Press enter to hang up.");
      while (Serial.read() != '\n')
        delay(100);
      vcs.hangCall();
      Serial.println("Hanging up and waiting for the next call.");
      break;
  }
  delay(1000);
}

All'interno del monitor, Arduino si ferma al print della scritta : "Receive Voice Call", non restituendo nessun'altro dettaglio.

Durante i Test, la sim risulta essere funzionante. Il led Netlight lampeggia con intervalli di circa 3 secondi e nel caso riceva la chiamata, il led status si spegne restituendo lo squillo (interrompendosi al 4 squillo con l'inserimento della segreteria).

Ho verificato tramite questo LINK le varie impostazioni (come suggerite in un vecchio post), ma anche impostando le configurazioni indicate, non riesco a far comunicare le due schede.

Lo scopo del mio progetto è quello di integrare all'arrivo di una chiamata, l'esecuzione di un comando come può essere lo stimolo di un relè. Sicurmante per la mia poca esperienza mi sta sfuggendo qualcosa, ma non sto capendo dove sto sbagliando.

N.B. In conclusione ringrazio il sig. Guglielmo per la spiegazione e spero di aver eseguito alla lettera i suoi consigli.