-
Notifications
You must be signed in to change notification settings - Fork 422
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
Program crashes when adding wifi support #39
Comments
This issue or pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Not stale. (I can't help with this issue as I don't use ESP32.) |
@kisvegabor @amirgon Perhaps one of you can help with this? |
Where is the stack trace? |
Problem was solved by running Littlevgl only on core 1 while wifi and everything else runs on core 0. And using esp_timer_start_periodic(_lv_tick_timer, LV_TICK_MS*1000) to run the ticker. |
It's probably a concurrency issue (LittlevGL needs you to wrap calls with some type of synchronization primitive to work with multithreaded systems). |
I should have noticed that just looking at this code, I had a similar thing happen to me. I use a pinned task to run the lv_task_handler(). I felt better about that approach than adding a mutex because there is absolutely no chance of a deadlock. |
Yea the main problem came from esp_register_freertos_tick_hook(lv_tick_task); This should never be used. And I used a Recursive mutex around the LittleVGL functions. |
Hey guys. I've just got this up and running on ESP32, but am crashing every couple of minutes... I am using esp_register_freertos_tick_hook(lv_tick_task); So, I guess I'm not doing it right?! I posted the stack trace and some extra info here: espressif/esp-iot-solution#37 (comment) Any chance you guys know what I'm doing wrong?? Thanks all. |
|
Hmmm. I just downloaded the ili9341 code from here. I haven't touched it at all. I've just built it again on a single core like you suggested. It's been running for a half hour now without crashing... It looks encouraging that you've fixed the immediate fault. Any idea why it might have been crashing with the dual core. Suggestions above that using esp_register_freertos_tick_hook(lv_tick_task) is a bad thing. Any clue as to why that is? Is there a better ESP32 approach somewhere? I don't really need the processing power as it happens, but keen to keep my code robust if possible... Cheers, |
Your stack trace:
Code from here: That doesn't add up. line 130 on
I would try using I'm doing something like that on modlvesp32 (although I'm using micropython scheduler instead of |
This issue or pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Feature/color inversion
We use GitHub issues for development related discussions.
Please use the forum to ask questions.
Describe the issue
added wifi station code from esp-idf mqtt example:
https://github.com/espressif/esp-idf/blob/release/v3.3/examples/protocols/mqtt/tcp/main/app_main.c#L171
Code to reproduce the issue
Expected Results
The display shows to demo and wifi connects
Actual Results
Guru Meditation Error: Core 0 panic'ed (Cache disabled but cached memory region accessed)
ESP32 Chip version
ESP-IDF version
3.3
Development kit used
NodeMCU 32s
Development machine OS
Windows 10, Platoformio
Compilation warnings/errors (if available)
If possible, copy the compilation log into a file and attach it here
The text was updated successfully, but these errors were encountered: