I’ve been using Teensy 4.0 with a 480x320 and a touch screen on v7.11.0 and its been working fine.
I’m now trying to use v8.0.2. The lv_demo_widgets() compiles ok and I can see the picture on the LCD.
The problem is after about 10 seconds the Teensy reboots and now stuck in the reboot loop.
I think it is some sort of memory problem.
Any idea of how to fix this ?
#include <lvgl.h>
#include <ILI9488_t3.h>
#include <SPI.h>
#include <Adafruit_FT6206.h>
#include <lv_demo.h>
#define ON LOW
#define OFF HIGH
#define TFT_CS 10
#define TFT_DC 9
int LCD_BL = 14;
int LCD_RST = 15;
int LED_R = 24;
int LED_B = 26;
int LED_G = 25;
int led = 13;
ILI9488_t3 display = ILI9488_t3(&SPI, TFT_CS, TFT_DC);
Adafruit_FT6206 ts = Adafruit_FT6206();
#define LVGL_TICK_PERIOD 60
/*Change to your screen resolution*/
static const uint32_t screenWidth = 480;
static const uint32_t screenHeight = 320;
static lv_disp_draw_buf_t draw_buf;
static lv_color_t buf[ screenWidth * 10 ];
static lv_color_t buf2[ screenWidth * 10 ];
int oldTouchX = 0;
int oldTouchY = 0;
IntervalTimer tick;
#if LV_USE_LOG != 0
/* Serial debugging */
void my_print( lv_log_level_t level, const char * file, uint32_t line, const char * fn_name, const char * dsc )
{
Serial.printf( "%s(%s)@%d->%s\r\n", file, fn_name, line, dsc );
Serial.flush();
}
#endif
bool my_touchpad_read(lv_indev_drv_t * indev_driver, lv_indev_data_t * data)
{
uint16_t touchX, touchY;
if (ts.touched())
{
TS_Point p = ts.getPoint();
touchX = p.y; // Rotate the co-ordinates
touchY = p.x;
touchY = 320-touchY;
Serial.println(p.x);
Serial.println(p.y);
if ((touchX != oldTouchX) || (touchY != oldTouchY))
{
oldTouchY = touchY;
oldTouchX = touchX;
data->state = LV_INDEV_STATE_PR;
data->point.x = touchX;
data->point.y = touchY;
}
}else
{
data->point.x = oldTouchX;
data->point.y = oldTouchY;
data->state =LV_INDEV_STATE_REL;
}
return 0;
}
static void lv_tick_handler(void)
{
lv_tick_inc(LVGL_TICK_PERIOD);
}
/* Display flushing */
void my_disp_flush( lv_disp_drv_t *disp, const lv_area_t *area, lv_color_t *color_p )
{
uint16_t width = (area->x2 - area->x1 +1);
uint16_t height = (area->y2 - area->y1+1);
display.writeRect(area->x1, area->y1, width, height, (uint16_t *)color_p);
lv_disp_flush_ready(disp); /* tell lvgl that flushing is done */
}
void setup()
{
digitalWrite(LCD_BL, HIGH);
Serial.begin(9600);
while(!Serial);
Serial.print(CrashReport);
Serial.println( "LVGL test Arduino! (V8.0.X)" );
display.begin();
display.fillScreen(ILI9488_GREEN);
display.setRotation(1);
delay(600);
if (!ts.begin(40)) {
Serial.println("Unable to start touchscreen.");
}
else {
Serial.println("Touchscreen started.");
}
lv_init();
lv_log_register_print_cb( my_print ); /* register print function for debugging */
lv_disp_draw_buf_init( &draw_buf, buf, buf2, screenWidth * 10 );
/*Initialize the display*/
static lv_disp_drv_t disp_drv;
lv_disp_drv_init( &disp_drv );
/*Change the following line to your display resolution*/
disp_drv.hor_res = screenWidth;
disp_drv.ver_res = screenHeight;
disp_drv.flush_cb = my_disp_flush;
disp_drv.draw_buf = &draw_buf;
lv_disp_drv_register( &disp_drv );
/*Initialize the (dummy) input device driver*/
static lv_indev_drv_t indev_drv;
lv_indev_drv_init( &indev_drv );
indev_drv.type = LV_INDEV_TYPE_POINTER;
indev_drv.read_cb = my_touchpad_read;
lv_indev_drv_register( &indev_drv );
tick.begin(lv_tick_handler, LVGL_TICK_PERIOD * 1000);
#if 1
/* Try an example from the lv_examples Arduino library
make sure to include it as written above.
lv_example_btn_1();
*/
// uncomment one of these demos
lv_demo_widgets(); // OK
// lv_demo_benchmark(); // OK
// lv_demo_keypad_encoder(); // works, but I haven't an encoder
// lv_demo_music(); // NOK
// lv_demo_printer();
// lv_demo_stress(); // seems to be OK
#endif
Serial.println( "Setup done" );
}
void loop()
{
lv_timer_handler(); /* let the GUI do its work */
delay( 5 );
}
Serial output:
CrashReport:
A problem occurred at (system time) 0:9:45
Code was executing from address 0x35C6E
CFSR: 82
(DACCVIOL) Data Access Violation
(MMARVALID) Accessed Address: 0x0 (nullptr)
Check code at 0x35C6E - very likely a bug!
Run "addr2line -e mysketch.ino.elf 0x35C6E" for filename & line number.
Temperature inside the chip was 49.67 °C
Startup CPU clock speed is 600MHz
Reboot was caused by auto reboot after fault or bad interrupt detected
LVGL test Arduino! (V8.0.X)
::begin 2002a62c 255 255 255
ILI9488_t3::begin - End
Touchscreen started.
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_tabview_create: begin (in lv_tabview.c line #54)
(����)@73->(null)
[Info] (0.000, +0) lv_btnmatrix_create: begin (in lv_btnmatrix.c line #82)
(����)@77->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) flex_update: update 0x20031630 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20031490 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) flex_update: update 0x20031630 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20031490 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) flex_update: update 0x20031630 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_img_create: begin (in lv_img.c line #59)
(����)@65->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_keyboard_create: begin (in lv_keyboard.c line #124)
(����)@76->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_textarea_create: begin (in lv_textarea.c line #86)
(����)@75->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) flex_update: update 0x20031630 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_textarea_create: begin (in lv_textarea.c line #86)
(����)@75->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_dropdown_create: begin (in lv_dropdown.c line #92)
(����)@75->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_textarea_create: begin (in lv_textarea.c line #86)
(����)@75->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_slider_create: begin (in lv_slider.c line #61)
(����)@71->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_switch_create: begin (in lv_switch.c line #63)
(����)@71->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_switch_create: begin (in lv_switch.c line #63)
(����)@71->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_chart_create: begin (in lv_chart.c line #66)
(����)@69->(null)
[Info] (0.000, +0) lv_chart_add_series: begin (in lv_chart.c line #326)
(����)@74->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_chart_create: begin (in lv_chart.c line #66)
(����)@69->(null)
[Info] (0.000, +0) lv_chart_add_series: begin (in lv_chart.c line #326)
(����)@74->(null)
[Info] (0.000, +0) lv_chart_add_series: begin (in lv_chart.c line #326)
(����)@74->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_meter_create: begin (in lv_meter.c line #54)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_meter_create: begin (in lv_meter.c line #54)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_meter_create: begin (in lv_meter.c line #54)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x2003190c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200323bc container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20032e64 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x2003172c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200339ac container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20033cbc container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x2003400c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034784 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034e44 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20031800 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x2003190c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200323bc container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20032e64 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x2003172c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200339ac container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20033cbc container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x2003400c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034784 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034e44 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20031800 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x2003190c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200323bc container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x2003172c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200339ac container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20033cbc container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x2003400c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034784 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034e44 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20031800 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x2003190c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x2003400c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034784 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034e44 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x2003400c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034784 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034e44 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x2003400c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034784 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034e44 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20031800 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x2003400c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034784 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034e44 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20031800 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x2003400c container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034784 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20034e44 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_chart_create: begin (in lv_chart.c line #66)
(����)@69->(null)
[Info] (0.000, +0) lv_chart_add_series: begin (in lv_chart.c line #326)
(����)@74->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) flex_update: update 0x2003188c container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_img_create: begin (in lv_img.c line #59)
(����)@65->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_img_create: begin (in lv_img.c line #59)
(����)@65->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_img_create: begin (in lv_img.c line #59)
(����)@65->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_img_create: begin (in lv_img.c line #59)
(����)@65->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_img_create: begin (in lv_img.c line #59)
(����)@65->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_label_create: begin (in lv_label.c line #75)
(����)@69->(null)
[Info] (0.000, +0) lv_checkbox_create: begin (in lv_checkbox.c line #58)
(����)@75->(null)
[Info] (0.000, +0) lv_checkbox_create: begin (in lv_checkbox.c line #58)
(����)@75->(null)
[Info] (0.000, +0) lv_checkbox_create: begin (in lv_checkbox.c line #58)
(����)@75->(null)
[Info] (0.000, +0) lv_checkbox_create: begin (in lv_checkbox.c line #58)
(����)@75->(null)
[Info] (0.000, +0) lv_checkbox_create: begin (in lv_checkbox.c line #58)
(����)@75->(null)
[Info] (0.000, +0) lv_checkbox_create: begin (in lv_checkbox.c line #58)
(����)@75->(null)
[Info] (0.000, +0) lv_obj_create: begin (in lv_obj.c line #188)
(����)@66->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
[Info] (0.000, +0) lv_btn_create: begin (in lv_btn.c line #51)
(����)@65->(null)
Setup done
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x20035834 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20035e74 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20036198 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200364bc container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200367e4 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20036b10 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20035d60 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20036e40 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x2003188c container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20037634 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20031490 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x20035834 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20035e74 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20036198 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200364bc container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200367e4 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20036b10 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20035d60 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20036e40 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x2003188c container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) flex_update: update 0x20037634 container (in lv_flex.c line #207)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) grid_update: update 0x20035e74 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20036198 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200364bc container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x200367e4 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) grid_update: update 0x20036b10 container (in lv_grid.c line #315)
(����)@87->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.000, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.180, +180) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@93->(null)
[Info] (0.180, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.300, +120) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@93->(null)
[Info] (0.360, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.360, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.420, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.420, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.480, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.480, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.540, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.600, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.660, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.720, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.720, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.780, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.840, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.840, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.900, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)
[Info] (0.900, +0) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@91->(null)
[Info] (0.960, +60) lv_obj_update_layout: Layout update begin (in lv_obj_pos.c line #302)
(����)@92->(null)