NodeMCU WebREPL doesn't work any more

All ESP8266 boards running MicroPython.
Official boards are the Adafruit Huzzah and Feather boards.
Target audience: MicroPython users with an ESP8266 board.
Post Reply
allankliu
Posts: 11
Joined: Fri Mar 30, 2018 11:13 am

NodeMCU WebREPL doesn't work any more

Post by allankliu » Fri Mar 30, 2018 11:23 am

I have flashed the latest firmware v1.9.3 to my NodeMCU. After serveral days development, the webREPL doesn't boot anymore. I tried to erase flash and reprogram the firmware, but the issue still exist. Now if I rebot the board, I got

-------------------------
PYB: soft reboot
#7 ets_task(40100130, 3, 3fff837c, 4)
WebREPL is not configured, run 'import webrepl_setup'
OSError: [Errno 2] ENOENT
MicroPython v1.9.3-8-g63826ac5c on 2017-11-01; ESP module with ESP8266
Type "help()" for more information.
-------------------------

And I tried import webrepl_setup loop and follow the steps, but if I try to run webrepl, it still report error like:

>>> import webrepl_setup
WebREPL daemon auto-start status: enabled

Would you like to (E)nable or (D)isable it running on boot?
(Empty line to quit)
> E
Would you like to change WebREPL password? (y/n) y
New password (4-9 chars): mypassword
Confirm password: mypassword
No further action required
>>> import webrepl
>>> webrepl.start()
WebREPL is not configured, run 'import webrepl_setup'

Any clues? I know ENOENT stands for insufficient memory, but ESP-12F is used in NodeMCU, and I have succefully run webrepl before. So, it is not the issue. But reprogramming doesn't help either.

Henrique Miranda
Posts: 9
Joined: Sun Mar 18, 2018 3:05 pm

Re: NodeMCU WebREPL doesn't work any more

Post by Henrique Miranda » Sat Mar 31, 2018 6:01 pm

After erase board using esptool.py, before set sta_if try to configure webrepl first. I got same error if i set sta_if before configure webrepl.

allankliu
Posts: 11
Joined: Fri Mar 30, 2018 11:13 am

Re: NodeMCU WebREPL doesn't work any more

Post by allankliu » Mon Apr 02, 2018 1:00 am

Hi, Henrique,

After erasing Flash with esp tool, the boot code is:

Code: Select all

# This file is executed on every boot (including wake-boot from deepsleep)
#import esp
#esp.osdebug(None)
import gc
import webrepl
webrepl.start()
gc.collect()
And then I tried to entery

Code: Select all

>>> import webrepl_setup
>>> webrepl.start()
So, I haven't swithed ESP8266 to STA mode at that momenet yet. Now everytime I reboot the board, I got following errors:

Code: Select all

PYB: soft reboot
#6 ets_task(40100130, 3, 3fff838c, 4)
OSError: [Errno 2] ENOENT
OSError: [Errno 2] ENOENT
MicroPython v1.9.3-500-gbc3a5f19 on 2018-03-30; ESP module with ESP8266
Type "help()" for more information.

>>> import webrepl
>>> webrepl.start()
WebREPL is not configured, run 'import webrepl_setup'

>>> import webrepl_setup
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "webrepl_setup.py", line 102, in <module>
  File "webrepl_setup.py", line 71, in main
  File "webrepl_setup.py", line 40, in get_daemon_status
OSError: [Errno 2] ENOENT
I can reprogram the firmware, but I just wondering why reprogramming firmware cannot remove such error? And why WebREPL can boot at very first time? Is there any hidden persistance inside ESP8266 MicroPython?

Post Reply