{"id":1376,"date":"2019-06-02T23:48:30","date_gmt":"2019-06-02T21:48:30","guid":{"rendered":"http:\/\/pila.fr\/wordpress\/?p=1376"},"modified":"2019-08-26T11:49:29","modified_gmt":"2019-08-26T09:49:29","slug":"esp32-un-script-bash-pour-parametrer-les-variables-denvironnement","status":"publish","type":"post","link":"https:\/\/pila.fr\/wordpress\/archives\/1376","title":{"rendered":"ESP32 : Un script bash pour param\u00e9trer les variables d&rsquo;environnement"},"content":{"rendered":"\n<p><strong>Attention : valable uniquement pour les versions de ESP-IDF non bas\u00e9es sur CMAKE ( versions &lt; 4.0 )<\/strong><\/p>\n\n\n\n<p>Travaillant actuellement sur un projet n\u00e9cessitant une interface audio en bluetooth, je me suis tourn\u00e9 vers la solution la plus en vogue, l&rsquo;ESP32.<\/p>\n\n\n\n<p>Embarquant Wifi, Bluetooth (dont BLE), un CPU dual core avec 4 Mo de Flash, mais \u00e9galement tr\u00e8s abordable, il dispose \u00e9galement d&rsquo;un SDK enti\u00e8rement open-source, tr\u00e8s bien document\u00e9 !<\/p>\n\n\n\n<p>La proc\u00e9dure d&rsquo;installation de ce SDK n\u00e9cessitant de modifier certaines variables d&rsquo;environnement ( en particulier la variable PATH ), et n&rsquo;aimant pas modifier des \u00e9l\u00e9ments aussi critiques du syst\u00e8me ( il est possible en modifier de PATH de remplacer certaines commandes du syst\u00e8me \u00e0 l&rsquo;insu de l&rsquo;utilisateur ! ), j&rsquo;ai donc, avant toute exp\u00e9rimentation avec l&rsquo;ESP32, pris le temps d&rsquo;\u00e9crire un petit script bash.<\/p>\n\n\n\n<p>Ce script permet de d\u00e9marrer un nouvel interpr\u00e9teur BASH contenant les variables d&rsquo;environnements permettant le bon fonctionnement du SDK ESP32, sans affecter les variables d&rsquo;environnement utilis\u00e9es par tous les autres terminaux du syst\u00e8me. De plus, il poss\u00e8de un prompt de commande personnalis\u00e9, afin de distinguer rapidement le terminal utilis\u00e9 pour le SDK.<\/p>\n\n\n\n<p>Son contenu, succin, est le suivant :<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">!\/bin\/bash<br> bash --rcfile &lt;(cat ~\/.bashrc; echo 'PS1=\"\\e[33;1mesp32 \\$\\e[0m \"' ; echo 'export PATH=\"$HOME\/esp32\/xtensa-esp32-elf\/bin:$PATH\"' ; echo 'export IDF_PATH=\"$HOME\/esp32\/esp-idf\"')<\/pre>\n\n\n\n<p>Attention : il est suppos\u00e9 que l&rsquo;ensemble des fichiers n\u00e9cessaires au SDK se trouvent dans le dossier ~\/esp32. Si ce n&rsquo;est pas le cas, modifier les chemins en cons\u00e9quence<\/p>\n\n\n\n<p>Il suffit d\u2019ex\u00e9cuter le script pour obtenir un interpr\u00e9teur BASH ad\u00e9quat, et de quitter l&rsquo;interpr\u00e9teur (commande\u00a0\u00bbexit\u00a0\u00bb, ou CTRL+D) pour revenir \u00e0 un terminal normal.<\/p>\n\n\n\n<p>J&rsquo;ai test\u00e9 son fonctionnement quelques heures, et en suis tout \u00e0 fait satisfait. N&rsquo;h\u00e9sitez pas \u00e0 me communiquer tout bug, ou am\u00e9lioration possible !<br><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Attention : valable uniquement pour les versions de ESP-IDF non bas\u00e9es sur CMAKE ( versions &lt; 4.0 ) Travaillant actuellement sur un projet n\u00e9cessitant une interface audio en bluetooth, je me suis tourn\u00e9 vers la solution la plus en vogue, l&rsquo;ESP32. Embarquant Wifi, Bluetooth (dont BLE), un CPU dual core avec 4 Mo de Flash, &hellip; <\/p>\n<p><a class=\"more-link btn\" href=\"https:\/\/pila.fr\/wordpress\/archives\/1376\">Lire la suite<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,8],"tags":[162,160,161],"class_list":["post-1376","post","type-post","status-publish","format-standard","hentry","category-electronique","category-prog","tag-bash","tag-esp32","tag-sdk","item-wrap"],"_links":{"self":[{"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/posts\/1376","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/comments?post=1376"}],"version-history":[{"count":3,"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/posts\/1376\/revisions"}],"predecessor-version":[{"id":1385,"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/posts\/1376\/revisions\/1385"}],"wp:attachment":[{"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/media?parent=1376"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/categories?post=1376"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/pila.fr\/wordpress\/wp-json\/wp\/v2\/tags?post=1376"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}