There are serval macros available to configure the behaviour of the GFX-Library. HAL macros: #define HAL_USE_GFX // enables the GDISP sub system. This is essentially needed to use the display #define HAL_USE_TOUCHPAD // enables the TouchPad sub system. This is essentially needed to use the touchpad GDISP macors: #define GDISP_USE_GPIO // GDISP is connected to the MCU using GPIO interface, involves using lld_lcdWriteGPIO() and lld_lcdReadGPIO() #define GDISP_USE_FSMC // GDISP is connected to the MCU using FSMC interface #define GDISP_USE_SPI // GDISP is connected to the MCU using SPI interface #define GDISP_SCREEN_WIDTH // defines width of panel in pixels. This is essentially needed to use the display #define GDISP_SCREEN_HEIGHT // defines height of panel in pixels. This is essentailly needed to use the display #define GDISP_NEED_MULTITHREAD // GDISP will be accessed across different threads -> thread safe mode #define GDISP_NEED_CONTROL // must be set to TRUE if controll access to the LCD controller is needed, eg for changing orientation or power mode #define GDISP_NEED_CLIP // when clipping is needed #define GDISP_NEED_CIRCLE // for circle drawing support (filled and frame) #define GDISP_NEED_ELLIPSE // for ellipse drawing support (filled and frame) #define GDISP_NEED_ARC // for arc drawing support (filled and frame) #define GDISP_NEED_TEXT // for font rendering support #define GDISP_NEED_PIXELREAD // to read a pixels color value back #define GDISP_NEED_SCROLL // is scrolling is needed (pixel shift) #define GDISP_NEED_QUERY // to make certain queries to the LCD controller #define GDISP_NEED_CONSOLE // for the console abstraction TouchPad macros: #define TOUCHPAD_NEED_MULTITHREAD // TouchPad will be accessed across different threads -> thread safe mode #define TOUCHPAD_XY_INVERTED // output of tpReadX() and tpReadY() swapped - needed if touchpad writes swapped to touchpad controller #define TOUCHPAD_STORE_CALIBRATION // calibration values can be stored if set to true. Therefore tpCalibration() is not neccessary to call on each reset. involves using lld_tpWriteCalibration() and lld_tpReadCalibration()