Un programme pour recevoir des SMS sur l'ESP32

De Wiki de Mémoire Vive
Révision datée du 4 décembre 2023 à 20:35 par 192.168.2.1 (discussion)
Aller à la navigation Aller à la recherche

Cette fois le programme est plus "opérationnel", il s'agit de recevoir des SMS sur le module ESP32-SIM800. Ainsi, on pourra envoyer des commandes depuis un tel pouvant déclencher des actions sur l'ESP32.

Voici le code, qui s'appuie sur la bibliothèque AsyncSMS.

Nous pourrons revenir sur tout cela en atelier, avec de plus amples explications.

// Please select the corresponding model

// #define SIM800L_IP5306_VERSION_20190610
// #define SIM800L_AXP192_VERSION_20200327
// #define SIM800C_AXP192_VERSION_20200609
  #define SIM800L_IP5306_VERSION_20200811



#include "AsyncSMS.h"
#include "utilities.h"

#define SerialMon Serial
#define SerialAT  Serial1


AsyncSMS smsHelper(&SerialAT, 115200);

void messageReceived(char * number, char * message) {
  //Do something with your message
  Serial.println("Message received");
  Serial.println(number);
  Serial.println(message);
}

void setup() {
  // Set console baud rate
  SerialMon.begin(115200);

  // Set GSM module baud rate and UART pins
  SerialAT.begin(115200, SERIAL_8N1, MODEM_RX, MODEM_TX);

  setupModem();
  smsHelper.init();
  smsHelper.smsReceived = *messageReceived;
}

void loop() {
  smsHelper.process();
}