Using an LCD with the Pico

Cartoon LCD on breadboard shows Hello from Tinkimo heart while silly banana sparks and googly eyed hammer watch Pico project

Using an LCD with the Pico is a popular way to add simple text output to Raspberry Pi Pico projects. A common choice is an HD44780-compatible character LCD, which can display letters, numbers, and basic symbols in rows and columns, such as a 16×2 layout. This type of LCD with the Pico is ideal for showing messages, sensor values, menus, or system status information.

When connecting an LCD with the Pico, the Pico uses its GPIO pins to send instructions and character data to the display. The Pico does not draw characters pixel by pixel. Instead, it tells the LCD which characters to show and where to place them on the screen, while the LCD’s built-in controller handles the display logic.

An LCD with the Pico is controlled using a small number of signals. Some GPIO pins are used to send character data, while others are used for control tasks such as selecting between commands and text, or telling the LCD when to read incoming data. This simple communication method makes character LCDs a good choice for beginners working with the Pico.

To make using an LCD with the Pico as easy as possible, most projects use the display in 4-bit mode. This reduces the number of GPIO pins required and simplifies wiring. With MicroPython or C libraries available for the Pico, setting up and using an LCD becomes straightforward, allowing you to focus on your project rather than low-level display control.

Wire up the circuit

In order to run the project firstly the HD44780 LCD display needs to be connected as shown in the diagram below. The circuit diagram below is shown for clarity and the actual connection on the breadboard follow.

The circuit looks as shown below on the set up that was used to create this tutorial.

Running the Code

In order to get started you will need to follow this tutorial, which will ensure that your environment and Pico are configured correctly.

You will need to create 2 files on the Raspberry Pico to help control the LCD display. Download the file here and save it as lcd_api.py, then download the file here and save it as pico_i2c_lcd.py.

Now create a file called main.py on the Raspberry Pico with the following content.

Next, click the run button and the display should toggle between a flashing cursor and “Hello from Tinkimo <3” every second as shown below.

Main Topic

The Raspberry Pi Pico

Raspberry Pi Pico on a breadboard with sensors and jumper wires arranged neatly on a desk, ready for an electronics project.

Raspberry Pi Pico is an affordable, efficient microcontroller offering flexible GPIO, strong performance, and versatile hardware features for beginner electronics projects.

Other Tutorials in this Topic

Cartoon Raspberry Pi Pico on a breadboard with glowing LED and wires beside a computer screen showing the Thonny picozero plugin installation.

Getting Started With The Raspberry Pico

Getting started guide showing how to set up a Raspberry Pi Pico on a breadboard and install…

A cheerful orange octopus adjusts wires on a breadboard with a Raspberry Pi Pico, potentiometer, and glowing LED beneath the text Basic Input / Output On the Pico.

Basic Input and Output With The Raspberry Pi…

The article explains how a Raspberry Pi Pico uses a potentiometer to control LED brightness, demonstrating basic…

A cheerful cartoon duck turns a control dial beside a spinning motor while an oscilloscope displays a squarewave showing PWM motor control.

Pico Motor Control Using the L9110 Control Board

A tutorial showing how to control a motor using PWM modulation to varying the speed of a…

Cartoon computer and Raspberry Pi Pico shout echo into a glowing cave with bold title Using Bluetooth On The Raspberry Pico.

Using Bluetooth on the Raspberry Pico

The article explains how to use Bluetooth Low Energy on the Raspberry Pi Pico, set up BLE…

Small educational robot uses ultrasonic sensor to navigate obstacles like cones and boxes while moving through a bright indoor course

Getting Started with an Ultrasonic Sensor Module on…

Beginner guide explaining how an ultrasonic sensor module works with Raspberry Pi Pico to measure distance using…

Cartoon robot spins happily while IMU detects z-axis rotation with arrows screens and motion lines in colorful laboratory scene background

Using the MPU6050 Gyro With Raspberry Pi Pico

The article explains how the MPU6050 IMU measures motion and rotation and communicates with microcontrollers using the…

Raspberry Pi Pico on breadboard drives LCD showing Hello message surrounded by colourful wires LEDs creating playful beginner electronics scene

Controlling an ST7789 Display With a Raspberry Pi…

Beginner guide explains using an ST7789 LCD with a Raspberry Pi Pico to create simple colourful display…