LCD won't write letters

Hello,

i write there becouse have small problem. My LCD1602 IIC won’t write text, how i can fix it?
There i found the simple guide on internet but still it doesn’t work. I have LCD library.

This is programming code:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x27 for a 16 chars and 2 line display

void setup()
{
lcd.init(); // initialize the lcd
lcd.init();
// Print a message to the LCD.
lcd.backlight();
lcd.setCursor(1,0);
lcd.print(“Hello World”);
lcd.setCursor(0,1);
lcd.print(“Workshop Arduino!”);
}

void loop()
{
}

Have you checked that the pins on the I2C adapter match the input pins on the display?

Which I2C adapter do you have?

Which library do you have?

Which guide did you use?

Sorry about all the questions - my crystal ball is not working.

Don

Awol, Yes i cheked, it's turned on right...

Floresta, i took everything from there https://tkkrlab.nl/wiki/Arduino_LCD_1602_11C and my I2C type is: Arduino LCD 1602 11C

Yes i cheked, it’s turned on right

I don’t understand your reply.

I have some I2C LCD adapters and their pinouts don’t match the default pinouts for the LCD class, so I supplied the correct pins in the constructor, and all is fine.

I got the exact same problem as the TS. I’ve basically tested all kinds of codes to get it working with my 1602 LCD. I’ve tested all the Liquid Crystal libraries. I can control the backlight (on and off) but can’t see any text.

I bought both the LCD and the I2C module from eBay and can’t find any specification on these. Here they are:

LCD
I2C module

I know I have the 0x27 address. I’ve tried several pinouts without success.

I’ve read a lot of threads here aswell.

All help is appreciated :slight_smile:

Kalekulan: I got the exact same problem as the TS. I've basically tested all kinds of codes to get it working with my 1602 LCD. I've tested all the Liquid Crystal libraries. I can control the backlight (on and off) but can't see any text.

I'll leave the finer detail to Floresta as he has his help dialogue ready to cut-and-paste.

Note that you need to install the fmalpartida library and remove the useless one that came with the IDE. Completely.

And that you have to adjust the contrast pot until you get the initial - uninitialised - display shown in the first photo in this thread.

Then you need the I2Cguesser sketch.

Paul__B: I'll leave the finer detail to Floresta as he has his help dialogue ready to cut-and-paste.

Note that you need to install the fmalpartida library and remove the useless one that came with the IDE. Completely.

And that you have to adjust the contrast pot until you get the initial - uninitialised - display shown in the first photo in this thread.

Then you need the I2Cguesser sketch.

I've installed that library and removed the old one.

I haven't done anything with the contrast pot. I'll try to adjust it and see if that's the problem.

I've used the I2Cguesser and I have address 0x27.

I'm pretty sure it's the pinout that is wrong in the constructor.

The RS, RW pins etc., is it on the display or on the I2C module that should be set in the constructor?

Kalekulan: I've used the I2Cguesser and I have address 0x27.

In that case it will be the contrast pot.

When you set that (connect Vcc and Ground only to do so; adjust it for a row of blocks in the first row even if the backlight is not on), connecting it to the I2C and running the guesser will give you the constructor to copy into your other code.

In case it does not, you need to confirm that the guesser actually gives sequential estimates as you click Enter each time.

I'll leave the finer detail to Floresta as he has his help dialogue ready to cut-and-paste.

My cut-and-paste dialogue is for the regular parallel connection.

I haven't done one for the I2C interface since I only have one adapter board, but here are some areas that have to be covered.

  • Power and contrast.
  • Pull-up resistors.
  • I2C address.
  • Compatible library.
  • The relationship between the I/O pins on the adapter chip and the I/O pins connecting the adapter to the LCD. Don

Paul__B: In that case it will be the contrast pot.

When you set that (connect Vcc and Ground only to do so; adjust it for a row of blocks in the first row even if the backlight is not on), connecting it to the I2C and running the guesser will give you the constructor to copy into your other code.

In case it does not, you need to confirm that the guesser actually gives sequential estimates as you click Enter each time.

I'll try the contrast pot and I2Cguesser again later on today. :)

floresta: My cut-and-paste dialogue is for the regular parallel connection.

I haven't done one for the I2C interface since I only have one adapter board, but here are some areas that have to be covered.

  • Power and contrast.
  • Pull-up resistors.
  • I2C address.
  • Compatible library.
  • The relationship between the I/O pins on the adapter chip and the I/O pins connecting the adapter to the LCD. Don
  • Power and contrast. - will try this.
  • Pull-up resistors. - I'm using Arduino Uno R3 dedicated SDA SCL on the board (which goes to A4 and A5).
  • I2C address. - The guesser says 0x27 and that works when I control the backlight on/off.
  • Compatible library. - I'm using LiquidCrystal_I2C v2.0.1 (something like that).
  • The relationship between the I/O pins on the adapter chip and the I/O pins connecting the adapter to the LCD. - here is where I don't what to do.

I’ve found a couple of the common I2C adapter boards have the following pinout:

LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);

I have a similar I2C adapter board and that descriptor works for me.

Don

Kalekulan: I'll try the contrast pot and I2Cguesser again later on today. :)

That's what I am expecting to be the "trick".

Kalekulan: - Power and contrast. - will try this.

Most critical.

Kalekulan: - Pull-up resistors. - I'm using Arduino Uno R3 dedicated SDA SCL on the board (which goes to A4 and A5).

Rarely ever relevant.

Kalekulan: - I2C address. - The guesser says 0x27 and that works when I control the backlight on/off.

But that's not the only thing it says - you get successive guesses. With the correct contrast, one of them must show up on the display.

Kalekulan: - Compatible library. - I'm using LiquidCrystal_I2C v2.0.1 (something like that).

It must be the fmalpartida library - but if the guesser is working, that must therefore be correct.

Kalekulan: - The relationship between the I/O pins on the adapter chip and the I/O pins connecting the adapter to the LCD. - here is where I don't what to do.

That's what the "guesser" tells you. It's just not worth doing it any other way. :D :grinning: