Docker中编译esp32
Usbipd
Windows中用docker搞嵌入式硬件,安装一个usbipd,启动wsl之后把硬件映射到wsl中。
usbipd list -->usbipd bind-->usbipd attach
detach和unbind可用可不用
下载espressif/idf docker镜像
启动Docker
启动WSL
VS Code中进入WSL
安装插件:Dev Containers,Remote Explorer,Remote SSH,Container Tools,WSL等
之后进入WSL
创建一个目录
用于放置工程文件.
powershell
mkdir -p ~/esp_projects
进入容器
powershell
docker run -it --rm -v ~/esp_projects:/esp_projects --device /dev/ttyUSB0:/dev/ttyUSB0 espressif/idf:release-v5.2 /bin/bash
-it /bin/bash:交互模式启动,保持终端连接,以便命令交互
--rm:容器退出后自动删除,常用的话可以去掉这个参数
--privileged:如果要对esp32芯片烧录须加这个,解决硬件权限问题
-v ~/esp_projects:/esp_projects:把wsl本地目录挂载到容器里,文件双向同步,本地改代码容器里实时生效
--device:输入实际的硬件接口名称
espressif/idf:release-v5.2:docker镜像
idf.py
进入工程目录,idf.py set-target --> idf.py build --> idf.py flash --> idf.py monitor