Installation des Logiciels
Ce chapitre détaille l’installation complète de l’environnement de développement Arduino et la programmation du firmware du Mk2PVRouter.
- ⏱️ Temps estimé :
Débutant : 2-3 heures
Expérimenté : 1-2 heures
Installation Pilotes FTDI
Les pilotes FTDI sont OBLIGATOIRES pour communiquer avec le routeur via le programmateur USB.
Important
Sans ces pilotes, l’ordinateur ne détectera pas le routeur !
🪟 Windows
Ouvrir le navigateur : https://ftdichip.com/drivers/vcp-drivers/
Cliquer sur « Windows » dans la colonne « Available Drivers »
Télécharger la dernière version (fichier .exe)
Exécuter le fichier téléchargé en tant qu’administrateur (clic droit → « Exécuter en tant qu’administrateur »)
Suivre l’assistant d’installation
Redémarrer l’ordinateur après l’installation
Vérification
Connecter l’adaptateur FTDI à un port USB
Ouvrir le Gestionnaire de périphériques (Win + X → Gestionnaire de périphériques)
Développer « Ports (COM et LPT) »
Vérifier la présence de « USB Serial Port (COMx) » où x est un numéro
Noter le numéro COMx (exemple : COM3, COM4)
🍎 macOS
Les pilotes FTDI sont généralement inclus dans macOS moderne.
Vérification
Connecter l’adaptateur FTDI à un port USB
Ouvrir un terminal
Taper la commande :
ls /dev/tty.*Rechercher une ligne contenant tty.usbserial (exemple : /dev/tty.usbserial-A50285BI)
Si aucun périphérique n’apparaît
Télécharger les pilotes sur https://ftdichip.com/drivers/vcp-drivers/
Choisir la version macOS
Installer le fichier .dmg
Redémarrer le Mac
🐧 Linux
Les pilotes FTDI sont généralement inclus dans le noyau Linux.
Vérification
lsusb
Rechercher une ligne contenant « FTDI » ou « Future Technology Devices ».
Si le pilote n’est pas chargé
sudo modprobe ftdi_sio
Ajouter l’utilisateur au groupe dialout
sudo usermod -a -G dialout $USER
sudo reboot
Note
Le redémarrage est nécessaire pour que les changements prennent effet.
Choix de l’Environnement de Développement
Vous avez deux options pour programmer le Mk2PVRouter :
- Option A : Arduino IDE (recommandé pour les débutants)
Configuration manuelle nécessaire (C++17, bibliothèques)
Suivre les sous-sections de l”Option A ci-dessous
- Option B : PlatformIO (recommandé pour les utilisateurs avancés)
Support C++17 natif (pas de configuration manuelle)
Suivre les sous-sections de l”Option B” ci-dessous
Note
Vous pouvez choisir l’une ou l’autre option, ou même installer les deux environnements si vous le souhaitez.
Option A : Installation avec Arduino IDE
Installation Arduino IDE
L’Arduino IDE est le logiciel qui permet de programmer le routeur.
🪟 Windows
Téléchargement
Ouvrir le navigateur web : https://www.arduino.cc/en/software
Cliquer sur « Windows Win 10 and newer » (fichier .exe ou .zip)
⚠️ NE PAS télécharger la version « Windows app » (incompatibilités connues)
Attendre la fin du téléchargement (~200 MB)
Installation
Double-cliquer sur le fichier téléchargé (arduino-ide-xxxx.exe)
Accepter la licence
IMPORTANT : Cocher « Install USB drivers » et tous les composants
Choisir le répertoire d’installation (laisser par défaut : C:\Program Files\Arduino)
Cliquer sur « Install »
Attendre la fin de l’installation (5-10 minutes)
Laisser l’installateur créer les raccourcis sur le bureau
Note
Si Windows affiche un avertissement de sécurité, cliquer sur « Exécuter quand même ». Le logiciel Arduino est sûr et largement utilisé.
🍎 macOS
Téléchargement
Ouvrir le navigateur web : https://www.arduino.cc/en/software
Cliquer sur « macOS » (fichier .dmg)
Attendre la fin du téléchargement
Installation
Ouvrir le fichier .dmg téléchargé
Glisser l’icône Arduino dans le dossier Applications
Attendre la copie des fichiers
Éjecter l’image disque
Note
Au premier lancement, macOS peut demander l’autorisation d’ouvrir l’application. Cliquer sur « Ouvrir » dans la fenêtre de sécurité.
Linux (Ubuntu/Debian)
Méthode recommandée : AppImage
Ouvrir le navigateur web : https://www.arduino.cc/en/software
Télécharger la version « Linux AppImage »
Ouvrir un terminal
Rendre le fichier exécutable :
cd ~/Téléchargements chmod +x arduino-ide-*-linux-x64.AppImage ./arduino-ide-*-linux-x64.AppImage
Alternative : Installation via le gestionnaire de paquets
sudo apt update
sudo apt install arduino
Avertissement
La version des dépôts peut être ancienne. Privilégier l’AppImage pour avoir la dernière version.
Configuration Arduino IDE pour C++17
Avertissement
ÉTAPE OBLIGATOIRE — Le firmware nécessite le support C++17.
Sans cette modification, la compilation échouera avec des erreurs incompréhensibles !
Le firmware du Mk2PVRouter utilise des fonctionnalités modernes du C++ (C++17) qui ne sont pas activées par défaut dans Arduino IDE.
Localisation du fichier platform.txt
Le fichier à modifier se trouve à différents emplacements selon le système d’exploitation :
Windows
Deux emplacements possibles :
C:\Program Files (x86)\Arduino\hardware\arduino\avr\platform.txt
%LOCALAPPDATA%\Arduino15\packages\arduino\hardware\avr\x.y.z\platform.txt
(remplacer x.y.z par la version installée, exemple : 1.8.6)
macOS
/Users/[nom_utilisateur]/Library/Arduino15/packages/arduino/hardware/avr/1.8.6/platform.txt
Note
Le dossier Library peut être caché. Pour y accéder :
Dans le Finder, menu « Aller » → maintenir Option → cliquer sur « Bibliothèque »
Ou taper dans le terminal :
open ~/Library/Arduino15/packages/arduino/hardware/avr/
Linux
~/.arduino15/packages/arduino/hardware/avr/1.8.6/platform.txt
Modification du fichier
Faire une copie de sauvegarde du fichier platform.txt (exemple : platform.txt.bak)
# Linux/macOS cp platform.txt platform.txt.bak
Ouvrir le fichier platform.txt avec un éditeur de texte (Notepad++, nano, gedit, etc.)
Rechercher la ligne contenant :
"-std=gnu++11"
Remplacer par :
"-std=gnu++17"
Sauvegarder le fichier
Redémarrer Arduino IDE pour que le changement soit pris en compte
Astuce
Si vous ne trouvez pas le fichier, ouvrez Arduino IDE, allez dans Fichier → Préférences, et regardez l’emplacement du « Dossier de Sketchbook ». Le fichier platform.txt est généralement dans un sous-dossier relatif à cet emplacement.
Installation des Bibliothèques
Le firmware nécessite plusieurs bibliothèques externes.
Ouvrir le Gestionnaire de bibliothèques
Lancer Arduino IDE
Menu : Outils → Gérer les bibliothèques…
Une fenêtre « Gestionnaire de bibliothèques » s’ouvre
Installation de ArduinoJson
Dans le champ de recherche, taper : ArduinoJson
Trouver la bibliothèque « ArduinoJson » par Benoit Blanchon
⚠️ IMPORTANT : Installer la version 6.x (PAS la version 7 !)
Version 6.21.5 recommandée
La version 7 est incompatible avec l’ATmega328P
Cliquer sur « Installer »
Avertissement
Ne pas installer ArduinoJson version 7.x — elle ne fonctionnera pas sur l’ATmega328P !
Installation de OneWire
Cette bibliothèque gère les sondes de température (optionnelles).
Dans le champ de recherche, taper : OneWire
Trouver « OneWire » par Paul Stoffregen
⚠️ Installer la version 2.3.7 ou supérieure
Cliquer sur « Installer »
Vérification
Menu : Croquis → Inclure une bibliothèque
Vérifier la présence de : ArduinoJson, OneWire
Astuce
Si les bibliothèques n’apparaissent pas, redémarrer Arduino IDE.
✅ Configuration Arduino IDE terminée ! Passez maintenant aux étapes spécifiques à votre version monophasé ou triphasé).
Option B : Installation avec PlatformIO
Pour les Utilisateurs Avancés
PlatformIO est un environnement de développement plus complet que l’Arduino IDE.
Avantages
Gestion automatique des bibliothèques (ArduinoJson, OneWire, U8g2…)
Support C++17 natif (pas besoin de modifier platform.txt)
Compilations plus rapides
Meilleure intégration avec Git
Débogage avancé
Important
Avec PlatformIO, aucune configuration manuelle n’est nécessaire.
Vous n’avez PAS besoin de : - Configurer C++17 manuellement (voir ci-dessus) - Installer les bibliothèques manuellement (voir ci-dessus)
Tout est géré automatiquement par PlatformIO !
Installation Visual Studio Code
Visual Studio Code est l’éditeur de code qui hébergera PlatformIO.
Windows
Ouvrir le navigateur web : https://code.visualstudio.com/
Cliquer sur « Download for Windows »
Double-cliquer sur le fichier téléchargé (VSCodeSetup-xxx.exe)
Accepter la licence
Recommandé : Cocher toutes les options additionnelles :
Ajouter à PATH
Créer une icône sur le bureau
Ajouter l’action « Ouvrir avec Code » au menu contextuel
Cliquer sur « Installer »
Attendre la fin de l’installation
Lancer VS Code
macOS
Ouvrir le navigateur web : https://code.visualstudio.com/
Cliquer sur « Download for Mac »
Ouvrir le fichier .zip téléchargé
Glisser Visual Studio Code.app dans le dossier Applications
Lancer VS Code depuis le dossier Applications
Linux (Ubuntu/Debian)
Méthode 1 : Installation via le site officiel (recommandé)
Ouvrir le navigateur web : https://code.visualstudio.com/
Cliquer sur « .deb » (pour Ubuntu/Debian)
Installer le paquet téléchargé :
sudo dpkg -i code_*.deb sudo apt-get install -f
Méthode 2 : Installation via le gestionnaire de paquets
sudo apt update
sudo apt install code
Installation PlatformIO IDE
PlatformIO s’installe comme une extension dans Visual Studio Code.
Installation de l’Extension
Ouvrir Visual Studio Code
Cliquer sur l’icône Extensions dans la barre latérale gauche (ou Ctrl+Shift+X / Cmd+Shift+X)
Dans le champ de recherche, taper : PlatformIO IDE
Trouver l’extension « PlatformIO IDE » par PlatformIO
Cliquer sur « Install »
Attendre la fin de l’installation (peut prendre 2-5 minutes)
Une fois terminé, cliquer sur « Reload » pour redémarrer VS Code
Note
Au premier lancement après installation, PlatformIO téléchargera des outils supplémentaires. Cela peut prendre quelques minutes. Soyez patient !
Vérification de l’Installation
Après le redémarrage de VS Code :
Une icône PlatformIO (alien/extraterrestre) devrait apparaître dans la barre latérale gauche
Cliquer sur cette icône ouvre le PIO Home
Si vous voyez le PIO Home, l’installation est réussie !
Ouverture du Projet
Dans PIO Home, cliquer sur « Open Project »
Naviguer vers le dossier du firmware :
Mono : PVRouter-1-phase-main/Mk2_fasterControl_Full/
Tri : PVRouter-3-phase-main/Mk2_3phase_RFdatalog_temp/
PlatformIO détecte automatiquement le fichier platformio.ini
Le projet s’ouvre avec tous les fichiers visibles dans l’explorateur
Configuration du Projet
PlatformIO télécharge automatiquement :
Le compilateur AVR-GCC avec support C++17
Les bibliothèques nécessaires (ArduinoJson 6.x, OneWire, U8g2…)
Les outils de programmation
Note
Le premier téléchargement des dépendances peut prendre 5-10 minutes selon votre connexion Internet. PlatformIO affiche la progression dans le terminal intégré.
Compilation et Téléversement
Connecter le routeur via l’adaptateur FTDI (voir étapes communes dans la version-specific include)
Dans la barre inférieure de VS Code, cliquer sur l’icône « Upload » (→)
PlatformIO compile automatiquement et téléverse le firmware
Surveiller le terminal pour les messages de progression
Sélection de la Configuration
Le firmware contient plusieurs environnements préconfigurés :
env:release : Version normale
env:temperature : Version avec support sondes de température
env:debug : Version avec messages de débogage supplémentaires
Pour changer d’environnement :
Cliquer sur le sélecteur d’environnement dans la barre inférieure
Choisir la configuration désirée
Recompiler le projet
Astuce
PlatformIO est recommandé pour les utilisateurs avancés qui développent ou modifient le firmware. Pour un usage standard, Arduino IDE suffit amplement.
✅ Configuration PlatformIO terminée ! Passez maintenant aux étapes spécifiques à votre version (monophasé ou triphasé).