Skip to content

ILI9341 landscape mode broken after update to v1.0.3 #241

@minou65

Description

@minou65

After updating the ESP32_Display_Panel library from version 0.2.2 to 1.0.3, I can no longer use my ILI9341 display in landscape mode. The same configuration that previously worked now throws an error during rendering:

Landscape Configuration:

#define ESP_PANEL_BOARD_WIDTH               (320)
#define ESP_PANEL_BOARD_HEIGHT              (240)
#define ESP_PANEL_BOARD_TOUCH_SWAP_XY       (1)
#define ESP_PANEL_BOARD_TOUCH_MIRROR_X      (1)
#define ESP_PANEL_BOARD_TOUCH_MIRROR_Y      (1)

Output:

LVGL Library Version: 8.4.0
[I][Panel][esp_panel_board.cpp:0066](init): Initializing board (ILI9341)
[I][Panel][esp_panel_board.cpp:0235](init): Board initialize success
[I][Panel][esp_panel_board.cpp:0253](begin): Beginning board (ILI9341)
[I][Panel][esp_lcd_ili9341.c:0061](esp_lcd_new_panel_ili9341): version: 2.0.0
[I][Panel][esp_lcd_touch_xpt2046.c:0095](esp_lcd_touch_new_spi_xpt2046): version: 1.0.5
[I][Panel][esp_panel_board.cpp:0463](begin): Board begin success
[I][LvPort][lvgl_port_ILI9341_v8.cpp:0788](lvgl_port_init): Initializing LVGL display driver
[E][Panel][esp_panel_lcd.cpp:0571](drawBitmap): x_end(320) exceeds display limit(240)

When I switch to portrait mode, everything works fine:
Portrait Configuration:

#define ESP_PANEL_BOARD_WIDTH               (240)
#define ESP_PANEL_BOARD_HEIGHT              (320)
#define ESP_PANEL_BOARD_TOUCH_SWAP_XY       (0)
#define ESP_PANEL_BOARD_TOUCH_MIRROR_X      (0)
#define ESP_PANEL_BOARD_TOUCH_MIRROR_Y      (0)

Output

LVGL Library Version: 8.4.0
[I][Panel][esp_panel_board.cpp:0066](init): Initializing board (ILI9341)
[I][Panel][esp_panel_board.cpp:0235](init): Board initialize success
[I][Panel][esp_panel_board.cpp:0253](begin): Beginning board (ILI9341)
[I][Panel][esp_lcd_ili9341.c:0061](esp_lcd_new_panel_ili9341): version: 2.0.0
[I][Panel][esp_lcd_touch_xpt2046.c:0095](esp_lcd_touch_new_spi_xpt2046): version: 1.0.5
[I][Panel][esp_panel_board.cpp:0463](begin): Board begin success
[I][LvPort][lvgl_port_ILI9341_v8.cpp:0788](lvgl_port_init): Initializing LVGL display driver
Touchscreen already calibrated. Skipping calibration.

Was there a change in how panel rotation or display size is handled in v1.0.3? Is there a new recommended way to configure landscape mode?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions