ILI9488 / ST7796S

HX8357B has power control registers at 0xD0...
ILI9486 has power control registers at 0xC0...

It is unwise (tm) to use the wrong initialisation sequence on power control registers.

You were just lucky that your screen was not upset by the HX8357B values.

ILI9488 has similar manufacturer registers to the ILI9486.
I have tried ILI9486 sequences on ILI9488. Bodmer's ILI9486 sequence displays but the GAMMA settings are horrible.

I then tried Bodmer's ILI9486 sequence on a ST7796S SPI display. And got a WHITE screen !!
I suspect that you have a 16-bit parallel ST7796S display.

Either alter the 0xC2 initialisation e.g. writedata(0xA7)
Or just comment out these two lines in TFT_HX8357.cpp: (wiser)

    writecommand(0xC2);        // Power Control 3
    writedata(0x00);

Please report back.

If you really want to use UTFT, tell me which 320x480 controller you want to "replace" with ST7796S init code.

David.

Edit. Your screen would have come in an anti-static bag with a label. Did the label say ILI9488 or ST7796S ?
Now you know why I do not like write-only displays. You can waste hours "assuming" when readID() would have identified the correct controller immediately