Postby ESP_Angus » Tue Jun 26, 2018 12:00 am
I think the "simple reboot" in this case is probably a software reset, at least this is how I read it.
The are some differences between hard resets (power cycle or EN pin toggled) and soft resets. The ESP32 TRM gives some details about the different subsystems reset in each case.
Ideally, a reset via esp_restart() (or Arduino ESP.restart(), which is the same thing) should be functionally equivalent to a hard reset in terms of resetting core hardware like the WiFi subsystem. Although some of this is done in software by esp_restart() disabling some subsystems before it triggers the soft reset. If this doesn't happen cleanly, it's a bug.
For resets due to crashes, some subsystems may keep running until ESP-IDF restarts and resets them. However also in this case, any problems with subsystems like WiFi is also due to a bug (it should be able to recover from any reset case).
Will comment on the GitHub issue as well.
Angus