LCD won't display

Similar threads a everywhere, but no matter which fix I’ve tried, I can’t seem to find a solution. Here’s the run down:

It seems to be the usual 16pin LCD I’ve seen everyone using, the backlight turns on, the first row displays blocks, turning the potentiometer hooked up to VO changes the visibility of the line of blocks. But this Hello World doesn’t display:

#include <LiquidCrystal.h>
//LiquidCystal lcd(RS,E,D4, D5, D6, D7)
LiquidCrystal lcd(7,8,9,10,11,12);

void setup() {
lcd.begin(16,2);
lcd.print(“Hello World”);
}

void loop() {
}

I have redone the wiring several times now, and as you can see I’ve commented the labels of each pin, and meticulously made sure they wired correctly… while starting to mutter “doing the same thing and expecting a different result is insanity” over and over.
Since some people in some threads have blamed the VO line, I’ve tried it directly grounded too, with no difference, someone else said it could be not having a resistor on the backlight, so I’ve tried without the backlight plugged in (A+K), still only blocks.
I’ve tried using the pins from 3-13, incase it was a pin. To check the cables I’ve soldered to the LCD, I’ve used another cable to connect from the arduino pins (soldered side of the board), to the ends to the cables I haven’t cut yet. Both those haven’t worked.
I’ve tried being shocked, denying anything is wrong, yelling at the board, bargaining with it, crying, some more testing, and finally accepting all of lives efforts are futile. I also preyed.
I’ve cleared the program by loading an empty setup and loop, then loading the Hello Word again. I’ve pressed the reset button too. I’ve unplug all the D4 to D7 cables, and I’ve tried them in the opposite order.
I’ve tried going through step by step, explaining how it works to my roommate (I someone find mistakes in my coding projects that way).

At this point, I’m questioning if the LCD or digital pins are broken, or if this is just a glitch in the matrix.

I can upload some pictures, or give you a wiring diagram, but I don’t think it will make a difference.

That is how much I typed before an idea hit me… I decided to test the cables between the LCD and the board again, not by jumping them one by one, but by testing each to light up an LED. It turned out 2 of the cables weren’t working, which is why jumping the cables didn’t work.

I’m posing this, even though I’ve probably solved it, just so I can give you the moral of the story:

Check the cables before you solder them.

A lesson I won’t soon forget, and it’s probably an obvious one. Funny thing, they were both yellow cables, and then testing the replacements, 2 more yellows didn’t work, I should play the anti-lottery, the lottery for people with bad luck.

And with that I’ve written my first post on the forums here, and made a fool of myself at the same time.

You should have header pins or sockets. Soldering wires to devices is rather short sighted for prototyping.

Well there isn't much prototyping to do, someone asked me to make a fake bomb for Airsoft. He had bought the arduino uno kit, and a mutual friend said I could put it together and code it. I don't think this will be taken apart anytime soon, and I need it to be robust and compact.
Plus, removing the cables is easy: heat up the solder, use the vacuum pump, remove the wire, heat up any residue, vacuum pump it again. So much so, that changing the faulty wires took only a couple minutes, the longest part was waiting for the iron to heat up.

What about your LCD library?
Did you make sure that you used the right constructor with the suitable library?

I think that toward the end of that discourse he implied that he had solved his problem.

Don

I would be extremely cautious about building a "fake bomb" - depending on your skin color, you will either get invited to the white house or tossed in jail for a period of time. These days, NOBODY has a sense of humor about "fake bombs" :o

mikey

depending on your skin color

Ooh, ooh - we say NO to racism.

But I suspect this thread deals with another XY problem.