Skip to content

Crash on auto reload on ESP32S2 #5132

@Neradoc

Description

@Neradoc

CircuitPython version

Adafruit CircuitPython 7.0.0-alpha.6 on 2021-08-12; FeatherS2 with ESP32S2

All the way down to:

Adafruit CircuitPython 7.0.0-alpha.5-117-gbe2342f32 on 2021-08-06; FeatherS2 with ESP32S2

Code/REPL

# code.py
while True:
  pass

Behavior

On file saving, when the code is running, the board disconnects from USB and resets (and comes back).

Description

  • Happens if the code is running, even during a single time.sleep() (no while loop).
  • Doesn't seem to happen if the code has finished.
  • Reproduced on mac and windows.
  • Reproduced with two different Feather S2 and a FunHouse.
  • Reproduced with or without TinyUF2.
  • Manual reload from the REPL (ctrl-C ctrl-D) doesn't cause a reset.
  • Adding supervisor.disable_autoreload() to code.py stops the issue (saving a file doesn't cause a reset).

It now resets to safe mode, but it used to reset to normal mode with tinyuf2 (on the feather). It might be because I updated it with update.uf2, but now after different tests I erased the flash and reinstalled tinyuf2 from bin. I don't know if that is related to that issue, but it's worth noting that one might or might not see safe mode after reset.

be2342f32 is the earliest version I could reproduce the issue with, so it seems related to #5072

Additional information

Reported on discord by Docteh with a generic wrover module.

Metadata

Metadata

Assignees

Labels

bugcrashespressifapplies to multiple Espressif chips

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions