RASP-GOF-GSM-GPRS-UART
Utiliser UART
Il est possible d'utiliser directement l'UART du Raspberry Pi pour établir une communication série avec le matériel de votre choix.
Mais si vous voulez utiliser l'UART matériel ("HW UART" en anglais), ce qui est parfaitement possible... vous devez d'abord réaliser quelques opérations pour libérer l'UART de votre en Pi.
En effet, par défaut, votre Raspberry réquisitionne cet UART pour y attacher un terminal, ce qui permet d'utiliser un câble console pour prendre le contrôle de votre Pi.
La suite de cette page vous explique comment libérer l'UART afin que nous puissions l'utiliser à notre guise.
Libération de l'UART
Etape 1: Modifier /boot/cmdline.txt
Entrez la ligne de commande suivante dans une session terminal:
$ sudo nano /boot/cmdline.txt
et modifier:
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
en
dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
NB: Ce qui a disparu c'est console=ttyAMA0,115200 kgdboc=ttyAMA0,115200
Etape 2: modifier /etc/inittab
Saisissez la commande suivante dans une console/terminal:
$ sudo nano /etc/inittab
Et modifiez:
#Spawn a getty on Raspberry Pi serial line
T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
en
#Spawn a getty on Raspberry Pi serial line
#T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
NB: la ligne avec le "T0:23" est mise en commentaire pour la désactivé.
Etape 3: Rebooter votre Pi
Les modifications ci-dessus ne deviennent effectives qu'après avoir redémarré votre Pi.
Une fois redémarré, l'UART est libéré et vous pouvez l'utiliser avec soit avec vos programme soit avec un logiciel terminal comme minicom pour communiquer directement votre module GPRS.
Installer Minicom
Qu'est ce que minicom?
Minicom est un programme de contrôle de modem et d'émulation de terminal pour les systèmes Unix et Linux. Il peut être comparé à HyperTerminal de Windows. Ce programme a été écrit par Miquel van Smoorenburg d'après le populaire Telix pour MS-DOS. Minicom apporte une émulation totale d'ANSI et VT100, un langage de script externe, et d'autres choses encore.
MiniCom à l'avantage d'être intégralement utilisable depuis un terminal et donc aussi aussi via une connexion SSH. C'est bigrement pratique si vous accédez à votre Raspberry Pi par l’intermédiaire de la seule connexion réseau (via SSH) car grâce à MiniCom vous pouvez commander votre module GPRS a travers SSH + MiniCom.
Installation de MiniCom
Ouvrez une session terminal et entrez la commande suivante pour installer minicom sur votre Raspberry Pi
sudo apt-get install minicom
Première communication avec le GPRS
Brancher votre GPRS
Assurez vous d'avoir branché votre module GPRS comme détaillé ici.
Mettez le sous tension... mais n'activer pas encore le module GPRS.
Démarrer MiniCom
Nous allons maintenant nous connecter sur notre GPRS à l'aide de MiniCom.
Tapez la commande suivante dans une session terminal:
minicom -b 19200 -o -D /dev/ttyAMA0
Vous devriez voir le message d'invite de MiniCom
Activer le module GPRS
Pressez ensuite le bouton d'activation du module GPRS pour l'activer.
Vous devriez voir apparaitre les premiers messages AT en provenance du module GPRS
Vous pouvez noter les messages suivants en provenance du module GPRS.
- RDY
- +CFUN: 1
- +CPIN: SIM PIN
"RDY" indique que le module GPRS est prêt à recevoir des commandes.
"+CPIN: SIM PIN" indique que le module attend le code PIN correspondant à la carte GSM insérée dans le module.
Nous avons détaillé beaucoup de commandes AT dans notre tutoriel GSM/GPRS destiné à Arduino, il contient une foule d'information utile.
Exemple: envoi et réception de SMS
Nous allons maintenant envoyer un SMS avec notre module GSM/GPRS en détaillant chacune des étapes et commandes AT utilisées. Vous trouverez plus d'informations sur ces commandes AT dans notre petit mémo AT
Dans le cas de figure ci-dessous, nous partons du principe que minicom est déjà actif sur le port série matériel
minicom -b 19200 -o -D /dev/ttyAMA0
Et que votre module GSM GPRS est prêt à être activé.
Description | Commande envoyé vers SIM900 (depuis votre clavier) | Message envoyé par le SIM900 (vers votre Pi) |
Démarrage du module SIM900 en pressant le bouton de démarrage | ||
Message spontané : PRET envoyé par le SIM900 | RDY | |
Message spontané : envoyé par le SIM900 | +CFUN: 1 | |
Message spontané : CODE PIN REQUIS | +CPIN: SIM PIN | |
Envoi du code PIN | AT+CPIN=3881 | |
Commande acceptée | OK | |
Message spontané : SIM900 enregistré sur le réseau mobile. | Call Ready | |
Utilisation du mode texte | AT+CMGF=1 | |
Commande acceptée | OK | |
Message spontané : réception de SMS stocké dans message store #3 | +CMTI: "SM",3 | |
Lecture du message store #3 | AT+CMGR=3 | |
Le SIM900 renvoi le contenu du message store | +CMGR: "REC UNREAD","+32477665544","","13/11/12,20:30:08+04" | |
GOF gsm/gprs running great with Raspberry Pi | ||
Ligne totalement vide retournée par la SIM900 | ||
Commande AT+CMGR= acceptée (et cloturée) | OK | |
Effacer le contenu du message store #3 | AT+CMGD=3 | |
Commande acceptée et exécutée. | OK | |
Envoi d'un SMS | AT+CMGS= « +32477661111 » | |
Affiche l'invite de saisie du message | > | |
Saisie le message puis retour à la ligne | > Envoi d'un message depuis | |
Affiche l'invite de saisie du message (2ieme ligne) | > | |
Saisie de la 2ieme ligne puis retour à la ligne | > mon Raspberry Pi | |
Affiche l'invite de saisie du message (3ieme ligne) | > | |
Presser CTRL + Z sur ligne vide pour achever le message | > CTRL + Z | |
Message spontané : Message Store #5 | +CMGS: 5 | |
Message spontané : ligne vide | ||
Commande acceptée (et message envoyé) | OK |
Réalisé par Meurisse D. pour MCHobby.be
Traduit avec l'autorisation de Geek On Fire - Translated with the permission from Geek On Fire - [1]
Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : « Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.
L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.