Mise à jour de 'IDF ESP'
parent
eaa6bf560e
commit
45c3071bea
66
IDF-ESP.md
66
IDF-ESP.md
|
@ -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>
|
||||
```
|
Loading…
Reference in a new issue