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 34 : |
Ligne 70 : |
| Pour passer en mode de gestion Texte, utilisez la commande "AT+CMGF=1" | | Pour passer en mode de gestion Texte, utilisez la commande "AT+CMGF=1" |
| | | |
− | == Réception d'un SMS == | + | === Réception d'un SMS === |
| Lorsque le GPRS Shield reçoit un SMS, le module SIM900 envoi spontanément un message similaire à "'''+CMTI: "SM",21'''". | | Lorsque le GPRS Shield reçoit un SMS, le module SIM900 envoi spontanément un message similaire à "'''+CMTI: "SM",21'''". |
| | | |
Ligne 41 : |
Ligne 77 : |
| 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. |
| | | |
− | == Lecture du contenu SMS == | + | === 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 === |
| Pour lire le contenu d'un SMS, il faut utiliser la commande "AT+CMGR=21". | | Pour lire le contenu d'un SMS, il faut utiliser la commande "AT+CMGR=21". |
| | | |
Ligne 56 : |
Ligne 97 : |
| | | |
| 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}} |