Intégrer le Module GPRS SIM800L avec Arduino via Commandes AT
Composants et fournitures
| Composant | Quantité |
|---|---|
| Arduino UNO | 1 |
| Module GPRS SIM800L | 1 |
| Diode 1N4007 (haute tension/courant) | 1 |
Outils nécessaires
- Multimètre numérique autorange (ex: Digilent Mastech MS8217)
- Breadboard 170 pins
- Fils de connexion mâle-mâle (type servo)
À propos de ce projet
Si vous êtes passionné d'Arduino, vous pourriez vouloir travailler avec des connexions téléphoniques mobiles. J'ai vu des projets activés par SMS ou commandes vocales, mais la plupart utilisent de vieux téléphones portables, difficiles à personnaliser.

Le module GPRS permet de créer nos propres projets comme on le souhaite. La façon la plus simple pour un programmeur est d'utiliser la plateforme Arduino. C'est pourquoi j'utilise ce module SIM800L avec Arduino. Ce n'est pas compliqué, mais le câblage est la partie la plus critique : une seule erreur peut griller le module.
Câblage

Connectez l'Arduino au module SIM800L selon le schéma ci-dessus.

Alimentation sécurisée
Pour la sécurité, alimentez le SIM800L via l'Arduino Uno à travers une diode 1N4007 (chute de tension ~0.7V pour amener le 5V de l'Arduino vers ~4.3V, acceptable pour le SIM800L qui veut 3.4-4.4V).


Une fois le câblage vérifié, passez au code. Identifiez d'abord le bon sens de la carte SIM (généralement imprimé sur le slot).


Test des commandes AT
- Lancez l'IDE Arduino
- Téléversez le code ci-dessous
- Outils > Moniteur Série
- Réglez : 9600 bauds, "Both NL & CR"

Vérifiez le module : appelez le numéro de la SIM depuis un autre téléphone. Si vous entendez la tonalité, le module fonctionne.
Dans le moniteur série, tapez AT + Entrée → doit répondre OK. Vous pouvez alors tester des centaines de commandes AT pour apprendre à travailler avec le SIM800L.
Code
SIM800L_GPRS.ino
/***************************************************
* Programmé par iakbasnayaka pour www.setnfix.com
* Test commandes AT pour SIM800L
* https://www.youtube.com/channel/UCM9NQ4WcSbzTiCdoyOvzA1g
***************************************************/
#include <SoftwareSerial.h>
SoftwareSerial Sim800l(10, 11); // RX, TX
void setup() {
Serial.begin(9600);
Sim800l.begin(9600);
}
void loop() {
while (Sim800l.available()) {
Serial.write(Sim800l.read());
}
while (Serial.available()) {
Sim800l.write(Serial.read());
}
}
Pièces personnalisées et boîtiers
N'oubliez pas la diode 1N4001 pour alimenter le module

Schémas
N'oubliez pas la diode 1N4001 pour alimenter le module

Processus de fabrication
- Étendre GoPiGo v2 sur Windows 10 IoT Core pour Raspberry Pi 3
- Photographie Haute Vitesse : Capturez les Gouttes d'Eau avec Arduino Nano
- Construire une Tirelire Intelligente : Contrôler un Accepteur de Pièces avec Arduino Nano
- JX Wave Generator – Générateur DDS compatible Arduino avec affichage OLED
- Connecter un module GPS NEO‑6M à l'Arduino Mega : Guide pas à pas
- Morpion sur matrice LED MAX7219 avec boîtier en carton
- Construire un voltmètre DIY avec Arduino et écran Nokia 5110
- Construire un minuteur à rebours Arduino fiable avec afficheur 7 segments SparkFun
- Appareils électroménagers à commande vocale : contrôle Bluetooth avec Google Assistant