The MCUFRIEND_kbv is a great libary he has done a great job getting every LCD display to work with various CPUS. Only two downfalls 1) The pins are hard coded in the source of the library _ I had to change utilities/mcufriend_shield.h and I tagged the lines with WB9RAA 2) The gpio start up serial port errors are caused by this library functions ReadID() and begin() See /AAZ-II/main.cpp lines 130..141 =================================== // Hardware Serial 2 pins expansion IO Serial2.begin(115200, SERIAL_8N1, EXPANDIONIO_RXD2, EXPANDIONIO_TXD2); // The MCUFRIEND_kbv prints several Errors on the serial port :( //E (509) gpio: GPIO can only be used as input mode //E (510) gpio: gpio_set_level(227): GPIO output gpio_num error //E (576) gpio: gpio_set_level(227): GPIO output gpio_num error //E (676) gpio: gpio_set_level(227): GPIO output gpio_num error Serial.println("Ignore Errors below from MCUFRIEND_kbv Library tft.readID();"); uint16_t ID = tft.readID(); Serial.println("Ignore Errors below from MCUFRIEND_kbv Library tft.begin(ID);"); tft.begin(ID); Serial.println("End of Library tft Errors\n"); ===================================