nodemcu自定义固件构建问题

时间:2016-09-15 13:28:41

标签: lua upgrade esp8266 firmware nodemcu

大家好:)我用云构建服务构建了一个固件。固件是主设备,包括“adc,file,gpio,http,mqtt,net,node,ow,spi,tmr,uart,wifi”,还支持SSL。 使用ESP 07和以前版本的固件是nodeMCU 0.9.6,这是正确工作但不支持我需要的一些模块。 要刷新固件,我使用NodeMCU闪光灯进行以下设置: Streaming API

我将二进制固件文件上传到地址0x00000和esp_init_data_default.bin,它来自ESP8266_NONOS_SDK_V1.5.4.1(从nodemcu网站下载)到地址0x7c000。 完成上传后,模块会非常主动地在控制台上打印垃圾。 我再次上​​传了nodeMCU 0.9.6以检查问题是否是因为我闪存固件的方式,但事实并非如此。该模块使用上传的nodeMCU 0.9.6井。

非常感谢:)

3 个答案:

答案 0 :(得分:0)

ESP-07是一个512KB的模块。因此,

  • 闪光模式为qio
  • 闪存大小为512KB

所有必需的设置都记录在http://nodemcu.readthedocs.io/en/latest/en/flash/

因此,使用esptool.py命令如下:

esptool.py --port <serial-port-of-ESP8266> write_flash -fm qio -fs 4m 0x00000 <nodemcu-firmware>.bin 0x7c000 esp_init_data_default.bin

esp_init_data_default.bin包含在http://bbs.espressif.com/download/file.php?id=1572中,因为上面链接的文档说明了这一点。

答案 1 :(得分:0)

我遇到了同样的问题。我做了以下步骤,这解决了我的问题。 在刷新新固件之前,请确保您的芯片已完全擦除。您可以使用下面的命令“serial-port-of-ESP8266”可能会有所不同:

esptool.py --port <serial-port-of-ESP8266> erase_flash

然后使用与用于刷新nodeMCU 0.9.6相同的技术将固件刷新到芯片。您可以参考下面的命令,这是我用于闪烁的命令。

esptool.py --port /dev/ttyACM0 write_flash -fm qio 0x00000 nodemcu-master-8-modules-2016-12-16-09-52-59-float.bin

答案 2 :(得分:0)

你提到垃圾被打印到控制台。这可能表示串行端口参数不匹配。可能需要花几分钟时间来处理您用来显示串行输出的工具的速度/奇偶校验设置。尝试使用Putty或Coolterm作为“原始”输出,因为这些应用程序不会尝试解释响应。