Program stops without error when running lv_timer_handler();


I am running a simple program, trying to upgrade from v7 to v8, but the program stops at lv_timer_handler().

What MCU/Processor/Board and compiler are you using?

Arduino environment, nRF52, ST7789. I have code running with v7 code but am trying to adapt it for v8, starting with a simple “hello world”.

What do you want to achieve?

A simple “hello world” test.

What have you tried so far?

Tried variations of the old code and searched and read some other issues which seem to be related to the LV_HOR_RES_MAX.

Code to reproduce

void loop() {
  Serial.println("loop started...");
  lv_timer_handler(); /* let the GUI do its work */
  Serial.println("post lv_timer_handler");
  delay( 5 );

Current code:

/*Change to your screen resolution*/
static const uint16_t screenWidth  = 240;
static const uint16_t screenHeight = 240;

//static lv_disp_draw_buf_t draw_buf;
static lv_disp_draw_buf_t disp_buf;
static lv_color_t buf[ screenWidth * 10 ];

Previous code:

#define buffer_lcd_size LV_HOR_RES_MAX * 30
static lv_disp_buf_t disp_buf;
static lv_color_t buf[buffer_lcd_size];

Be sure that lv_disp_drv_t and lv_indev_drv_t are also static.

That did it. Thank you!