Dans l’article précédent, je vous avais montré comment installer un petit client MQTT et utiliser un courtier (broker) préimplanté pour envoyer des messages. Pour ce client j’avais choisi la bibliothèque M2Mqtt pour .NET/C#. Le site officiel MQTT offre des bibliothèques open source pour de très nombreux langages, j’aurais aussi pu choisir l’un d’entre eux. Vous pouvez utiliser mon client pour envoyer des messages depuis votre PC vers n’importe quel autre PC. Si vous le faites, je trouve pratique de choisir son propre prénom comme Topic to publish et d’utiliser celui du destinataire comme Topic to subscribe.
 
Cela dit ce n’était peut-être pas exactement le genre d’application que vous pensiez voir associée à l’Internet des Objets. Je vous propose donc maintenant de commander une lampe via Internet. Une lampe idéale serait bien sûr une lampe dont les fils ne nous encombreraient pas, autrement dit qui puisse être commandée par liaison radio. De mon côté le labo Elektor disposait heureusement de tout ce qu’il fallait comme matériel et logiciel pour mener à bien mon essai.
 
J’ai commencé par ajouter une petite extension à mon client MQTT. Auparavant le message envoyé dans le réseau réapparaissait dans la boîte Received text, désormais il est aussi envoyé par le port USB du PC (une boîte de sélection permet de choisir le port COM virtuel). Une carte Arduino (ou similaire) et un câble FTDI permettent donc de transmettre les données sérielles du port USB. J’ai opté pour la carte SAM D20 que nous avions utilisée pour le cours ARM pour néophytes. La carte « SAM D20 vers Gnublin/EEC » est connectée via l’adaptateur EEC. Le logiciel de démo qui accompagne l’article du lien précédent s’exécute sur la SAM D20, et sait interpréter une séquence d’octets comme « R 0 x + » (où x = 0 à 7) commandant l’activation du relais x.