← Back to Basic Projects

πŸ“Ί 16x2 LCD Greeting Board

Display custom text and sensor data on a physical 16x2 LCD screen using the I2C protocol.

πŸ“‹ Overview

The 16x2 LCD is the classic display for Arduino projects. While the standard wiring takes 6+ pins, using an I2C adapter reduces it to just 2 wires (SDA and SCL).

What you'll learn: I2C communication, LiquidCrystal_I2C library, cursor positioning, and printing dynamic data.

Estimated time: 30-40 minutes. Difficulty: ⭐⭐ Easy.

🧩 Components Needed

ComponentSpecificationQtyNotes
Arduino Uno R35V1
16x2 LCD with I2CHD44780 + PCF85741Blue or Green backlight
Jumper WiresFemale-to-Male4For I2C connection
USB CableType A to B1

πŸ—ΊοΈ Component Pin Mapping

16x2 LCD Greeting Board Component Pin Mapping Infographic

πŸ“– Step-by-Step Tutorial

1

Install I2C Library

Search for LiquidCrystal I2C by Frank de Brabander in the Library Manager and install it.
2

Connect I2C Pins

Connect VCC β†’ 5V, GND β†’ GND, SDA β†’ Pin A4, SCL β†’ Pin A5.
3

Find I2C Address

Most modules are 0x27 or 0x3F. Check your module's datasheet or use an I2C scanner sketch.
4

Upload and Adjust

Upload the code. If you see blocks instead of text, adjust the blue potentiometer on the back of the LCD for contrast.
πŸ’‘
If the text is too faint or looks like solid blocks, use a small screwdriver to turn the blue potentiometer on the I2C backpack until the text is clear.

πŸ’» Arduino Code

lcd_greeting.ino
INO
// LCD Greeting : Volt X
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

// Set address to 0x27 for 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  lcd.init();
  lcd.backlight();
  
  lcd.setCursor(0, 0);
  lcd.print("Welcome to");
  lcd.setCursor(0, 1);
  lcd.print("Volt X Platform!");
}

void loop() {
  // Static display, no loop logic needed
}

⭐Reviews & Ratings

β€”0 reviews
5β˜…
0
4β˜…
0
3β˜…
0
2β˜…
0
1β˜…
0
...

Loading reviews...

volt-X / 16x2 LCD Greeting Board β€” Arduino Tutorial