We are writing an app for a device that gathers waveform data that is 640x480 (yes, it’s hardcoded to that). We need to be able to plot this data as a set of lines (yes, 640 of them) at 60hz. We’re using an NXP IMXRT1064, and I’m able to get this performance with raw drawing without LVGL (using my own memory buffer and line drawing directly to it, using LCDIF single buffered, without even using PXP).
What MCU/Processor/Board and compiler are you using?
NXP IMRT1064 evk with a 640x480 lcd (not the one that came with it).
What LVGL version are you using?
We tried v7 (from github) and v6 something (whatever came with the NXP SDK).
What do you want to achieve?
60hz drawing of 640 lines.
What have you tried so far?
The chart widget can’t handle that much data with any decent performance. Using a canvas widget and our own fast line drawing algorithm (this takes 4ms to draw 640 lines directly to the buffer), in an lvgl task that runs every 16ms (60hz) never exits the main lvgl loop and takes 34ms to draw the screen.
Code to reproduce
Would need to provide a whole zip file. If you need it let me know.
Screenshot and/or video