Problème d'envoie de SMS par une shield

Bonjour à tous , cette année je dois faire un projet en STI2D je dois envoyée un sms, et pour cela j’ai une shield arduino M10 connectée directement a une arduino UNO.
Alors pour essayer d’envoyer un SMS je prend l’exemple que le logiciel arduino fournit send SMS ,mais mon problème et à chaque fois le même je suis bloquer à SMS Message Sender .
J’ai demander de l’aide à mes professeurs et aussi à d’autre personne connaissant l’arduino mais aucunes n’a vraiment fonctionner .
J’aimerais qu’une personne me donne une piste pour que j’essaye de trouver la solution de moi même à mon problèmes.

Merci d’avance à vos réponses.

Cordialement

Bonjour

Poster le code

Faire une recherche sur le net du modèle ou du shield qui comprend le module GSM/GPRS il y a parfois des problèmes de qualité et parfois la possibilité de les corriger lorsqu'ils sont identifiés.
Mais il est vrai qu'avec le code on pourrait affiner les investigations sur la localisation du problème.

Bonjour et désoler pour l’attente de ma réponse mais voici le programme que j’utilise:

// Include the GSM library
#include <GSM.h>

#define PINNUMBER ""

// initialize the library instance
GSM gsmAccess;
GSM_SMS sms;

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

  Serial.println("SMS Messages Sender");

  // 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(3090) == GSM_READY) {
      notConnected = false;
    } else {
      Serial.println("Not connected");
      delay(1000);
    }
  }

  Serial.println("GSM initialized");
}

void loop() {

  Serial.print("Enter a mobile number: ");
  char remoteNum[20];  // telephone number to send sms
  readSerial(remoteNum);
  Serial.println(remoteNum);

  // sms text
  Serial.print("Now, enter SMS content: ");
  char txtMsg[200];
  readSerial(txtMsg);
  Serial.println("SENDING");
  Serial.println();
  Serial.println("Message:");
  Serial.println(txtMsg);

  // send the message
  sms.beginSMS(remoteNum);
  sms.print(txtMsg);
  sms.endSMS();
  Serial.println("\nCOMPLETE!\n");
}

/*
  Read input serial
 */
int readSerial(char result[]) {
  int i = 0;
  while (1) {
    while (Serial.available() > 0) {
      char inChar = Serial.read();
      if (inChar == '\n') {
        result[i] = '\0';
        Serial.flush();
        return 0;
      }
      if (inChar != '\r') {
        result[i] = inChar;
        i++;
      }
    }
  }
}

SendSMS.ino (2.21 KB)

J'ai aussi des message d'erreur pendant le téléversement mais cela n'empêche pas que je puisse quand même téléverser sur l'arduino ducoup voici les messages :

In file included from C:\Program Files (x86)\Arduino\libraries\GSM\src/GSM.h:46:0,

from C:\Users\Elève\Desktop\SendSMS\SendSMS.ino:25:

C:\Program Files (x86)\Arduino\libraries\GSM\src/GSM3ShieldV1BandManagement.h:49:1: warning: 'typedef' was ignored in this declaration

typedef enum GSM3GSMBand {UNDEFINED, EGSM_MODE, DCS_MODE, PCS_MODE, EGSM_DCS_MODE, GSM850_PCS_MODE, GSM850_EGSM_DCS_PCS_MODE};

^~~~~~~

C:\Users\Elève\Desktop\SendSMS\SendSMS.ino: In function 'void setup()':

C:\Users\Elève\Desktop\SendSMS\SendSMS.ino:48:29: warning: invalid conversion from 'int' to 'char*' [-fpermissive]

In file included from C:\Program Files (x86)\Arduino\libraries\GSM\src/GSM.h:45:0,

from C:\Users\Elève\Desktop\SendSMS\SendSMS.ino:25:

C:\Program Files (x86)\Arduino\libraries\GSM\src/GSM3ShieldV1AccessProvider.h:80:24: note: initializing argument 1 of 'virtual GSM3_NetworkStatus_t GSM3ShieldV1AccessProvider::begin(char*, bool, bool)'

GSM3_NetworkStatus_t begin(char* pin=0,bool restart=true, bool synchronous=true);

^~~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3MobileMockupProvider.cpp: In constructor 'GSM3MobileMockupProvider::GSM3MobileMockupProvider()':

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3MobileMockupProvider.cpp:44:13: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

msgExample="Hello#World";

^~~~~~~~~~~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3MobileMockupProvider.cpp: In member function 'int GSM3MobileMockupProvider::connectTCPServer(int, char*, int*)':

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3MobileMockupProvider.cpp:183:32: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

strcpy("193.158.1.1", localIP);

^

In file included from C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1BandManagement.cpp:34:0:

C:\Program Files (x86)\Arduino\libraries\GSM\src/GSM3ShieldV1BandManagement.h:49:1: warning: 'typedef' was ignored in this declaration

typedef enum GSM3GSMBand {UNDEFINED, EGSM_MODE, DCS_MODE, PCS_MODE, EGSM_DCS_MODE, GSM850_PCS_MODE, GSM850_EGSM_DCS_PCS_MODE};

^~~~~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1BandManagement.cpp: In constructor 'GSM3ShieldV1BandManagement::GSM3ShieldV1BandManagement(bool)':

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1BandManagement.cpp:38:28: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

quectelStrings[UNDEFINED]="";

^~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1BandManagement.cpp:39:28: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

quectelStrings[EGSM_MODE]=""EGSM_MODE"";

^~~~~~~~~~~~~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1BandManagement.cpp:40:27: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

quectelStrings[DCS_MODE]=""DCS_MODE"";

^~~~~~~~~~~~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1BandManagement.cpp:41:27: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

quectelStrings[PCS_MODE]=""PCS_MODE"";

^~~~~~~~~~~~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1BandManagement.cpp:42:32: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

quectelStrings[EGSM_DCS_MODE]=""EGSM_DCS_MODE"";

^~~~~~~~~~~~~~~~~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1BandManagement.cpp:43:34: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

quectelStrings[GSM850_PCS_MODE]=""GSM850_PCS_MODE"";

^~~~~~~~~~~~~~~~~~~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1BandManagement.cpp:44:43: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

quectelStrings[GSM850_EGSM_DCS_PCS_MODE]=""GSM850_EGSM_DCS_PCS_MODE"";

^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1ModemCore.cpp:39:14: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

char* ok="OK";

^~~~

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1ModemVerification.cpp: In member function 'String GSM3ShieldV1ModemVerification::getIMEI()':

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1ModemVerification.cpp:64:20: warning: passing NULL to non-pointer argument 1 of 'String::String(int, unsigned char)' [-Wconversion-null]

String number(NULL);

^

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1ScanNetworks.cpp: In member function 'String GSM3ShieldV1ScanNetworks::getCurrentCarrier()':

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1ScanNetworks.cpp:66:21: warning: passing NULL to non-pointer argument 1 of 'String::String(int, unsigned char)' [-Wconversion-null]

return String(NULL);

^

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1ScanNetworks.cpp: In member function 'String GSM3ShieldV1ScanNetworks::getSignalStrength()':

C:\Program Files (x86)\Arduino\libraries\GSM\src\GSM3ShieldV1ScanNetworks.cpp:85:21: warning: passing NULL to non-pointer argument 1 of 'String::String(int, unsigned char)' [-Wconversion-null]

return String(NULL);