VS Cose + PlatformIO +ESP32-S3 + ESPIDF开发环境安装卡壳持续等待问题解决

问题描述与背景

搭建VS Code + PlatformIO + ESP32-S3 + ESP-IDF 开发环境时遇到了下载问题、安装问题、新建项目持续等待、编译报错等问题,折腾了很长时间,静下心来逐个分析问题,借助大模型、网络帖子等多种方式,终于解决,简单总结笔记如下。

理想状态下官方给的安装步骤:

    1. 下载VS,安装VS
    1. 在VS的Extension中检索PlatformIO IDE,点击Install,等待安装完成
    1. 安装成功后,重启,新建Project
    1. 等待新建成功,
    1. build项目,确认环境是否安装成功。

实际安装遇到的问题

    1. 没有安装依赖环境(如C/C++,ESP-IDF插件、python环境、git)
      如果没有安装会导致编译时报各种错,例如下面这2个报错是python环境和git的问题,提前安装好依赖环境即可解决这些问题。
      No pyvenv.cfg file
      Reading CMake configuration...
      -- git rev-parse returned 'fatal: not a git repository (or any of the parent directories): .git'
      -- Configuring incomplete, errors occurred!
    1. 国外源,安装、下载、初始化,均会遇到很慢,或漏下,下载不全出的错误,需要持续等待很长时间,最后还有可能报错。我后来抛弃了让IDE自己下载安装文件的方式,采用了pip下载并安装,成功解决了以上这些问题。

安装过程

  1. VS安装成功后,不能急着安装 PlatformIO ,先安装依赖环境C/C++
  2. 然后安装ESP-IDF,我安装的是ESP-IDF5.4
  3. 接着安装python,注意版本要与ESP-IDF的版本匹配,我选择了python3.10,比较通配
  4. 还要安装git,后续再编译工程文件时idf.cmake中 会有对Git的引用。如果不安装也会报错
  5. 配置参数:找到settings,随便找一个edit in settings.json进入编辑页面
  6. 增加settings如红框所示:配置指定了platformio-ide不使用ide默认都PIOCore和Python,指向用户自己安装的python3.10的路径,设定阿里镜像,缓解速度问题( "platformio-ide.useBuiltinPIOCore": false,
    "platformio-ide.useBuiltinPython": false,
    "platformio-ide.customPATH": "C:\Users\chend\AppData\Local\Programs\Python\Python310\Scripts", /* 设置不自动更新 */
    "platformio-ide.customPyPiIndexUrl": "https://mirrors.aliyun.com/pypi/simple/",)
  7. 设置好参数后,在vs中进入extensions,找到platformIO IDE,点击install,等待几分钟,安装好后
  8. 打开cmd,使用pip下载platformio:(pip install -i https://pypi.tuna.tsinghua.edu.cn/simple platformio)

    pip安装好以后,查看一下,可以看到platformIO的版本
  9. 用pio命令下载开发板的工具文件(pio project init --board esp32-s3-devkitc-1)

    等待十几分钟,提示project初始化成功
  10. 打开vs code,点击左侧的小蚂蚁头-QuickAccess-Open-New Project,新建esp32-s3的项目,选择乐鑫的esp32-s3开发板,框架选择ESPidf,几分钟后即可新建完成(再也不会让等待很久还是不停的下载东西,最后还无法编译通过)
  11. 点击对勾,尝试编译新项目,编译成功,环境问题终于解决了!这一路走过的弯路和各种尝试,都是值得的,总结一句话,遇到问题分析、解决,循环,只要够坚定,试错99次,第一百次也就是正确方法。
相关推荐
counting money37 分钟前
Java IO流详解:从InputStream到文件操作实战
java·开发语言·python
wuyk5551 小时前
98.C语言易混难点:字符数组与字符串指针的底层差异
c语言·开发语言·c++·stm32·嵌入式硬件·算法
坚持学习前端日记1 小时前
Python SQLAlchemy ORM 从0到1精通实战手册(基础到复杂高阶)
数据库·python·oracle
北斗落凡尘2 小时前
LangGraph 入门实战(11)--输出模式
后端·python·langchain
雪碧聊技术2 小时前
安装Python(保姆级教程)
python·版本更新·python下载
++==2 小时前
JSON和Python的 四种核心容器
python·json
恒锐丰-罗生2 小时前
国产 H 桥驱动 SS6289|18V/4A 有刷电机驱动芯片性与应用分析 内置采样 + 多保护,门锁 / 机器人优选器件
驱动开发·嵌入式硬件·硬件工程
数字新视界4 小时前
动环监控信创适配助力机房管理智能化转型
物联网·数据中心·动环监控·微模块机房·模块化机房
张龙6875 小时前
uv 全面指南:比 pip 快 100 倍的 Python 包管理器,从安装到团队落地
后端·python