Inquire: Call 0086-755-23203480, or reach out via the form below/your sales contact to discuss our design, manufacturing, and assembly capabilities.
Quote: Email your PCB files to Sales@pcbsync.com (Preferred for large files) or submit online. We will contact you promptly. Please ensure your email is correct.
Notes: For PCB fabrication, we require PCB design file in Gerber RS-274X format (most preferred), *.PCB/DDB (Protel, inform your program version) format or *.BRD (Eagle) format. For PCB assembly, we require PCB design file in above mentioned format, drilling file and BOM. Click to download BOM template To avoid file missing, please include all files into one folder and compress it into .zip or .rar format.
Nokia 5110 LCD Arduino: Retro Display Revival for Modern Projects
Some components refuse to die, and for good reason. The Nokia 5110 LCD—originally designed for a mobile phone that dominated the late 1990s—has found a second life in the maker community. After years of designing embedded systems, I still grab the Nokia 5110 LCD Arduino combination for projects where I need a graphics-capable display that won’t drain batteries or blow the budget.
This 84×48 pixel monochrome screen runs on a PCD8544 controller and costs less than a decent coffee. Yet it delivers crisp text, custom graphics, and even simple animations visible in direct sunlight. In this tutorial, I’ll walk you through connecting this retro display to your Arduino, explore the best libraries, and share practical code examples that you can use immediately.
Why the Nokia 5110 LCD Still Matters
You might wonder why anyone would use a display from a 25-year-old phone when OLEDs and color TFTs exist. The answer comes down to practical engineering trade-offs.
Advantages Over Modern Alternatives
The Nokia 5110 LCD excels in several areas that matter for real-world deployments. First, power consumption is remarkably low—around 6-7mA with the backlight off. Battery-powered projects can run for weeks on a single charge. Second, the display remains perfectly readable in bright sunlight, unlike OLEDs that wash out outdoors. Third, the price point is unbeatable: bulk purchases bring the cost under $2 per unit.
I’ve deployed these screens in outdoor weather stations, bicycle computers, and industrial monitoring equipment. They just work, year after year, without drama.
Nokia 5110 LCD Specifications
Parameter
Value
Notes
Display Type
Monochrome LCD
Black pixels on gray/green background
Resolution
84 x 48 pixels
4032 total pixels
Controller
PCD8544
Philips/NXP chip
Interface
SPI (serial)
4-wire plus reset
Operating Voltage
2.7V to 3.3V
Logic levels matter
Backlight
LED (usually blue or white)
Separate control pin
Current Draw
6-7mA (display only)
Up to 80mA with backlight
Viewing Angle
Wide
Better than most character LCDs
Operating Temperature
-25°C to +70°C
Suitable for outdoor use
Hardware Requirements
Before connecting anything, gather your components and understand the voltage requirements—this trips up many beginners.
Components Needed
Component
Quantity
Notes
Nokia 5110 LCD Module
1
Usually comes on breakout board
Arduino Uno/Nano/Mega
1
Any 5V Arduino works
Resistors (10kΩ)
4-5
For voltage level shifting
Resistors (1kΩ)
4-5
Alternative divider values
Jumper Wires
8
Male-to-female preferred
Breadboard
1
For prototyping
The Voltage Level Challenge
Here’s where people run into trouble. The Nokia 5110 LCD runs on 3.3V logic, but most Arduino boards output 5V on their digital pins. Connecting 5V signals directly to the display can damage the PCD8544 controller—sometimes immediately, sometimes after a few hours of operation.
You have three options for level shifting:
Resistor voltage dividers: Simple and cheap. A 10kΩ and 4.7kΩ resistor pair brings 5V down to approximately 3.2V. This works reliably for the relatively slow SPI speeds we’re using.
Logic level converter modules: Cleaner solution that handles bidirectional communication. Overkill for this display since we only send data, never receive.
Use a 3.3V Arduino: Pro Mini 3.3V or ESP8266/ESP32 boards eliminate the issue entirely. Direct connection, no resistors needed.
Wiring Nokia 5110 LCD to Arduino
The display module typically has 8 pins. Some boards label them differently, so match by function rather than name.
Connection Table with Level Shifting
Nokia 5110 Pin
Function
Arduino Uno Pin
Resistor Divider
RST
Reset
Pin 6
10kΩ + 4.7kΩ
CE
Chip Enable
Pin 7
10kΩ + 4.7kΩ
DC
Data/Command
Pin 5
10kΩ + 4.7kΩ
DIN
Data In (MOSI)
Pin 4
10kΩ + 4.7kΩ
CLK
Clock
Pin 3
10kΩ + 4.7kΩ
VCC
Power
3.3V
Direct connection
BL
Backlight
Pin 9 (PWM)
330Ω to ground
GND
Ground
GND
Direct connection
For the resistor dividers, connect the 10kΩ resistor between the Arduino pin and the display pin, then connect the 4.7kΩ resistor from the display pin to ground. The junction point delivers approximately 3.2V when the Arduino outputs 5V.
The backlight pin connects to a PWM-capable Arduino pin through a current-limiting resistor. This allows software brightness control and saves power when you don’t need illumination.
Software Libraries for Nokia 5110 LCD Arduino
Several libraries support the PCD8544 controller. Each has strengths depending on your project requirements.
Library Comparison
Library
Flash Usage
Features
Learning Curve
Adafruit PCD8544
Medium
Graphics primitives, fonts
Easy
U8g2
Higher
Extensive fonts, efficient
Medium
PCD8544 (Sparkfun)
Low
Basic functions
Very Easy
LCD5110_Graph
Medium
Graphics focused
Easy
For beginners, start with the Adafruit PCD8544 library paired with Adafruit GFX. The combination provides drawing functions for lines, rectangles, circles, and text with minimal code.
For projects where memory is tight, U8g2 offers a page buffer mode that reduces RAM usage significantly—critical on ATmega328-based Arduinos with only 2KB of RAM.
Installing Libraries
Open Arduino IDE
Navigate to Sketch → Include Library → Manage Libraries
Search “Adafruit PCD8544” and install
Also install “Adafruit GFX Library” (dependency)
Restart Arduino IDE
Code Examples
Let’s write some practical code that demonstrates common use cases.
PCD8544 Datasheet: Search “PCD8544 datasheet PDF” for controller specifications
Tools
Image to Bitmap Converter: https://javl.github.io/image2cpp/
LCD Font Generator: http://oleddisplay.squix.ch/
Community
Arduino Forum Display Section: https://forum.arduino.cc/c/using-arduino/displays/
Reddit r/arduino: Active community for troubleshooting
Frequently Asked Questions
Can I use Nokia 5110 LCD with ESP8266 or ESP32?
Yes, and it’s actually easier since both boards use 3.3V logic. Connect the display directly without voltage dividers. Just adjust the pin definitions in your code to match the GPIO numbers on your ESP board.
Why does my display show random pixels or lines?
This usually indicates a wiring problem or timing issue. Double-check your connections, especially the DC (Data/Command) pin. Also try reducing the SPI speed in your library settings if available.
How do I display images on the Nokia 5110?
Convert your image to a monochrome bitmap (84×48 pixels or smaller), then use online tools like image2cpp to generate a byte array. The Adafruit GFX library’s drawBitmap() function displays the array on screen.
Is the Nokia 5110 LCD better than OLED for battery projects?
For battery life, yes. The Nokia 5110 draws 6-7mA versus 20-30mA for comparable OLEDs. However, OLEDs offer better contrast and don’t require backlight for visibility in dark conditions. Choose based on your specific requirements.
Can I run multiple Nokia 5110 displays from one Arduino?
Yes, each display needs its own CE (Chip Enable) pin, but they can share CLK, DIN, DC, and RST lines. Select which display receives data by setting its CE pin low while keeping others high.
Wrapping Up
The Nokia 5110 LCD Arduino combination proves that older technology still has legitimate applications. When you need a display that’s cheap, power-efficient, and readable in any lighting condition, this retro screen delivers without pretense.
Start with the basic examples above, experiment with contrast settings for your specific module, and build from there. Once you’ve mastered the fundamentals, you’ll find yourself reaching for this display whenever project constraints favor practicality over flashiness—which, in professional embedded development, happens more often than you’d think.
Suggested Meta Description:
Learn how to connect and program a Nokia 5110 LCD Arduino project with this complete tutorial. Includes wiring diagrams, code examples, level shifting tips, and practical projects for this classic retro display.
Inquire: Call 0086-755-23203480, or reach out via the form below/your sales contact to discuss our design, manufacturing, and assembly capabilities.
Quote: Email your PCB files to Sales@pcbsync.com (Preferred for large files) or submit online. We will contact you promptly. Please ensure your email is correct.
Notes: For PCB fabrication, we require PCB design file in Gerber RS-274X format (most preferred), *.PCB/DDB (Protel, inform your program version) format or *.BRD (Eagle) format. For PCB assembly, we require PCB design file in above mentioned format, drilling file and BOM. Click to download BOM template To avoid file missing, please include all files into one folder and compress it into .zip or .rar format.