Aircoookie / WLED

Control WS2812B and many more types of digital RGB LEDs with an ESP8266 or ESP32 over WiFi!
https://kno.wled.ge
MIT License
15.11k stars 3.27k forks source link

Almost every time I open setting page of 0.14.x my ESP8266 crashes and reboot. #3725

Closed andrehen closed 4 months ago

andrehen commented 10 months ago

What happened?

After updating my ESP8266 Devices to v0.14.0 or v0.14.1 they are experiencing almost every time a crash while oppening "LED Preferences" page. I get the error Loading of configuration script failed. Incomplete page data!. The devices then resets to default preset. I only get this error on ESP8266 devices while using iPhone (via wled-native app or Safari). In a desktop browser I don't get this error.... Also on ESP32 devices works fine with safari, had no issues with my ESP32 devices. Downgraded my 8266s to v0.13.3 and no issues... I have 3 8266 devices on use, they all show the same crash.

To Reproduce Bug

Using Safari or wled-native app on iPhone and a ESP8266 device:

  1. Open config, then LED Preferences. (expect device to crash and reboot to default preset)

If crash is not observable, make some changes, switch preset, then try again.

The crash can occur on other pages too, but "LED Preferences" is the one the almost aways trigger the crash.

Expected Behavior

To open LED Preference page without rebooting/crashing

Install Method

Binary from WLED.me

What version of WLED?

WLED 0.14.1 (build 2401141)

Which microcontroller/board are you seeing the problem on?

ESP8266

Relevant log/trace output

No response

Anything else?

IMG_2436

Code of Conduct

blazoncek commented 10 months ago

Please post your configuration and screenshot of the info dialog.

andrehen commented 10 months ago

This is my info dialog:

IMG_2437

Config:

{
  "rev": [1, 0],
  "vid": 2401141,
  "id": { "mdns": "", "name": "WLED Bar 60", "inv": "Light" },
  "nw": {
    "ins": [
      {
        "ssid": "WIFI_2GA05A4C",
        "pskl": 15,
        "ip": [0, 0, 0, 0],
        "gw": [0, 0, 0, 0],
        "sn": [255, 255, 255, 0]
      }
    ]
  },
  "ap": {
    "ssid": "WLED-AP",
    "pskl": 8,
    "chan": 1,
    "hide": 0,
    "behav": 0,
    "ip": [4, 3, 2, 1]
  },
  "wifi": { "sleep": true, "phy": false },
  "hw": {
    "led": {
      "total": 60,
      "maxpwr": 2000,
      "ledma": 55,
      "cct": false,
      "cr": false,
      "cb": 0,
      "fps": 42,
      "rgbwm": 255,
      "ld": false,
      "ins": [
        {
          "start": 0,
          "len": 60,
          "pin": [2],
          "order": 0,
          "rev": false,
          "skip": 0,
          "type": 22,
          "ref": false,
          "rgbwm": 0,
          "freq": 0
        }
      ]
    },
    "com": [],
    "btn": {
      "max": 2,
      "pull": true,
      "ins": [
        { "type": 2, "pin": [0], "macros": [0, 0, 0] },
        { "type": 0, "pin": [-1], "macros": [0, 0, 0] }
      ],
      "tt": 32,
      "mqtt": false
    },
    "ir": { "pin": -1, "type": 0, "sel": true },
    "relay": { "pin": -1, "rev": false },
    "baud": 1152,
    "if": { "i2c-pin": [-1, -1], "spi-pin": [-1, -1, -1] }
  },
  "light": {
    "scale-bri": 100,
    "pal-mode": 0,
    "aseg": false,
    "gc": { "bri": 1, "col": 2.8, "val": 2.8 },
    "tr": { "mode": true, "fx": true, "dur": 7, "pal": 0, "rpc": 5 },
    "nl": { "mode": 1, "dur": 60, "tbri": 0, "macro": 0 }
  },
  "def": { "ps": 8, "on": true, "bri": 128 },
  "if": {
    "sync": {
      "port0": 21324,
      "port1": 65506,
      "recv": {
        "bri": true,
        "col": true,
        "fx": true,
        "grp": 1,
        "seg": false,
        "sb": false
      },
      "send": {
        "dir": false,
        "btn": false,
        "va": false,
        "hue": true,
        "macro": false,
        "grp": 1,
        "ret": 0
      }
    },
    "nodes": { "list": true, "bcast": true },
    "live": {
      "en": true,
      "mso": false,
      "port": 5568,
      "mc": false,
      "dmx": {
        "uni": 1,
        "seqskip": false,
        "e131prio": 0,
        "addr": 1,
        "dss": 0,
        "mode": 4
      },
      "timeout": 25,
      "maxbri": false,
      "no-gc": true,
      "offset": 0
    },
    "va": { "alexa": false, "macros": [0, 0], "p": 0 },
    "mqtt": {
      "en": false,
      "broker": "",
      "port": 1883,
      "user": "",
      "pskl": 0,
      "cid": "WLED-c5d339",
      "rtn": false,
      "topics": { "device": "wled/c5d339", "group": "wled/all" }
    },
    "hue": {
      "en": false,
      "id": 1,
      "iv": 25,
      "recv": { "on": true, "bri": true, "col": true },
      "ip": [192, 168, 0, 0]
    },
    "ntp": {
      "en": false,
      "host": "0.wled.pool.ntp.org",
      "tz": 0,
      "offset": 0,
      "ampm": false,
      "ln": 0,
      "lt": 0
    }
  },
  "remote": { "remote_enabled": false, "linked_remote": "" },
  "ol": {
    "clock": 0,
    "cntdwn": false,
    "min": 0,
    "max": 29,
    "o12pix": 0,
    "o5m": false,
    "osec": false
  },
  "timers": {
    "cntdwn": { "goal": [20, 1, 1, 0, 0, 0], "macro": 0 },
    "ins": []
  },
  "ota": { "lock": false, "lock-wifi": false, "pskl": 7, "aota": true },
  "um": {}
}
blazoncek commented 10 months ago

Nothing seems out of ordinary. Please monitor free heap size (less than 16kB means trouble) and/or get a debug build and monitor serial output for potential crash dumps.

Jerry80 commented 10 months ago

Hi,

I actually have similar problem. Bought this controller https://www.athom.tech/blank-1/wled-rgbcct-analog-and-digital-light-strip-controller with ESP8266 (FW 0.14.0-b1), everything worked great. I updated to stable 0.14.1 version but controller stopped working (it was offline), so I had to unplug it couple times to get online but it didn't last too long. So I used 0.14.0 version, now it's ok but it's too slow, sometimes when I open wled-native app and click on controller, it's just black screen or it takes too long to open and actually everything I do takes too long. Originally I had 0.14.0-b1 version and it worked fine fast with no problems. So looks like beta version was much better than these stable versions, do you know why stable versions 0.14.0 and 0.14.1 have these kind of problems and how to fix it? Thanks

willmmiles commented 10 months ago

I'll see if I can borrow an iPhone and reproduce this later. Reliable crashes are so much easier to debug.

andrehen commented 10 months ago

Nothing seems out of ordinary. Please monitor free heap size (less than 16kB means trouble) and/or get a debug build and monitor serial output for potential crash dumps.

Installed the debug version, the heap size is always somewhere between 17,2 to 18 KB. I got this on console when the crash happened:

See https://github.com/Aircoookie/WLED/issues/3725#issuecomment-1912750148 for a readable stack

andrehen commented 10 months ago

Nothing seems out of ordinary. Please monitor free heap size (less than 16kB means trouble) and/or get a debug build and monitor serial output for potential crash dumps.

Actually, there is a better crashdump, with readable stack trace as I compiled myself in VSCode PlatformIO:

--------------- CUT HERE FOR EXCEPTION DECODER ---------------

Exception (3):
epc1=0x40101cbd epc2=0x00000000 epc3=0x00000000 excvaddr=0x4002c6e1 depc=0x00000000

LoadStoreError: Processor internal physical address or data error during load or store
  epc1=0x40101cbd in umm_malloc_core at umm_malloc.cpp:?

>>>stack>>>

ctx: sys
sp: 3fffeba0 end: 3fffffb0 offset: 0150
3fffecf0:  0000003f 00000001 3fffed94 00000049  
3fffed00:  3ffea077 00000010 00000020 40101f44  
3fffed10:  3ffea077 00000010 3fffed70 402657fe  
3fffed20:  00000000 3fff8a04 3fff6e44 3fffed94  
3fffed30:  00000047 00000008 3fff8a04 00000049  
3fffed40:  3ffea077 0000000c 3fffed70 40265893  
3fffed50:  00000000 0000000c 3fffed70 402658d5  
3fffed60:  00000000 3fff7fc8 3fff7f94 402576cf  
3fffed70:  00000000 000d0000 00000000 00000000  
3fffed80:  00656461 00000000 00000000 00000048  
3fffed90:  00000048 3fff8a5c 003f003f 80000000  
3fffeda0:  65636341 00007470 06000000 40265c2e  
3fffedb0:  00000000 3fff817a 3fff41f0 00000030  
3fffedc0:  3fff817a 3fff3f34 3fff6ad8 00000049  
3fffedd0:  00000149 3fff817a 3fff7f94 40259432  
3fffede0:  00000014 3fff6ad4 000000ff 00000000  
3fffedf0:  00000001 00000020 3fff6f94 40101f10  
3fffee00:  3fff7fc8 00000000 1ced9168 0208b019  
3fffee10:  3fff3f34 3fff7f94 3fff88ac 3fff80cc  
3fffee20:  3fffee70 3fff88ac 3fff6ad4 402502a8  
3fffee30:  000001b1 3fff8112 3fff88ac 3fff7f94  
3fffee40:  00000000 0000054d 3ffe899c 40101bc2  
3fffee50:  3fff000a 3fff30dc 3fff6ad4 00000000  
3fffee60:  3fff80cc 3fff6ad4 3fff88ac 40250308  
3fffee70:  3fff6fb8 3fff6fac 00000000 3fff3f34  
3fffee80:  3fff41a8 3fff3f34 3fff80cc 3fff41f0  
3fffee90:  3fff6ad4 3fff41f4 3fff41f5 4028041d  
3fffeea0:  3ffecfd0 00000141 3ffecfed 3ffecfc4  
3fffeeb0:  00000018 00000000 3ffecfe0 3ffecffe  
3fffeec0:  00000000 3ffed0db 3ffed004 3fff3f34  
3fffeed0:  3fff41a8 3fff80ea 3fff80cc 4028552d  
3fffeee0:  00000014 3fff3f34 00000000 4027ce8d  
3fffeef0:  00000000 0000054a 3ffe899c 40101bc2  
3fffef00:  402a234c 3fff6e2c 3fff47bc 3fff6724  
3fffef10:  3fff3f34 00000008 3fff80cc 4027c551  
3fffef20:  3fffdc80 3fff47bc 3fff6e2c 4027c360  
3fffef30:  402a550d 3fff47bc 3fff6e2c 402a551f  
3fffef40:  3fff80dc 3fff80cc 00000000 3fffdcb0  
3fffef50:  3ffeffa8 00000000 3fff6e2c 402a67fb  
3fffef60:  40000f49 3fffdab0 ffffff01 40000f49  
3fffef70:  40000e19 000d6d03 bff00000 0000bfff  
3fffef80:  00000005 aa55aa55 000000ed 40106b39  
3fffef90:  40106b3f bff00000 0000bfff 61430065  
3fffefa0:  4010000d bff00000 000d6d03 401000ab  
3fffefb0:  40296eec 3fffef4c 40296e9d 3ffffee8  
3fffefc0:  3fffffd0 00000000 00000000 feefeffe  
3fffefd0:  feefeffe feefeffe feefeffe feefeffe  
3fffefe0:  feefeffe feefeffe feefeffe feefeffe  
3fffeff0:  feefeffe feefeffe feefeffe feefeffe  
3ffff000:  feefeffe feefeffe feefeffe feefeffe  
3ffff010:  feefeffe feefeffe feefeffe feefeffe  
3ffff020:  feefeffe feefeffe feefeffe feefeffe  
3ffff030:  feefeffe feefeffe feefeffe feefeffe  
3ffff040:  feefeffe feefeffe feefeffe feefeffe  
3ffff050:  feefeffe feefeffe feefeffe feefeffe  
3ffff060:  feefeffe feefeffe feefeffe feefeffe  
3ffff070:  feefeffe feefeffe feefeffe feefeffe  
3ffff080:  feefeffe feefeffe feefeffe feefeffe  
3ffff090:  feefeffe feefeffe feefeffe feefeffe  
3ffff0a0:  feefeffe feefeffe feefeffe feefeffe  
3ffff0b0:  feefeffe feefeffe feefeffe feefeffe  
3ffff0c0:  feefeffe feefeffe feefeffe feefeffe  
3ffff0d0:  feefeffe feefeffe feefeffe feefeffe  
3ffff0e0:  feefeffe feefeffe feefeffe feefeffe  
3ffff0f0:  feefeffe feefeffe feefeffe feefeffe  
3ffff100:  feefeffe feefeffe feefeffe feefeffe  
3ffff110:  feefeffe feefeffe feefeffe feefeffe  
3ffff120:  feefeffe feefeffe feefeffe feefeffe  
3ffff130:  feefeffe feefeffe feefeffe feefeffe  
3ffff140:  feefeffe feefeffe feefeffe feefeffe  
3ffff150:  feefeffe feefeffe feefeffe feefeffe  
3ffff160:  feefeffe feefeffe feefeffe feefeffe  
3ffff170:  feefeffe feefeffe feefeffe feefeffe  
3ffff180:  feefeffe feefeffe feefeffe feefeffe  
3ffff190:  feefeffe feefeffe feefeffe feefeffe  
3ffff1a0:  feefeffe feefeffe feefeffe feefeffe  
3ffff1b0:  feefeffe feefeffe feefeffe feefeffe  
3ffff1c0:  feefeffe feefeffe feefeffe feefeffe  
3ffff1d0:  feefeffe feefeffe feefeffe feefeffe  
3ffff1e0:  feefeffe feefeffe feefeffe feefeffe  
3ffff1f0:  feefeffe feefeffe feefeffe feefeffe  
3ffff200:  feefeffe feefeffe feefeffe feefeffe  
3ffff210:  feefeffe feefeffe feefeffe feefeffe  
3ffff220:  feefeffe feefeffe feefeffe feefeffe  
3ffff230:  feefeffe feefeffe feefeffe feefeffe  
3ffff240:  feefeffe feefeffe feefeffe feefeffe  
3ffff250:  feefeffe feefeffe feefeffe feefeffe  
3ffff260:  feefeffe feefeffe feefeffe feefeffe  
3ffff270:  feefeffe feefeffe feefeffe feefeffe  
3ffff280:  feefeffe feefeffe feefeffe feefeffe  
3ffff290:  feefeffe feefeffe feefeffe feefeffe  
3ffff2a0:  feefeffe feefeffe feefeffe feefeffe  
3ffff2b0:  feefeffe feefeffe feefeffe feefeffe  
3ffff2c0:  feefeffe feefeffe feefeffe feefeffe  
3ffff2d0:  feefeffe feefeffe feefeffe feefeffe  
3ffff2e0:  feefeffe feefeffe feefeffe feefeffe  
3ffff2f0:  feefeffe feefeffe feefeffe feefeffe  
3ffff300:  feefeffe feefeffe feefeffe feefeffe  
3ffff310:  feefeffe feefeffe feefeffe feefeffe  
3ffff320:  feefeffe feefeffe feefeffe feefeffe  
3ffff330:  feefeffe feefeffe feefeffe feefeffe  
3ffff340:  feefeffe feefeffe feefeffe feefeffe  
3ffff350:  feefeffe feefeffe feefeffe feefeffe  
3ffff360:  feefeffe feefeffe feefeffe feefeffe  
3ffff370:  feefeffe feefeffe feefeffe feefeffe  
3ffff380:  feefeffe feefeffe feefeffe feefeffe  
3ffff390:  feefeffe feefeffe feefeffe feefeffe  
3ffff3a0:  feefeffe feefeffe feefeffe feefeffe  
3ffff3b0:  feefeffe feefeffe feefeffe feefeffe  
3ffff3c0:  feefeffe feefeffe feefeffe feefeffe  
3ffff3d0:  feefeffe feefeffe feefeffe feefeffe  
3ffff3e0:  feefeffe feefeffe feefeffe feefeffe  
3ffff3f0:  feefeffe feefeffe feefeffe feefeffe  
3ffff400:  feefeffe feefeffe feefeffe feefeffe  
3ffff410:  feefeffe feefeffe feefeffe feefeffe  
3ffff420:  feefeffe feefeffe feefeffe feefeffe  
3ffff430:  feefeffe feefeffe feefeffe feefeffe  
3ffff440:  feefeffe feefeffe feefeffe feefeffe  
3ffff450:  feefeffe feefeffe feefeffe feefeffe  
3ffff460:  feefeffe feefeffe feefeffe feefeffe  
3ffff470:  feefeffe feefeffe feefeffe feefeffe  
3ffff480:  feefeffe feefeffe feefeffe feefeffe  
3ffff490:  feefeffe feefeffe feefeffe feefeffe  
3ffff4a0:  feefeffe feefeffe feefeffe feefeffe  
3ffff4b0:  feefeffe feefeffe feefeffe feefeffe  
3ffff4c0:  00000000 400042db feefeffe feefeffe  
3ffff4d0:  40004b31 3fff509c 00000040 00302b40  
3ffff4e0:  40107e8c feefeffe feefeffe feefeffe  
3ffff4f0:  40262e5c 00000000 00000040 00302b40  
3ffff500:  feefeffe feefeffe 3fff509c 40262ee9  
3ffff510:  feefeffe feefeffe feefeffe feefeffe  
3ffff520:  feefeffe feefeffe feefeffe feefeffe  
3ffff530:  feefeffe feefeffe feefeffe feefeffe  
3ffff540:  feefeffe feefeffe feefeffe feefeffe  
3ffff550:  feefeffe feefeffe feefeffe feefeffe  
3ffff560:  feefeffe feefeffe feefeffe feefeffe  
3ffff570:  feefeffe feefeffe feefeffe feefeffe  
3ffff580:  feefeffe feefeffe feefeffe feefeffe  
3ffff590:  00000000 00000000 0000000a 00000000  
3ffff5a0:  00000000 00000000 0000000a 00000000  
3ffff5b0:  feefeffe feefeffe feefeffe feefeffe  
3ffff5c0:  00000000 a0000000 00000000 0000001c  
3ffff5d0:  00000000 feefeffe 00000000 3ffe83c4  
3ffff5e0:  00000001 00000000 3fff4814 00000008  
3ffff5f0:  00000007 3ffff6e3 00000000 00000008  
3ffff600:  feefeffe feefeffe 402755f9 3ffe83c4  
3ffff610:  00000040 00000000 3ffe8998 3fff509c  
3ffff620:  00000040 00000000 40266d46 00000000  
3ffff630:  00000040 3fff509c 00302b40 40267fb8  
3ffff640:  3fff4814 00000004 00000b40 4025435e  
3ffff650:  3fff4814 3fff4814 00000008 402012a5  
3ffff660:  00000001 40254340 3fff4814 00002000  
3ffff670:  00001fff 00000b40 00002b7f 00000004  
3ffff680:  3fff488c 3ffff750 00000008 4020215e  
3ffff690:  00000008 3ffe83c4 3ffff750 3fff4814  
3ffff6a0:  8010080c 3ffff7a0 8010080c 40201886  
3ffff6b0:  3ffff6dc 00000004 fe302064 feefeffe  
3ffff6c0:  bbce4a03 00000248 ffffffff ffffffff  
3ffff6d0:  00000002 00000001 aff003cf 00000000  
3ffff6e0:  00000b40 aff003cf 00000004 00000004  
3ffff6f0:  00000001 00000002 00000000 78000000  
3ffff700:  00000000 00000000 0000000d 00000000  
3ffff710:  00000000 3ffff6d8 500ffc30 00000001  
3ffff720:  00000005 feefeffe feefeffe 3fff4814  
3ffff730:  0000000d 3ffff7a0 3ffffec9 40201bda  
3ffff740:  40202134 3ffff750 3fff2ea8 402759e4  
3ffff750:  3fff4814 3ffffec9 0000000d ffff0208  
3ffff760:  3ffffed6 00000000 3ffff7c0 3ffff7b8  
3ffff770:  feefeffe 00000001 3ffffed6 002ffc00  
3ffff780:  feefeffe feefeffe feefeffe 3fff519c  
3ffff790:  3fff2ea8 3ffff7e0 3fff4814 40204acb  
3ffff7a0:  00000001 00000000 00000002 00000b40  
3ffff7b0:  500ffc30 00010004 ffffffff ffffffff  
3ffff7c0:  3ffffec9 feefeffe feefeffe feefeffe  
3ffff7d0:  feefeffe 00000001 00000000 402540bc  
3ffff7e0:  3ffff800 3ffff7f0 00000008 feefeffe  
3ffff7f0:  feefeffe feefeffe 00000000 00000000  
3ffff800:  3ffffef0 0000007f feefeffe feefeffe  
3ffff810:  feefeffe 3fff3868 3fff2ea8 40221aee  
3ffff820:  feefeffe feefeffe feefeffe feefeffe  
3ffff830:  3ffff850 3ffff850 3ffffe50 3ffffe50  
3ffff840:  feefef00 feefeffe feefeffe feefef00  
3ffff850:  feefeffe feefeffe feefeffe feefeffe  
3ffff860:  feefeffe feefeffe feefeffe feefeffe  
3ffff870:  feefeffe feefeffe feefeffe feefeffe  
3ffff880:  feefeffe feefeffe feefeffe feefeffe  
3ffff890:  feefeffe feefeffe feefeffe feefeffe  
3ffff8a0:  feefeffe feefeffe feefeffe feefeffe  
3ffff8b0:  feefeffe feefeffe feefeffe feefeffe  
3ffff8c0:  feefeffe feefeffe feefeffe feefeffe  
3ffff8d0:  feefeffe feefeffe feefeffe feefeffe  
3ffff8e0:  feefeffe feefeffe feefeffe feefeffe  
3ffff8f0:  feefeffe feefeffe feefeffe feefeffe  
3ffff900:  feefeffe feefeffe feefeffe feefeffe  
3ffff910:  feefeffe feefeffe feefeffe feefeffe  
3ffff920:  feefeffe feefeffe feefeffe feefeffe  
3ffff930:  feefeffe feefeffe feefeffe feefeffe  
3ffff940:  feefeffe feefeffe feefeffe feefeffe  
3ffff950:  00000005 00000000 00000020 401011a0  
3ffff960:  00000001 00000000 00000005 401037a4  
3ffff970:  3ffeadc5 40106a3b 3ffee850 feefeffe  
3ffff980:  4010432f 3ffee850 0000000a 00000000  
3ffff990:  ffffffe0 0004b935 3ffef0e4 4010450c  
3ffff9a0:  3ffeb640 00000000 00000000 402747b8  
3ffff9b0:  ffffffe0 0004b935 401049c6 00000100  
3ffff9c0:  3ffeb640 7fffffff 00000000 00000001  
3ffff9d0:  00000001 00000080 3ffffb40 402747b8  
3ffff9e0:  3ffeb640 a0000000 00000000 0004b935  
3ffff9f0:  3ffeb64c 2c9f0300 4000050c 3fffc278  
3ffffa00:  401046e8 3fffc200 00000022 402747b8  
3ffffa10:  3ffffa52 00000030 00000019 00000001  
3ffffa20:  3fff64ec 4025f758 00000020 40101f44  
3ffffa30:  3ffffa95 00000002 0000000c 40266ad3  
3ffffa40:  3fff64ec 00000034 3ffffee0 3ffffee0  
3ffffa50:  00000000 00000015 00000001 40260329  
3ffffa60:  3fff64ec 3ffffee0 3ffffa80 4026062e  
3ffffa70:  3fff64ec 00000000 3fff3748 402607e8  
3ffffa80:  72615f08 00000000 745f046f 00000100  
3ffffa90:  00000274 00000001 40106989 3ffeef88  
3ffffaa0:  3ffeef10 00000000 00000000 00000000  
3ffffab0:  00000000 00000000 00000000 00000000  
3ffffac0:  4010656e 3ffeef88 00000000 00000000  
3ffffad0:  00000000 00000000 0000001f 401011a0  
3ffffae0:  00000000 00000000 3fffc228 401072d1  
3ffffaf0:  4000050c 00000000 00000010 00000000  
3ffffb00:  40275314 00000030 00000000 ffffffff  
3ffffb10:  40274c0c 0000000c 00000000 40275284  
3ffffb20:  402746f4 3ffffcb0 00000001 3ffffd00  
3ffffb30:  00000002 00000000 00000020 401011a0  
3ffffb40:  40103bd5 00000000 00000002 000000ff  
3ffffb50:  00000002 00000000 00000020 401011a0  
3ffffb60:  40103bd5 00000001 00000002 401037a4  
3ffffb70:  3ffeadc2 40106a23 3ffee530 401011a0  
3ffffb80:  00000001 40105bfe 3ffeef88 401037a4  
3ffffb90:  3ffeadc5 40106a3b 3ffee7d8 000000f5  
3ffffba0:  4010432f 3ffee7d8 3ffeef88 3ffeef88  
3ffffbb0:  00007fff 06def9d7 3ffef0e4 4010450c  
3ffffbc0:  3ffeb664 00000000 00000000 00040000  
3ffffbd0:  00007fff 06def9d7 401049c6 00000100  
3ffffbe0:  3ffeb664 7fffffff 00002200 00000001  
3ffffbf0:  00000001 00004288 3ffee828 3fffc278  
3ffffc00:  3ffeb664 00000000 00000020 06def9d7  
3ffffc10:  3ffeb64c 2c9f0300 4000050c 3fffc278  
3ffffc20:  401046e8 3fffc200 00000022 401011a0  
3ffffc30:  4000dcac 00000030 00000016 ffffffff  
3ffffc40:  40205195 00000026 00000060 00000005  
3ffffc50:  00000014 00000040 00000e83 3ffffe70  
3ffffc60:  00000026 00000000 0000000f 00000004  
3ffffc70:  0000002d 00000003 00000009 00000030  
3ffffc80:  00000001 00004288 00000022 00000007  
3ffffc90:  3ffeb658 00000000 00000020 06def947  
3ffffca0:  3ffeb664 2c9f0300 4000050c 3fffc278  
3ffffcb0:  401046e8 3fffc200 00000022 3ffe93aa  
3ffffcc0:  402206c9 00000030 00000013 ffffffff  
3ffffcd0:  40220748 00000023 0000000b 00000024  
3ffffce0:  00000000 3fff5334 000000ff 3ffe9438  
3ffffcf0:  00000090 3ffe936c 00000018 3ffffe70  
3ffffd00:  3fff2ea8 3ffffe70 000000d1 00000030  
3ffffd10:  00000001 00000080 00000005 401037a4  
3ffffd20:  3ffeadc5 40106a3b 3ffee828 06de7510  
3ffffd30:  4010432f 3ffee828 00001400 000000ff  
3ffffd40:  00009b00 00000064 3ffffe70 0000000f  
3ffffd50:  3ffeb67c 00000000 00000000 000000ff  
3ffffd60:  0000000f 00000007 3ffffdd8 4021e5e1  
3ffffd70:  ffffffff 7fffffff 3fffc228 401072d1  
3ffffd80:  000000ff 000000ff 000000ff 3ffffe70  
3ffffd90:  0000000f 00000030 00000013 ffffffff  
3ffffda0:  4021ec6c 3fff5334 00000000 00000034  
3ffffdb0:  3ffffe70 3fff2ea8 3ffffe70 40220718  
3ffffdc0:  00000000 2d09003b ff260077 ff640395  
3ffffdd0:  ffc717b4 ffeb64d9 ffffffff 00000000  
3ffffde0:  0000122e 00007160 012c0800 0111af77  
3ffffdf0:  022c0800 0452ffae 0473ffbc 049cffca  
3ffffe00:  04cbffda 04ffffea 3ffffe78 002c0800  
3ffffe10:  ffffffff 2c9fffff 4000050c 3fffc278  
3ffffe20:  000000ff 000000ff 000000ff 3fff2ec8  
3ffffe30:  0000000f 00000000 00000010 00000034  
3ffffe40:  00000016 3fff2ea8 3fff5334 4022074d  
3ffffe50:  3fff2ec8 0001c242 3fff2ec8 00000053  
3ffffe60:  3fff2f68 00000000 00000000 40107f94  
3ffffe70:  0000082c 3fff2f68 2d09001e 002d0900  
3ffffe80:  1c007312 ff2500b9 00000000 3fff2ea8  
3ffffe90:  3fff5334 00000000 0000082c 40100a98  
3ffffea0:  00000054 00001800 00000053 402632d4  
3ffffeb0:  0000082c 00000000 3fff3a4c fffffffd  
3ffffec0:  00000053 3fff5334 3fff2ea8 fffffffd  
3ffffed0:  00000053 3fff5334 3fff2ea8 4020ac9c  
3ffffee0:  00000000 00000000 3ffe8998 0001c242  
3ffffef0:  00000001 3fff5378 40266d46 3fffefb0  
3fffff00:  00000001 0001c242 3fff2ea8 402209cc  
3fffff10:  00000000 0001c242 51a9fbe7 02089cae  
3fffff20:  402a8466 0001c242 3fff32b6 00000001  
3fffff30:  402a964b 00000000 0001c242 402397e8  
3fffff40:  3fff5378 3fff2f10 3ffe8998 00000000  
3fffff50:  3fffdad0 3fff3a78 40266d46 3fff3a78  
3fffff60:  3fffdad0 00000000 0001c242 40248bf3  
3fffff70:  4026ed8c 7f00a8c0 3fff3868 402687cc  
3fffff80:  00000000 fffffffc 0001c241 3fff0500  
3fffff90:  40263398 3ffea198 3fff3868 3fff3a78  
3fffffa0:  3fffdad0 00000000 3fff3a4c 3fff3a78  
<<<stack<<<

0x40101f44 in malloc at ??:?
0x402657fe in String::changeBuffer(unsigned int) at ??:?
0x40265893 in String::reserve(unsigned int) at ??:?
0x402658d5 in String::copy(char const*, unsigned int) at ??:?
0x402576cf in AsyncWebServerRequest::_parseReqHeader() at ??:?
0x40265c2e in String::concat(char const*, unsigned int) at ??:?
0x40259432 in AsyncWebServerRequest::_onData(void*, unsigned int) at ??:?
0x40101f10 in free at ??:?
0x402502a8 in AsyncClient::_recv(std::shared_ptr<ACErrorTracker>&, tcp_pcb*, pbuf*, int) at ??:?
0x40101bc2 in umm_free_core at umm_malloc.cpp:?
0x40250308 in AsyncClient::_s_recv(void*, tcp_pcb*, pbuf*, int) at ??:?
0x4028041d in tcp_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/core/tcp_in.c:501 (discriminator 1)
0x4028552d in ip4_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/core/ipv4/ip4.c:1467
0x4027ce8d in mem_malloc at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/core/mem.c:210
0x40101bc2 in umm_free_core at umm_malloc.cpp:?
0x402a234c in ppRecycleRxPkt at ??:?
0x4027c551 in ethernet_input_LWIP2 at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/netif/ethernet.c:188
0x4027c360 in git2glue_err at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-lwip/lwip-git.c:118
 (inlined by) esp2glue_ethernet_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-lwip/lwip-git.c:494
0x402a550d in ethernet_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-esp/lwip-esp.c:365
0x402a551f in ethernet_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-esp/lwip-esp.c:373
0x402a67fb in ets_snprintf at ??:?
0x40106b39 in call_user_start_local at ??:?
0x40106b3f in call_user_start_local at ??:?
0x4010000d in call_user_start at ??:?
0x401000ab in app_entry_redefinable at ??:?
0x40296eec in cont_ret at cont.S.o:?
0x40296e9d in cont_continue at cont.S.o:?
0x40107e8c in spi_flash_read at ??:?
0x40262e5c in EspClass::flashRead(unsigned int, unsigned int*, unsigned int) at ??:?
0x40262ee9 in EspClass::flashRead(unsigned int, unsigned char*, unsigned int) at ??:?
0x402755f9 in _printf_i at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf_i.c:196 (discriminator 1)
0x40266d46 in yield at ??:?
0x40267fb8 in flash_hal_read at ??:?
0x4025435e in littlefs_impl::LittleFSImpl::lfs_flash_read(lfs_config const*, unsigned int, unsigned int, void*, unsigned int) at ??:?
0x402012a5 in lfs_bd_read at lfs.c:?
0x40254340 in littlefs_impl::LittleFSImpl::lfs_flash_read(lfs_config const*, unsigned int, unsigned int, void*, unsigned int) at ??:?
0x4020215e in lfs_dir_find_match at lfs.c:?
0x40201886 in lfs_dir_fetchmatch at lfs.c:?
0x40201bda in lfs_dir_find at lfs.c:?
0x40202134 in lfs_dir_find_match at lfs.c:?
0x402759e4 in _vsprintf_r at /workdir/repo/newlib/newlib/libc/stdio/vsprintf.c:63
0x40204acb in lfs_stat at ??:?
0x402540bc in littlefs_impl::LittleFSImpl::exists(char const*) at ??:?
0x40221aee in WS2812FX::loadCustomPalettes() at ??:?
0x401011a0 in ets_post at ??:?
0x401037a4 in pp_post at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x401049c6 in wDev_ProcessFiq at ??:?
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x401046e8 in wDev_ProcessFiq at ??:?
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x4025f758 in esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter::addDomainCacheItem(void const*, bool, unsigned short) at ??:?
0x40101f44 in malloc at ??:?
0x40266ad3 in operator new(unsigned int) at ??:?
0x40260329 in esp8266::MDNSImplementation::MDNSResponder::_udpAppendBuffer(unsigned char const*, unsigned int) at ??:?
0x4026062e in esp8266::MDNSImplementation::MDNSResponder::_writeMDNSRRDomain(esp8266::MDNSImplementation::MDNSResponder::stcMDNS_RRDomain const&, esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter&) at ??:?
0x402607e8 in esp8266::MDNSImplementation::MDNSResponder::_writeMDNSServiceDomain(esp8266::MDNSImplementation::MDNSResponder::stcMDNSService const&, bool, bool, esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter&) at ??:?
0x40106989 in lmacTxFrame at ??:?
0x4010656e in lmacMSDUAged at ??:?
0x401011a0 in ets_post at ??:?
0x401072d1 in ets_timer_disarm at ??:?
0x40275314 in _printf_i at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf_i.c:131 (discriminator 2)
0x40274c0c in _svfprintf_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:662
0x40275284 in _printf_i at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf_i.c:123
0x402746f4 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:179
0x401011a0 in ets_post at ??:?
0x40103bd5 in rcUpdateTxDone at ??:?
0x401011a0 in ets_post at ??:?
0x40103bd5 in rcUpdateTxDone at ??:?
0x401037a4 in pp_post at ??:?
0x40106a23 in lmacTxFrame at ??:?
0x401011a0 in ets_post at ??:?
0x40105bfe in lmacRecycleMPDU at ??:?
0x401037a4 in pp_post at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x401049c6 in wDev_ProcessFiq at ??:?
0x401046e8 in wDev_ProcessFiq at ??:?
0x401011a0 in ets_post at ??:?
0x40205195 in fill_gradient_RGB(CRGB*, unsigned short, CRGB, unsigned short, CRGB) at ??:?
0x401046e8 in wDev_ProcessFiq at ??:?
0x402206c9 in Segment::loadPalette(CRGBPalette16&, unsigned char) at ??:?
0x40220748 in Segment::currentPalette(CRGBPalette16&, unsigned char) at ??:?
0x401037a4 in pp_post at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x4021e5e1 in CRGBPalette16::loadDynamicGradientPalette(unsigned char const*) at ??:?
0x401072d1 in ets_timer_disarm at ??:?
0x4021ec6c in Segment::virtualLength() const at ??:?
0x40220718 in Segment::loadPalette(CRGBPalette16&, unsigned char) at ??:?
0x4022074d in Segment::currentPalette(CRGBPalette16&, unsigned char) at ??:?
0x40107f94 in BusManager::setPixelColor(unsigned short, unsigned int) at ??:?
0x40100a98 in Segment::setPixelColor(int, unsigned int) at ??:?
0x402632d4 in HardwareSerial::available() at ??:?
0x4020ac9c in mode_noise16_4() at ??:?
0x40266d46 in yield at ??:?
0x402209cc in WS2812FX::service() at ??:?
0x402a8466 in wifi_get_opmode at ??:?
0x402a964b in wifi_station_get_connect_status at ??:?
0x402397e8 in handleNightlight() at ??:?
0x40266d46 in yield at ??:?
0x40248bf3 in WLED::loop() at ??:?
0x4026ed8c in StreamNull::~StreamNull() at ??:?
0x402687cc in uart_write at ??:?
0x40263398 in HardwareSerial::write(unsigned char const*, unsigned int) at ??:?

--------------- CUT HERE FOR EXCEPTION DECODER ---------------
andrehen commented 10 months ago

More information:

I did the crash scenario 3 times. And even though the crash happened while oppening the page "LED Preferences", the stack trace is different:

Stack 1:

0x40101f44 in malloc at ??:?
0x402a5291 in pbuf_alloc at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-esp/lwip-esp.c:669
0x4028a940 in ieee80211_deliver_data at ??:?
0x4028f0b0 in sta_input at ??:?
0x402a26b7 in pp_tx_idle_timeout at ??:?
0x402a1f7b in ppPeocessRxPktHdr at ??:?
0x402a67fb in ets_snprintf at ??:?
0x40106b39 in call_user_start_local at ??:?
0x40106b3f in call_user_start_local at ??:?
0x4010000d in call_user_start at ??:?
0x401000ab in app_entry_redefinable at ??:?
0x40296eec in cont_ret at cont.S.o:?
0x40296e9d in cont_continue at cont.S.o:?
0x40107e8c in spi_flash_read at ??:?
0x40262e5c in EspClass::flashRead(unsigned int, unsigned int*, unsigned int) at ??:?
0x40262ee9 in EspClass::flashRead(unsigned int, unsigned char*, unsigned int) at ??:?
0x402755f9 in _printf_i at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf_i.c:196 (discriminator 1)
0x40266d46 in yield at ??:?
0x40267fb8 in flash_hal_read at ??:?
0x4025435e in littlefs_impl::LittleFSImpl::lfs_flash_read(lfs_config const*, unsigned int, unsigned int, void*, unsigned int) at ??:?
0x402012a5 in lfs_bd_read at lfs.c:?
0x40254340 in littlefs_impl::LittleFSImpl::lfs_flash_read(lfs_config const*, unsigned int, unsigned int, void*, unsigned int) at ??:?
0x4020215e in lfs_dir_find_match at lfs.c:?
0x40201886 in lfs_dir_fetchmatch at lfs.c:?
0x40201bda in lfs_dir_find at lfs.c:?
0x40202134 in lfs_dir_find_match at lfs.c:?
0x402759e4 in _vsprintf_r at /workdir/repo/newlib/newlib/libc/stdio/vsprintf.c:63
0x40204acb in lfs_stat at ??:?
0x402540bc in littlefs_impl::LittleFSImpl::exists(char const*) at ??:?
0x40221aee in WS2812FX::loadCustomPalettes() at ??:?
0x401011a0 in ets_post at ??:?
0x401072d1 in ets_timer_disarm at ??:?
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x4025f758 in esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter::addDomainCacheItem(void const*, bool, unsigned short) at ??:?
0x40101f44 in malloc at ??:?
0x40266ad3 in operator new(unsigned int) at ??:?
0x40260329 in esp8266::MDNSImplementation::MDNSResponder::_udpAppendBuffer(unsigned char const*, unsigned int) at ??:?
0x4026062e in esp8266::MDNSImplementation::MDNSResponder::_writeMDNSRRDomain(esp8266::MDNSImplementation::MDNSResponder::stcMDNS_RRDomain const&, esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter&) at ??:?
0x402607e8 in esp8266::MDNSImplementation::MDNSResponder::_writeMDNSServiceDomain(esp8266::MDNSImplementation::MDNSResponder::stcMDNSService const&, bool, bool, esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter&) at ??:?
0x40105841 in lmacIsIdle at ??:?
0x40106989 in lmacTxFrame at ??:?
0x40260356 in esp8266::MDNSImplementation::MDNSResponder::_udpAppend8(unsigned char) at ??:?
0x4010656e in lmacMSDUAged at ??:?
0x401011a0 in ets_post at ??:?
0x40103bd5 in rcUpdateTxDone at ??:?
0x401037a4 in pp_post at ??:?
0x40106a23 in lmacTxFrame at ??:?
0x401037a4 in pp_post at ??:?
0x401011a0 in ets_post at ??:?
0x40103bd5 in rcUpdateTxDone at ??:?
0x40105bfe in lmacRecycleMPDU at ??:?
0x401037a4 in pp_post at ??:?
0x40106a23 in lmacTxFrame at ??:?
0x40105bfe in lmacRecycleMPDU at ??:?
0x401011a0 in ets_post at ??:?
0x4010606f in lmacRecycleMPDU at ??:?
0x401037a4 in pp_post at ??:?
0x40106a23 in lmacTxFrame at ??:?
0x40105b37 in lmacProcessTxSuccess at ??:?
0x401037a4 in pp_post at ??:?
0x40104a00 in wDev_ProcessFiq at ??:?
0x40106989 in lmacTxFrame at ??:?
0x401011a0 in ets_post at ??:?
0x40103bd5 in rcUpdateTxDone at ??:?
0x401037a4 in pp_post at ??:?
0x40106a23 in lmacTxFrame at ??:?
0x40105bfe in lmacRecycleMPDU at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x4010606f in lmacRecycleMPDU at ??:?
0x40106471 in lmacMSDUAged at ??:?
0x40105b37 in lmacProcessTxSuccess at ??:?
0x40105930 in lmacProcessTXStartData at ??:?
0x401037a4 in pp_post at ??:?
0x40104a00 in wDev_ProcessFiq at ??:?
0x4010606f in lmacRecycleMPDU at ??:?
0x401046e8 in wDev_ProcessFiq at ??:?
0x40224437 in PolyBus::getPixelColor(void*, unsigned char, unsigned short, unsigned char) at ??:?
0x4022497f in BusDigital::getPixelColor(unsigned short) at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x401049c6 in wDev_ProcessFiq at ??:?
0x40104897 in wDev_ProcessFiq at ??:?
0x401046e8 in wDev_ProcessFiq at ??:?
0x401037a4 in pp_post at ??:?
0x4024a0d6 in handleSerial() at ??:?
0x40248b0a in WLED::loop() at ??:?
0x401046e8 in wDev_ProcessFiq at ??:?
0x40107f94 in BusManager::setPixelColor(unsigned short, unsigned int) at ??:?
0x40266d46 in yield at ??:?
0x4025385a in WiFiUDP::parsePacket() at ??:?
0x40245946 in handleNotifications() at ??:?
0x402632d4 in HardwareSerial::available() at ??:?
0x4026ed8c in StreamNull::~StreamNull() at ??:?
0x4024a0f2 in handleSerial() at ??:?
0x402a8466 in wifi_get_opmode at ??:?
0x402a964b in wifi_station_get_connect_status at ??:?
0x40252f84 in ESP8266WiFiSTAClass::status() at ??:?
0x40244231 in NetworkClass::isConnected() at ??:?
0x4026ed8c in StreamNull::~StreamNull() at ??:?
0x4026ed8c in StreamNull::~StreamNull() at ??:?
0x402488a2 in WLED::handleConnection() at ??:?
0x4023aba4 in Toki::millisecond() at ??:?
0x40248b10 in WLED::loop() at ??:?
0x4026ed8c in StreamNull::~StreamNull() at ??:?
0x402687cc in uart_write at ??:?
0x40263398 in HardwareSerial::write(unsigned char const*, unsigned int) at ??:?

Stack 2:

0x40101f44 in malloc at ??:?
0x402657fe in String::changeBuffer(unsigned int) at ??:?
0x40265893 in String::reserve(unsigned int) at ??:?
0x402658d5 in String::copy(char const*, unsigned int) at ??:?
0x402576cf in AsyncWebServerRequest::_parseReqHeader() at ??:?
0x40265c2e in String::concat(char const*, unsigned int) at ??:?
0x40259432 in AsyncWebServerRequest::_onData(void*, unsigned int) at ??:?
0x40101f10 in free at ??:?
0x402502a8 in AsyncClient::_recv(std::shared_ptr<ACErrorTracker>&, tcp_pcb*, pbuf*, int) at ??:?
0x40101bc2 in umm_free_core at umm_malloc.cpp:?
0x40250308 in AsyncClient::_s_recv(void*, tcp_pcb*, pbuf*, int) at ??:?
0x4028041d in tcp_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/core/tcp_in.c:501 (discriminator 1)
0x4028552d in ip4_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/core/ipv4/ip4.c:1467
0x4027ce8d in mem_malloc at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/core/mem.c:210
0x40101bc2 in umm_free_core at umm_malloc.cpp:?
0x402a234c in ppRecycleRxPkt at ??:?
0x4027c551 in ethernet_input_LWIP2 at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/netif/ethernet.c:188
0x4027c360 in git2glue_err at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-lwip/lwip-git.c:118
 (inlined by) esp2glue_ethernet_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-lwip/lwip-git.c:494
0x402a550d in ethernet_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-esp/lwip-esp.c:365
0x402a551f in ethernet_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-esp/lwip-esp.c:373
0x402a67fb in ets_snprintf at ??:?
0x40106b39 in call_user_start_local at ??:?
0x40106b3f in call_user_start_local at ??:?
0x4010000d in call_user_start at ??:?
0x401000ab in app_entry_redefinable at ??:?
0x40296eec in cont_ret at cont.S.o:?
0x40296e9d in cont_continue at cont.S.o:?
0x40107e8c in spi_flash_read at ??:?
0x40262e5c in EspClass::flashRead(unsigned int, unsigned int*, unsigned int) at ??:?
0x40262ee9 in EspClass::flashRead(unsigned int, unsigned char*, unsigned int) at ??:?
0x402755f9 in _printf_i at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf_i.c:196 (discriminator 1)
0x40266d46 in yield at ??:?
0x40267fb8 in flash_hal_read at ??:?
0x4025435e in littlefs_impl::LittleFSImpl::lfs_flash_read(lfs_config const*, unsigned int, unsigned int, void*, unsigned int) at ??:?
0x402012a5 in lfs_bd_read at lfs.c:?
0x40254340 in littlefs_impl::LittleFSImpl::lfs_flash_read(lfs_config const*, unsigned int, unsigned int, void*, unsigned int) at ??:?
0x4020215e in lfs_dir_find_match at lfs.c:?
0x40201886 in lfs_dir_fetchmatch at lfs.c:?
0x40201bda in lfs_dir_find at lfs.c:?
0x40202134 in lfs_dir_find_match at lfs.c:?
0x402759e4 in _vsprintf_r at /workdir/repo/newlib/newlib/libc/stdio/vsprintf.c:63
0x40204acb in lfs_stat at ??:?
0x402540bc in littlefs_impl::LittleFSImpl::exists(char const*) at ??:?
0x40221aee in WS2812FX::loadCustomPalettes() at ??:?
0x401011a0 in ets_post at ??:?
0x401037a4 in pp_post at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x401049c6 in wDev_ProcessFiq at ??:?
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x401046e8 in wDev_ProcessFiq at ??:?
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x4025f758 in esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter::addDomainCacheItem(void const*, bool, unsigned short) at ??:?
0x40101f44 in malloc at ??:?
0x40266ad3 in operator new(unsigned int) at ??:?
0x40260329 in esp8266::MDNSImplementation::MDNSResponder::_udpAppendBuffer(unsigned char const*, unsigned int) at ??:?
0x4026062e in esp8266::MDNSImplementation::MDNSResponder::_writeMDNSRRDomain(esp8266::MDNSImplementation::MDNSResponder::stcMDNS_RRDomain const&, esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter&) at ??:?
0x402607e8 in esp8266::MDNSImplementation::MDNSResponder::_writeMDNSServiceDomain(esp8266::MDNSImplementation::MDNSResponder::stcMDNSService const&, bool, bool, esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter&) at ??:?
0x40106989 in lmacTxFrame at ??:?
0x4010656e in lmacMSDUAged at ??:?
0x401011a0 in ets_post at ??:?
0x401072d1 in ets_timer_disarm at ??:?
0x40275314 in _printf_i at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf_i.c:131 (discriminator 2)
0x40274c0c in _svfprintf_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:662
0x40275284 in _printf_i at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf_i.c:123
0x402746f4 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:179
0x401011a0 in ets_post at ??:?
0x40103bd5 in rcUpdateTxDone at ??:?
0x401011a0 in ets_post at ??:?
0x40103bd5 in rcUpdateTxDone at ??:?
0x401037a4 in pp_post at ??:?
0x40106a23 in lmacTxFrame at ??:?
0x401011a0 in ets_post at ??:?
0x40105bfe in lmacRecycleMPDU at ??:?
0x401037a4 in pp_post at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x401049c6 in wDev_ProcessFiq at ??:?
0x401046e8 in wDev_ProcessFiq at ??:?
0x401011a0 in ets_post at ??:?
0x40205195 in fill_gradient_RGB(CRGB*, unsigned short, CRGB, unsigned short, CRGB) at ??:?
0x401046e8 in wDev_ProcessFiq at ??:?
0x402206c9 in Segment::loadPalette(CRGBPalette16&, unsigned char) at ??:?
0x40220748 in Segment::currentPalette(CRGBPalette16&, unsigned char) at ??:?
0x401037a4 in pp_post at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x4021e5e1 in CRGBPalette16::loadDynamicGradientPalette(unsigned char const*) at ??:?
0x401072d1 in ets_timer_disarm at ??:?
0x4021ec6c in Segment::virtualLength() const at ??:?
0x40220718 in Segment::loadPalette(CRGBPalette16&, unsigned char) at ??:?
0x4022074d in Segment::currentPalette(CRGBPalette16&, unsigned char) at ??:?
0x40107f94 in BusManager::setPixelColor(unsigned short, unsigned int) at ??:?
0x40100a98 in Segment::setPixelColor(int, unsigned int) at ??:?
0x402632d4 in HardwareSerial::available() at ??:?
0x4020ac9c in mode_noise16_4() at ??:?
0x40266d46 in yield at ??:?
0x402209cc in WS2812FX::service() at ??:?
0x402a8466 in wifi_get_opmode at ??:?
0x402a964b in wifi_station_get_connect_status at ??:?
0x402397e8 in handleNightlight() at ??:?
0x40266d46 in yield at ??:?
0x40248bf3 in WLED::loop() at ??:?
0x4026ed8c in StreamNull::~StreamNull() at ??:?
0x402687cc in uart_write at ??:?
0x40263398 in HardwareSerial::write(unsigned char const*, unsigned int) at ??:?

Stack 3:

0x40101f44 in malloc at ??:?
0x4027ce8d in mem_malloc at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/core/mem.c:210
0x4027d54e in pbuf_alloc_LWIP2 at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/lwip2-src/src/core/pbuf.c:284
0x402a234c in ppRecycleRxPkt at ??:?
0x4027c328 in esp2glue_alloc_for_recv at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-lwip/lwip-git.c:478
0x402a550d in ethernet_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-esp/lwip-esp.c:365
0x402a54e0 in ethernet_input at /local/users/gauchard/arduino/arduino_esp8266/origin/tools/sdk/lwip2/builder/glue-esp/lwip-esp.c:354
0x402a1e4e in ppPeocessRxPktHdr at ??:?
0x402a67fb in ets_snprintf at ??:?
0x40106b39 in call_user_start_local at ??:?
0x40106b3f in call_user_start_local at ??:?
0x4010000d in call_user_start at ??:?
0x401000ab in app_entry_redefinable at ??:?
0x40296eec in cont_ret at cont.S.o:?
0x40296e9d in cont_continue at cont.S.o:?
0x40107e8c in spi_flash_read at ??:?
0x40262e5c in EspClass::flashRead(unsigned int, unsigned int*, unsigned int) at ??:?
0x40262ee9 in EspClass::flashRead(unsigned int, unsigned char*, unsigned int) at ??:?
0x402755f9 in _printf_i at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf_i.c:196 (discriminator 1)
0x40266d46 in yield at ??:?
0x40267fb8 in flash_hal_read at ??:?
0x4025435e in littlefs_impl::LittleFSImpl::lfs_flash_read(lfs_config const*, unsigned int, unsigned int, void*, unsigned int) at ??:?
0x402012a5 in lfs_bd_read at lfs.c:?
0x40254340 in littlefs_impl::LittleFSImpl::lfs_flash_read(lfs_config const*, unsigned int, unsigned int, void*, unsigned int) at ??:?
0x4020215e in lfs_dir_find_match at lfs.c:?
0x40201886 in lfs_dir_fetchmatch at lfs.c:?
0x40201bda in lfs_dir_find at lfs.c:?
0x40202134 in lfs_dir_find_match at lfs.c:?
0x402759e4 in _vsprintf_r at /workdir/repo/newlib/newlib/libc/stdio/vsprintf.c:63
0x40204acb in lfs_stat at ??:?
0x402540bc in littlefs_impl::LittleFSImpl::exists(char const*) at ??:?
0x40221aee in WS2812FX::loadCustomPalettes() at ??:?
0x401011a0 in ets_post at ??:?
0x401072d1 in ets_timer_disarm at ??:?
0x40266acd in operator new(unsigned int) at ??:?
0x4025f758 in esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter::addDomainCacheItem(void const*, bool, unsigned short) at ??:?
0x4026daf4 in esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter::shiftOffset(unsigned short) at ??:?
0x4025f758 in esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter::addDomainCacheItem(void const*, bool, unsigned short) at ??:?
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x402747b8 in __ssputs_r at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf.c:232
0x4025f758 in esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter::addDomainCacheItem(void const*, bool, unsigned short) at ??:?
0x40101f44 in malloc at ??:?
0x40266ad3 in operator new(unsigned int) at ??:?
0x40260329 in esp8266::MDNSImplementation::MDNSResponder::_udpAppendBuffer(unsigned char const*, unsigned int) at ??:?
0x4026062e in esp8266::MDNSImplementation::MDNSResponder::_writeMDNSRRDomain(esp8266::MDNSImplementation::MDNSResponder::stcMDNS_RRDomain const&, esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter&) at ??:?
0x402607e8 in esp8266::MDNSImplementation::MDNSResponder::_writeMDNSServiceDomain(esp8266::MDNSImplementation::MDNSResponder::stcMDNSService const&, bool, bool, esp8266::MDNSImplementation::MDNSResponder::stcMDNSSendParameter&) at ??:?
0x401011a0 in ets_post at ??:?
0x401037a4 in pp_post at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x402755f9 in _printf_i at /workdir/repo/newlib/newlib/libc/stdio/nano-vfprintf_i.c:196 (discriminator 1)
0x40106989 in lmacTxFrame at ??:?
0x401011a0 in ets_post at ??:?
0x401049c6 in wDev_ProcessFiq at ??:?
0x4010656e in lmacMSDUAged at ??:?
0x40105ebd in lmacRecycleMPDU at ??:?
0x401011a0 in ets_post at ??:?
0x40105933 in lmacProcessTXStartData at ??:?
0x40106989 in lmacTxFrame at ??:?
0x401011a0 in ets_post at ??:?
0x40104a16 in wDev_ProcessFiq at ??:?
0x401037a4 in pp_post at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x401037a4 in pp_post at ??:?
0x401049c6 in wDev_ProcessFiq at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x401046e8 in wDev_ProcessFiq at ??:?
0x401011a0 in ets_post at ??:?
0x4026ac4f in _ZN13CRGBPalette16aSERA16_Kj$isra$0 at FX_fcn.cpp:?
0x402206be in Segment::loadPalette(CRGBPalette16&, unsigned char) at ??:?
0x401011a0 in ets_post at ??:?
0x401037a4 in pp_post at ??:?
0x40106a3b in lmacRxDone at ??:?
0x40106a3b in lmacRxDone at ??:?
0x4010432f in rcReachRetryLimit at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x4010450c in rcReachRetryLimit at ??:?
0x401049c6 in wDev_ProcessFiq at ??:?
0x401046e8 in wDev_ProcessFiq at ??:?
0x40223356 in _ZN14NeoEsp8266UartI12UartFeature121NeoEsp8266UartContextE10UpdateUartEb$isra$0 at bus_manager.cpp:?
0x40225ed5 in _ZN7PolyBus4showEPvhb$isra$0 at bus_manager.cpp:?
0x401076bc in system_get_time at ??:?
0x40103bd5 in rcUpdateTxDone at ??:?
0x401037a4 in pp_post at ??:?
0x40106a23 in lmacTxFrame at ??:?
0x40105bfe in lmacRecycleMPDU at ??:?
0x4022074d in Segment::currentPalette(CRGBPalette16&, unsigned char) at ??:?
0x40107f94 in BusManager::setPixelColor(unsigned short, unsigned int) at ??:?
0x40224989 in BusDigital::getPixelColor(unsigned short) at ??:?
0x40225a44 in _ZN24NeoEsp8266UartMethodBaseI26NeoEsp8266UartSpeedWs2812x14NeoEsp8266UartI12UartFeature121NeoEsp8266UartContextE25NeoEsp8266UartNotInvertedE6UpdateEb$isra$0 at bus_manager.cpp:?
0x40225ed5 in _ZN7PolyBus4showEPvhb$isra$0 at bus_manager.cpp:?
0x4021f6e6 in WS2812FX::estimateCurrentAndLimitBri() at ??:?
0x402209d8 in WS2812FX::service() at ??:?
0x402a8466 in wifi_get_opmode at ??:?
0x402a964b in wifi_station_get_connect_status at ??:?
0x402397e8 in handleNightlight() at ??:?
0x40266d46 in yield at ??:?
0x40248c20 in WLED::loop() at ??:?
0x4026ed8c in StreamNull::~StreamNull() at ??:?
0x402687cc in uart_write at ??:?
0x40263398 in HardwareSerial::write(unsigned char const*, unsigned int) at ??:?

The crash really seens to be related to memory, as malloc is aways the last function called... But why only with iPhone's Safari this happens? There are features in the code I can disable to release memory and test?

willmmiles commented 10 months ago

I can replicate this issue with 0.14.1 and Safari shortly after a board reset. Later requests do not reliably hit the bug, but with repeated requests it will eventually fail.

I'm fairly confident the root issue is the same AsyncWebServer memory corruption problem I've been chasing for a bit now. Safari just happens to both (a) be fairly aggressive with parallel web requests, and (b) send the right set of headers to trigger the underlying fault.

casesolved-co-uk commented 9 months ago

@andrehen @willmmiles I had to disable websockets to get v14.1 stable with WLED_DISABLE_WEBSOCKETS - should improve things

blazoncek commented 9 months ago

Websockets, if used by external devices, will in fact contribute to a more stable device.

Unfortunately they do need some RAM and, if that is scarce, it may help to disable them in certain circumstances.

Disabling them has no other disadvantages but possible stale info in UI.

casesolved-co-uk commented 9 months ago

Websockets, if used by external devices, will in fact contribute to a more stable device.

You can try to deny my experience if you want, but this is not true.

blazoncek commented 9 months ago

Anyone interested I posted binaries of 0.14.2-b2, which is intended to solve this issue, on Discord, #beta-testing channel. It includes AWS modifications from @willmmiles and faster CPU clock.

github-actions[bot] commented 5 months ago

Hey! This issue has been open for quite some time without any new comments now. It will be closed automatically in a week if no further activity occurs. Thank you for using WLED! ✨