hi all, i bought a lcd keypad shiel serveral months ago, and a few days ago i tried to use it and i doesn´t work.
i have downloaded a few examples codes and the brightness is ok but the characters don´t, nner appears my characters only random rare chars, this is my lcd and my code, thanks.
P.D. i use arduino uno
// include the library code:
#include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.print("hello, world!");
}
void loop() {
// set the cursor to column 0, line 1
// (note: line 1 is the second row, since counting begins with 0):
lcd.setCursor(0, 1);
// print the number of seconds since reset:
lcd.print(millis()/1000);
}
You need to find out from your manufacturer what driver chip is on the board the LCD. Hitachi HD44780? Something else? And a schematic from the manufacturer would be useful too.
By the way, for now, remove the code from inside the loop. This code means the text is constantly changing making it more difficult to debug.
Just start with the "Hello World" text in the setup().
I have a very similar LCD Shield and it works fine. I would suspect a bad connection on the shield. Examine all the solder joints and re-melt any that are not smooth and shiny.
I have search for a schematic and for the manufacturer and nothing, i looked in www.dx.com reviews but nothing about that, but i have empty th void loop(), same result.
i have seen somthing rare in the shield, a kind o dirty, here you are some pics.
P.D. i see in all tutorials that the power on light is turned on, but mine is off, i show you now in other picture, thanks all for the responds.
Hi.
I'm using that exact same product with great results.
You can control the backlight by using D10 in PWM mode.
You've probably not checked the right pin declarations for this shield.
I wrote this review:
review: Pros:
Works like a charm, very bright backlight LED. Easy to get it to work, but you need to check what pins to use. Cons:
Unit was DOA, with a non working display. After ordering and receiving a new display, fixing it was easy. There's no data available (haven't foud one yet) so had to follow the traces to find out how to set it up, which is an easy job. Display updates a bit slow compared to some other one i tried. Other:
So here's the setup for the display part: LiquidCrystal lcd(8, 9, 4, 5, 6, 7); Reading the keys on analog(0) returns (usb powered): Select : 723 Left :482 Up : 133 Down : 308 Right : 0 The value "Down" will probably always be 0 but the other ones can vary because of external influences like load of the power supply and temperature. so you would have to test for a range covering mentioned values.
As you can see, i didn't know about pin D10 controlling the backlight at that moment.
I played a bit around and built the attached sketch to learn how to work with this display (had a lot of fun doing that).
The sketch brought me the ability to find any characters (decimal value) available in such display, how to enter and leave a menu, control such menu in different ways (navigate through the menu, select and manipulate menu items, use a dimmer for the display and have some feedback (by flashing the backlight, which can be enabled or not in that same menu) upon keypresses).
Feel free to play a bit with the sketch and to test your setup.
I have it running on an Uno and with the exact same shield you have linked to, so i guess you should be able to have it run straight away.
Hi, I have that same LCD unit, the blue trimpot in the corner adjusts the display contrast, by the looks of the picture the contrast needs adjusting for a start.
You don't need a schematic to verify your pin configuration/wiring.
It's only 6 pins/wires.
Just pull off the shield and then get our your ohm meter and figure out where
LCD pins 4 (rs), 6(en), 11(d4), 12(d5), 13(d6), 14(d7) go.
You can measure continuity directly from the lcd pins to the header pins on the bottom of the shield.
Once you know which Arduino pins are connected to the 2 control and 4 data lines
of the lcd you can then verify that the pin numbers are correct in the constructor
which is:
lcd(rs, en, d4, d5, d6, d7)
I just compared the construtor he uses in his posted sketch to what i've been using after visually following traces.
That's what i put in my review, and he is using the same:
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
I did check to see his link leads to the product i (and many many others) reviewed.
Those pictures aren't very helpful, but i think the "dirt" is just that, some left over from cleaning the product after soldering.
That is quite common and nothing to worry about.
Hi All,
I have just ordered this LCD keypad from DX, but I also had a schematic, so if it helps here it is!! I have also just got from China an LCD i2c backpack so hope to try that too, saves on pins..
If you'd like to use that backpack with the display key shield, you need to do some soldering and alter the shield.
The altering is not a hard job, because all pins at the 6 pole side of the Arduino have extra solder pads, except for A0 which is already in use by the shield.
So A4 and A5 are easy to be reassigned for your I2C backpack.
You would have to figure out a different way to mount the display to that shield, because the only way it is mounted now is the connector you're going to need for your backpack.
Desoldering the LCD in such way you don't destroy too much is the hardest part of all this.
As stated, this shield brought me lots of fun and was well worth its money to me.
I'd make my own setup now if i would want to use an I2C LCD and use an analog input (so just 3 pins) for multiple keys, after having learned how this works.
Hi Bill,
Yes I thought the back-light control looked a bit odd! So I might carry out one of the mods you pointed me too. In my own designs I use a 2N7000 Fet as a switch for this job, and others too.
@MAS3 No I don't intend to use the i2c backpack with this shield, what's the point! LCD's are quite cheap, it's for something else I will be using a DS1307 RTC which is also i2c so will combine in one project.
I am quite new to Arduino and C, having moved from Picaxe's and a basic basic?
sorry for taking so long to respond, but i was awaiting to this
I read that the problem could be that the arduino board don´t has enought power to this shield, and this batteries holder could fix it, but it is not the case, the case is that i continue without can use the lcd keypad shield, i´m thinking of buying another one.
Does anybody have the same problem?
Hi Franchescor,
I got mine about a week ago and it works fine, from DX in the US, but from China!! Very short on time just now and must go. But I can let you have a photo and code tomorrow.
Franchescor:
P.D. i see in all tutorials that the power on light is turned on, but mine is off, i show you now in other picture, thanks all for the responds.
That power LED doesn't light, because it isn't soldered to the board.
I'm fine with that, a LED at that spot would only annoy me.
I've been powering a duemilanove plus this shield over USB for months now, running the sketch i uploaded here.
The problem addressed by several people (like bperrybap) on this forum regarding the backlight dimmer is present in this shield, but hasn't served me any trouble yet.
Before i had this shield on an Uno, no problem either.
So i'm sure it's safe to say the Uno can handle this shield's power while the Uno is USB powered without trouble and you do not need an alternative power supply.
Of course your USB source could have a bit of a problem, for sure if you would be using a non powered USB hub.
Perhaps the shield is defective or the display, that happened to mine but i decided to fix it myself instead of returning it.
The defect could be as small as a poor or not at all soldered joint, as there's no electronics between the pins and the LCD, except for the transistor that handles the backlight on/off state.