[{"data":1,"prerenderedAt":862},["ShallowReactive",2],{"wiki-page-/en-us/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian":3,"wiki-doc-items-/en-us/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian":822,"language-switcher-data-/en-us/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian":846,"wiki-i18n-paths-/en-us/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian":861},{"id":4,"title":5,"body":6,"canonicalPath":802,"chapter":803,"chapterSort":804,"date":805,"description":45,"docI18nKey":806,"docKey":807,"docRoot":808,"docTitle":809,"extension":810,"i18nKey":811,"isBlogPost":812,"isWikiDoc":813,"isWikiIndex":812,"layout":814,"legacyPath":814,"locale":815,"localeSlug":816,"meta":817,"navigation":813,"path":802,"seo":818,"sourcePath":819,"sourceStem":811,"stem":820,"wikiDepth":53,"__hash__":821},"content/_i18n/en-us/wiki/2026-01-07-ESP32教程/ch2-ESP32环境搭建.md","ESP32 environment setup",{"type":7,"value":8,"toc":798},"minimark",[9,14,24,29,36,39,110,113,168,173,177,182,185,190,201,261,266,272,276,281,321,326,331,341,345,348,361,372,390,395,407,412,416,422,429,434,439,442,447,450,455,458,463,468,475,496,501,504,508,514,518,524,530,533,538,542,548,553,558,572,578,584,590,594,608,614,620,626,631,634,639,644,647,650,655,658,663,669,675,681,685,692,697,702,707,713,730,735,740,745,748,753,756,761,765,774,779,784,789,794],[10,11,13],"h3",{"id":12},"linux","Linux",[15,16,17,18],"p",{},"Open the following website:\n",[19,20,21],"a",{"href":21,"rel":22},"https://docs.espressif.com/projects/esp-idf/zh_CN/stable/esp32/get-started/linux-macos-setup.html",[23],"nofollow",[25,26,28],"h4",{"id":27},"install-dependencies","Install dependencies",[15,30,31],{},[32,33],"img",{"alt":34,"src":35},"alt text","https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767934049542.webp",[15,37,38],{},"First, follow the instructions shown on this website. If you are using Ubuntu,",[40,41,46],"pre",{"className":42,"code":43,"language":44,"meta":45,"style":45},"language-bash shiki shiki-themes github-light github-dark","sudo apt-get install git wget flex bison gperf python3 python3-pip python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0\n","bash","",[47,48,49],"code",{"__ignoreMap":45},[50,51,54,58,62,65,68,71,74,77,80,83,86,89,92,95,98,101,104,107],"span",{"class":52,"line":53},"line",1,[50,55,57],{"class":56},"sScJk","sudo",[50,59,61],{"class":60},"sZZnC"," apt-get",[50,63,64],{"class":60}," install",[50,66,67],{"class":60}," git",[50,69,70],{"class":60}," wget",[50,72,73],{"class":60}," flex",[50,75,76],{"class":60}," bison",[50,78,79],{"class":60}," gperf",[50,81,82],{"class":60}," python3",[50,84,85],{"class":60}," python3-pip",[50,87,88],{"class":60}," python3-venv",[50,90,91],{"class":60}," cmake",[50,93,94],{"class":60}," ninja-build",[50,96,97],{"class":60}," ccache",[50,99,100],{"class":60}," libffi-dev",[50,102,103],{"class":60}," libssl-dev",[50,105,106],{"class":60}," dfu-util",[50,108,109],{"class":60}," libusb-1.0-0\n",[15,111,112],{},"If you are Fedora",[40,114,116],{"className":42,"code":115,"language":44,"meta":45,"style":45},"sudo dnf -y makecache && sudo dnf install git wget flex bison gperf python3 python3-setuptools cmake ninja-build ccache dfu-util libusbx\n",[47,117,118],{"__ignoreMap":45},[50,119,120,122,125,129,132,136,138,140,142,144,146,148,150,152,154,157,159,161,163,165],{"class":52,"line":53},[50,121,57],{"class":56},[50,123,124],{"class":60}," dnf",[50,126,128],{"class":127},"sj4cs"," -y",[50,130,131],{"class":60}," makecache",[50,133,135],{"class":134},"sVt8B"," && ",[50,137,57],{"class":56},[50,139,124],{"class":60},[50,141,64],{"class":60},[50,143,67],{"class":60},[50,145,70],{"class":60},[50,147,73],{"class":60},[50,149,76],{"class":60},[50,151,79],{"class":60},[50,153,82],{"class":60},[50,155,156],{"class":60}," python3-setuptools",[50,158,91],{"class":60},[50,160,94],{"class":60},[50,162,97],{"class":60},[50,164,106],{"class":60},[50,166,167],{"class":60}," libusbx\n",[15,169,170],{},[32,171],{"alt":34,"src":172},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767934192251.webp",[25,174,176],{"id":175},"get-esp-idf","Get ESP-IDF",[15,178,179],{},[32,180],{"alt":34,"src":181},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767934330673.webp",[15,183,184],{},"Check which version is the latest stable release.",[15,186,187],{},[32,188],{"alt":34,"src":189},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767934480759.webp",[15,191,192,193,196,197,200],{},"As shown in the image above, this is version 5.5.2.\nNext, choose a folder to store the firmware.\nFor example, I want to place it under the /home/tungchiahui/UserFolder/Applications/ folder (where ",[47,194,195],{},"/home/tungchiahui"," can be replaced by ",[47,198,199],{},"~/",").\nSo",[40,202,204],{"className":42,"code":203,"language":44,"meta":45,"style":45},"cd ~/UserFolder/Applications\nmkdir -p ./esp\ncd ./esp\n# 记得版本号要改成最新稳定版(网络环境一定要好)\ngit clone -b v5.5.2 --recursive https://github.com/espressif/esp-idf.git\n",[47,205,206,214,226,233,240],{"__ignoreMap":45},[50,207,208,211],{"class":52,"line":53},[50,209,210],{"class":127},"cd",[50,212,213],{"class":60}," ~/UserFolder/Applications\n",[50,215,217,220,223],{"class":52,"line":216},2,[50,218,219],{"class":56},"mkdir",[50,221,222],{"class":127}," -p",[50,224,225],{"class":60}," ./esp\n",[50,227,229,231],{"class":52,"line":228},3,[50,230,210],{"class":127},[50,232,225],{"class":60},[50,234,236],{"class":52,"line":235},4,[50,237,239],{"class":238},"sJ8bj","# 记得版本号要改成最新稳定版(网络环境一定要好)\n",[50,241,243,246,249,252,255,258],{"class":52,"line":242},5,[50,244,245],{"class":56},"git",[50,247,248],{"class":60}," clone",[50,250,251],{"class":127}," -b",[50,253,254],{"class":60}," v5.5.2",[50,256,257],{"class":127}," --recursive",[50,259,260],{"class":60}," https://github.com/espressif/esp-idf.git\n",[15,262,263],{},[32,264],{"alt":34,"src":265},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767934869161.webp",[15,267,268,269],{},"As shown in the image is a success; anything not like the one below means it was not downloaded successfully.\n",[32,270],{"alt":34,"src":271},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767935331654.webp",[25,273,275],{"id":274},"set-up-the-tool","Set up the tool",[15,277,278],{},[32,279],{"alt":34,"src":280},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767934989357.webp",[40,282,284],{"className":42,"code":283,"language":44,"meta":45,"style":45},"cd ./esp-idf\n# 选择国内服务器\nexport IDF_GITHUB_ASSETS=\"dl.espressif.cn/github_assets\"\n./install.sh all\n",[47,285,286,293,298,313],{"__ignoreMap":45},[50,287,288,290],{"class":52,"line":53},[50,289,210],{"class":127},[50,291,292],{"class":60}," ./esp-idf\n",[50,294,295],{"class":52,"line":216},[50,296,297],{"class":238},"# 选择国内服务器\n",[50,299,300,304,307,310],{"class":52,"line":228},[50,301,303],{"class":302},"szBVR","export",[50,305,306],{"class":134}," IDF_GITHUB_ASSETS",[50,308,309],{"class":302},"=",[50,311,312],{"class":60},"\"dl.espressif.cn/github_assets\"\n",[50,314,315,318],{"class":52,"line":235},[50,316,317],{"class":56},"./install.sh",[50,319,320],{"class":60}," all\n",[15,322,323],{},[32,324],{"alt":34,"src":325},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767935447878.webp",[15,327,328],{},[32,329],{"alt":34,"src":330},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767935597546.webp",[15,332,333,334,337,338],{},"The image above shows what success looks like. Here, you need to copy what I've circled in red (the path to ",[47,335,336],{},"export.sh","), as it will be used in the next environment configuration. For example, the path I copied here is\n",[47,339,340],{},"~/UserFolder/Applications/esp/esp-idf/export.sh",[25,342,344],{"id":343},"set-environment-variables","Set environment variables",[15,346,347],{},"At this point, the newly installed tools have not yet been added to the PATH environment variable, so they cannot be used from the command window. Therefore, some environment variables must be set. This can be done using another script provided by ESP-IDF.",[40,349,351],{"className":42,"code":350,"language":44,"meta":45,"style":45},"vim ~/.bashrc\n",[47,352,353],{"__ignoreMap":45},[50,354,355,358],{"class":52,"line":53},[50,356,357],{"class":56},"vim",[50,359,360],{"class":60}," ~/.bashrc\n",[15,362,363,364,367,368,371],{},"Add the following line (fill in the specific path where you actually store it, which is the path you just copied. Remember to change ",[47,365,366],{},"~"," to ",[47,369,370],{},"$HOME"," to improve robustness).",[40,373,375],{"className":42,"code":374,"language":44,"meta":45,"style":45},"alias get_idf='. $HOME/UserFolder/Applications/esp/esp-idf/export.sh'\n",[47,376,377],{"__ignoreMap":45},[50,378,379,382,385,387],{"class":52,"line":53},[50,380,381],{"class":302},"alias",[50,383,384],{"class":134}," get_idf",[50,386,309],{"class":302},[50,388,389],{"class":60},"'. $HOME/UserFolder/Applications/esp/esp-idf/export.sh'\n",[15,391,392],{},[32,393],{"alt":34,"src":394},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767935820486.webp",[40,396,398],{"className":42,"code":397,"language":44,"meta":45,"style":45},"source ~/.bashrc\n",[47,399,400],{"__ignoreMap":45},[50,401,402,405],{"class":52,"line":53},[50,403,404],{"class":127},"source",[50,406,360],{"class":60},[15,408,409],{},[32,410],{"alt":34,"src":411},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767935970620.webp",[25,413,415],{"id":414},"configure-vscode","Configure VScode",[15,417,418],{},[19,419,420],{"href":420,"rel":421},"https://docs.espressif.com/projects/vscode-esp-idf-extension/zh_CN/latest/index.html",[23],[423,424,425],"ol",{},[426,427,428],"li",{},"Install the ESP-IDF plugin",[15,430,431],{},[32,432],{"alt":34,"src":433},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767936248029.webp",[423,435,436],{"start":216},[426,437,438],{},"Click Express and select the download server:",[15,440,441],{},"As shown in the figure below, since we have already configured the environment, do not select a version here. Instead, directly choose to locate ESP-IDF from my computer.",[15,443,444],{},[32,445],{"alt":34,"src":446},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767936512526.webp",[15,448,449],{},"It will automatically help you complete the entire toolchain.",[15,451,452],{},[32,453],{"alt":34,"src":454},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767936567868.webp",[15,456,457],{},"If it displays like this in the bottom-right corner, it means success.",[15,459,460],{},[32,461],{"alt":34,"src":462},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767936602550.webp",[15,464,465],{},[32,466],{"alt":34,"src":467},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767936647403.webp",[15,469,470,471,474],{},"Next, configure OpenOCD:\n",[32,472],{"alt":34,"src":473},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767936736342.webp","\nCopy the line above, open a terminal (any terminal will do, no need to worry about the path), and run it.",[40,476,478],{"className":42,"code":477,"language":44,"meta":45,"style":45},"sudo cp --update=none /home/tungchiahui/.espressif/tools/openocd-esp32/v0.12.0-esp32-20250707/openocd-esp32/share/openocd/contrib/60-openocd.rules /etc/udev/rules.d\n",[47,479,480],{"__ignoreMap":45},[50,481,482,484,487,490,493],{"class":52,"line":53},[50,483,57],{"class":56},[50,485,486],{"class":60}," cp",[50,488,489],{"class":127}," --update=none",[50,491,492],{"class":60}," /home/tungchiahui/.espressif/tools/openocd-esp32/v0.12.0-esp32-20250707/openocd-esp32/share/openocd/contrib/60-openocd.rules",[50,494,495],{"class":60}," /etc/udev/rules.d\n",[15,497,498],{},[32,499],{"alt":34,"src":500},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1767936805629.webp",[15,502,503],{},"End!",[10,505,507],{"id":506},"windows","Windows",[15,509,17,510],{},[19,511,512],{"href":512,"rel":513},"https://docs.espressif.com/projects/esp-idf/zh_CN/stable/esp32/get-started/windows-setup.html",[23],[25,515,517],{"id":516},"download-and-install-the-program","Download and install the program.",[15,519,520,521],{},"Check the latest version; for example, the latest version here is v5.5.2.\n",[32,522],{"alt":34,"src":523},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768097572869.webp",[15,525,526,527],{},"Click to download the tool.\n",[32,528],{"alt":34,"src":529},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768097420298.webp",[15,531,532],{},"And click to install the latest version. For example, the latest version here is v5.5.2.",[15,534,535],{},[32,536],{"alt":34,"src":537},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768097535450.webp",[25,539,541],{"id":540},"install-esp-idf","Install ESP-IDF",[15,543,544,545],{},"Click on the downloaded esp-idf.\n",[32,546],{"alt":34,"src":547},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768097744578.webp",[15,549,550],{},[32,551],{"alt":34,"src":552},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768097780350.webp",[15,554,555],{},[32,556],{"alt":34,"src":557},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768097800892.webp",[15,559,560,561,564,565,568,569],{},"Select the hard drive partition where you want to install. For example, if I want to install it on ",[47,562,563],{},"C:\\Espressif",", it would look like the image below.\n",[32,566],{"alt":34,"src":567},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768097823822.webp","\nIf you want to install it on the D drive, change the first C to D.\n",[32,570],{"alt":34,"src":571},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768097881504.webp",[15,573,574,575],{},"Check all the unchecked boxes, then click Install.\n",[32,576],{"alt":34,"src":577},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768097941290.webp",[15,579,580,581],{},"Then click Finish.\n",[32,582],{"alt":34,"src":583},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768099670485.webp",[15,585,586,587],{},"If the pop-up windows all display like this, then the installation was successful.\n",[32,588],{"alt":34,"src":589},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768099702456.webp",[25,591,593],{"id":592},"set-up-the-environment","Set up the environment",[15,595,596,597,600,601,604,605],{},"Just open any folder, right-click ",[47,598,599],{},"This PC（此电脑）",", and click ",[47,602,603],{},"属性",".\n",[32,606],{"alt":34,"src":607},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768099767864.webp",[15,609,610,611],{},"Here is an advanced system setting.\n",[32,612],{"alt":34,"src":613},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768099838542.webp",[15,615,616,617],{},"Click on Environment Variables\n",[32,618],{"alt":34,"src":619},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768099861401.webp",[15,621,622,623],{},"Click New.\n",[32,624],{"alt":34,"src":625},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768099886239.webp",[15,627,628],{},[32,629],{"alt":34,"src":630},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768099909017.webp",[15,632,633],{},"Find the directory mentioned in the path where you just installed IDF, then click OK.",[15,635,636],{},[32,637],{"alt":34,"src":638},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768099932086.webp",[15,640,641],{},[32,642],{"alt":34,"src":643},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768099957136.webp",[25,645,415],{"id":646},"configure-vscode-1",[15,648,649],{},"Install the plugin below.",[15,651,652],{},[32,653],{"alt":34,"src":654},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100027759.webp",[15,656,657],{},"Once installed, click to open the Getting Started wizard.",[15,659,660],{},[32,661],{"alt":34,"src":662},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100049539.webp",[15,664,665,666],{},"Click on the first one.\n",[32,667],{"alt":34,"src":668},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100080553.webp",[15,670,671,672],{},"Do it my way, then click Install.\n",[32,673],{"alt":34,"src":674},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100238920.webp",[15,676,677,678],{},"This interface indicates a successful installation.\n",[32,679],{"alt":34,"src":680},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100445841.webp",[25,682,684],{"id":683},"download-the-serial-port-driver","Download the serial port driver.",[15,686,687,688],{},"Open the website below.\n",[19,689,690],{"href":690,"rel":691},"https://docs.espressif.com/projects/esp-idf/zh_CN/stable/esp32/get-started/establish-serial-connection.html",[23],[423,693,694],{},[426,695,696],{},"CP210x driver",[15,698,699],{},[32,700],{"alt":34,"src":701},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100660387.webp",[15,703,704],{},[32,705],{"alt":34,"src":706},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100674154.webp",[15,708,709,710],{},"Extract the compressed archive you just downloaded.\n",[32,711],{"alt":34,"src":712},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100712206.webp",[15,714,715,716,719,720,604,723,726,727],{},"Right-click ",[47,717,718],{},"silabser.inf"," and click ",[47,721,722],{},"安装",[32,724],{"alt":34,"src":725},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100816094.webp","\nInstallation complete.\n",[32,728],{"alt":34,"src":729},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100839744.webp",[423,731,732],{"start":216},[426,733,734],{},"FTDI driver",[15,736,737],{},[32,738],{"alt":34,"src":739},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768101118029.webp",[15,741,742],{},[32,743],{"alt":34,"src":744},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768101142315.webp",[15,746,747],{},"Similarly, extract the downloaded archive.",[15,749,750],{},[32,751],{"alt":34,"src":752},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768101174406.webp",[15,754,755],{},"Right-click each of the two below, then click Install.",[15,757,758],{},[32,759],{"alt":34,"src":760},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768101274422.webp",[15,762,763],{},[32,764],{"alt":34,"src":729},[423,766,767],{"start":228},[426,768,769,770],{},"CH340 driver\nOpen the website below.\n",[19,771,772],{"href":772,"rel":773},"https://www.wch.cn/products/ch340.html",[23],[15,775,776],{},[32,777],{"alt":34,"src":778},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100958652.webp",[15,780,781],{},[32,782],{"alt":34,"src":783},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768100976886.webp",[15,785,786],{},[32,787],{"alt":34,"src":788},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768101016790.webp",[15,790,791],{},[32,792],{"alt":34,"src":793},"https://cdn.tungchiahui.cn/tungwebsite/assets/images/2026/01/07/1768101038694.webp",[795,796,797],"style",{},"html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}",{"title":45,"searchDepth":216,"depth":216,"links":799},[800,801],{"id":12,"depth":228,"text":13},{"id":506,"depth":228,"text":507},"/en-us/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian","2",2000000,"2026-01-07","wiki/2026-01-07-esp32-jiao-cheng","en-us:2026-01-07-esp32-jiao-cheng","/en-us/wiki/2026-01-07-esp32-jiao-cheng","ESP32教程","md","wiki/2026-01-07-ESP32教程/ch2-ESP32环境搭建",false,true,null,"en-US","en-us",{},{"title":5,"description":45},"/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian","_i18n/en-us/wiki/2026-01-07-ESP32教程/ch2-ESP32环境搭建","QJlo6I6HLvXCQAkNqqnqMiPyl29uX6eAiRUCwIOzFNI",[823,829,830,836,842],{"path":824,"stem":825,"title":826,"date":805,"chapter":827,"chapterSort":828,"docKey":807,"docRoot":808,"docTitle":809,"isWikiDoc":813,"isWikiIndex":812},"/en-us/wiki/2026-01-07-esp32-jiao-cheng/ch1-jian-jie","_i18n/en-us/wiki/2026-01-07-ESP32教程/ch1-简介","Introduction","1",1000000,{"path":802,"stem":820,"title":5,"date":805,"chapter":803,"chapterSort":804,"docKey":807,"docRoot":808,"docTitle":809,"isWikiDoc":813,"isWikiIndex":812},{"path":831,"stem":832,"title":833,"date":805,"chapter":834,"chapterSort":835,"docKey":807,"docRoot":808,"docTitle":809,"isWikiDoc":813,"isWikiIndex":812},"/en-us/wiki/2026-01-07-esp32-jiao-cheng/ch3-can-kao-shi-pin","_i18n/en-us/wiki/2026-01-07-ESP32教程/ch3-参考视频","Reference video","3",3000000,{"path":837,"stem":838,"title":839,"date":805,"chapter":840,"chapterSort":841,"docKey":807,"docRoot":808,"docTitle":809,"isWikiDoc":813,"isWikiIndex":812},"/en-us/wiki/2026-01-07-esp32-jiao-cheng/ch4-jiao-cheng","_i18n/en-us/wiki/2026-01-07-ESP32教程/ch4-教程","Tutorial","4",4000000,{"path":808,"stem":843,"title":844,"date":805,"chapter":814,"chapterSort":845,"docKey":807,"docRoot":808,"docTitle":809,"isWikiDoc":813,"isWikiIndex":813},"_i18n/en-us/wiki/2026-01-07-ESP32教程/index","ESP32 tutorial",0,{"variants":847},[848,849,852,855,858],{"path":802,"localeSlug":816,"i18nKey":811},{"path":850,"localeSlug":851,"i18nKey":811},"/zh-hant/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian","zh-hant",{"path":853,"localeSlug":854,"i18nKey":811},"/zh-hk/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian","zh-hk",{"path":856,"localeSlug":857,"i18nKey":811},"/zh-tw/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian","zh-tw",{"path":859,"localeSlug":860,"i18nKey":811},"/zh-cn/wiki/2026-01-07-esp32-jiao-cheng/ch2-esp32-huan-jing-da-jian","zh-cn",[802,819,850,819,853,819,856,819,859,819],1780663020902]