ESP-IDF idf.py
常用命令手册
适用于 ESP32 / ESP32-S2 / ESP32-S3 系列开发板
作者环境:macOS + CLion + ESP-IDF v5.x
🧱 项目构建相关
📦 创建新项目
命令 说明 idf.py create-project <项目名>
创建新项目 idf.py build
编译整个项目,生成 .bin
等固件文件 idf.py clean
清除编译输出,但保留 sdkconfig
idf.py fullclean
清除所有生成文件和缓存(常用于切换目标芯片) idf.py reconfigure
重新运行 CMake
配置(如修改 CMakeLists.txt 后) idf.py save-defconfig
用于将当前配置(即 .config 文件的内容)保存为一个默认配置文件(通常为 defconfig),方便版本控制或备份。
sdkconfig.defaults:(使用idf.py save-defconfig生成的)
# This file was generated using idf. py save- defconfig. It can be edited manually.
# Espressif IoT Development Framework ( ESP- IDF) 5.3 .3 Project Minimal Configuration
#
CONFIG_IDF_TARGET= "esp32s3"
CONFIG_ESPTOOLPY_FLASHSIZE_16MB= y
推荐开发流程
idf.py set-target esp32s3
idf.py fullclean
idf.py menuconfig
idf.py build
idf.py -p /dev/cu.usbserial-XYZ flash monitor
🔄 目标芯片配置
命令 说明 idf.py set-target esp32
设置目标为 esp32
idf.py set-target esp32s3
设置目标为 esp32s3
idf.py get-target
显示当前配置的芯片目标
⚠️ 修改目标后建议执行:idf.py fullclean
🔌 烧录与串口监视
命令 说明 idf.py flash
烧录固件到 ESP 芯片 idf.py -p /dev/ttyUSB0 flash
指定串口烧录(适配 macOS 或 Linux) idf.py monitor
启动串口监视,查看芯片输出日志 idf.py -p /dev/ttyUSB0 flash monitor
烧录后自动进入监视 idf.py erase-flash
擦除整片 Flash(慎用)
⚙️ 项目配置与大小分析
命令 说明 idf.py menuconfig
启动图形化配置菜单,生成 sdkconfig
idf.py size
查看构建后的固件大小 idf.py size-components
查看各组件的空间占用详情
🛠️ 开发调试辅助
命令 说明 idf.py list-targets
查看支持的目标芯片 idf.py help
显示所有支持的子命令及说明
✅ 推荐命令组合示例
idf.py set-target esp32s3
idf.py fullclean
idf.py menuconfig
idf.py build
idf.py -p /dev/tty.usbserial-XYZ flash monitor