I got it hooked up to my breadboard/Arduino but was unable to see text on the screen. Turning the potentiometer caused the solid blocks to show up just like in the tutorial but the Hello World text was not seen.
Here's where the weirdness starts.
Unplugging the 5v supply from the breadboard only dimmed the back light but didn't turn it off. I plugged it back in to get the back light the full brightness
Unplugging the 5v supply from the potentiometer caused everything to work properly. Hello World and all.
So what am I doing wrong? It would seem that with the 5v line removed and with power still getting to the back light, that one of the other output pins being used to feed data to the screen is feeding 3.3v of power to the light. Is that normal? Also, why does removing the 5v line from the potentiometer make everything work?
I tested with my digital multimeter and none of the header pins I soldered to the lcd's 16 pads are touching each other.
Here is a picture of it working. I'm sorry I don't have color coded wires but everything is matched up like in the above mentioned tutorial I linked to.
Many LCD modules work acceptably with the contrast pin grounded, which is essentially what you have done by disconnecting the +5 volt lead to the potentiometer. I think you have misinterpreted your potentiometer connections.
What's what i said in the post.. That in order for me to get the whole thing to work, i need to remove the 5v line going to the pot.
Okay, show us a picture of it wired and not working. Kind of hard to see what is mis-wired, if the questionable wire isn't installed. Preferably something a little better lit as I thought that contrast was hooked to the far pin.
Also double-check with a meter that the pot is working and the middle leg is the wiper and its put in the breadboard correctly.
While the LCD interface is pretty standardized... the CONTRAST pin is one of those exceptions. In somce cases you CAN avoid a POT and just tie it to ground... in othet cases... it wants a negative voltage... like the -V you get from a MAX232. So basically, do what works on pin 3.