Skip to content
MakerBuddy

Week 19 · Term 3 · 45 to 60 minutes

Visual Output (LCD Display)

Writing meaningful text

Try it first, no kit needed

Learning Objective

Learn how to communicate with the user by displaying text messages and sensor data on a 1602 LCD Screen using the I2C protocol.

Visual Output (LCD Display)

Week 19 Term 3 45-60 minutes
1602 LCD with I2C backpack connected to an I2C port of the green MakerBuddy IoT Kit V1.0 board1602 LCD with I2C backpack connected to an I2C port of the green MakerBuddy IoT Kit V1.0 board

Hardware: 1602 Character LCD Module with I2C

The LCD Display card in the MakerBuddy web app, browser extension and mobile appThe LCD Display card in the MakerBuddy web app, browser extension and mobile app

Dashboard: LCD Display Control Card

Theory: Talking to the User

The 1602 Screen

Today the board gets a screen to write on. The 1602 LCD gets its name because it displays 16 characters per line and has 2 lines.

Tiny molecules in a liquid crystal turn when a voltage reaches them, blocking the backlight to make dark dots.

The I2C Protocol

The bare screen has 16 pins, and about 6 to 10 would need wires to the ESP32. Too messy! So the screen wears a small backpack called an I2C Adapter.

I2C (Inter-Integrated Circuit) is a protocol, a set of rules for how chips talk. It uses just TWO wires:

  • SDA (Data): carries the information.
  • SCL (Clock): keeps the timing so no bits get lost.

The Grid System

The screen is a grid of boxes, like the game Battleship. You pick a box with (column, row):
(0,0) is the top-left.
(15,0) is the top-right.
(0,1) is the bottom-left.

On MakerBuddy, line 1 always starts at (0,0) and line 2 at (0,1). The board moves the cursor for you.

For Teachers

Use I2C to explain protocols: each device has an address, so many can share two wires. MakerBuddy joins all its I2C sockets together, and the LCD (address 0x27) is the device the board talks to.

For Parents

Microwaves, printers and car dashboards use text screens like this. Learning to control this screen is a first step toward building the screens on real devices.

Try It: Write on the LCD

Interactive demo · no kit needed

Play with a pretend MakerBuddy board and its web page, right here.

Follow the steps one at a time. Got the kit? You can switch to the real board inside.

Activity: Electronic Billboards

Activity Duration: 25 minutes

Part 1: Connection

Unplug the USB cable. Plug the LCD into one of the connectors marked I2C on the left edge of the board. Match every wire by its printed name: VCC to VCC, GND to GND, SDA to SDA, SCL to SCL. Don't go by position: the LCD's pins are in a different order from the board's. Then plug the USB cable back in.

Part 2: Hello World

  1. Go to the LCD Display card on the dashboard.
  2. Select the Custom radio button.
  3. Type "Hello Class!" in the first text box (line 1).
  4. Click 📝 Update (📝 Update LCD in the browser extension). The board redraws custom text every 5 seconds, so your message appears within about 5 seconds.

Part 3: Positioning

  1. Put your name on the top line.
  2. Put "MakerBuddy" on the bottom line.

Line 1 can't be empty, or Update does nothing. Spaces at the start or end are removed, so every line starts at the left edge. (The browser extension keeps spaces, and there an empty line 1 brings back the board's own screens.)

Part 4: Dynamic Data & Wildcards

In Custom Mode, you can mix text with live sensor data. Put wildcards (names in curly braces) in your text, and the MakerBuddy board replaces them with real values. It updates them every 5 seconds, even with the dashboard closed!

Available Wildcards:
  • {temp} - Temperature (°C, one decimal, e.g. 24.0; shows 0.0 if no DHT11 is plugged into connector 25)
  • {humidity} - Humidity (%, one decimal)
  • {distance} - Distance (cm, one decimal)
  • {pot} - Potentiometer (%)
  • {light} - Light Level (%)
  • {gas} - Gas Level (0–100)
  • {ds18b20} - Probe temperature (°C, one decimal)
  • {soil} - Soil moisture (%)
  • {button} - Push button pressed (YES/NO)
  • {motion} - Motion (YES/NO)

Each line has 16 boxes. The counter under each text box shows the columns your line uses. A wildcard counts as its value (24.0 is 4 columns), not its name. Lines that are too long are not sent.

Try typing these:

  • Temp: {temp}C
  • Light: {light}

Note

No text? Check the blue square on the back of the screen. That is the Contrast Potentiometer. Turn it with a screwdriver until white boxes or text appear.

Challenge: The Marquee

Scrolling Text

The screen is only 16 characters wide. What if your message is longer?

Challenge Goal

Make a scrolling "Marquee" sign by hand.

  1. Pick a long word: "SUPERCALIFRAGILISTIC" (20 letters).
  2. Write the first 16 letters: "SUPERCALIFRAGILI".
  3. Drop the first letter and add the next one: "UPERCALIFRAGILIS".
  4. Keep going! Scrolling signs work like this, moving one letter at a time.

Bonus: The Status Monitor

Can you make a mini dashboard?

  • Line 1: "Temp: 24C"
  • Line 2: "Hum: 60%"

Change only the numbers and keep the labels.

Discussion Questions:

  • Why does I2C need only 2 signal wires (SDA and SCL), plus 2 for power? (Data travels one bit after another.)
  • What can't this screen do? (Only text, no pictures, small size.)

Key Takeaways

✓ I2C Protocol

Devices share two signal wires (Data and Clock), and each has its own address. The board talks to the LCD at 0x27.

✓ Character Displays

Each of the 32 boxes is a tiny grid of 5 × 8 dots. The screen shows only built-in letters and symbols, not pictures.

✓ Coordinates

You place text with (column, row), just like in computer graphics.

✓ User Feedback

The screen lets the board tell people what it is doing, like "Processing..." or "Error!".

Coming Up Next Week:

Week 20: Algorithmic Thinking & Flowcharts

Learning Support

Use this quick guide to help every learner understand, practice and explain Visual Output (LCD Display).

For students

Try it in three steps

  1. Say it: explain the main idea in one simple sentence.
  2. Show it: Connect I2C LCD. Print sensor values dynamically to the screen.
  3. Stretch it: Make a hand-made marquee by shifting a long word across the 16-column screen one letter at a time, then build a two-line status monitor with {temp} and {humidity}.

Checkpoint: What was your input, what decision or process happened, and what was the output?

For teachers & parents

Coach without taking over

  • Before: ask the learner to predict what will happen and why.
  • During: use prompts such as “What changed?” and “What could you test next?” instead of giving the answer.
  • After: ask for a 30-second explanation, one piece of evidence and one improvement.

Look for: safe handling, correct vocabulary, a result the learner can demonstrate, and an explanation in their own words.

Safety reminder: Unplug the USB cable before connecting the LCD, and match VCC, GND, SDA and SCL by name, not by position (swapping VCC and GND can damage the LCD's backpack). Turn the contrast knob gently with the kit's small screwdriver.

Did you get it?

Three quick questions. Pick an answer to see whether it is right, and why.

  1. 1What does "1602" in the 1602 LCD tell you?

  2. 2Why does the LCD use the I2C connection with just two signal wires?

  3. 3What does a wildcard such as {temp} do in the LCD's custom text?