问题描述
我的NodeMCU程序进入了无限重启循环.
My NodeMCU program has gone in to infinite reboot loop.
我的代码在功能上正常运行,但是我尝试执行的任何操作(例如file.remove("init.lua")
或什至是=node.heap()
,它会惊慌并重新启动,并说:PANIC: unprotected error in call to Lua API (not enough memory)
.
My code is functionally working but any action I try to do, e.g. file.remove("init.lua")
or even just =node.heap()
, it panics and reboots saying: PANIC: unprotected error in call to Lua API (not enough memory)
.
因此,我无法更改任何代码或删除init.lua
来停止自动执行代码.
Because of this, I'm not able to change any code or delete init.lua
to stop automatic code execution.
如何恢复?
推荐答案
我尝试重新刷新另一个版本的NodeMCU,但是它开始在串行端口中发出垃圾.
I tried re-flashing another version of NodeMCU, but it started emitting garbage in serial port.
然后,我回想起NodeMCU还有两个额外的文件:blank.bin
和esp_init_data_default.bin
.
Then, I recalled that NodeMCU had two extra files: blank.bin
and esp_init_data_default.bin
.
我分别在0x7E000
和0x7C000
闪烁了它们.
I flashed them at 0x7E000
and 0x7C000
respectively.
它们在NodeMCU闪存中也可以作为INTERNAL://BLANK
和INTERNAL://DEFAULT
来使用.
They are also available as INTERNAL://BLANK
and INTERNAL://DEFAULT
in the NodeMCU flasher.
这引导了新的NodeMCU固件,我所有的文件都消失了,并且我进入了无限重启循环.
This booted the new NodeMCU firmware, all my files were gone and I'm out of infinite reboot loop.
这篇关于如何从NodeMCU中的无限重启循环中恢复?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!