Features:
LCD:
- 16x2 character format for ample text display.
- White text on yellow backlight for better visibility.
- Operates at 5V; dimensions: 98 x 60 x 12mm.
I2C Interface Module:
- Operates at 5V.
- Potentiometer for adjusting backlight and contrast.
- Includes 2 I2C interfaces (Dupont or dedicated I2C cable compatible).
- Compatible with 1602 and 2004 LCDs.
Description:
This module integrates a 16x2 LCD with an I2C interface. It operates at 5V and includes adjustable backlight and contrast. With a compact size and easy connectivity, it’s ideal for embedded and development systems.
Principle of Work:
The display uses liquid crystal technology that alters light passage based on voltage. The I2C interface uses a two-wire communication (SDA & SCL) for interaction with microcontrollers. Address pins (A0–A2) allow customization of I2C address, and a built-in potentiometer helps adjust visibility.
Pinout of the Module:

- VCC: 5V power input
- GND: Ground
- SDA: Serial Data
- SCL: Serial Clock
- A0, A1, A2: I2C address setting
- Potentiometer: Backlight/contrast adjustment
Applications:
- Embedded Systems: For IoT devices, wearables, and home automation.
- Robotics: Display real-time data like motor speed and voltage.
- Consumer Electronics: For devices like MP3 players and portable consoles.
- Instrumentation: Display temperature, pressure, and flow data.
- Education: Excellent tool for teaching display interfacing and programming.
Circuit:

Connection to Arduino Uno:
- VCC to 5V on Arduino
- GND to GND on Arduino
- SDA to A4 on Arduino
- SCL to A5 on Arduino
Library Installation:
- Open Arduino IDE.
- Go to Sketch > Include Library > Manage Libraries.
- Search for
LiquidCrystal_I2C
and click "Install".
- Include the library via Sketch > Include Library.
Example Code:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
Serial.begin(9600);
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Hello, world!");
}
void loop() {
if (Serial.available() > 0) {
String input = Serial.readString();
lcd.clear();
lcd.print(input);
}
}
Technical Details:
LCD Display:
- Display: 16x2
- Backlight: Yellow
- Character size: 2.95mm x 4.35mm
- Character pixels: 5x7
- Voltage: 5V ± 0.5V
- Current: 2mA @ 5V
- Connection: 4-pin male header (0.1" spacing)
- Dimensions: 80 x 36 x 13mm
- Operating temperature: 0–55°C
I2C PCF8574 Module:
- Voltage: 5V
- Communication: I2C
- Configurable address via A0–A2
- Connection: Dupont or I2C cables
- Compatible with 1602/2004 LCDs
- Backlight and contrast adjustable
- Operating temperature: 0–55°C
Resources:
Comparisons:
An LCD without I2C requires multiple connections to control data, RS, R/W, and Enable pins. With an I2C module, communication is simplified to just SDA and SCL, reducing pin usage and wiring complexity.
The I2C version is ideal for projects with limited GPIOs, such as on the Arduino Uno or ESP8266.
Features:
LCD:
- 16x2 character format for ample text display.
- White text on yellow backlight for better visibility.
- Operates at 5V; dimensions: 98 x 60 x 12mm.
I2C Interface Module:
- Operates at 5V.
- Potentiometer for adjusting backlight and contrast.
- Includes 2 I2C interfaces (Dupont or dedicated I2C cable compatible).
- Compatible with 1602 and 2004 LCDs.
Description:
This module integrates a 16x2 LCD with an I2C interface. It operates at 5V and includes adjustable backlight and contrast. With a compact size and easy connectivity, it’s ideal for embedded and development systems.
Principle of Work:
The display uses liquid crystal technology that alters light passage based on voltage. The I2C interface uses a two-wire communication (SDA & SCL) for interaction with microcontrollers. Address pins (A0–A2) allow customization of I2C address, and a built-in potentiometer helps adjust visibility.
Pinout of the Module:

- VCC: 5V power input
- GND: Ground
- SDA: Serial Data
- SCL: Serial Clock
- A0, A1, A2: I2C address setting
- Potentiometer: Backlight/contrast adjustment
Applications:
- Embedded Systems: For IoT devices, wearables, and home automation.
- Robotics: Display real-time data like motor speed and voltage.
- Consumer Electronics: For devices like MP3 players and portable consoles.
- Instrumentation: Display temperature, pressure, and flow data.
- Education: Excellent tool for teaching display interfacing and programming.
Circuit:

Connection to Arduino Uno:
- VCC to 5V on Arduino
- GND to GND on Arduino
- SDA to A4 on Arduino
- SCL to A5 on Arduino
Library Installation:
- Open Arduino IDE.
- Go to Sketch > Include Library > Manage Libraries.
- Search for
LiquidCrystal_I2C
and click "Install".
- Include the library via Sketch > Include Library.
Example Code:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
Serial.begin(9600);
lcd.init();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Hello, world!");
}
void loop() {
if (Serial.available() > 0) {
String input = Serial.readString();
lcd.clear();
lcd.print(input);
}
}
Technical Details:
LCD Display:
- Display: 16x2
- Backlight: Yellow
- Character size: 2.95mm x 4.35mm
- Character pixels: 5x7
- Voltage: 5V ± 0.5V
- Current: 2mA @ 5V
- Connection: 4-pin male header (0.1" spacing)
- Dimensions: 80 x 36 x 13mm
- Operating temperature: 0–55°C
I2C PCF8574 Module:
- Voltage: 5V
- Communication: I2C
- Configurable address via A0–A2
- Connection: Dupont or I2C cables
- Compatible with 1602/2004 LCDs
- Backlight and contrast adjustable
- Operating temperature: 0–55°C
Resources:
Comparisons:
An LCD without I2C requires multiple connections to control data, RS, R/W, and Enable pins. With an I2C module, communication is simplified to just SDA and SCL, reducing pin usage and wiring complexity.
The I2C version is ideal for projects with limited GPIOs, such as on the Arduino Uno or ESP8266.