Lv_task_handler stops running without crash

I was about to test using dynamic memory allocation for the display buffers. I might need to get one of those boards with debugger included.

I have the same problem here.
I use the M5 core2, and the 7.11 version … any improvement in 8.x ??
This problem arises twice, firts time when I use the microphone … but I reduce the stack size of the task and it is fixed !!!
Now I have added another task using Bluetooth, and when I start the bt system, it blocks the gui task.

I have the same issue, when i create several tasks for wifi, server, lcd … When my GUI application start doing something like running progress bar with animation for 5 second. Lcd random frozen for several times if i load screen has progress bar and lcd_task triggered watchdog task and stop running. i think because of my progress bar’s animation cause problem because it traceback to lv_obj_redraw, lv_bar_event, lv_obj_redraw, … while others screen works great. Can you help me ! Many thanks.

Take look at this comment: https://github.com/lvgl/lvgl/issues/2972#issuecomment-1105737276

Does it make any difference?

1 Like

@kisvegabor Earlier you responded with:

Ah, an important stuff: does the issue happen even if you don’t touch the screen and nothing is refreshing?

I am seeing a similar issue, but unrelated, in my Teensy setup. task_handler appears to stop but when I touch the screen in restarts and my screen refreshes. Is there a solution for this problem?

Are lv_indev_drv and lv_disp_drv_t static or global?

They are private members of a Class. I tried moving them to namespace externs, but that did not help. Defining them as static was causing issues with scope, but I am not sure why yet…

I have not made much progress here, but I have two views that behave differently with the same controls. The one that is getting “stuck” has a bunch of these lines in the LOGs:

[Error] (56.716, +0)     _lv_inv_area: detected modifying dirty areas in render         (in lv_refr.c line #212)

[Warn]  (56.716, +0)     lv_draw_sw_arc: Can't draw arc with LV_DRAW_COMPLEX == 0       (in lv_draw_sw_arc.c line #215)

I am guessing that disp.render_in_progress is not getting set correctly. When I navigate to a subset of the stuck view that does not have any lv_arc’s in scope, the Error stops logging, and returns as soon as arcs are back in view. So the error is coupled to the LV_DRAW_COMPLEX Warn somehow.

CORRECTION: It looks like the rendering Error is tied to having labels in scope that are being frequently updated (~5ms). I have labels in scope in the working view, but they are not being periodically updated.

Anyways, this is clearly unrelated to the original post. I will open a new issue once I narrow down what is going on here.