<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Espressif on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/espressif/</link>
        <description>Recent content in Espressif on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Fri, 20 Jun 2025 15:30:23 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/espressif/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>esp-idf</title>
        <link>https://producthunt.programnotes.cn/en/p/esp-idf/</link>
        <pubDate>Fri, 20 Jun 2025 15:30:23 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/esp-idf/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1667582704408-aca85f4aea5a?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NTA0MDQ1MTR8&amp;ixlib=rb-4.1.0" alt="Featured image of post esp-idf" /&gt;&lt;h1 id=&#34;espressifesp-idf&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/espressif/esp-idf&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;espressif/esp-idf&lt;/a&gt;
&lt;/h1&gt;&lt;h1 id=&#34;espressif-iot-development-framework&#34;&gt;Espressif IoT Development Framework
&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;./README_CN.md&#34; &gt;中文版&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ESP-IDF is the development framework for Espressif SoCs supported on Windows, Linux and macOS.&lt;/p&gt;
&lt;h1 id=&#34;esp-idf-release-support-schedule&#34;&gt;ESP-IDF Release Support Schedule
&lt;/h1&gt;&lt;p&gt;&lt;img src=&#34;https://dl.espressif.com/dl/esp-idf/support-periods.svg?v=1&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Support Schedule&#34;
	
	
&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Please read &lt;a class=&#34;link&#34; href=&#34;SUPPORT_POLICY.md&#34; &gt;the support policy&lt;/a&gt; and &lt;a class=&#34;link&#34; href=&#34;https://docs.espressif.com/projects/esp-idf/en/latest/esp32/versions.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;the documentation&lt;/a&gt; for more information about ESP-IDF versions.&lt;/li&gt;
&lt;li&gt;Please see the &lt;a class=&#34;link&#34; href=&#34;https://www.espressif.com/en/support/documents/advisories?keys=&amp;amp;field_type_of_advisory_tid%5B%5D=817&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;End-of-Life Advisories&lt;/a&gt; for information about ESP-IDF releases with discontinued support.&lt;/li&gt;
&lt;/ul&gt;
&lt;h1 id=&#34;esp-idf-release-and-soc-compatibility&#34;&gt;ESP-IDF Release and SoC Compatibility
&lt;/h1&gt;&lt;p&gt;The following table shows ESP-IDF support of Espressif SoCs where &lt;img src=&#34;https://img.shields.io/badge/-preview-orange&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt; and &lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt; denote preview status and support, respectively. The preview support is usually limited in time and intended for beta versions of chips. Please use an ESP-IDF release where the desired SoC is already supported.&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th style=&#34;text-align: left&#34;&gt;Chip&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;v5.0&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;v5.1&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;v5.2&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;v5.3&lt;/th&gt;
          &lt;th style=&#34;text-align: center&#34;&gt;v5.4&lt;/th&gt;
          &lt;th style=&#34;text-align: left&#34;&gt;&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32-S2&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32-C3&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32-S3&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.espressif.com/en/news/ESP32_S3&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Announcement&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32-C2&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.espressif.com/en/news/ESP32-C2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Announcement&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32-C6&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.espressif.com/en/news/ESP32_C6&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Announcement&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32-H2&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.espressif.com/en/news/ESP32_H2&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Announcement&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32-P4&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-supported-green&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.espressif.com/en/news/ESP32-P4&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Announcement&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32-C5&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-preview-orange&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.espressif.com/en/news/ESP32-C5&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Announcement&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;ESP32-C61&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: center&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/-preview-orange&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;alt text&#34;
	
	
&gt;&lt;/td&gt;
          &lt;td style=&#34;text-align: left&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.espressif.com/en/products/socs/esp32-c61&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Announcement&lt;/a&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;There are variants of revisions for a series of chips. See &lt;a class=&#34;link&#34; href=&#34;https://github.com/espressif/esp-idf/blob/master/COMPATIBILITY.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Compatibility Between ESP-IDF Releases and Revisions of Espressif SoCs&lt;/a&gt; for the details of the compatibility between ESP-IDF and chip revisions.&lt;/p&gt;
&lt;p&gt;Espressif SoCs released before 2016 (ESP8266 and ESP8285) are supported by &lt;a class=&#34;link&#34; href=&#34;https://github.com/espressif/ESP8266_RTOS_SDK&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;RTOS SDK&lt;/a&gt; instead.&lt;/p&gt;
&lt;h1 id=&#34;developing-with-esp-idf&#34;&gt;Developing With ESP-IDF
&lt;/h1&gt;&lt;h2 id=&#34;setting-up-esp-idf&#34;&gt;Setting Up ESP-IDF
&lt;/h2&gt;&lt;p&gt;See &lt;a class=&#34;link&#34; href=&#34;https://idf.espressif.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://idf.espressif.com/&lt;/a&gt; for links to detailed instructions on how to set up the ESP-IDF depending on chip you use.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; Each SoC series and each ESP-IDF release has its own documentation. Please see Section &lt;a class=&#34;link&#34; href=&#34;https://docs.espressif.com/projects/esp-idf/en/latest/esp32/versions.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Versions&lt;/a&gt; on how to find documentation and how to checkout specific release of ESP-IDF.&lt;/p&gt;
&lt;h3 id=&#34;non-github-forks&#34;&gt;Non-GitHub forks
&lt;/h3&gt;&lt;p&gt;ESP-IDF uses relative locations as its submodules URLs (&lt;a class=&#34;link&#34; href=&#34;.gitmodules&#34; &gt;.gitmodules&lt;/a&gt;). So they link to GitHub. If ESP-IDF is forked to a Git repository which is not on GitHub, you will need to run the script &lt;a class=&#34;link&#34; href=&#34;tools/set-submodules-to-github.sh&#34; &gt;tools/set-submodules-to-github.sh&lt;/a&gt; after git clone.&lt;/p&gt;
&lt;p&gt;The script sets absolute URLs for all submodules, allowing &lt;code&gt;git submodule update --init --recursive&lt;/code&gt; to complete. If cloning ESP-IDF from GitHub, this step is not needed.&lt;/p&gt;
&lt;h2 id=&#34;finding-a-project&#34;&gt;Finding a Project
&lt;/h2&gt;&lt;p&gt;As well as the &lt;a class=&#34;link&#34; href=&#34;https://github.com/espressif/esp-idf-template&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;esp-idf-template&lt;/a&gt; project mentioned in Getting Started, ESP-IDF comes with some example projects in the &lt;a class=&#34;link&#34; href=&#34;examples&#34; &gt;examples&lt;/a&gt; directory.&lt;/p&gt;
&lt;p&gt;Once you&amp;rsquo;ve found the project you want to work with, change to its directory and you can configure and build it.&lt;/p&gt;
&lt;p&gt;To start your own project based on an example, copy the example project directory outside of the ESP-IDF directory.&lt;/p&gt;
&lt;h1 id=&#34;quick-reference&#34;&gt;Quick Reference
&lt;/h1&gt;&lt;p&gt;See the Getting Started guide links above for a detailed setup guide. This is a quick reference for common commands when working with ESP-IDF projects:&lt;/p&gt;
&lt;h2 id=&#34;setup-build-environment&#34;&gt;Setup Build Environment
&lt;/h2&gt;&lt;p&gt;(See the Getting Started guide listed above for a full list of required steps with more details.)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Install host build dependencies mentioned in the Getting Started guide.&lt;/li&gt;
&lt;li&gt;Run the install script to set up the build environment. The options include &lt;code&gt;install.bat&lt;/code&gt; or &lt;code&gt;install.ps1&lt;/code&gt; for Windows, and &lt;code&gt;install.sh&lt;/code&gt; or &lt;code&gt;install.fish&lt;/code&gt; for Unix shells.&lt;/li&gt;
&lt;li&gt;Run the export script on Windows (&lt;code&gt;export.bat&lt;/code&gt;) or source it on Unix (&lt;code&gt;source export.sh&lt;/code&gt;) in every shell environment before using ESP-IDF.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;configuring-the-project&#34;&gt;Configuring the Project
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;code&gt;idf.py set-target &amp;lt;chip_name&amp;gt;&lt;/code&gt; sets the target of the project to &lt;code&gt;&amp;lt;chip_name&amp;gt;&lt;/code&gt;. Run &lt;code&gt;idf.py set-target&lt;/code&gt; without any arguments to see a list of supported targets.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;idf.py menuconfig&lt;/code&gt; opens a text-based configuration menu where you can configure the project.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;compiling-the-project&#34;&gt;Compiling the Project
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;idf.py build&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&amp;hellip; will compile app, bootloader and generate a partition table based on the config.&lt;/p&gt;
&lt;h2 id=&#34;flashing-the-project&#34;&gt;Flashing the Project
&lt;/h2&gt;&lt;p&gt;When the build finishes, it will print a command line to use esptool.py to flash the chip. However you can also do this automatically by running:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;idf.py -p PORT flash&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Replace PORT with the name of your serial port (like &lt;code&gt;COM3&lt;/code&gt; on Windows, &lt;code&gt;/dev/ttyUSB0&lt;/code&gt; on Linux, or &lt;code&gt;/dev/cu.usbserial-X&lt;/code&gt; on MacOS. If the &lt;code&gt;-p&lt;/code&gt; option is left out, &lt;code&gt;idf.py flash&lt;/code&gt; will try to flash the first available serial port.&lt;/p&gt;
&lt;p&gt;This will flash the entire project (app, bootloader and partition table) to a new chip. The settings for serial port flashing can be configured with &lt;code&gt;idf.py menuconfig&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;You don&amp;rsquo;t need to run &lt;code&gt;idf.py build&lt;/code&gt; before running &lt;code&gt;idf.py flash&lt;/code&gt;, &lt;code&gt;idf.py flash&lt;/code&gt; will automatically rebuild anything which needs it.&lt;/p&gt;
&lt;h2 id=&#34;viewing-serial-output&#34;&gt;Viewing Serial Output
&lt;/h2&gt;&lt;p&gt;The &lt;code&gt;idf.py monitor&lt;/code&gt; target uses the &lt;a class=&#34;link&#34; href=&#34;https://github.com/espressif/esp-idf-monitor&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;esp-idf-monitor tool&lt;/a&gt; to display serial output from Espressif SoCs. esp-idf-monitor also has a range of features to decode crash output and interact with the device. &lt;a class=&#34;link&#34; href=&#34;https://docs.espressif.com/projects/esp-idf/en/latest/get-started/idf-monitor.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Check the documentation page for details&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Exit the monitor by typing Ctrl-].&lt;/p&gt;
&lt;p&gt;To build, flash and monitor output in one pass, you can run:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;idf.py flash monitor&lt;/code&gt;&lt;/p&gt;
&lt;h2 id=&#34;compiling--flashing-only-the-app&#34;&gt;Compiling &amp;amp; Flashing Only the App
&lt;/h2&gt;&lt;p&gt;After the initial flash, you may just want to build and flash just your app, not the bootloader and partition table:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;idf.py app&lt;/code&gt; - build just the app.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;idf.py app-flash&lt;/code&gt; - flash just the app.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;idf.py app-flash&lt;/code&gt; will automatically rebuild the app if any source files have changed.&lt;/p&gt;
&lt;p&gt;(In normal development there&amp;rsquo;s no downside to reflashing the bootloader and partition table each time, if they haven&amp;rsquo;t changed.)&lt;/p&gt;
&lt;h2 id=&#34;erasing-flash&#34;&gt;Erasing Flash
&lt;/h2&gt;&lt;p&gt;The &lt;code&gt;idf.py flash&lt;/code&gt; target does not erase the entire flash contents. However it is sometimes useful to set the device back to a totally erased state, particularly when making partition table changes or OTA app updates. To erase the entire flash, run &lt;code&gt;idf.py erase-flash&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This can be combined with other targets, ie &lt;code&gt;idf.py -p PORT erase-flash flash&lt;/code&gt; will erase everything and then re-flash the new app, bootloader and partition table.&lt;/p&gt;
&lt;h1 id=&#34;resources&#34;&gt;Resources
&lt;/h1&gt;&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Documentation for the latest version: &lt;a class=&#34;link&#34; href=&#34;https://docs.espressif.com/projects/esp-idf/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://docs.espressif.com/projects/esp-idf/&lt;/a&gt;. This documentation is built from the &lt;a class=&#34;link&#34; href=&#34;docs&#34; &gt;docs directory&lt;/a&gt; of this repository.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://youtu.be/J8zc8mMNKtc?feature=shared&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Beginner&amp;rsquo;s Guide to Key Concepts and Resources of ESP-IDF&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The &lt;a class=&#34;link&#34; href=&#34;https://esp32.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;esp32.com forum&lt;/a&gt; is a place to ask questions and find community resources.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/espressif/esp-idf/issues&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Check the Issues section on github&lt;/a&gt; if you find a bug or have a feature request. Please check existing Issues before opening a new one.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you&amp;rsquo;re interested in contributing to ESP-IDF, please check the &lt;a class=&#34;link&#34; href=&#34;https://docs.espressif.com/projects/esp-idf/en/latest/contribute/index.html&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Contributions Guide&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
