Modifications

Sauter à la navigation Sauter à la recherche
Ligne 1 : Ligne 1 :  
{{GsmShield-Nav}}
 
{{GsmShield-Nav}}
 +
 +
== Introduction ==
    
Voici quelques petits mémos concernant les commandes AT les plus courantes. Ces dernières seront forcements plus détaillées dans le [http://mchobby.be/data-files/gprsshield/SIM900_AT_Command_Manual_V1.03.pdf manuel Ad Hoc des Commandes AT v1.03].   
 
Voici quelques petits mémos concernant les commandes AT les plus courantes. Ces dernières seront forcements plus détaillées dans le [http://mchobby.be/data-files/gprsshield/SIM900_AT_Command_Manual_V1.03.pdf manuel Ad Hoc des Commandes AT v1.03].   
Ligne 20 : Ligne 22 :  
AT+CPIN=1234  
 
AT+CPIN=1234  
   −
== Appel téléphonique ==
+
== Numéro IMEI ==
Pour passer un appel téléphonique, il faut utiliser la commande  
+
Ce numéro permet d'identifier de façon univoque votre module GSM/GPRS. Vous pouvez l'obtenir sur votre GSM/mobile standard à l'aide du numéro spécial "*#06#".
 +
 
 +
sur votre GSM shield, cette information est obtenue à l'aide de la commande AT "'''AT+CGSN'''"
   −
== Statut réseau ==
+
== Statut ==
 
=== Call Ready ===
 
=== Call Ready ===
 
"Call Ready" est un message envoyé spontanément par le module SIM900 lorsqu'il est enregistré sur le réseau mobile.
 
"Call Ready" est un message envoyé spontanément par le module SIM900 lorsqu'il est enregistré sur le réseau mobile.
 
Si vous voulez savoir quand votre GPRS est prêt à l'emploi, c'est le message à guetter ;-) .
 
Si vous voulez savoir quand votre GPRS est prêt à l'emploi, c'est le message à guetter ;-) .
 +
 +
== Appel téléphonique ==
 +
Pour passer un appel téléphonique, il faut utiliser la commande
 +
=== Effectuer un appel ===
 +
Pour effectuer un appel, il faut utiliser la commande "'''ATD+32499667788;'''" où vous pouvez clairement identifier le numéro de téléphone.
 +
 +
Durant l'établissement de la communication, le module SIM900 affiche spontanément différentes informations concernant le statut de la communication vocale.
 +
 +
Suivant que la communication soit établie ou refusée, vous pouvez obtenir les messages spontané suivants:
 +
* CONNECT lorsque la communication est établie
 +
* NO CARRIER lorsque l'appel est refusé (appel non décroché et interrompu par l'opérateur)
 +
 +
{{tmbox | text = Si vous n'arrivez pas à établir votre première communication vocale, placez votre carte SIM dans un téléphone normal et effectuez un appel téléphonique. Bon nombre d'opérateurs pirate ce premier appel pour vous forcer à configurer votre numéro de téléphone. Et rein à faire, il vous faudra utiliser un vrai téléphone pour effectuer cette phase de configuration. }}
 +
 +
=== Accepter un Appel ===
 +
Lorsqu'un appel vocal est en cours d'établissement, le message spontané "RING" est envoyé par le SIM900.
 +
 +
Pour y réponde (décrocher le téléphone), il faut utiliser la commande "'''ATA'''"
 +
 +
=== Interrompre un appel ===
 +
Pour interrompre un appel téléphonique, il faut utiliser la commande  "'''ATH'''"
 +
 +
=== Activité téléphonique ===
 +
La commande "AT+CPAS" permet de s'informer de l'activité du téléphone.
 +
 +
La réponse consiste généralement en "+CPAS: ''valeur_statut''" ou "+CME ERROR: ''Code_Erreur''".
 +
 +
Les différentes valeurs possible pour ''valeur_statut'' sont:
 +
* 0 Prêt
 +
* 2 Inconnu (Réponse aux instructions n'est pas garanti)
 +
* 3 Sonne (Ringing) (capable de répondre aux commandes AT mais le téléphone sonne)
 +
* 4 Appel en cours (capacble de répondre aux commandes AT mais le un appel est en cours)
    
== SMS ==
 
== SMS ==
Ligne 40 : Ligne 76 :     
Le 21 indiqué dans l'exemple ci-dessus identifie la position "mémoire" du SIM900 où le message est stocké. Il s'agit d'une information importante.
 
Le 21 indiqué dans l'exemple ci-dessus identifie la position "mémoire" du SIM900 où le message est stocké. Il s'agit d'une information importante.
 +
 +
=== Limitation mémoire ===
 +
La carte SIM dispose de 25 emplacements pour stocker les SMS en cours de réception.
 +
Une fois le message traité, l'emplacement mémoire devrait être libéré à l'aide de la commande AT adéquate.<br />
 +
Si vous ne recevez plus les notification +CMTI c'est probablement parce que votre mémoire est saturée (voir notre [[GeekOnFire GSM/GPRS Shield FAQ|FAQ]] pour plus de détails).
    
=== Lecture du contenu SMS ===
 
=== Lecture du contenu SMS ===
Ligne 57 : Ligne 98 :  
Le message quand à lui est des plus explicite, il s'agit de "Love Arduino" :-)
 
Le message quand à lui est des plus explicite, il s'agit de "Love Arduino" :-)
    +
=== Effacer un message SMS ===
 +
La commande "AT+CMGD=''index''" permet d'effacer une message SMS de la mémoire du SIM900.
 +
Effacer le contenu d'un message ne modifie en rien la valeur du compteur de message. Les informations du message sont effacées et la mémoire est libérée.
 +
Un nouvelle lecture de la position effacée retournera simplement "OK" (sans autre information).
 +
 +
=== Liste des messages à effacer ===
 +
Vous pouvez prendre connaissance de la liste des messages effaçable à l'aide de la commande "'''AT+CMGD=?'''".
 +
 +
Ce message produit, à titre d'exemple, le résultat suivant:
 +
 +
+CMGD: (1-25),(0-4)
 +
 +
Indiquant que les messages de 1 à 25 peuvent être effacés.
 +
 +
=== Lister tous les messages ===
 +
La commande suivante affiche tous les messages stockés dans les emplacements mémoires de la carte SIM.
 +
 +
AT+CMGL="ALL"
 +
 +
=== Envoi d'un SMS ===
 +
L'envoi d'un message se fait en envoyant la commande AT suivante:
 +
<nowiki>AT+CMGS="+32499778866"
 +
</nowiki>
 +
Sur Arduino, cela se traduirait par le code suivant:
 +
<nowiki>mySerial.print("AT+CMGS=\"+32499778866\"\r");
 +
</nowiki>
 +
Note:
 +
* La séquence de caractère \" indique au compilateur qu'il faut inclure une guillemet dans la chaine de caractère.
 +
* La séquence de caractère \r indique au compilateur qu'il faut inclure un retour chariot (CR) dans la chaine de caractère.
 +
 +
Par la suite, le SIM900 attend l'encodage du texte/corps du message (même sur plusieurs lignes).
 +
Un message texte peut se terminer par une instruction spécial (seule instruction) sur la dernière ligne du message.
 +
Il y a deux instructions différentes utilisable:
 +
* Envoi message = CTRL+Z - séquence d'échappement correspond au caractère 26.
 +
* Abandon message = ESC - séquence d'échappement correspondant au caractère 27.
 +
 +
L'envoi d'un CTRL+Z en se traduirait par le code suivant:
 +
<nowiki>mySerial.print("Bienvenu chez MCHobby!\r");    // Le texte du message
 +
delay(1000);
 +
mySerial.print(26,BYTE);  // Equivalent du Ctrl+Z (fin de texte du SMS)
 +
// Sur Arduino 1.0 utiliser plutôt l'instruction
 +
//mySerial.write(26);
 +
</nowiki>
 +
L'exemple ci-dessus illustre bien qu'il faut un retour chariot sur la dernière ligne du message (le \r derrière MCHobby!) avant d'envoyer le Ctrl+Z.
 +
 +
=== Envoi d'un SMS avec Serial Relay ===
 +
Vous pouvez tester plus facilement l'envoi et la réception de SMS en utilisant le moniteur série d'Arduino IDE et Serial Relay. <br />
 +
Serial Relay est programme que vous téléchargez sur votre Arduino et qui sert de relais entre Arduino IDE et votre carte GPRS.<br />
 +
C'est un outil pratique pour tester vos commandes AT en "life".<br />
 +
Chez MC Hobby, nous avons quelque peut amélioré le programme originel de GOF pour le rendre encore plus pratique.<br />
 +
Pour envoyer le CTRL+Z à l'aide du moniteur série, vous pouvez utiliser la séquence ~z que nous avons spécialement mis en place dans notre Serial Relay V2. Cette dernière séquence sera interceptée et transformée en CTRL+Z pour être ensuite envoyée à l'UART du GPRS shield.
 +
 +
Voici un exemple d'envoi de SMS à l'aide du moniteur Serie d'Arduino et de Serial Relay v2
 +
<nowiki>AT+CMGS="+32499778866"
 +
MC Hobby love Arduino
 +
~z
 +
</nowiki>
 +
 +
Vous pouvez trouver [[GeekOnFire GSM/GPRS Shield SerialRelay2|Serial Relay V2.0]] (ou une version plus récente) dans le menu en haut à droite des pages Wiki consacrées à notre GPRS shield.
    
{{MCH-Accord}}
 
{{MCH-Accord}}
29 917

modifications

Menu de navigation