如何编译 ESP32 NodeMCU 固件

ESP32 的 NodeMCU 固件基于乐鑫 esp-idf,目前尚且处于开发阶段。

下载代码

cd /cygdrive/d/ESP32 (进入你的工程目录)
git clone  -b dev-esp32 --recursive https://github.com/nodemcu/nodemcu-firmware.git (必须添加--recursive 属性,否则无法全部拉取所有模块)
cd nodemcu-firmware

若未添加 –recursive,请执行 git submodule update –init 重新强制拉取所有子模块。

配置信息

注意:NodeMCU-ESP32 使用自定义分区,默认的分区信息文件为 components/platform/partitions-2MB.csv,需要将此文件拷贝到 nodemcu-firmware 工程目录下。

详细的配置方法请参考 esp32_idf_menuconfig

打开 cygwin 终端或在 Eclipse 中执行 Make Menuconfig

cd nodemcu-firmware (进入你的工程目录)
make menuconfig

配置串口

配置 Partition Table

修改代码

因为自动检测 Flash 大小并修改固件 Header 的部分暂时存在一些问题,所以目前可以屏蔽掉该段信息。该函数的位置为 components/base_nodemcu/user_main.c 第 108 行。

下载固件

执行 make flash 进行自动下载

或使用 ESP_DOWNLOAD_TOOLS 进行下载

验证固件

结束

至此已经完成了 ESP32 NodeMCU-Firmware 的编译。