Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Random crash; flashing nodemcu firmware seems to fix it, don't know why #1908

Closed
rayshobby opened this issue Apr 14, 2016 · 1 comment
Closed

Comments

@rayshobby
Copy link

rayshobby commented Apr 14, 2016

Basic Infos

Hardware

Hardware: ESP-12E
Core Version: 2.1.0-stable

Description

I've encountered a strange issue where among about 30 boards I flashed with the same firmware, a small number randomly crashes with the following stack dump. However, I discovered that after flashing the boards with the nodemcu firmware (0.9.6), and re-flash the Arudino program, the issue is magically gone. I am trying to make sense of this. Does anyone know what may have been the cause? Thanks.

Stack dump:
3fff0c10: 00000000 4021b0b0 3fff341c 00000200
3fff0c20: 00000005 00000000 00000020 40101daa
3fff0c30: 3ffe97d5 40105087 3ffed238 3fff3600
3fff0c40: 40102abd 3ffed238 3ffefebc 402035d8
3fff0c50: 00007fff 02144332 3ffedc10 40102c4c
3fff0c60: 3ffea08c 00000004 3fff0cc0 3fff0cd1
3fff0c70: 40106fa0 00000000 3fff4380 00000484
3fff0c80: 3fff0e67 3ffea08c 000000a5 00000001
3fff0c90: 00000001 00000000 00000000 3fff0c20
3fff0ca0: 401003ec 02144332 00002200 4000050c
3fff0cb0: 3fff0cd0 3fff0cc0 00000004 00000022
3fff0cc0: 3ffea080 3ffe8e50 3fff4380 0000006f
3fff0cd0: 000000a5 3fff3efc 00000020 40101daa
3fff0ce0: 3ffe97d8 40101a55 00000002 4010031d
3fff0cf0: 00000005 00002eb8 3ffefd50 40100426
3fff0d00: 00000002 4010170b 00000002 40100537
3fff0d10: 00000001 00001000 00000484 401006f5
3fff0d20: 00000484 00001000 000003fe 40107074
3fff0d30: 40004b31 3fff0d60 0000001c 40231c0d
3fff0d40: 40105fb2 40231cf5 3fff3efc 000003ff
3fff0d50: 000003fd 3fff0e67 3fff3efc 000003fd
3fff0d60: ffffff01 55aa55aa 00000035 0000001c
3fff0d70: 0000001c 00000019 0000001b 000003ff
3fff0d80: 402320e4 3fff3efc 3fff3efc 000000ff
3fff0d90: 00000001 3fff0e87 4023223f 00000008
3fff0da0: 3fff3efc 000000ff 3fff0e67 00000000
3fff0db0: 3fff3fbc 3fff0ec8 00000001 402322cc
3fff0dc0: 3fff0e67 3fff3efc 00000000 00000004
3fff0dd0: 3fff0e87 3fffa234 3fff3efc 00000000
3fff0de0: 40232308 3fff1f0c 3fff1ecc 5d000a0d
3fff0df0: 40207916 3fff1ecc 3fff1f0c 40207856
3fff0e00: 3fff1800 0000000d 3fff0f10 40211122
3fff0e10: 3fff1fcc 00000001 3ffe8ba5 40210109
3fff0e20: 00000000 00640400 0104a8c0 00ffffff
3fff0e30: 0104a8c0 00000007 3ffefdd4 4020e0b5
3fff0e40: 3ffe8ba4 3fff0ed0 3ffefba0 402112d0
3fff0e50: 40231902 00000003 00000000 3fff18a4
3fff0e60: ffffff00 66ffffff 66656572 0000796c
3fff0e70: 00000001 3fff28e8 3fff3a6c 401008c8
3fff0e80: 3ffe8ba6 6fff28e8 646e6570 00726f6f
3fff0e90: 3fff3254 00000001 3ffe8ba5 40210754
3fff0ea0: 00000000 00000000 00000000 3fff1ecc
3fff0eb0: 3fff1f0c 00000010 3ffefdf4 4020e121
3fff0ec0: 3ffe8ba4 0000000f 4020f7a4 3ffeff60
3fff0ed0: 3ffef90c 00000000 00000001 4021082c
3fff0ee0: 3fff1f0c 00000000 3ffefdf4 3fff1ecc
3fff0ef0: 3fff1f0c 00000000 00000001 4020b370
3fff0f00: 00000000 3fff3394 3ffefbac 3ffeff54
3fff0f10: 3fffdad0 3ffefb8c 3ffeff4d 4020dda9
3fff0f20: 3ffe8fe8 0104a8c0 4020fd54 4020fd40
3fff0f30: 00000000 00000000 00000000 4020cdcc
3fff0f40: feefeffe feefeffe feefeffe 3ffeff54
3fff0f50: 3fffdad0 00000000 3ffeff4d 402071f0
3fff0f60: feefeffe feefeffe feefeffe 4020f7f0
3fff0f70: feefeffe feefeffe 3ffeff60 40100958

Decoded version:
0x4021b0b0: ieee80211_output_pbuf at ?? line ?
0x40101daa: pp_post at ?? line ?
0x40105087: lmacRxDone at ?? line ?
0x40102abd: trc_NeedRTS at ?? line ?
0x402035d8: spiffs_phys_wr at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/spiffs/spiffs_cache.c line 204
0x40102c4c: trc_NeedRTS at ?? line ?
0x40106fa0: printf at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/libc_replacements.c line 206
0x401003ec: check_poison at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/umm_malloc/umm_malloc.c line 809
: (inlined by) check_poison_block at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/umm_malloc/umm_malloc.c line 843
0x40101daa: pp_post at ?? line ?
0x40101a55: ppEnqueueRxq at ?? line ?
0x4010031d: check_poison at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/umm_malloc/umm_malloc.c line 817
0x40100426: check_poison_block at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/umm_malloc/umm_malloc.c line 851
0x4010170b: ppProcessTxQ at ?? line ?
0x40100537: check_poison_all_blocks at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/umm_malloc/umm_malloc.c line 880
0x401006f5: calloc at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/umm_malloc/umm_malloc.c line 1667
0x40107074: pvPortZalloc at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/heap.c line 33
0x40231c0d: wifi_param_save_protect_with_check at ?? line ?
0x40105fb2: spi_flash_read at ?? line ?
0x40231cf5: system_param_save_with_protect at ?? line ?
0x402320e4: wifi_station_ap_number_set at ?? line ?
0x4023223f: wifi_station_ap_number_set at ?? line ?
0x402322cc: wifi_station_ap_number_set at ?? line ?
0x40232308: wifi_station_set_config at ?? line ?
0x40207916: ESP8266WiFiSTAClass::begin(char const_, char const_, int, unsigned char const_, bool) at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp line 635
0x40207856: ESP8266WiFiSTAClass::begin(char const_, char const_, int, unsigned char const_, bool) at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp line 635
0x40211122: String::~String() at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/WString.cpp line 120
0x40210109: _fpclassifyd at ?? line ?
0x4020e0b5: BlynkProtocol at /home/ray/Desktop/arduino-1.6.5-r5/libraries/Blynk/Blynk/BlynkProtocol.h line 45
: (inlined by) BlynkWifi at /home/ray/Desktop/arduino-1.6.5-r5/libraries/Blynk/BlynkSimpleEsp8266.h line 29
: (inlined by) static_initialization_and_destruction_0 at /home/ray/Desktop/arduino-1.6.5-r5/libraries/OpenGarage/main.cpp line 34
: (inlined by) GLOBAL__sub_I_og at /home/ray/Desktop/arduino-1.6.5-r5/libraries/OpenGarage/main.cpp line 728
0x402112d0: String::move(String&) at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/WString.cpp line 202
0x40231902: wifi_station_dhcpc_status at ?? line ?
0x401008c8: free at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/umm_malloc/umm_malloc.c line 1727
0x40210754: Print::write(unsigned char const
, unsigned int) at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/Print.cpp line 42
0x4020e121: Print::write(char const
) at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/Print.h line 60
0x4020f7a4: esp_yield at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/core_esp8266_main.cpp line 73
0x4021082c: Print::println() at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/Print.cpp line 144
0x4020b370: start_network_sta_with_ap(char const
, char const
) at /home/ray/Desktop/arduino-1.6.5-r5/libraries/OpenGarage/espconnect.cpp line 69
0x4020dda9: do_loop() at /home/ray/Desktop/arduino-1.6.5-r5/libraries/OpenGarage/main.cpp line 636
0x4020fd54: std::_Function_base::_Base_manager ::_M_manager(std::_Any_data&, std::_Any_data const&, std::_Manager_operation) at /home/ray/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/xtensa-lx106-elf/include/c++/4.8.2/functional line 1934
0x4020fd40: std::_Function_handler ::_M_invoke(std::_Any_data const&) at /home/ray/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/xtensa-lx106-elf/include/c++/4.8.2/functional line 2069
0x4020cdcc: do_setup() at /home/ray/Desktop/arduino-1.6.5-r5/libraries/OpenGarage/main.cpp line 409
0x402071f0: loop at /home/ray/Desktop/arduino-1.6.5-r5/mainArduino.ino line 41
0x4020f7f0: loop_wrapper at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/core_esp8266_main.cpp line 110
0x40100958: cont_norm at /home/ray/.arduino15/packages/esp8266/hardware/esp8266/2.1.0/cores/esp8266/cont.S line 109

Settings in IDE

Module: Generic ESP8266 Module
Flash Size: 4MB/1MB
CPU Frequency: 80Mhz
Flash Mode: qio
Flash Frequency: 40Mhz
Upload Using: SERIAL
Reset Method: ck

Sketch

The OpenGarage firmware at: https://github.com/OpenGarage/OpenGarage-Firmware

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

@rayshobby
Copy link
Author

Turns out this is related to a previous issue:
#1054
After adding 'WiFi.persistent(false);' the restarting issue is gone.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant