Ordered on weekdays before 14:00 = shipped the same day and delivered the next day in 98% of cases. Free returns 30-day reflection period 1-year warranty

Wiring diagram and code example

How to connect the LCD 1602/2004 I2C adapter to an Arduino UNO or ESP32, with an example sketch you can upload straight away.

1602 I2C LCD Display Demo

This project shows how to connect and display text on a 1602 LCD module with an I2C backpack. It initializes the display, turns on the backlight, and prints a greeting along with a live uptime counter. Adjust the potentiometer on the back of the module if the text contrast is too high or low.

Wiring diagram: LCD 1602/2004 I2C adapter on an Arduino UNO
Wiring diagram · Click to enlarge
Connection table: LCD 1602/2004 I2C adapter on an Arduino UNO
Connection table · Click to enlarge
1602_I2C_LCD_Display_Demo.ino · compiled and verified
/*
 * ==================================================================
 *  Generated by Codey.online  —  https://www.codey.online
 * ==================================================================
 *  Project   : 1602 I2C LCD Display Demo
 *  Board     : Arduino UNO (arduino:avr:uno)
 *  Parts     : 1602 LCD I2C DISPLAY
 *  Libraries : LiquidCrystal I2C 1.1.2
 *
 *  Codey Online is an AI-powered browser IDE for Arduino and ESP32.
 *  Describe your project and Codey writes the code, draws the wiring
 *  diagram and uploads it to your board, straight from the browser.
 *  This code is free to use, modify and share, without warranty.
 * ==================================================================
 */

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// Most 1602 I2C modules use address 0x27 or 0x3F
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  Serial.begin(115200);
  
  lcd.init();
  lcd.backlight();
  
  lcd.setCursor(0, 0);
  lcd.print("Hello, Arduino!");
  lcd.setCursor(0, 1);
  lcd.print("Uptime: 0s");
  
  Serial.println(F("1602 LCD display initialized."));
}

void loop() {
  static unsigned long seconds = 0;
  
  delay(1000);
  seconds++;
  
  lcd.setCursor(8, 1);
  lcd.print(seconds);
  lcd.print("s   ");
  
  Serial.print(F("Uptime (s): "));
  Serial.println(seconds);
}

Required libraries: LiquidCrystal I2C 1.1.2

Wiring diagram and example code generated by Codey.online — https://www.codey.online

ESP32 1602 I2C LCD Display Demo

This project displays a welcome message and an uptime counter on a 1602 I2C character LCD. A 4-channel bidirectional logic level shifter is used to safely bridge the 3.3V I2C signals of the ESP32 to the 5V logic required by the LCD backpack. Once powered, the LCD will initialize and update the running seconds every second.

Wiring diagram: LCD 1602/2004 I2C adapter on an ESP32 DevKit V1
Wiring diagram · Click to enlarge
Connection table: LCD 1602/2004 I2C adapter on an ESP32 DevKit V1
Connection table · Click to enlarge
ESP32_1602_I2C_LCD_Display_Demo.ino · compiled and verified
/*
 * ==================================================================
 *  Generated by Codey.online  —  https://www.codey.online
 * ==================================================================
 *  Project   : ESP32 1602 I2C LCD Display Demo
 *  Board     : ESP32 DEVKIT V1 (esp32:esp32:esp32doit-devkit-v1)
 *  Parts     : 1602 LCD I2C DISPLAY
 *  Libraries : LiquidCrystal I2C 1.1.2
 *
 *  Codey Online is an AI-powered browser IDE for Arduino and ESP32.
 *  Describe your project and Codey writes the code, draws the wiring
 *  diagram and uploads it to your board, straight from the browser.
 *  This code is free to use, modify and share, without warranty.
 * ==================================================================
 */

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// Set the LCD address (commonly 0x27 or 0x3F) for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  Serial.begin(115200);

  // Initialize I2C communication (SDA = GPIO 21, SCL = GPIO 22)
  Wire.begin(21, 22);

  // Initialize the LCD
  lcd.init();
  lcd.backlight();

  // Print greeting
  lcd.setCursor(0, 0);
  lcd.print("ESP32 LCD Demo");
  lcd.setCursor(0, 1);
  lcd.print("Uptime: 0s");

  Serial.println("1602 LCD Initialized!");
}

void loop() {
  // Update uptime counter every second
  static unsigned long lastUpdate = 0;
  if (millis() - lastUpdate >= 1000) {
    lastUpdate = millis();
    unsigned long seconds = millis() / 1000;

    lcd.setCursor(8, 1);
    lcd.print(seconds);
    lcd.print("s   ");

    Serial.print("Uptime: ");
    Serial.print(seconds);
    Serial.println(" s");
  }
}

Required libraries: LiquidCrystal I2C 1.1.2

Wiring diagram and example code generated by Codey.online — https://www.codey.online

LCD 1602/2004 I2C adapter

With this module you can add an I2C / IIC communication interface to your 1602 or 2004 LCD display, requiring only 2 data wires to control your LCD display.

• Supply voltage: 2,5 - 6 V
• supports the I2C protocol
• Setting the device address (A0 / A1 / A2)
• Backlight on/off
• Contrast adjustment possible
• Dimensions (LxWxH): 41,5 x 19 x 15,3 mm

 

Dimensions
Length: 4,55cm
Width: 1,9cm
Height: 1,5cm

  • For LCD displays
  • I2C / IIC
  • Address adjustable
  • Backlight switchable
Playing loads the video from YouTube.

Why choose this product?

  • Less wiring – Only 2 data wires needed.
  • Adjustable address – Device address A0/A1/A2 adjustable.
  • Backlight – Can be switched on and off.
  • Adjust contrast – Contrast easily adjustable.
Specifications
Dimensions41,5 x 19 x 15,3 mm
Width1,9 cm
Length4.55 cm
Supply voltage2,5 - 6 V
Height1.5 cm

Frequently bought together

Total: € 15,30

Reviews

★★★★★ 5,0/5 2 reviews
  • ★★★★★lucas van den oever

    Better than 16 cables

  • ★★★★★Chris

    Works as expected!

Write a review
Your rating

Shipping & returns

Shipping

  • Parcel with track & trace€ 7,70Within 24 hours
  • Pick up at PostNL location€ 7,40Within 24 hours
  • Letterbox parcel€ 3,70Within 2 business days
  • Letterbox parcel 24 hours€ 4,55Within 24 hours
  • Pick up in storeFree
All about shipping

Returns

Not satisfied? You have 30 days after delivery to return the product.

All about returns

Recently viewed

Toggle lever switch

Toggle lever switch

€ 0,95
Servo MG995 360 degrees

Servo MG995 360 degrees

€ 9,35
Water Flow Sensor YF-S201

Water Flow Sensor YF-S201

€ 4,25
AD/DA converter module PCF8591

AD/DA converter module PCF8591

€ 2,55
USB Host adapter 2.0 ADK

USB Host adapter 2.0 ADK

€ 11,15
Micro SD Card Reader for Arduino

Micro SD Card Reader for Arduino

€ 1,50