Je n'arrive pas à envoyer d'SMSs

Pas de code PIN sur la carte SIM ?

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

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

cell.println("ATZ");

je ne l'avais pas, mais apparement ca n'a rien changer.

Grrrrr, je comprend rien.

Je vous remets mon 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*?

Le char * signifie une chaine de caractères.

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

Ca masque les commandes AT et simplifie la syntaxe, les puristes détesteront. :slight_smile:

si tu nous donnais le type de carte gsm que tu utilise :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

infobarquee:
si tu nous donnais le type de carte gsm que tu utilise :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)

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

Jean-François:

infobarquee:
si tu nous donnais le type de carte gsm que tu utilise :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 :slight_smile:
j'aimais bien le fendant et j'aime bien le chocolat, mais je connais pas l'indicatif de la suisse XD 8)
JF aux aguets comme dab :wink:

Bon ben chais plus quoi faire. J'ai fait un petit fichier séparé et voci mon réaultat final

#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

infobarquee:
JF aux aguets comme dab :wink:

:grin:

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?

#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);
}

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

cell.println(34,BYTE);

me génère une erreur.

heuuuu non, c'est le type de la carte gsm que je te demande depuis le début :wink:
la sim pour le moment, on s'en fiche un peu.

Haaaaaa!!!!!
tu veux dire ca?
https://www.sparkfun.com/products/9607?
Attends alors je suis à l'ouest :slight_smile:

J'ai pensé que peut etre j'ai mis une mauvaise antenne, mais j'arrive appeler mon module depuis mon portable donc, je ne crois pas.

Aussi, j'ai remplacé

cell.print(34,BYTE);

par

cell.write(34);

car le premier me génèrait un message d'erreur du genre "The byte keyword is not supported, please use Serial.write().

je viens de trouver ceci

Suisse CHE Sunrise 900/1800
Swisscom 900/1800/ 3G 2100
Digicel 900/1800

donc

Write Command
Return
Reference
AT+SBAND?
+SBAND:
OK
AT+SBAND=
OK
value:0-10
value
0 GSM900
1 DCS1800
2 PCS1900
3 GSM850
4 GSM900&DCS1800
5 GSM850&GSM900
6 GSM850&DCS1800
7 GSM850&PCS1900
8 GSM900&PCS1900
9 GSM850&GSM900&DCS1800
10 GSM850&GSM900&PCS1900

cell.println("AT+SBAND=0 OU 4");

Ben je te remercie, mais j'avais deja essaye et je viens de le refaire.....

un petit tuto http://garagelab.com/profiles/blogs/tutorial-how-to-use-the-cellular-shield-sm5100b-with-arduino
il est indiqué que le shield peut mettre dans les 10s avant de se connecter au réseau.

Je te remercie, c'est ce tuto qui m'a permis de démarrer... :~
je sais plus quoi faire...............

Ecoute, je vais passer sur un autre problème. J'en ai encire un de fou. Si jamais tu veux regarder...

En tout cas merci pour ton aide!!!!! J'apprécie.

un autre tuto plus détaillé
http://tronixstuff.wordpress.com/2011/01/19/tutorial-arduino-and-gsm-cellular-part-one/