Select category:
TI LaunchPad

and use any of my projects or libraries, and would like to encourage further development you can donate through PayPal here:

Rather donate hardware directly? Then click here.

Library: LCD5110_Basic

I made this library for the simple reason that I could not find a ready-made library that suited my needs.

Nokia 5110 LCDNokia 5110 LCD BackNokia 5110 LCD Specs

These displays were used in old Nokia 5110/3310 cell phones. It is a 84x48 pixel monochrome LCD display. These displays are small, but very readable and come with backlight. This display is made of 84x48 individual pixels, so you can use it for graphics, text or bitmaps. These displays are inexpensive, easy to use, require only a few digital I/O pins and are fairly low power as well

To drive the display, you will need 5 digital output pins. Another pin can be used to control (via on/off or PWM) the backlight, but the library has no support for this function.

The display driver is a PCD8544 chip, and it runs at 3.3V so you can connect it directly to your developmentboard.


If you are going to use this library with a chipKit Uno32 and use Digital Pin 10 you MUST place the JP4 jumper in the PWM/RD4 position (jumper over the two pins closest to the USB connector).

This library uses an SPI-like software protocol and does require exclusive access to the pins used. You will not be able to share pins with other SPI devices.


(Filesize is 371.73 KiB. Downloaded 89867 times)

Some demos showcasing most of the functions are included in the download.
This is a multi-platform library that will work with several different development board types.

Latest changes:
v2.018 Mar 2013combined Arduino and chipKit libraries into a single library
  updated library to support Arduino v1.0 (and higher)
  added setContrast();
  added support for Arduino Leonardo and Arduino Due
  fixed a bug that caused bitmaps to use double the memory on chipKits
  changed license to CC BY-NC-SA 3.0
v2.108 May 2013modified printNumI() and printNumF()
  added support for String objects to print()
  added support for chipKit uC32
  reorganized files
v2.1114 Jun 2013fixed the '%' symbol in SmallFont
v2.1216 Mar 2014added functions for enabling and disabling Sleep Mode
  added an example for the use of Sleep Mode
  added support for Bobuino
v2.1308 Sep 2014fixed compatibility-issues with Arduino 1.5.7
For a full list of changes please see the file version.txt included in the download.

Nice to know:

When I timed it a fullscreen bitmap rendered in 7307 µS. In theory you can achieve a framerate of over 135 FPS.

If you are upgrading from v1.1 to v2.0 you will need to modify the #include <CK_LCD5110_Basic.h> statement in your sketch to be #include <LCD5110_Basic.h> (Remove the CK_).


WorkingchipKit Uno32
WorkingchipKit uC32
WorkingchipKit Max32
Working = Working   Not working: Not working
Not tested, Unsupported = Not tested, Unsupported


The manual is included in the download


By downloading the library you accept the following license:
Creative Commons BY-NC-SA Logo
Creative Commons (CC BY-NC-SA 3.0)
View SummaryView Legal