ESP-IDF安装
推荐使用esp-idf 安装工具安装。
- 下载esp-idf工具安装器dl.espressif.cn/dl/esp-idf/?idf=4.4
- 根据需要选择安装包。下载第二个或者第三个。
- 双击安装包,选择语言。
- 同意协议,检查安装环境。
- 设置工具的安装路径。
- 选择需要安装的组件,安装。
- 安装完成。
参考:esp-idf 安装(Windows ) - 浇筑菜鸟 - 博客园 (cnblogs.com)
安装后遇到的问题
- 之前下载过 IDF 与 IDE,如何卸载?
直接利用控制面板卸载即可。然后看下设置里环境变量里有没有删除,然后删除安装后的文件夹即可。
- 安装不同版本的IDF,需要改变安装目录的名称,区别于之前安装的IDF,以防覆盖。
- 因为之前安装的版本较低,现在编译之前的项目工程会出现问题
解决方式:
-
ESP32 IDF5.0 已经移出很多组件。如果直接用5.0环境编译4.0的工程可能会报错。使用移除的组件(libsodium、cbor、jsmn、esp_modem、nghttp、mdns、esp_websocket_client、asio、freemodbus、sh2lib、expat、coap、tjpgd、tinyusb)
解决此问题有两种方法。建议用第②种。
①将mdns服务组件作为托管组件。(存在目录混乱问题)
调用指令即可在工程目录生成。idf.py add-dependency “espressif/mdns^1.1.0”
②下载mdns.gz 并解压到comments里。
参考:
①[ESP-ADF的某个模块(JSMN)无法下载,编译报错 - ESP32 Forum]
② ESP32-C3入门教程 ESP-IDF 5.x篇①——ESP-IDF V5.0.1编译报错:Failed to resolve component ‘jsmn‘._小康师兄的博客-CSDN博客、
③ESP32-解决“compoenent mdns could not be found“问题_learn_coder的博客-CSDN博客
ESP-ADF 的安装
-
获取ESP ADF
打开要把ADF安装到那里的文件夹,在文件夹下输入命令
git clone --recursive https://github.com/espressif/esp-adf.git
-
安装过后,会出现几个文件的克隆失败,分别是
esp-idf
、esp-idf-libs
(adf音频库)、esp-sr
(adf语音识别库),因为这些库在esp-idf-master仓库下都是以分支branch链接形式存储的。需要单独安装。-
在
esp-adf-libs
目录下执行:git clone https://gitclone.com/github.com/espressif/esp-adf-libs
-
在
esp-sr
目录下执行:git clone https://gitclone.com/github.com/espressif/esp-sr.git
-
在
esp-idf
目录下执行:git clone https://gitclone.com/github.com/espressif/esp-idf
-
-
安装完成后 在esp-adf目录下执行命令
git submodule update --init
,将子模块完成同步。
-
打开系统环境变量设置,添加ADF安装路径
设置成功后,在命令行中输入命令
echo %ADF_PATH%
,应该返回ESP-ADF 目录的路径。 -
编译DEMO测试。
参考:
① ESP32学习笔记(37)——搭建ESP-ADF(乐鑫音频开发框架)_esp32 opus-CSDN博客
②[004] [ESP32开发笔记] 音频开发框架ADF环境搭建——基于ESP-IDF_esp32 音频开发_柯西的彷徨的博客-CSDN博客
③ESP32S2 ES8388 ADF坑 esp-adf-libs 缺失问题解决 - 知乎 (zhihu.com)
安装后遇到的问题
-
编译DEMO时,编译不成功,缺少文件
错误日志:
fatal error: audio type_def.h: No such file or directory
打补丁时遇到的错误
error:can't open patch '$adf_path/idf_patches/idf_v4.4_freertos.patch':no such file or directory
原因:没有找到这个文件或者打不开这个文件,可能是补丁路径错误
解决:输入正确的路径
-
补丁不能使用,产生冲突
解决:查看冲突信息,将产生冲突的地方,手动修改需要打补丁的文件