[Tuto] Module GSM SIM800L - Recevoir un SMS et le lire

Posté sur: oct. 14, 2015

Catégories: Arduino

Tags: arduino , gsm , sim800l , sms

Pour voir le montage et la prise en main de ce module SIM800L, vous pouvez suivre le tuto sur cette page: Tuto SIM800L - Montage et prise en main

Le programme suivant reçoit et affiche dans le moniteur série les SMS contenus sur la carte SIM, à l'aide des commandes AT :

SoftwareSerial sim800l(7,8);    // RX, TX  boolean sms;    void setup(){      // début du setup     // Démarrage du modem     sim800l.begin(9600);     // Initialisation de la communication série     Serial.begin(9600);     delay(500);   // Délai pour la connexion     sms = true;  }    void loop(){    // Début du loop     if(sms==true){        receivesms();        sms = false;     }     // affichage dans le moniteur série des commandes AT + réponse     if (sim800l.available()>0){        Serial.write(sim800l.read());     }  }    void receivesms(){     Serial.println("Receiving text message...");     sim800l.print("AT+CMGF=1r");  // Configure le mode SMS     // Affiche tous les messages     sim800l.print("AT+CMGL="ALL"r");     delay(1000);     sim800l.println();  }

En fonction de vos besoin vous pouvez remplacer AT+CMGL="ALL" par :

  • AT+CMGL= "REC READ" : Affiche tous les messages lus
  • AT+CMGL= "REC UNREAD" : Affiche tous les messages non lus.

Si vous désirez supprimer les SMS contenus sur la carte SIM, il faut exécuter la commander AT+CMGD :

  • AT+CMGD =1 : supprime les SMS déjà lus
  • AT+CMGD=2 : supprime les SMS lus, et envoyés
  • AT+CMGD=3 : supprime les SMS lus, envoyés et non envoyés
  • AT+CMGD=4 : supprimes tous les SMS (lus, non lus, envoyés et non envoyés)

Attention ! Pour pouvoir afficher correctement l'ensemble du contenu de vos messages, vous devez modifier votre librairie Arduino SoftwareSerial.

Trouvez le fichier SoftwareSerial.h et modifiez la ligne de commande :

  #define _SS_MAX_RX_BUFF 64 // RX buffer size

En :

  #define _SS_MAX_RX_BUFF 256 // RX buffer size

Récapitulatif des commandes AT nécessaires pour lire et supprimer des SMS:

Commande Réponse Info
AT+CMGL= "REC UNREAD" +CMGL : , "REC UNREAD","<n° de tél>,"", Affiche tous les SMS non lus
AT+CMGL= "REC READ" +CMGL : , "REC READ","<n° de tél>,"", Affiche tous les SMS lus
AT+CMGL= "STO UNSENT READ" Enregistre les SMS non envoyés
AT+CMGL= "STO SENT READ" Enregistre les SMS envoyés
AT+CMGL="ALL" +CMGL : , "ALL","<n° de tél>,"", Affiche tous les messages
AT+CMGD=1 Supprime les SMS déjà lus
AT+CMGD=2 Supprime les SMS lus et non envoyés
AT+CMGD=3 Supprime les SMS lus, envoyés et non envoyés
AT+CMGD=4 Supprime tous les SMS (lus, non lus, envoyés et non envoyés)

Commentaires

  • didiersee
    juil. 4, 2018
  • Admin
    juil. 4, 2018
  • didier
    juin 10, 2018
  • David G
    févr. 9, 2018
  • michel
    déc. 25, 2017
  • michel
    déc. 25, 2017
  • nadjib
    août 14, 2017
  • mva
    juil. 24, 2017
  • lucas
    juil. 17, 2016
  • Model GSM SIM800L - DIYMaroc Blog
    avril 13, 2016

laissez un commentaire

Se connecter