在 ESP32 上刷写 NodeMCU

Flashing NodeMCU on ESP32

这里是 ESP8266 和 ESP32 菜鸟。我买了几个 ESP32 modules,我正在尝试在它们上面安装 NodeMCU(它们只附带了一些示例代码)。

我使用云生成器创建了一个固件映像并尝试将其刷入设备(后来,我也自己构建了它,结果相同)。经过一些实验,我发现引导加载程序希望固件从闪存中的 0x1000 开始,而不是 0x0000(我阅读了原始闪存内容以确认这一点),因此我将固件从 0x1000 闪存。我可以使用 read_flash(或其他方法)确认固件已正确刷新。但是当我连接串口看输出是什么的时候,一开始是这样的:

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0x00
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x01,hd_drv:0x00,wp_drv:0x04
mode:DIO, clock div:2
load:0x260513e7,len:0
load:0x46007200,len:65534
1162 mmu set 00010000, pos 00010000
load:0x65920020,len:-491131
1162 mmu set 00020000, pos 00020000
1162 mmu set 00030000, pos 00030000
1162 mmu set 00040000, pos 00040000
1162 mmu set 00050000, pos 00050000
1162 mmu set 00060000, pos 00060000
1162 mmu set 00070000, pos 00070000
1162 mmu set 00080000, pos 00080000
1162 mmu set 00090000, pos 00090000
1162 mmu set 000a0000, pos 000a0000
1162 mmu set 000b0000, pos 000b0000
ets Jun  8 2016 00:22:57

然后一遍又一遍地循环:

rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0x00
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x01,hd_drv:0x00,wp_drv:0x04
mode:DIO, clock div:2
load:0x260513e7,len:0
load:0x46007200,len:65534
1162 mmu set 00010000, pos 00010000
load:0x65920020,len:-491131
1162 mmu set 00020000, pos 00020000
1162 mmu set 00030000, pos 00030000
1162 mmu set 00040000, pos 00040000
1162 mmu set 00050000, pos 00050000
1162 mmu set 00060000, pos 00060000
1162 mmu set 00070000, pos 00070000
1162 mmu set 00080000, pos 00080000
1162 mmu set 00090000, pos 00090000
1162 mmu set 000a0000, pos 000a0000
1162 mmu set 000b0000, pos 000b0000
ets Jun  8 2016 00:22:57

在这一点上,我完全迷失在可能出错的地方,感谢任何帮助。

最终 - 解决方案是使用 nodemcu 的 esp32 分支,如我上面的评论所示。标准分支仅适用于 ESP8266。