sku: LCD-00709
Description: This is a basic 16 character by 2 line display with a snazzy black background with white characters. Utilizes the extremely common HD44780 parallel interface chipset (datasheet). Interface code is freely available. You will need ~11 general I/O pins to interface to this LCD screen. Includes white LED backlight.
Dimensions: 3.15" x 1.425"
COM-08653
Keypad - 12 ButtonBOK-09613
Practical ArduinoLCD-00258
Serial Enabled LCD BackpackCOM-09806
Trimpot 10K with KnobLCD-10097
Serial Enabled LCD KitLCD-08977
Nintendo DS Touch Screen
Comments 57 comments
Works fine with Arduino and LiquidCristal library.
Needs a lcd.clear() in void setup()
And don’t just ground the contrast (V0), use a pot or you won’t be able to read anything.
Working OK with Picaxe 20x2 but uses pins I would like to have free for i2c. So, I am getting bigger picaxe to go with it. Used 2 rectifier diodes in series for the voltage drop to 4.2v on the backlight and two 1k ohm resisters in series for the contrast. Looks good.
For those having problems try this. With the pins at the top pin 1 is next to the edge. I’m using an Arduino ATMega 328 mini pro.
using the example Hello World arduino sketch.
PIN1 = tie to gnd
2 = tie to 5v
3 = resistor ~2-3K to gnd
4 = rs = tie to pin 12 on arduino
5 = r/w = tie to gnd
6 = enable = tie to pin 11 on arduino
7-10 = open (no connections)
11 = tie to pin 5 on arduino
12 = tie to pin 4 on arduino
13 = tie to pin 3 on arduino
14 = tie to pin 2 on arduino
15 = tie to 4.2 V (5V is working for me right now)
16 = tie to gnd
using this with an arduino will work
Great little lcd, for basic output, debugging etc. Very easy to interface, and looks very slick! If you need a basic no frills LCD, this is a good buy.
Nice bit of kit : )
Has anyone got this working with the LiquidCrystal or LCD4bit library? I am having quite a bit of trouble getting it to work reliably and am at the point where I am going to try and code my own library for it.
I’m also having heaps of trouble. I can sometimes get it to display text, maybe once out of every 30 attempts. And IF it decides to display anything it ends up garbling the message and locking up, not displaying the other strings in the sequence. Is this the LCD, my Arduino or the library? I tried using LCD4bit and a modified LiquidCrystal and they all yield the same, frustrating results.
Late reply, but I have trouble with this if I forget to add decoupling capacitors on the V+ line. Especialy using multiple serial to parallel converters at high data rates.
I have this same issue. I have to try many, many times to get it to work. Do you have any suggestions.
are the above dimensions the lcd itself or the actual part?
nvm the pdf above not only has the dimensions but also the tolerances! nice
Does anyone have a recommended source for a mounting bezel faceplate for this display?
Characters on mine look very dimmed! I’m using a potentiometer, however when powered up doesn’t look anything like the product image thumbnail.
I’m following the schematics from Arduino website: http://arduino.cc/en/Tutorial/LiquidCrystal
It works fine with my second LCD (black on green) but not with this one (white on black).
Am I missing something?
Have you wired in the backlight? That tutorial doesn’t include wiring pins 15 and 16 on the lcd. I have hooked the backlight up to a pwm output so that I can turn it on and off via sketch.
Hope this helps.
Denny
Hey Montini,
Shoot us an email (techsupport at sparkfun dot com), and give us as much info as you can. We’d be happy to help troubleshoot.
I am also ahving this same problem. The LCD was great and easy to set up, but the brightness is really really poor. I installed a pot and all, but no dice.
The LCD display is barely visible without the back light. If you connect the back light it’ll look like the photo in the product info.
Hey I’m thinking of buying one, but I’d like to know. How bright is it, I’m thinking of using it on a buggy to show fuel, tack, and speed. So it will be vibrating around in bright sunlight. My question is, will it be legible?
Thanks.
Ordered mine a week ago and finally got around to playing with it. I used the included LiquidCrystal.h for Arduino to run this thing. Very easy to use once you get it up and running. To get the contrast working I used a 3.3Kohm resistor going to ground, looks amazing. Not quite as bright as picture but I think I’m close. 2.2Kohm is too washed out and 6.8 Kohm nothing shows up. I can’t believe how much easier this is compared to the 68HC12. Uhhh, I’m going to have nightmares for the rest of my life.
I’m very impressed. I followed the connections from the data sheet and set them up the same way the LiquidCrystal “Hello World” example sketch calls for, and the display worked perfectly with my Arduino Duemilanove. It does take some playing with the contrast potentiometer, but I quickly found the perfect setting. The display is sharp, clear, and cool white letters on a black background.
Pretty cool little LCD. I had some problems initially with the 4bit LCD library, but after finding that the standard LiquidCrystal library supports 4-bit data lines it worked great.
The one thing that threw me off was that the standard (not extended) datasheet mentions that the backlight (BKL) can be driven by pins 1,2 or 15,16 — however I found that I needed to apply 4.2v to pins 15,16 before the backlight would work. Easy fix, just misleading on the datasheet.
Thanks loophole! I got the display working fine using this link that link that was mentioned, http://arduino.cc/en/Tutorial/LiquidCrystal, but it was dim since the backlight was not working. After reading loophole’s comment and looking at datafile I applied 4.2V pin 15 and grounded pin 16, and all was GREAT!
Note: To get around 4.2V I just ran it through two IN4004 diodes.
I made it work by using the same schematic featured in the LiquidCrystal Arduino library page, except LCD pin 6 is hooked to a digital PWM instead of a potentiometer for controlling contrast.
I used a 10ohm resistor for pin 15 to drop the backlight voltage, it works great and looks just like the picture. Pin 16 is hooked to ground.
Very nice, bright, easy to use LCD!
Thanks to the guy who did that wiring up diagram at Aruduino.
Thanks to the guy who first pointed that for that bcklight to work one needs pin 15 on +4.2V and pin 16 on ground. Without that I was getting a pretty dim job.
For me, 82ohm resistor produced exactly 4.2V, on the pin 15. 10ohm resistor was giving me around 4.8V. Since I’ve no clue, better safe than sorry.
It is a brilliant little LCD. Really looks cool. I bought it for the looks ;–)
yeah, I’ve got a 110ohm on it. Still very bright, reading 3.8v or something in that ballpark.
This things freakin' great.
Got it working with this tutorial
http://www.hacktronics.com/Tutorials/arduino-character-lcd-tutorial.html
For those of you trying to hook up the LED backlight, here are some things to consider:
1) The spec sheet says 120mA typical, 160mA max. for the backlight.
2) The backlight is a 4.2V forward biased LED, so pin A (or 15) is the anode and K (or 16) is the Cathode.
3) If you hook it to an Arduino, powering the LED backlight from a digital I/O pin will only source 40mA max. (PIC micros are even less), any more and you are overloading your output. Tie pin K (or 16) to ground, and A (or 15) will be the high side. If you design for 40mA, calculate the current limiting resistor to put between the I/O pin and pin A (or 15) of the LED backlight as follows: 5V-4.2V=0.8V and 0.8V/0.040A=20ohms however, be sure to measure the voltage across your current limiting resistor and calculate the actual current flowing to the LED just in case… don’t overload your Arduino I/O!
(more continued below…)
4) If you want to really drive it properly, you need more POWER! So grab an NPN transistor such as a 2N4401 or 2N2222 or 2N3904, and amplify your I/O. Hook a 220 to 330 ohm resistor between your I/O and the base of the NPN, hook the emitter of the NPN to ground, and the collector to the K pin (or 16) of the LED backlight. Hook a 5 to 10 ohm 1/4W resistor between the A pin (or 15) of the LED backlight and the 5V rail (make sure your 5V regulator can handle the extra 120-160mA of current you are going to be consuming)
Oh, almost forgot… if you make that I/O a PWM output… you can then vary the brightness from 0-100%
what is the reason for the 5-10ohm resistor between the anode and the 5v? Someone mentioned that there is already a 130ohm resistor on the board in series with the backlight LED, so i can’t find a reason for it being there.
I was able to achieve much better contrast by applying a slightly negative voltage on the Vo pin (3). Minus 200 mV did the trick. I seem to remember that LCD’s used to have a negative output for just this reason. I don’t know what the rating of this pin is, so proceed with caution.
Works Great! Used with the Arduino and LiquidCrystal. Very clear and easy to read. I originally was setting contrast with a PWM pin to see how it worked(AKA I forgot to buy a trimpot), but it made the screen ‘pulse’. Switched to a potentiometer I scrounged and that worked much better. Ive got the backlight hooked to +5 and its been working fine so far.
The mbed example that is listed is not using serial. Setting up the serial with mbed is quite easy though.
Serial lcd(p13,NC); // NC = not used
Hello everyone.
Can anyone here give me a schematic that shows how to connect the above lcd with one atmega328
running arduino bootloader (just the chip not the whole
dev board,on a breadboard)
If you had searched the arduino website you would’ve found this:
http://arduino.cc/en/Tutorial/LiquidCrystal
Very Awesome display! It fired up and worked for me first try using the Arduino Liquid-Crystal library.
Strongly recommend using this display!
Like others have said, works well with liquidcrystal library and I also like to pwm the backlight with a fet on the low side. Looks really cool to have it fade out to 1 or 2% duty cycle standby mode when there has been no button presses/input in a while and then fade back in when you press a button.
Also no external resistor is needed for the backlight; just like almost all other 5v character LCDs this one has a series resistor right on the board. Mine is 130 ohms.
I like the sound of this. Don’t suppose you could post a quick sketch of how to wire up the fet for us beginners to use as a guide? Thanks!
for PIC directly, but you can implement driver for any microcontroller easily using mine as a base…
its just digital output high/lows so lol
http://joekwuen.blogspot.com/2011/02/project-hd44780-textual-lcd-driver-for.html
out of stock…anyone know where else to get these? I tried google and can’t find any other suppliers.
I’m also having trouble with LCD. I hooked up at 10kOhm pot, but when I upload the code it just gives me random pixels and characters. Is my Atmega on my Arduino Uno shot?
An RGB backlit version would be AMAZING!
They look relatively inexpensive too:
http://www.mouser.com/ProductDetail/Newhaven-Display/NHD-0216K1Z-NSRGB-FBW-REV1/?qs=sGAEpiMZZMt7dcPGmvnkBh7HNOkOcI5QdW24NKaHSg4%3d
I’m having problems with my contrast – it’s always either too high (washed out characters) or too low (can’t see the character) on separate spaces at the same time. No matter how I adjust it, each character seems to require a different contrast level. Help, please?
I’m also having problems with contrast; I’m using a 10k pot on the contrast pin, and it takes tiny adjustments to make it work. After a minute or so running, the contrast starts to flicker, and I can’t seem to get it stable.
I love this little LCD! It works great. However, I’m having a wicked hard time finding hardware (i.e. self-clinching PEM stud) that I can use to mount this. The 2.5mm mounting holes are pretty small. I’m trying hard not to use glues.
Any suggestions, anyone?
Thanks in advance. :)
I’m after a 20x4 version of this white on black display. Can’t seem to find one anywhere. Does such a beast exist?
I would also be interested in a 20x4 version!
I’m having a problem with this lcd, I can’d print custom caracters, I tried the code that this site http://icontexto.com/charactercreator/ gives you when you create a custom char, tried some other examples, but nothing, I always get just two vertical bars on the second and fourth columns.
Is it a compatibility issue with this controller (it’s a SPLC780D, not a HD44780 as said in the description).
BTW, it can display normal characters just fine.
Which part in eagle should I use for this?
I can’t find a 16 pin header for this lcd in the Sparkfun library.
has anyone measured the amperage on the backlight?
my lcd is working fine.
and the backlight only needs 15mA @ 5V without any resistor involved…
can anyone verify this?
yes. I’ve measured the same: 14mA @ 5V and the led get’s 3.1V so I connected the pin 15 to a pwm pin an pin 16 to gnd an it works fine!
I’ve worked with these for a little bit now and it is a very nice looking display, and works well with arduino.
Just in case there are any n00b, like me, out there struggling with this thing. The LED is 3.3V but everything else is 5V.
Does anyone know where I could buy the 16x4 or 20x4 version of this LCD? I’d like one with the same white on black style.
Great Product! I am a arduino newb and got it up and running in no time. I would love to be able to power this with a battery…anyone try this?
What do you mean? Power is power buddy. Just make sure you regulate it as needed.