Dépendances de bibliothèques du sketch

Les bibliothèques Arduino attendues par le firmware de la sonde, les pièges de versions et comment reproduire une compilation qui fonctionne.

Vue de dessus d’une carte microcontrôleur Arduino Uno bleue sur fond blanc
Les cartes compatibles Arduino exécutent le sketch qui interroge les sondes et publie le JSON. Photo : Wikimedia Commons contributor. CC0

Le sketch du garage n’est pas autonome : il s’appuie sur les pilotes DHT d’Adafruit ou de la communauté, la bibliothèque LiquidCrystal standard et l’ancienne pile Ethernet des shields W5100. Lors de précédentes mises en service, des changements de version majeure de bibliothèques ont cassé des constructeurs et des noms d’énumérations. Documenter les dépendances permet de recompiler dans cinq ans, quand l’ordinateur d’origine aura disparu.

Blocs de dépendances reliant les bibliothèques DHT, LiquidCrystal et Ethernet au sketch principal
Les principales bibliothèques tierces fournissent le protocole du capteur, le pilotage du LCD et les entrées/sorties réseau du W5100.

Bibliothèques principales

  • DHT sensor library : lectures à un fil avec garde-fous de timing.
  • LiquidCrystal : mode LCD parallèle 4 bits utilisé en local.
  • Ethernet. Pile compatible W5100 pour le service HTTP.

Procédure d’installation

  1. Utilisez le gestionnaire de bibliothèques ou le ZIP du fabricant, en notant les versions figées dans le README de votre dépôt.
  2. Compilez un exemple connu pour chaque bibliothèque avant de l’intégrer au sketch des sondes.
  3. Après une mise à jour, revérifiez la mise en page du LCD et le schéma JSON.

L’alternative PlatformIO

PlatformIO fige les versions dans platformio.ini : excellent pour la reproductibilité. Dans les deux cas, partez de la configuration de l’IDE Arduino. Comportement du capteur en détail : présentation du DHT22.