I will show how to Connect Arduino 20×4 LCD I2C Display in 5 Minutes Easily. We will use 20 by 4 display in this tutorial because it has 20 characters each line. If you wish to buy, then buy this version. The process of connection will be the same for all the version.
To see the output from Arduino, we need to connect LCD display with it. There is mainly two version of LCD display is available in the market. One is 16X2 display which has 2 lines & another one is 20X4 display which has 4 lines.
The LCD module can be connected to an Arduino board in 3 ways:
- Direct connection from the LCD module to the Arduino board without POT.
- Direct connection from the LCD module to the Arduino board with POT.
- LCD Module and Arduino board connected through an I2C Module.
I will show the 3rd process in this post.
To connect without any I2C module, follow this post
Connect LCD Display with Arduino without I2C Module & POT
Components Used:(Click to Buy)
Connection Setup Arduino 20×4 LCD I2C
Connection setup is very easy compared to direct connection. We have to connect only 4 pins using the following diagram.

Arduino 20×4 LCD I2C Library
First of all, we have to download and import the Arduino-LiquidCrystal-I2C-library.
You can also search this library inside Arduino IDE Manage Library.
Code Explain of Arduino 20×4 LCD I2C
In line 8, we are setting the the I2C address, Display character no & line no.
LiquidCrystal_I2C lcd(0x27, 20, 4)
Here the default address is 0x27. We are using 20×4 LCD display here. In line no 41 we have done a trick to clear the only last line. We have displayed 20 blank character i.e 20 times space bar in the output display.
Arduino Sketch for Arduino 20×4 LCD I2C
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | /* https://somtips.com https://youtube.com/somtips */ #include <Wire.h> #include <LiquidCrystal_I2C.h> // Set the LCD address to 0x27 for a 20 chars and 4 line display LiquidCrystal_I2C lcd(0x27, 20, 4); void setup() { // initialize the LCD, lcd.begin(); // Turn on the blacklight and print a message. lcd.backlight(); lcd.clear(); lcd.setCursor (0,0); // lcd.print("WELCOME"); delay(5000); } void loop() { lcd.clear(); lcd.setCursor (4,0); //character zero, line 1 lcd.print("Som Tips"); // print text lcd.setCursor (0,1); //character 4, line 2 lcd.print("Subscribe YouTube"); // print text lcd.setCursor (0,2); //character 0, line 3 lcd.print("fb/somtipsofficial"); // print text while(1){ lcd.setCursor (4,3); lcd.print("somtips.com"); delay(4000); lcd.setCursor(0,3); lcd.print(" "); lcd.setCursor (4,3); lcd.print("Visit now"); delay(2000); } } |
Output Arduino 20×4 LCD I2C
