RASP-GOF-GSM-GPRS-UART

De MCHobby - Wiki
Aller à : navigation, rechercher

MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

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.

RASP-GSM-GPRS bb.jpg

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

RASP-GOF-GSM-GPRS-UART-01.jpg

Activer le module GPRS

Pressez ensuite le bouton d'activation du module GPRS pour l'activer.

RASP-GOF-GSM-GPRS-UART-02.jpg

Si votre module est allumé alors:

  • La led PWR: Alimentation (Vert) est allumée.
  • La led Statut: Bleu est allumée.
  • La led Netlight: Réseau Rouge clignote.
GSM-Shield-02-fr.jpg

Dans le même temps, vous devriez voir apparaitre les premiers messages AT en provenance du module GPRS

RASP-GOF-GSM-GPRS-UART-03.jpg

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=1234
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
Envoyons donc un SMS vers le module GSM/GPRS
RASP-GOF-GSM-GPRS-UART Send SMS to GSM-GPRS.jpg
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
RASP-GOF-GSM-GPRS-UART Received SMS from GSM-GPRS.jpg

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.