Nous ajoutons une autre brique à notre édifice d’objets connectés avec un article qui vous permettra de brancher votre materiel à Sigfox, le réseau de données cellulaires économique conçu pour l’Internet of Things.
Vous n’avez que 10 minutes ? C’est largement suffisant pour compléter ce tutoriel.
Plus d’informations sur les ingrédients :
Pour démarrer cette série sur les méthodes de communication entre les objets connectés et leur backend, intéressons-nous à une innovation franco-française, j’ai nommé le réseau Sigfox. Opérationnel sur la quasi totalité du territoire, c’est le candidat idéal pour démarrer nos expérimentations.
Lien vers la théorie
Si vous voulez vous familiariser avec les réseau de communication dédiés à l’IoT, en particulier les LPWAN et en particulier Sigfox, n’hésitez pas à lire l’excellent article théorique qui leur est dédié.
Internet of Things : Connecter vos capteurs aux réseaux IoT !
Branchement : rien de compliqué
Une fois le matériel acquis, il n’y a rien de bien compliqué pour réaliser le montage. Le bridge Arduino se branche directement sur les broches GPIO du Raspberry Pi, et le module Sigfox va se clipper sur ce même bridge. Le plus dur est peut-être de visser l’antenne ! Bien sûr, ce branchement est plus sûr lorsque le Pi n’est pas alimenté (ça va mieux en le disant).
Modifications à réaliser sur le Pi
La documentation du fournisseur du bridge est extrêmement didactique et bien réalisée.
Nous attirons néanmoins votre attention sur un point spécifique : pensez à bien commenter toutes les lignes du fichier /etc/inittab contenant la mention ttyAMA0. Sans cela, votre modem sera inopérant.
Et comme nous n’aimons pas faire les choses à moitié, nous avons porté ce tutoriel intégralement sur Ansible. Vous trouverez donc sur notre GitHub un script qui permet de réaliser ces modifications en une ligne de commande.
MacBook-Pro:~ plopez$ ansible-playbook -i hosts piSigfox.yml
Obtenir un abonnement Sigfox
Si vous avez acquis un modem Libellium, vous êtes l’exception. En effet, Libellium est actuellement le seul distributeur de modem Sigfox ne venant pas directement avec un abonnement ad-hoc.
Néanmoins, pas de soucis : vous pouvez activer votre abonnement en échangeant avec devrelations@sigfox.com. Ils sont extrêmement réactifs et sont là pour vous aider tout au long du processus.
À terme, tous les kits Sigfox devraient être auto-activables via un backend dédié, fourni par Sigfox.
Commencez à tester votre modem
Obtenir l’ID du modem
Nous allons pas à pas découvrir Sigfox.
Une fois encore, nous nous sommes fortement inspirés des scripts mis à disposition par Cooking Hacks.
Première étape, connecter le modem au réseau et obtenir son ID. Pour cela, il vous suffit de compiler et d’exécuter le script 00-get_sigfox_modem_id.cpp
MacBook-Pro:~ plopez$ ssh pi@<pi> pi@raspberrypi:~ $ cd sigfox/ pi@raspberrypi:~/sigfox $ make TARGET=00-get_sigfox_modem_id pi@raspberrypi:~/sigfox $ sudo ./00-get_sigfox_modem_id Switch ON OK Get ID OK Module ID: 1C69C
L’id obtenu via le code doit correspondre avec l’ID affiché sur votre puce :
Envoyer mon premier message
Si votre abonnement est validé, vous devriez pouvoir envoyer votre premier message :
pi@raspberrypi:~/sigfox $ make TARGET=01-send_sigfox_dummy_data pi@raspberrypi:~/sigfox $ sudo ./01-send_sigfox_dummy_data Switch ON OK Sigfox packet sent OK
Si tout s’est bien passé, vous devriez maintenant retrouver votre premier message coté Sigfox. En premier lieu, votre device apparait maintenant dans la liste de vos modules :
Et vous devriez voir votre message :
Notez bien que la taille du tableau envoyé doit être inférieure à 12 octets, comme le spécifie la norme.
Conclusion
Félicitations, vous avez franchi la première étape vers Sigfox. Mais nous sommes loin d’avoir exploité toute la puissance du réseau, notamment en ce qui concerne les callbacks, et les downlinks. Mais gardons en un peu sous le coude pour plus tard !