Nextion display not responding

Serial communication generally needs something to indicate the start or end of transmission, in my Nextion methods I use 0xa5 repeated 3 times at the start, Nextion themselves use 0xff repeated 3 times at the end. As far as I know prints does not send any start or end marker, your code certainly does not. Without start or end markers your receiving code can easily get out of sync and not know when the start or end of your data is.

For more about using serial see Serial Input Basics - updated