20x4 LCD Screen too dim *please I need help*

I recently bought a 20x4 LCD Screen and connected it to my Arduino Uno using the following schematic

I have used a 10K potentiometer and when I turn it only makes it a slight bit brighter, and otherwise it is extremely dim and the only way you can read the text is if you put it under a direct light source such as a flashlight.
This is my code:

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  // put your setup code here, to run once:
  lcd.begin (20, 4);
  lcd.print ("welcome!!!!");
}

void loop() {
  // put your main code here, to run repeatedly:
}

I have checked all the connections multiple times
The LCD pins have been connected like this:
LCD RS pin to digital pin 12
LCD Enable pin to digital pin 11
LCD D4 pin to digital pin 5
LCD D5 pin to digital pin 4
LCD D6 pin to digital pin 3
LCD D7 pin to digital pin 2

Remove the red wire to your potentiometer and leave that pin on the pot open.
The pot's function is to adjust contrast, not the brightness.

The last 2 pins on the module will usually take power for a backlight.
Sometimes you need to use a resistor to limit the current through the LED, sometimes this resistor is on board.
If you don't know whether there is a resistor or not, assume there isn't and use an external one.

Hi,
I've found this post becouse I have the same issue.
My dsplay is 4x20 MC42004A6W-BNMLW-V2 contoller ST7066U. The pinout is the same than Hafs_ah19.
I have tried to insert the resistence of 120 ohm between Vdd and Vss, without any improvment.
Surly there is something that I don't get: if I disconnect Vdd and Vss, the display is stilll on. Only if i disconnect the Potentiometer the display will switch off.

The Potentiometer that i used is lower 7k. I will change it.

Thanks in Advance

Fausto

FaustoT:
I've found this post because I have the same issue.

OK, OK, hold on there just a minute! The OP's "issue" was failure to actually connect the LED backlight on pins 15 and 16. Unless you connect the backlight, you have no internal illumination of the display and it is very difficult to see.

FaustoT:
My display is 4x20 MC42004A6W-BNMLW-V2 controller ST7066U. The pinout is the same than Hafs_ah19.

If your pinout is the same, then you have failed to connect the backlight. Since he never replied, we can only assume that he connected it and got the display working. People who never reply to advice here are very frustrating.

FaustoT:
I have tried to insert the resistance of 120 ohm between Vdd and Vss, without any improvement.

That statement makes no sense whatsoever.

FaustoT:
Surely there is something that I don't get: if I disconnect Vdd and Vss, the display is still on.

Again, if you actually disconnect the power, the display cannot be still on.

FaustoT:
Only if i disconnect the potentiometer the display will switch off.

If you completely disconnect the potentiometer, you certainly will get no display.

What MAS3 explained was a silly blunder that has appeared in most descriptions of the circuit since these displays were first available, of incorrectly connecting the potentiometer to the 5 V supply. This does not prevent the display from operating at all, but it makes it more difficult to control the contrast.

FaustoT:
The potentiometer that I used is lower 7k. I will change it.

The correct value for the potentiometer, with no connection to +5 V, is 1k.

Check out your connections. See (9) How to display Arduino sensor data on a ‘classic’ lcd display - Zonnestroompanelen in Nederland

Here is a wiring picture that i put in that article

photoncatcher:
Check out your connections. See (9) How to display Arduino sensor data on a ‘classic’ lcd display - Zonnestroompanelen in Nederland

Here is a wiring picture that i put in that article

39_fig_01_96_dpi.jpg

Again, a well-meaning effort, but persisting with long-standing blunders so nowhere near as helpful as your article could be. :astonished:

To the extent that people are going to read your article, you should re-do that diagram to remove the connection of the potentiometer to 5 V and preferably re-specify the value to 1k. I note you are in some manner aware of this

As the potentiometer is only needed to fine-tune the contrast one can experiment to connect pin 3 via a resistor with a fixed value with the 5V pin of the Arduino. Begin the experiments with a 10 kΩ resistor and replace it stepwise with one with a lower value until a satisfactory contrast is achieved.

but nevertheless persist in giving the wrong information (you even suggest connecting a resistor to 5 V! It must connect from pin 3 to ground)! Why? :astonished:

You have also put a 220 Ohm resistor in series with the backlight. On most display modules, resistor R8 (or sometimes R9 which is otherwise "0") is "101" meaning 100 Ohms as is quite clear on your other diagram!


So an external resistor is unnecessary unless you really want to dim the backlight. If anything, the resistor you recommend should be 100 Ohms corresponding to about 20 to 25 mA.

As it is you are presently, actually contributing to the general confusion on this subject. :astonished:


But then it seems @photoncatcher is unresponsive to any form of new or up-to-date information. The incorrect diagrams remain.
:confounded:

I hesitated when I read this statement . . .

Note that the 220 Ω resistor between 5V and pin 15 is necessary to reduce the voltage to the backlight led to 3.3V.

. . . and stopped reading when I read this one . . .

As leds are typically 3.3V devices, . . .

The author apparently does not know how LEDs are rated so I immediately question how valid the rest of his recommendations may be.

The pictures are pretty.

Don

Life is a mystery. The picture is nice. The 220R is specifically noted.

I can only assume that the author had tried it for herself.
Some modules have 0R series resistors for the backlight LED. Typical values might be 100R.
So it is sensible advice to check the value of resistor mounted on the pcb.

220R would be pretty dim with 0R. Even more dim with 100R.
Good rule of thumb would be: if 100R is mounted you do not need any extra series resistor.

David.

Hallo,
unfortunatly I have no improvement. I check the software with a module VELMAN (VMA203) where is a display 2x16 and it works (changing the pin):

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() {

}

Now, using an external display 2x16 and without changing the program i should see something, but the display is on but is not possible to see any text on it.

The pin out of backlight and power supply:
1 VDD 4.4V
2 GND
3 Potenziometer 2.8

I tried to insert both a resistence of 220 and 100 ohm but the display looked off
15 VDD 4.4 V
16 GND

PS in the schematic of VELMAN there is a transistor in the pin 15 and 16.
Thanks in advance

finally….
i've insert 220 ohm in series of the power supply as you adviced me and simply playing after with the Potenziometer i could see my text.