You will find that a lot of "tutorials" and the like and even most products such as the "keypad shield" and "I²C backpack" have "Vo" connected to a 10k potentiometer which connects to 5 V Vcc and ground.
This is a sad mistake mindlessly copied from one "design" to the next essentially since these LCD controllers were available. It indicates most designers never actually read and fully comprehended the datasheet. The potentiometer only ever functions over one twentieth of its range at the ground end. Such is life!
The correct version is a 1k variable resistor from "Vo" to ground, never connected to 5 V. As David mentions, 390 Ohms is in general a good approximation and most of the time direct connection to ground will be usable (especially if the supply voltage happens to drop as low as 4.6 V!).
Thanks, that's great, a 390R did the trick. I have data on the screen but it's just solid blocks across the top line. I still have an issue somewhere, will keep looking. I will double check all my connections but I still worry the SD is causing an issue...
Ok so after a long time checking everything carefully and not finding any issues. I tried it and it worked. Seems the USB port I usually use is not pumping out enough power. It was a psu issue. Doh. Thanks for help with contrast. Glad it’s sorted.