LCD Screen top row white boxes

Hi a strange problem has developed with two lcd screens.

I have this screen Arduino_LCD_KeyPad_Shield__SKU__DFR0009_-DFRobot
and this Adafruit one RGB LCD Shield Kit w/ 16x2 Character Display - Only 2 pins used! [NEGATIVE DISPLAY] : ID 714 : $24.95 : Adafruit Industries, Unique & fun DIY electronics and kits

Both were working but now both have developed the same symptom of displaying a row of white boxes on the top row. I have tested them in two boards one UNO and one MEGA 2560 i cant seem to work out how two screens have developed the same fault at the same time...

Any ideas?

Thanks
Al

DSC_0001[1].jpg

i cant seem to work out how two screens have developed the same fault at the same time…

Most likely the boards haven’t developed a fault but something else has changed.

Your photo depicts an LCD module that has power connected and has the contrast adjusted. It has gone through its internal reset procedure and is now initialized as a single line display. This means that your program and/or the connections have changed since the proper initialization and display have not occurred.

Don

Thanks Don im a bit confused by what your saying im just trying to run the hello world example from here http://arduino.cc/en/Tutorial/LiquidCrystal

It was working when i first used the shield since then ive tried some different sketches but just cant seem to get it working again..is there something im missing...?

Cheers
Al

The program that you are using does not match up with the hardware.

The Adfafruit display uses the serial I2C interface so the Arduino LiquidCrystal library will not work with that device.

The DFRobot display uses the standard parallel interface but it uses different pins than the tutorial does. You will have to change the lcd.begin(...) statement in order for the LiquidCrystal library to work.

Don

Note the warning in the "Sticky" in this forum about the (potentially fatal) design blunder in some of these LCD shields.

floresta:
The program that you are using does not match up with the hardware.
You will have to change the lcd.begin(...) statement in order for the LiquidCrystal library to work.

Don

Actually, the lcd.begin() should be fine, since all it does is specify the lcd geometry.
You will need to change the LiquidCrystal constructor, which is where the pins are specified.

--- bill

Actually, the lcd.begin() should be fine, since all it does is specify the lcd geometry.
You will need to change the LiquidCrystal constructor, which is where the pins are specified.

Thanks Bill, that's what I meant to say.

Don