-
Notifications
You must be signed in to change notification settings - Fork 964
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
Update espresive sdk to latest (to fix? nasty bug described below) #606
Comments
We may be able to glean inspiration for a solution from: |
Upload interface randomly crashes meshtastic#606 watchdog timer exception while building https certificate meshtastic#597
Fix for meshtastic#606 and meshtastic#597
Crashing has been fixed. The solution I proposed earlier was a problem, just not the problem to the root case of this issue. This fix has uncovered a limitation in the SPIFFS file system, namely, it's not very good at being fragmented -- it slows to a crawl. Shouldn't be a problem if the filesystem is "fresh". I'll update the upload interface at some point to a json end point and have it return file system stats. |
@mc-hamster I updated to 1.1.32 which overwrote the spiffs partition. I tried to reupload the 0.1.3 release of the web interface using |
Could you attach the log from the console When it crashes? What browser do you use? Os? |
Browser: Chrome Version 87.0.4280.88 Here is the log:
|
Chrome on Windows crashes, Firefox on Windows works |
Chrome on windows. Fascinating. I didn't try that. Thanks for the report. |
Interesting thing is that didn't crash in the same place. What you've reported is unrelated but we can track it on the same bug. I won't be able to look at this for a few days but if I'm unable to reproduce it, I may send you a custom build with more debugging information. |
Sounds great. I just managed to upload it with Chrome on Windows by opening the Developer Tools. Really, really strange behaviour. Dev-Tools open => works, Dev-Tools closed => crashes. This will be an interesting one to track down. :-D |
I've got it running on Chrome on Windows. Can't reproduce this. What version of chrome do you have? |
@Noki Please try with this attached firmware. It's built for the tbeam on the US frequencies, so I wouldn't use it to send/receive messages in your country. Let me know if you need it for other boards. If you can get it to crash on Chrome, please attach your log files here. There's not much going on before the other log entries, so like you said "This will be an interesting one to track down". |
After 10 minutes of uploading files continuously , I was able to randomly get a crash. It's happens at a different point in time from the one @Noki pointed out but the address on the backtrace is very similar. It suggests that there's an interrupt routine in RadioLibInterface.cpp that's causing the crash. Moving this into its own thread may abate the ISR since it won't be interrupting the main loop. Backtrace: 0x400812b4:0x3ffbf0f0 0x400812dd:0x3ffbf120 0x40081359:0x3ffbf140 0x4008246d:0x3ffbf160 0x40062211:0x3ffd1200 0x40096879:0x3ffd1220 0x400968b2:0x3ffd1250 0x40096c09:0x3ffd1280 0x40086c15:0x3ffd12a0 0x4017c169:0x3ffd12c0 0x40184b29:0x3ffd12e0 0x401862fc:0x3ffd1310 0x401888e5:0x3ffd1340 0x401892de:0x3ffd1360 0x40186f7d:0x3ffd13a0 0x40184e06:0x3ffd1400 0x4018538d:0x3ffd1420 0x4018469d:0x3ffd1450 0x4018f986:0x3ffd1470 0x4000bd83:0x3ffd1490 0x4000117d:0x3ffd14b0 0x400592fe:0x3ffd14d0 0x4005937a:0x3ffd14f0 0x40058ad3:0x3ffd1510 0x401c3851:0x3ffd1540 0x401c389d:0x3ffd1580 0x401c29cd:0x3ffd15a0 0x401d863d:0x3ffd15c0 0x400e20a1:0x3ffd15e0 0x401d83c7:0x3ffd18b0 0x400df93e:0x3ffd18d0 0x400df96e:0x3ffd18f0 0x400f0d8d:0x3ffd1910 0x400df93e:0x3ffd1950 0x400f0b06:0x3ffd1970 0x400f0d8d:0x3ffd19d0 0x400df93e:0x3ffd1a10 0x400f1415:0x3ffd1a30 0x400ee472:0x3ffd1c00 0x400ded69:0x3ffd1c30 0x400da0c0:0x3ffd1c50 0x400fbe11:0x3ffd1c70 |
@mc-hamster Tried your firmware and got it to crash on the first attempt:
|
This means it’s crashing inside the web server. What exact version of chrome are you using? Any extensions? |
Chrome Version 87.0.4280.88 (Official Build) (64-Bit) without any plugins. I just created a new chrome profile to make sure it has nothing to do with anything installed in my normal Chrome install. One thing I noticed: If I open the chrome developer tools and check "disable cache" the upload works. Disabling the cache makes Chrome use a new connection. Maybe it has something to do with the keep-alive handling of the http connection. In addition the cache control request header changes from |
We're using the same version of chrome. @Noki Please try this firmware. It has keep-alive disabled on /static and /upload |
@mc-hamster I could not get that version to work but I've seen that you also commited it as a change and compiled it by myself. It still crashes:
I'm out of ideas... |
@Noki oh, you can make your own builds! I just added instructions on how to perform real-time backtraces at the bottom of the document. Run that while in platform.io and it’ll tell us exactly where it’s failing. |
|
Thanks for that stack trace. At this point I’m at a loss of what may be causing it and can’t reproduce it on my side. That says the watchdog is being triggered but it’s all in the sdk. Hmmmm |
I've seen that Expressif Master is ahead of Meshtastic with the following fix: Disable IRAM optimization for WiFi
Can you merge the latest changes from Expressif Master? I will then try again and if it still crashes we can also file a bug with Expressif. |
This issue has been mentioned on Meshtastic. There might be relevant details there: |
we (probably me alas) should probably just update to the latest expressiv that still works with arduino (so we can pull in this fix and others). I'll try to do it soon. I'm going to retitle this bug. |
closing this. the bug described no longer happens. we've added enough work arounds. |
Fix RTTL size mismatch
The upload interface is being used more often. Maybe it should no longer be experimental.
It crashes in the web server( esp32 https server ) in dealing with the incoming stream from the browser.
The text was updated successfully, but these errors were encountered: