明确ADF对应的IDF版本
ADF v2.1、v2.0 官网上说的支持v3.3、v4.0、v4.1,但是推荐v3.3,经过实际运行测试发现,v4.0等可以,但是支持不全面,有些Demo完全不支持,所以一定要使用支持的v3.3
编码获取
ADF基于IDF 3.3版本,IDF3.3只支持Linux版本,所以需要在Linux上编译,这里使用的是Ubuntu,下面指令也都是Ubuntu上使用
基础软件安装
sudo apt-get install git wget flex bison gperf python python-pip python-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util
下载ADF
直接下载ADF,不需要单独下载IDF,ADF项目内包含了对应的IDF,直接用使用该IDF版本
注意要递归子模块
cd ~/esp git clone --recursive https://github.com/espressif/esp-adf.git
如果没有递归直接克隆将不包含子模块,进入目录使用该命令递归
git submodule update --init --recursive
如果git太慢,可考虑使用一些加速
https://gitclone.com/docs/howto/howto_github
安装相关工具
直接使用内置的install.sh进行安装
注意,如果在windows系统下载的源码再拷贝到linux上有些文件会损坏,会有一些运行权限等问题,这里建议直接在linux中下载
检出发布版本
注意相对应的检出子模块对应的版本,第二条命令
git checkout v2.1 git submodule update --init --recursive
进行安装
运行内置idf下的install.sh
cd esp-idf ./install.sh
设置环境变量
先设置idf环境,直接运行idf下的export.sh
. ./export.sh
上面命令设置了idf环境,接下载设置adf环境(2020.9.25乐鑫B站Linux adf环境搭建教程视频内容该处错误)
export ADF_PATH=~/esp/esp-adf
串口权限设置
此时环境已经设置好,可以正常编译运行Demo
在下载是会提示串口权限不够,需要添加串口的权限
sudo usermod -a -G dialout $USER