Mise à jour de 'IDF ESP'

bastien 2023-05-23 10:57:35 +02:00
parent eaa6bf560e
commit 45c3071bea

@ -4,81 +4,79 @@
Pour commencer, il faut installer toutes les dépendances dont on aura besoin :
<pre><code class="shell">
```
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
</code></pre>
```
Ensuite, on vérifie que python3 est bien installé avec :
<pre><code class="python">
```
python3 --version
</code></pre>
```
Ensuite, on va créer un dossier ou l'on va mettre dans idf :
<pre><code class="shell">
```
mkdir -p ~/esp
cd ~/esp
git clone --recursive https://github.com/espressif/esp-idf.git
</code></pre>
```
Ensuite, on installe les dépendances pour l'esp32 :
<pre><code class="shell">
```
cd ~/esp/esp-idf
./install.sh esp32
</code></pre>
```
Ensuite, on va mettre en place les variables d'environnements :
<pre><code class="shell">
```
. $HOME/esp/esp-idf/export.sh
</code></pre>
```
Et on ajoute un alias dans notre fichier bashrc/zshrc :
<pre><code class="shell">
```
alias get_idf='. $HOME/esp/esp-idf/export.sh'
</code></pre>
```
Une fois cette commande lancée, une série de commandes va être demandée d'être lancé :
<pre><code class="shell">
```
get_idf
idf.py build
idf.py flash
</code></pre>
```
### [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 :
<pre><code class="shell">
```
cd ~/esp
cp -r ~/esp/esp-idf/examples/get-started/hello_world .
</code></pre>
```
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) :
<pre><code class="shell">
```
cd ~/esp/hello_world
idf.py set-target esp32
idf.py menuconfig
</code></pre>
```
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".
Une fois toute la configuration effectuée, nous pouvons construire notre projet :
<pre><code class="shell">
```
idf.py build
</code></pre>
```
Ensuite flasher la carte :
<pre><code class="shell">
```
idf.py -p PORT flash # Si le port n'est pas précisé il tentera de se connecter automatiquement sur les ports USB disponibles
</code></pre>
```
Pour vérifier que tous a bien marché, on va regarder la sortie :
<pre><code class="shell">
```
$ idf.py -p <PORT> monitor # Port obligatoire pour cette commande généralement /dev/ttyUSB0
</code></pre>
```
Si tout va bien, ceux-ci devraient apparaitre :
<pre><code class="shell">
...
```
...
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
@ -86,22 +84,20 @@ Minimum free heap size: 298968 bytes
Restarting in 9 seconds...
Restarting in 8 seconds...
Restarting in 7 seconds...
</code></pre>
```
**Si vous avez une erreur telle que :**
-port inexistant
-port introuvable
Il faut lancer cette commande :
<pre><code class="shell">
```
sudo usermod -aG dialout "votre utilisateur"
</code></pre>
```
Après cette commande, redémarrer votre ordinateur.
## Commandes utiles
<pre><code class="shell">
```
idf.py add-dependency esp_wrover_kit # Ajout de dépendance
idf.py -p PORT erase-flash # Efface le flash de la carte
</code></pre>
```