Le but de cette page est de rassembler quelques liens utilies pour les TP et le projet liés à mes enseignements autour de l'IoT.
Les environnements de développement
Je fais le choix d'utiliser des plateformes qui se programment au travers des mêmes environnements, ceux utilisés en particulier pour le développement sur Arduino.
IDE Arduino
Puisque l'on profite de l'écosystème Arduino, il semble logique d'utiliser l'IDE dédiée.
C'est un excellent compromis qui ne nécessite pas une longue phase de prise en main.
L'installation est assez simple. Sur Linux, par exemple, après avoir téléchargé l'archive depuis cette page, on utilisera les commandes suivantes
$ tar xvf arduino-1.8.16-linux64.tar.xz
$ cd arduino-1.8.16
$ ./install.sh
On trouvera une documentation sur cette page.
Pour une manipulation plus efficace et/ou le développement de plus gros projets, une solution en ligne de commande, ou au contraire fondée sur une IDE plus avancée peut se révéler utile.
PlatformIO
Je préfère largement utiliser PlatformIO dont vous trouverez la documentation ici.
Cet environnement peut s'utiliser en ligne de commande
(essentiellement autour de la commande pio) mais également
intégré dans les éditeurs ou des IDE plus évolués (tels que Vim, Emacs,
Atom, vsvode ou encore Eclipse, ...)
Quelques commandes utiles pour survivre
- Création d'un projet
toto
mkdir toto
cd toto
pio project init
Le type de carte peut être spécifié (--board ttgo-lora32-v2)
Le fichier principal est alors src/main.cpp (à créer).
La configuration est dans platformio.ini (créé).
- Compilation du code
pio run
En cas de cibles multiples, on peut préciser laquelle on souhaite
(--target ttgo-lora32-v2).
- Recherche d'une librairie manquante
pio lib search lmic
- Installation de la librairie identifiée par son numéro
pio lib install 5774
Les librairies
Les librairies LoRa[WAN]
On trouvera ici un petit résumé de ce qui existe (en 2019 au moins).