Pages: [1] 2 3   Go Down
Author Topic: Je n'arrive pas à envoyer d'SMSs  (Read 2180 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Sr. Member
****
Karma: 0
Posts: 368
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour à tous,
Je planne depuis un long moment sur l'envoi d'SMS.
J'ai pourtant lu et relu la doc sans succès

Voici mon code.
Code:
SoftwareSerial cell(2,3);
 //Send SMS
    cell.println("AT+SBAND=6");
    cell.println("AT+CMGF=1"); // set SMS mode to text
    cell.println("AT+CMGS=");  // now send message...
    cell.println("\"");
    cell.println("+41760009988");//+41=Country code, 76= Area code
    cell.println("\"");
    cell.println("\r");
    delay(500); // give the module some thinking time
    cell.println("Bipme Alarm");   // our message to send
    cell.println("0x1A,10");  // ASCII equivalent of Ctrl-Z 0x1A,10
    delay(15000); // the SMS module needs time to return to OK status
   
    Serial.print("SMS Sent");
Je me demande si le problème vient pas de la ligne
Code:
cell.println("0x1A,10");  // ASCII equivalent of Ctrl-Z 0x1A,10
J'ai aussi d'essayé de mettre
Code:
cell.println("0x1A");
cell.println("Ctrl-Z");  // ASCII equivalent of Ctrl-Z 0x1A,10
mais sans succès.
Je vous serais très reconnaissant si vous pouviez corriger mon code.
Aussi l'autre doute que j'ai c'est
Code:
cell.println("AT+SBAND=6");
J'ai un peu totu essayer
Code:
cell.println("AT+SBAND=6");
cell.println("AT+SBAND=4");

Je suis en suisse et la frequence est 900/1800

je vous remercie
« Last Edit: January 14, 2013, 03:03:27 am by pierrot10 » Logged

Il ne suffit pas de tout savoir, la persévérance, c'est déjà presque tout!

Offline Offline
Edison Member
*
Karma: 17
Posts: 1934
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

bonjour,
tu peux déjà faire un retour dans la console pour voir.
quelle shield utilise tu?
en général, ce que je fais avant de mettre la sim sur l'arduino, je la configure sur un gsm normal.

sinon essaye avec ca
Quote
#include <NewSoftSerial.h>
NewSoftSerial mySerial(7, smiley-cool;

const char* message = "toto";
const char* numero1 = "000000000";

void setup()
{
  mySerial.begin(19200);               // the GPRS baud rate   
  Serial.begin(19200);                 // the GPRS baud rate

}
void loop()
{
for(int i=0;i<2;i++){
  mySerial.println("ATZ");    //Because we want to send the SMS in text mode
  delay(1000);
  mySerial.println("AT+CMGF=1");    //Because we want to send the SMS in text mode
  delay(1000);
  mySerial.print("AT+CMGS=");    //Start accepting the text for the message
  mySerial.print(34,BYTE);
  mySerial.print(numero1);    //Start accepting the text for the message 
  mySerial.println(34,BYTE);
  delay(1000);
  mySerial.print(34,BYTE);
  mySerial.print(message);   //The text for the message
  mySerial.print(34,BYTE);
  delay(1000);
  mySerial.print(26,BYTE);  //Equivalent to sending Ctrl+Z
}
}
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 27
Breaks ? We don't need breaks !!!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Pas de code PIN sur la carte SIM ?
Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 368
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hello,
Merci pour vos réponses.
MAis quand entendu pas un return dans la console?
J'ai essayé de le faire ca ne me donne rien.

Non, j'ai pensé à desactivé le code PIN et j'avais deja insérer la carte dans un téléphone. J'ai pu aller sur internet et recevboir des appels

Ce qui me préoccupe toujours c'est command configurer la band
Code:
cell.println("AT+SBAND=6");
J'ai aussi essayer de mettre 4.

Aussi une petite question, bête. Pour le moment mon arduino est allimenté pae mon port USB. Es-ce que ca pourrait etre un manque de Voltage?
je n'ai pas encore essayer de l'alimenter avec 9V.

J'ai aussi ajouté ceci
Code:
cell.println("ATZ");
je ne l'avais pas, mais apparement ca n'a rien changer.


Grrrrr, je comprend rien.
Logged

Il ne suffit pas de tout savoir, la persévérance, c'est déjà presque tout!

Offline Offline
Sr. Member
****
Karma: 0
Posts: 368
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Je vous remets mon code:
Code:
const char* message ="Coucou";
const char* numero ="0762244555";
cell.println("ATZ");
    cell.println("AT+SBAND=6");
    cell.println("AT+CMGF=1"); // set SMS mode to text
    cell.println("AT+CMGS=");  // now send message...
    cell.println("\"");
    cell.println(numero);
    cell.println("\"");
    cell.println("\r");
    //delay(500); // give the module some thinking time
    cell.println(message);   // our message to send
    cell.println("0x1A");  // ASCII equivalent of Ctrl-Z 0x1A,10
    //delay(15000); // the SMS module needs time to return to OK status
   
    Serial.print("SMS Sent");

Au passage, c'est quoi le * après le char: char*?
Logged

Il ne suffit pas de tout savoir, la persévérance, c'est déjà presque tout!

Offline Offline
Newbie
*
Karma: 0
Posts: 21
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Le char * signifie une chaine de caractères.
http://www.bien-programmer.fr/notes.php#char_star
Logged

Arduino Duemilanove(ATmega328)

Offline Offline
Newbie
*
Karma: 0
Posts: 27
Breaks ? We don't need breaks !!!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Pourquoi ne pas essayer avec la librairie GoGprs si le shield est compatible ?

https://github.com/mchobby/GoGprs

Ca masque les commandes AT et simplifie la syntaxe, les puristes détesteront.  smiley
Logged

Offline Offline
Edison Member
*
Karma: 17
Posts: 1934
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

si tu nous donnais le type de carte gsm que tu utilise smiley-wink

EDIT :
je pense a un truc, essaye de mettre le code pays au lieu du 07
pour le france ca donnerait ceci
+33 6 00 00 00 00

EDIT 2 :
je viens de retrouver un tuto suite à un mystère avec un shield gsm
http://arduino.cc/forum/index.php/topic,106227.0.html
« Last Edit: January 14, 2013, 12:41:55 pm by infobarquee » Logged

Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 30
Posts: 3227
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

si tu nous donnais le type de carte gsm que tu utilise smiley-wink

EDIT :
je pense a un truc, essaye de mettre le code pays au lieu du 07
pour le france ca donnerait ceci
+33 6 00 00 00 00

EDIT 2 :
je viens de retrouver un tuto suite à un mystère avec un shield gsm
http://arduino.cc/forum/index.php/topic,106227.0.html

Alors ce serait plutôt +41 76xxxxxxx

(076, 079... sont des préfixes pour les téléphones portables GSM en Suisse)
« Last Edit: January 14, 2013, 01:53:01 pm by Jean-François » Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Offline Offline
Sr. Member
****
Karma: 0
Posts: 368
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oui j'avais trouvé ce tuto, mais je n'avais pas le téléphone du service center, maintenant c'est fait

J'ai aussi essayé d'utiliser GoGprs, mais sans succès, il me retourne toujours

Not registered on Network
Not registered on Network

Pourtant j'ai mis la carte dans un téléphone et ca marche.

J'ai en fait essayer un des exemple fourni avec la librairie
Logged

Il ne suffit pas de tout savoir, la persévérance, c'est déjà presque tout!

Offline Offline
Edison Member
*
Karma: 17
Posts: 1934
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

si tu nous donnais le type de carte gsm que tu utilise smiley-wink

EDIT :
je pense a un truc, essaye de mettre le code pays au lieu du 07
pour le france ca donnerait ceci
+33 6 00 00 00 00

EDIT 2 :
je viens de retrouver un tuto suite à un mystère avec un shield gsm
http://arduino.cc/forum/index.php/topic,106227.0.html

Alors ce serait plutôt +41 76xxxxxx (076, 079... sont des préfixes pour les téléphones portables en Suisse)

hé oui, pour ca que j'ai bien mis "pour le france ca donnerait ceci" (avec une belle faute en prime smiley
j'aimais bien le fendant et j'aime bien le chocolat, mais je connais pas l'indicatif de la suisse  smiley-lol  smiley-cool
JF aux aguets comme dab smiley-wink
Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 368
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bon ben chais plus quoi faire. J'ai fait un petit fichier séparé et voci mon réaultat final
Code:
#include <SoftwareSerial.h>
SoftwareSerial cell(2,3);
void setup(){
   Serial.begin(9600);
    cell.begin(9600);
 
  //Let's get started!

  Serial.println("Starting SM5100B Communication...");

  delay(3000);
}
void loop(){
 
    //Send SMS
    const char* message ="Alarm";
    const char* numero ="+41761112233";
 
//cell.print("AT+SBAND=4");
    cell.println("ATZ");
    cell.println("AT+CMGF=1"); // set SMS mode to text
    cell.print("AT+CSCA=+41765980000");
    cell.print("AT+CMGS=");  // now send message...
    cell.print("\"");
    cell.print(numero);
    cell.print("\"");
    cell.print("\r");
    delay(500); // give the module some thinking time
    cell.print(message);   // our message to send
    //cell.write("0x1A");
    cell.println("0x1A");  // ASCII equivalent of Ctrl-Z 0x1A,10
    //delay(15000); // the SMS module needs time to return to OK status
   
    Serial.print("SMS Sent");

delay(15000);
}
Chais pas il doir manquer un truc, un chioua.
Peut etre c'est mon harware qui embete
Logged

Il ne suffit pas de tout savoir, la persévérance, c'est déjà presque tout!

Forum Moderator
Geneva
Offline Offline
Faraday Member
*****
Karma: 30
Posts: 3227
Yoplait... le pt'it suisse
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

JF aux aguets comme dab smiley-wink

 smiley-mr-green
Logged

MacBook intel core 2 duo  os X snow Leopard 10.6<br/> eMac PPc G4  os X Leopard 10.5<br/>powerbook G4 os X Leopard 10.5
imac PPC G3 os X Pa

Offline Offline
Edison Member
*
Karma: 17
Posts: 1934
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

tu ne réponds toujours pas sur le type de ta carte gsm.

si tu regarde mon exemple, il te faut des delay(1000);
juste en passant, es tu certain que ta carte est sur on?

Quote
#include <SoftwareSerial.h>
SoftwareSerial cell(2,3);
   const char* message ="Alarm";
    const char* numero ="+41761112233";

void setup(){
    cell.begin(19200);
   Serial.begin(19200);

 
  //Let's get started!

  Serial.println("Starting SM5100B Communication...");

  delay(3000);
}
void loop(){
 
    //Send SMS
 
 
//cell.print("AT+SBAND=4");
    cell.println("ATZ");
delay(1000);
    cell.println("AT+CMGF=1"); // set SMS mode to text
delay(1000);
  cell.print("AT+CMGS=");    //Start accepting the text for the message
  cell.print(34,BYTE);
  cell.print(numero);    //Start accepting the text for the message 
  cell.println(34,BYTE);
  delay(1000);
  cell.print(34,BYTE);
  cell.print(message);   //The text for the message
  cell.print(34,BYTE);
  delay(1000);
  cell.print(26,BYTE);  //Equivalent to sending Ctrl+Z
   
    Serial.print("SMS Sent");

delay(15000);
}

Logged

Offline Offline
Sr. Member
****
Karma: 0
Posts: 368
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ha, mais qu'entend tu par type de carte?
C'est une carte SIM, prepay.
N'es-ce pas la réponse que tu attends.
Je vais copier ton code, mais je crois que

Code:
cell.println(34,BYTE);
me génère une erreur.
Logged

Il ne suffit pas de tout savoir, la persévérance, c'est déjà presque tout!

Pages: [1] 2 3   Go Up
Jump to: