diff --git a/IDF-ESP.md b/IDF-ESP.md new file mode 100644 index 0000000..e49792c --- /dev/null +++ b/IDF-ESP.md @@ -0,0 +1,106 @@ +h1. Documentation esp-idf + +h2. "Installation esp-idf":https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/linux-macos-setup.html#step-1-install-prerequisites + +Pour commencer, il faut installer toutes les dépendances dont on aura besoin : + +
+sudo apt-get install git wget flex bison gperf python3 python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
+
+
+Ensuite, on vérifie que python3 est bien installé avec :
+
+python3 --version
+
+
+Ensuite, on va créer un dossier ou l'on va mettre dans idf :
+
+
+mkdir -p ~/esp
+cd ~/esp
+git clone --recursive https://github.com/espressif/esp-idf.git
+
+
+Ensuite, on installe les dépendances pour l'esp32 :
+
+cd ~/esp/esp-idf
+./install.sh esp32
+
+
+Ensuite, on va mettre en place les variables d'environnements :
+
+. $HOME/esp/esp-idf/export.sh
+
+
+Et on ajoute un alias dans notre fichier bashrc/zshrc :
+
+alias get_idf='. $HOME/esp/esp-idf/export.sh'
+
+
+Une fois cette commande lancée, une série de commandes va être demandée d'être lancé :
+
+get_idf
+idf.py build
+idf.py flash
+
+
+h3. "Création d'un projet":https://docs.espressif.com/projects/esp-idf/en/latest/esp32/get-started/linux-macos-setup.html#step-5-first-steps-on-esp-idf
+
+Pour l'exemple, nous allons lancer de base de l'idf espressif hello_world :
+
+cd ~/esp
+cp -r ~/esp/esp-idf/examples/get-started/hello_world .
+
+
+Ensuite, nous allons cibler la carte et si l'on souhaite modifier la configuration de base (ceux-ci n'est pas nécessaire pour le projet hello_world) :
+
+cd ~/esp/hello_world
+idf.py set-target esp32
+idf.py menuconfig
+
+
+Un menu comme ci-dessous apparait pour modifier la configuration si besoin, mais comme ce n'est pas le cas pour nous, il suffit de quitter en appuyant sur "q" :
+!project-configuration.png!
+
+Une fois toute la configuration effectuée, nous pouvons construire notre projet :
+
+idf.py build
+
+
+Ensuite flasher la carte :
+
+idf.py -p PORT flash # Si le port n'est pas précisé il tentera de se connecter automatiquement sur les ports USB disponibles
+
+
+Pour vérifier que tous a bien marché, on va regarder la sortie :
+
+$ idf.py -p monitor # Port obligatoire pour cette commande généralement /dev/ttyUSB0
+
+
+Si tout va bien, ceux-ci devraient apparaitre :
+
+ ...
+ Hello world!
+ Restarting in 10 seconds...
+ This is esp32 chip with 2 CPU core(s), WiFi/BT/BLE, silicon revision 1, 2 MB external flash
+Minimum free heap size: 298968 bytes
+ Restarting in 9 seconds...
+ Restarting in 8 seconds...
+ Restarting in 7 seconds...
+
+
++Si vous avez une erreur telle que :+
+-port inexistant
+-port introuvable
+
+Il faut lancer cette commande :
+
+sudo usermod -aG dialout "votre utilisateur"
+
+
+h2. Commandes utiles
+
+
+idf.py add-dependency esp_wrover_kit # Ajout de dépendance
+idf.py -p PORT erase-flash # Efface le flash de la carte
+
\ No newline at end of file