Les articles de Hackable N°23

Image promotionnelle
Connectez votre Arduino au réseau mobile
Article mis en avant

Connectez votre Arduino au réseau mobile

Faire communiquer un projet n'est pas toujours facile. En fonction des contraintes et de l'environnement, les moyens de communication peuvent drastiquement se réduire. On passe alors du réseau local et du wifi privé, au wifi public, puis aux solutions comme LoRaWAN et Sigfox, pour enfin arriver, souvent par dépit, à la connectivité 4G, 3G ou tout simplement GPRS. Mais, dès lors qu'on écarte la notion de débits importants, connecter son projet via un réseau mobile peut être intéressant financièrement et pratiquement.
Les choses dont on ne se doute pas... Il existe toujours un décalage entre la réalité et la perception de la réalité, c'est un fait (ou une réalité). Et la plupart des décisions sont prises sur la base de cette perception. Dans ce registre d'idées, nous pouvons classer bon nombre de choses, mais dès lors qu'il s'agit de technologie, le décalage devient souvent très important.
Le fait qu'une jeune société française propose un matériel technologiquement intéressant n'est pas fréquent. Que ce produit soit open source l'est encore moins, mais qu'il s'agisse d'un secteur où il ne se passe pas grand-chose depuis des années est d'une rareté incroyable. C'est pourtant ce qui est arrivé avec la société NumWorks fabriquant et commercialisant une calculatrice scientifique graphique couleur pour moins de 80€. Voyons cela de plus près...
... et de (presque) n'importe quel autre périphérique offrant une sortie HDMI. Enregistrer l'image à l'écran sur une Raspberry Pi n'est pas très difficile, un simple utilitaire de capture d'écran fera l'affaire. Mais qu'en est-il du mode console, du démarrage ou encore des incrustations comme celles produites par la RaspiCam ? La même question se pose si vous souhaitez faire de même sur PC ou Mac, où encore sur une console de jeu, avec ou sans upscaler. La solution est normalement fournie par l'achat d'un périphérique de capture vidéo, mais il existe une solution plus économique : un transmetteur HDMI/Ethernet + VLC (+ un peu de bidouille).
L'une des grosses nouveautés introduites avec les cartes et modules ESP32, que ce soit en comparaison des cartes Arduino ou des modules à base d'ESP8266 est, à mon avis, la présence de deux cœurs dans la puce ESP32. En d'autres termes, vous avez deux « processeurs » identiques capables de faire fonctionner indépendamment deux morceaux de codes différents, en parallèle de façon simultanée. Voyons ensemble comment cela fonctionne et ce que cela implique réellement pour nous, programmeurs.
Afin de prendre en main concrètement votre tout nouveau shield ou module/carte à base de SIM900/SIM800, il est temps de passer à une utilisation pratique et réelle. Nous allons ici faire reposer notre projet Arduino, non pas directement sur le jeu de commandes Hayes à notre disposition, mais sur une bibliothèque mise à disposition par l'un des fabricants. Comme vous allez le constater, ceci peut être à la fois un avantage et une limitation dans nos travaux.
Proposé discrètement depuis 2016 sous Windows 10 en option accessible uniquement en mode développeur, Windows Subsystem for Linux (ou WSL) est dès maintenant activable par tous en quelques clics. Voici ce que promet la nouvelle fonctionnalité de l’OS de Microsoft : un shell bash, la possibilité de faire exécuter des binaires Linux ELF64 sous Windows sans recompilation, la disponibilité de plusieurs distributions GNU/Linux (trois pour le moment) avec leur système de package et l’accès direct aux dépôts natifs, tout cela sans quitter Windows [1].  Désormais, l’éditeur de Redmond met à disposition sur un plateau un environnement Ubuntu parfaitement opérationnel, sans double boot et sans machine virtuelle, accessible en tapant simplement la commande bash depuis CMD ou PowerShell. Une proposition alléchante pour les amateurs de Raspberry Pi et autres micro-machines habitués à développer sous Raspbian, Armbian ou toute autre distribution GNU/Linux.
Mais qui aurait l'idée saugrenue de fabriquer aujourd'hui une carte mère d'un ordinateur dont la première apparition date d'il y a 35 ans ? Pourquoi, et surtout, qui achèterait une chose pareille ? Les réponses dans l'ordre sont, la société allemande Individual Computers, pour revivre sa passion des débuts tout en profitant des avantages des technologies récentes et... moi bien sûr ! Voyons ensemble le pourquoi, le comment et le combien (aïe !).
Il est temps de passer aux choses sérieuses et de mêler le meilleur de deux mondes, avec d'un côté un processeur qui peut être appréhendé et mis en œuvre relativement facilement et de l'autre la souplesse et la convivialité d'un langage tel que le C. Notre réalisation est encore modeste et nous allons approcher la limite du possible dans cet article, mais ceci jettera les bases pour des expérimentations futures plus poussées. Au boulot !