{"id":6541,"date":"2020-12-05T17:14:10","date_gmt":"2020-12-05T17:14:10","guid":{"rendered":"https:\/\/www.fambach.net\/?p=6541"},"modified":"2020-12-05T17:14:12","modified_gmt":"2020-12-05T17:14:12","slug":"vs-code-espressif-idf","status":"publish","type":"post","link":"https:\/\/www.fambach.net\/en\/vs-code-espressif-idf\/","title":{"rendered":"VS-Code Espressif IDF"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_73 ez-toc-wrap-left counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewbox=\"0 0 24 24\" version=\"1.2\" baseprofile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Verwendet_Versionen\" title=\"Verwendet Versionen\">Verwendet Versionen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Fakten\" title=\"Facts\">Facts<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Anwendungsbereiche\" title=\"Areas of application\">Areas of application<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Ansichten\" title=\"Views\">Views<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Analyse\" title=\"Analyse\">Analyse<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Board_Annotation\" title=\"Board Annotation\">Board Annotation<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Genauer_betrachtet\" title=\"Genauer betrachtet\">Genauer betrachtet<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Mal_Angeschlossen\" title=\"Mal Angeschlossen\">Mal Angeschlossen<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Programmierung\" title=\"Programming\">Programming<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Bibliotheken\" title=\"Libraries\">Libraries<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Testprojekt_erstellen\" title=\"Testprojekt erstellen\">Testprojekt erstellen<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Mit_IDF_und_Konsole\" title=\"Mit IDF und Konsole\">Mit IDF und Konsole<\/a><ul class='ez-toc-list-level-5' ><li class='ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Vorbereitung\" title=\"Preparation\">Preparation<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Zieplattform_festlegen\" title=\"Zieplattform festlegen\">Zieplattform festlegen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Konfigurieren\" title=\"Konfigurieren\">Konfigurieren<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Bauen\" title=\"Bauen\">Bauen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Flashen\" title=\"Flashen\">Flashen<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-5'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Monitoren\" title=\"Monitoren\">Monitoren<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Mit_VS-Code\" title=\"Mit VS-Code\">Mit VS-Code<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Probleme\" title=\"Problems\">Problems<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Fazit\" title=\"Conclusion\">Conclusion<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Verwandte_Beitrage\" title=\"Related Posts\">Related Posts<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/#Quellen\" title=\"Sources\">Sources<\/a><\/li><\/ul><\/nav><\/div>\n\n<p>Hier m\u00f6chte ich die Einrichtung der Espressif IDF f\u00fcr VS-Code unter Windows beschreiben. Ich werde die Installation in Form eine Klickanleitung nur kurz umreissen, wer weiterf\u00fchrende Informationen ben\u00f6tig findet diese auf der Espressif und den anderen unten gelinkten Seiten<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Fakten\"><\/span>Facts<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Wir ben\u00f6tigen:<\/p>\n\n\n\n<ul><li>ESP IDF (Anleitung gibts <a href=\"https:\/\/www.fambach.net\/en\/espressif-idf-fuer-esp32-s2-installieren\/\" data-type=\"post\" data-id=\"6629\">HERE <\/a>)<ul><li>Python<\/li><li>IDF <\/li><li>Umgebungsvariablen<\/li><\/ul><\/li><li>VS-Code Installation (Anleitung gibts <a href=\"https:\/\/www.fambach.net\/en\/vs-code-installation\/\">HERE<\/a> )<\/li><li>Espressif IDF Plugin f\u00fcr VS-Code<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Anwendungsbereiche\"><\/span>Areas of application<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<ul><li>Programmierung aller ESP32<\/li><li>IDF ist aktuell die einzige M\u00f6glichkeit ESP32-S2 und ESP32-S3 Chips zu programmieren<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Installation<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Espressif IDF<\/h3>\n\n\n\n<figure class=\"wp-block-embed-wordpress wp-block-embed is-type-wp-embed is-provider-stefan-039-s-webblog\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"deTy6gONCI\"><a href=\"https:\/\/www.fambach.net\/en\/espressif-idf-fuer-esp32-s2-installieren\/\">Install Espressif IDF for ESP32-S2<\/a><\/blockquote><iframe class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"\u201eInstalling Espressif IDF for ESP32-S2\u201c \u2014 Stefan&#039;s WebBlog\" src=\"https:\/\/www.fambach.net\/espressif-idf-fuer-esp32-s2-installieren\/embed\/#?secret=deTy6gONCI\" data-secret=\"deTy6gONCI\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><figcaption>Installationsanleitung zur Espressif IDF<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">VS-Code Portable Version <\/h3>\n\n\n\n<figure class=\"wp-block-embed-wordpress wp-block-embed is-type-wp-embed is-provider-stefan-039-s-webblog\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"Ai9GxeMRYt\"><a href=\"https:\/\/www.fambach.net\/en\/vs-code-installation\/\">VS Code Installation (Portabel)<\/a><\/blockquote><iframe class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"&#8222;VS Code Installation (Portabel)&#8220; &#8212; Stefan&#039;s WebBlog\" src=\"https:\/\/www.fambach.net\/vs-code-installation\/embed\/#?secret=Ai9GxeMRYt\" data-secret=\"Ai9GxeMRYt\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><figcaption>VS Code Installieren<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Espressif IDF Plugin Installieren<\/h3>\n\n\n\n<p>VS-Code \u00f6ffnen, den Paketmanager anw\u00e4hlen, in der Suchzeile &#8222;Esp idf&#8220; eingeben und das gefunden Plugin ausw\u00e4hlen. Nun mit dem Knopf Install das Plugin installieren.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1025\" height=\"674\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-11-24-21_23_28.jpg\" alt=\"\" class=\"wp-image-6563\"\/><figcaption>VS-Code &#8211; Plugin suchen und installieren<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Espressif IDF konfigurieren<\/h3>\n\n\n\n<p>Nach der installation erscheint ein neues Zeichen mit dem Espressif Logo auf der linken Seite. Dieses ausw\u00e4hlen. Beim ersten Start sollte die Konfiguration ge\u00f6ffnet werden. (Siehe Kapitel Probleme falls die Seite nicht ge\u00f6ffnet oder sp\u00e4ter nochmal ben\u00f6tigt wird). Der Knopf Start, beginnt den Konfigurationsprozess.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"676\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-11-24-21_24_54.jpg\" alt=\"\" class=\"wp-image-6564\"\/><figcaption>VS-Code Espressif Konfiguration &#8211; Einstieg<\/figcaption><\/figure>\n\n\n\n<p>Python Version ausw\u00e4hlen, und mit dem Check knopf best\u00e4tigen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"481\" height=\"451\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-11_08_17.jpg\" alt=\"\" class=\"wp-image-6666\"\/><figcaption>VS-Code Espressif Konfiguration &#8211; Python Auswahl<\/figcaption><\/figure>\n\n\n\n<p>Mit Best\u00e4tigung der &#8222;Configure ESP-IDF&#8220; gehts weiter.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"482\" height=\"451\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-11_09_45.jpg\" alt=\"\" class=\"wp-image-6667\"\/><figcaption>VS-Code Espressif Konfiguration &#8211; Python Verifikation<\/figcaption><\/figure>\n\n\n\n<p>Es ist m\u00f6glich die IDF aus diesem Bildschirm heraus zu installieren. Ich habe dies mit ein paar Versionen versucht, leider ohne Erfolg. Deshalb hatte ich mich dazu enschlossen die IDF vorher zu installieren, um deren Funktion vorab in der Konsole testen zu k\u00f6nnen. Somit muss hier nur der Inatallationspfad der schon vorhandenen Version angegeben werden. Danch den Click Button bet\u00e4tigen. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"482\" height=\"446\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-11_14_43.jpg\" alt=\"\" class=\"wp-image-6668\"\/><figcaption>VS-Code Espressif Konfiguration &#8211; Installierte IDF ausw\u00e4hlen<\/figcaption><\/figure>\n\n\n\n<p>Wenn die IDF gefunden wurde, den Vorgang mit dem GO-Button fortsetzen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"506\" height=\"449\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-11_15_43.jpg\" alt=\"\" class=\"wp-image-6669\"\/><figcaption>VS-Code Espressif Konfiguration &#8211; Ausgew\u00e4hlte IDF \u00dcberpr\u00fcfen<\/figcaption><\/figure>\n\n\n\n<p>Auch die Tools sind schon installiert, somit geht&#8217;s hier mit dem rechten Button weiter. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"506\" height=\"241\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-11_17_20.jpg\" alt=\"\" class=\"wp-image-6670\"\/><figcaption>VS-Code Espressif Konfiguration &#8211; Zur Konfiguration wechseln, Installation \u00fcberspringen<\/figcaption><\/figure>\n\n\n\n<p>Alle Pfade eintragen und mit dem Button unten best\u00e4tigen. <\/p>\n\n\n\n<div class=\"wp-block-file\"><a href=\"https:\/\/www.fambach.net\/wp-content\/uploads\/VS-CodeESPIdfPfade.txt\">Hier meine Pfade zum herunterladen.<\/a><a href=\"https:\/\/www.fambach.net\/wp-content\/uploads\/VS-CodeESPIdfPfade.txt\" class=\"wp-block-file__button\" download>Download<\/a><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"860\" height=\"644\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-11_19_59.jpg\" alt=\"\" class=\"wp-image-6671\"\/><figcaption>VS-Code Espressif Konfiguration &#8211; Pfadeingabe<\/figcaption><\/figure>\n\n\n\n<p>Jede Box sollte einen Harken haben. Und die beiden Pfade untern sollten ein &#8222;zufrieden&#8220; aufweisen \ud83d\ude09 <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"816\" height=\"971\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-11_30_23.jpg\" alt=\"\" class=\"wp-image-6673\"\/><figcaption>VS-Code Espressif Konfiguration &#8211; Verifikation der Pfade<\/figcaption><\/figure>\n\n\n\n<p>Im N\u00e4chten Schritt kann ein Beispiel Programm ausgew\u00e4hlt werden, f\u00fcr uns gehts weiter im Kapitel Programmierung.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Programmierung\"><\/span>Programming<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Bibliotheken\"><\/span>Libraries<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Die IDF bietet alles was zur Programmierung des ESP selbst n\u00f6tig ist.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Test programme<\/h3>\n\n\n\n<p>Entweder als Folgeschritt der Installation oder \u00fcber das Befehlsmen\u00fc ein Tesprogramm aussuchen. Hierzu die F1 Taste dr\u00fccken, &#8222;esp-idf&#8220; in die erscheinende Zeile eintragen und &#8222;Show ESP-IDF Examples Projects&#8220; ausw\u00e4hlen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"503\" height=\"308\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-12_03_14.jpg\" alt=\"\" class=\"wp-image-6674\"\/><figcaption>VS-Code Espressif Test &#8211; Beispiel Programm \u00dcbersicht \u00f6ffnen<\/figcaption><\/figure>\n\n\n\n<p>Das Espressif Plugin scheint gerne mit Buttons zu arbeiten um den n\u00e4chsten Prozess anzutrigger, also beugen wir uns dem zus\u00e4tzlichen Schritt.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"709\" height=\"139\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-12_04_53.jpg\" alt=\"\" class=\"wp-image-6675\"\/><figcaption>VS-Code Espressif Test &#8211; Anzeige best\u00e4tigen<\/figcaption><\/figure>\n\n\n\n<p>Ohne zus\u00e4tzlichen Bildschirm kommt man dann \u00fcber das Men\u00fc durch die Wahl der Espressif IDF weiter.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"499\" height=\"111\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-12_06_47.jpg\" alt=\"\" class=\"wp-image-6676\"\/><figcaption>VS-Code Espressif Test &#8211; IDF Framework w\u00e4hlen<\/figcaption><\/figure>\n\n\n\n<p>Als ich die Liste zum ersten Mal gesehen habe war ich begeistert. Es gibt sehr viele Beispiele und wir suchen uns f\u00fcr den Einstieg das einfachste mal aus. Die Anderen sind analog dazu zu verwenden. Links ausw\u00e4hlen und wieder den Knopf dr\u00fccken.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1023\" height=\"453\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-12_09_10.jpg\" alt=\"\" class=\"wp-image-6677\"\/><figcaption>VS-Code Espressif Test &#8211; Links Projekt w\u00e4hlen und rechts best\u00e4tigen<\/figcaption><\/figure>\n\n\n\n<p>Speicheort ausw\u00e4hlen, dies kann ein beliebiges Verzeichnis sein.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"611\" height=\"381\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_15_35.jpg\" alt=\"\" class=\"wp-image-6678\"\/><figcaption>VS-Code Espressif Test &#8211; Speicherort ausw\u00e4hlen<\/figcaption><\/figure>\n\n\n\n<p>Das Projekt wird angezeigt und muss nun noch f\u00fcr das Board vorbereitet werden.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"820\" height=\"501\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_16_03.jpg\" alt=\"\" class=\"wp-image-6679\"\/><figcaption>VS-Code Espressif Test &#8211; Erster Blick aufs Projekt, links Dateien<\/figcaption><\/figure>\n\n\n\n<p>Zielplattform ausw\u00e4hlen. Hierf\u00fcr wieder die F1-Taste dr\u00fccken, nach &#8222;ESP-IDF set&#8220; suchen und den Punkt &#8222;Set Espressif device target&#8220; w\u00e4hlen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"514\" height=\"132\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_17_05.jpg\" alt=\"\" class=\"wp-image-6680\"\/><figcaption>VS-Code Espressif Test &#8211; Zielplattform setzen<\/figcaption><\/figure>\n\n\n\n<p>Ich w\u00e4hle f\u00fcr mein neues Projekt den ESP32-S2 aus.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"507\" height=\"102\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_19_25.jpg\" alt=\"\" class=\"wp-image-6681\"\/><figcaption>VS-Code Espressif Test &#8211; Wahl der Zielplattform<\/figcaption><\/figure>\n\n\n\n<p>Das kann einen Moment dauern<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"462\" height=\"46\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_20_31.jpg\" alt=\"\" class=\"wp-image-6682\"\/><figcaption>VS-Code Espressif Test &#8211; Arbeitsnachricht <\/figcaption><\/figure>\n\n\n\n<p>Da ich schon ein paar L\u00e4ufe hinter mir habe, \u00e4ndere ich das Programm noch einwenig ab. So kann ich leicht erkennen ob auch wirklich mein Programm auf das Board geladen wurde. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"943\" height=\"654\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_22_48-1.jpg\" alt=\"\" class=\"wp-image-6684\"\/><figcaption>VS-Code Espressif Test &#8211; Code \u00e4ndern<\/figcaption><\/figure>\n\n\n\n<p>Board anstecken und die serielle Schnittstelle ausw\u00e4hlen, bei mir ist es COM30.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"942\" height=\"655\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_21_53.jpg\" alt=\"\" class=\"wp-image-6685\"\/><figcaption>VS-Code Espressif Test &#8211; Serielle Schnittstelle w\u00e4hlen<\/figcaption><\/figure>\n\n\n\n<p>Jetzt das ganze mal bauen (Zylinder Symbol unten links). Sollte es Probleme geben kann \u00fcber das Bildschirmsymbol der IDF Monitor aktiviert werden.  Oberhalb der Konsole kann der Task auf IDF-Build umgeschaltet werden. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"943\" height=\"655\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_31_36.jpg\" alt=\"\" class=\"wp-image-6687\"\/><figcaption>VS-Code Espressif Test &#8211; Kn\u00f6pfe links unten und Konsolen wahl rechts<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"307\" height=\"79\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_52_31.jpg\" alt=\"\" class=\"wp-image-6696\"\/><figcaption>VS-Code Espressif Test &#8211; Zylinder = Bauen \/ Monitor = Konsole<\/figcaption><\/figure>\n\n\n\n<p>Auch das Bauen dauert &#8230;<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"449\" height=\"85\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_33_01.jpg\" alt=\"\" class=\"wp-image-6688\"\/><figcaption>VS-Code Espressif Test &#8211; Bauen in Arbeit Dialog<\/figcaption><\/figure>\n\n\n\n<p>Im besten Fall erscheint eine Erfolgsnachricht so wie folgende, im schlechtesten Fall passt etwas nicht dann gehts an die Fehlersuche. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"459\" height=\"53\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_34_06.jpg\" alt=\"\" class=\"wp-image-6689\"\/><figcaption>VS-Code Espressif Test -Bauen Erfolgsnachricht<\/figcaption><\/figure>\n\n\n\n<p>Mit dem Blitzsymbol kann das Programm auf das Board geladen werden.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"347\" height=\"64\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_35_33.jpg\" alt=\"\" class=\"wp-image-6690\"\/><figcaption>VS-Code Espressif Test &#8211; Board flashen<\/figcaption><\/figure>\n\n\n\n<p>Jetzt wird das Programm auf das Board geschrieben. Bei Erfolg kommt die folgende Nachricht.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"251\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_37_40.jpg\" alt=\"\" class=\"wp-image-6691\"\/><figcaption>VS-Code Espressif Test -Faschen Erfolgsnachricht<\/figcaption><\/figure>\n\n\n\n<p>Soll ein Fehler (s.u.) bez\u00fcglich Monitor kommen, einfach nochmal flashen, der Monitor sollte mit dem Fehler geschlossen worden sein und das Flashen nun funktionieren. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"633\" height=\"191\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_39_33.jpg\" alt=\"\" class=\"wp-image-6692\"\/><figcaption>VS-Code Espressif Test &#8211; Flashen Fehler Nachricht<\/figcaption><\/figure>\n\n\n\n<p>Nun den Monitor nochmal starten.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"311\" height=\"78\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_41_03.jpg\" alt=\"\" class=\"wp-image-6693\"\/><figcaption>VS-Code Espressif Test &#8211; Monitor starten<\/figcaption><\/figure>\n\n\n\n<p>Im Monitor sollte der g\u00e4nderte Satz gefunden werden.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"636\" height=\"251\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-14_41_21-1.jpg\" alt=\"\" class=\"wp-image-6695\"\/><figcaption>VS-Code Espressif Test &#8211; Monitor Ausgabe<\/figcaption><\/figure>\n\n\n\n<p>Das erste Flashen hat geklappt und weitere H\u00fcrden k\u00f6nnen in Angriff genommen werden. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Probleme\"><\/span>Problems<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Konfigurationsseite \u00f6ffnet sich nicht<\/p>\n\n\n\n<p>Sollte sich die Konfigurationsseite beim ersten starten des Espressif Plugins nicht erscheinen oder sp\u00e4ter nochmal ben\u00f6tigt werden, kann diese manuell ge\u00f6ffnet werden.<\/p>\n\n\n\n<p>Die F1 Taste \u00f6ffnet das Befehlsmen\u00fc. Dort &#8222;ESP-IDF&#8220; eingeben. Es erscheinen alle Befehle f\u00fcr die Espressiferweiterung. Hier den Befehl Configure ESP-IDF extension ausw\u00e4hlen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"489\" height=\"315\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-10_59_27.jpg\" alt=\"\" class=\"wp-image-6664\"\/><figcaption>VS-Code &#8211; Befehlsmen\u00fc auswahl der Konfiguration<\/figcaption><\/figure>\n\n\n\n<p>Danach sollte der Einstiegsbildschirm der Konfigruation erscheinen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"486\" height=\"453\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-05-11_04_16.jpg\" alt=\"\" class=\"wp-image-6665\"\/><figcaption>VS-Code &#8211; IDF Erweiterung Konfiguration <\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Config &#8211; Requirements not satified<\/h3>\n\n\n\n<p>Bei der Konfiguration bricht das Skript ab, und es kommt eine Auflistung von Python modulen deren Version nicht stimmt. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"748\" height=\"173\" src=\"https:\/\/www.fambach.net\/wp-content\/uploads\/2020-12-01-21_18_02.jpg\" alt=\"\" class=\"wp-image-6651\"\/><figcaption>Python requirements are not satified<\/figcaption><\/figure>\n\n\n\n<p>Den folgenden Befehl eingeben (Pfade bitte entprechend anpassen)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>C:\\Users\\spam\\.espressif\\python_env\\idf4.3_py3.9_env\\Scripts\\python.exe -m pip install -r c:\\Devel\\VSCodeEspressifIDF\\data\\extensions\\espressif.esp-idf-extension-0.5.1\\esp_debug_adapter\\requirements.txt\"<\/code><\/pre>\n\n\n\n<p>Das Skript installiert die richtigen Versionen, danach nochmal den Check-Button dr\u00fccken und es sollte funktionieren.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Set Target schl\u00e4gt fehl wegen Build Verzeichnis<\/h3>\n\n\n\n<p>Build Verzeichnis l\u00f6schen und erneut Target setzen.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Prozess kann nicht auf Verzeichnis zugreifen<\/h3>\n\n\n\n<p>Schauen ob Dateien oder das Verzeichnis noch anderweitig ge\u00f6ffnet wurde. (Explorer, Notepad &#8230; ) <\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Fazit\"><\/span>Conclusion<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Wenn man weiss wie es geht ist die Installation einfach und schnell erledigt. Ich habe allerdings einige Anl\u00e4ufe und Tage gebraucht bis es so lief. Entweder hat die Pythonversion nicht gepasst, es fehlte was bei den IDF Sourcen oder die Tools hatten die falsche Version. Dies mag zum einen der neuen ESP32-S2 Umgebung geschuldet sein, kann aber auch am Installationsdesaster auf meinem PC liegen. Mit der getrennten IDF Installation konnte ich das bauen der Sourcen sicherstellen und danach die Fehler in den Pfaden der VS-Code Umgebung suchen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Verwandte_Beitrage\"><\/span>Related Posts<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n<ul class=\"display-posts-listing\">\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/espressif-idf-tasks-2\/\">Espressif IDF \u2013 GPIOs<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/espressif-idf-tasks\/\">Espressif IDF \u2013 Tasks<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/espressif-idf-menuconfig\/\">Espressif IDF \u2013 Menuconfig<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/espressif-idf-timer\/\">Espressif IDF \u2013 Timer<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/espressif-idf-log-nachrichten\/\">Espressif IDF \u2013 Log Messages<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/espressif-idf-fehlerbehandlung\/\">Espressif IDF \u2013 Error Handling<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/espressif-idf-konsolenausgabe\/\">Espressif IDF \u2013 Console Output<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/espressif-idf-projekt-erstellen\/\">Espressif IDF \u2013 Create Project<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/lilygo-esp32-oled\/\">LilyGo ESP32-Oled<\/a><\/li>\n<li class=\"listing-item\"><a class=\"title\" href=\"https:\/\/www.fambach.net\/en\/lilygo-ep32-s2-v1-1\/\">LILYGO EP32 S2 V1.1<\/a><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Quellen\"><\/span>Sources<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p><a rel=\"noreferrer noopener\" href=\"https:\/\/docs.espressif.com\/projects\/esp-idf\/en\/latest\/esp32s2\/get-started\/index.html\" target=\"_blank\">Getting Started with Espressif IDF<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/espressif\/vscode-esp-idf-extension\" target=\"_blank\" rel=\"noreferrer noopener\">Github ESP-IDF Extension f\u00fcr VS-Code<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=espressif.esp-idf-extension\" target=\"_blank\" rel=\"noreferrer noopener\">Microsoft Market Place ESP-IDF Extension<\/a><\/p>\n\n\n\n<p><a rel=\"noreferrer noopener\" href=\"https:\/\/randomnerdtutorials.com\/vs-code-platformio-ide-esp32-esp8266-arduino\/\" target=\"_blank\">Beitrag auf Random Tutorials zum Thema<\/a><\/p>\n\n\n\n<p><a href=\"https:\/\/www.instructables.com\/Develop-ESP32-With-PlatformIO-IDE\/\" target=\"_blank\" rel=\"noreferrer noopener\">Beitrag auf Instructables zum Thema<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Installation der VS-Code Umgebung mit dem Espressif IDF Plugin. <\/p>\n<a href=\"https:\/\/www.fambach.net\/en\/lilygo-esp32-oled\/\" class=\"read-more-link\">Continue reading <span class=\"screen-reader-text\">\"LilyGo ESP32-Oled\"<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a>","protected":false},"author":1,"featured_media":6665,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"no","_lmt_disable":"no","footnotes":""},"categories":[184,472,473,452,255],"tags":[33,148,475,465,474,454,469],"modified_by":"sfambach","_links":{"self":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/6541"}],"collection":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/comments?post=6541"}],"version-history":[{"count":12,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/6541\/revisions"}],"predecessor-version":[{"id":6700,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/posts\/6541\/revisions\/6700"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/media\/6665"}],"wp:attachment":[{"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/media?parent=6541"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/categories?post=6541"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.fambach.net\/en\/wp-json\/wp\/v2\/tags?post=6541"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}