Nokia color LCD backpack design overview

From DP

Jump to: navigation , search

Nokia Cover.jpg

We've always liked the Nokia knock-off displays from SparkFun. They're dirt cheap ($15) and pretty easy to control.

The goal of this project is to add simple USB control. Unfortunately we are unable to source the displays so we are selling the untested board at cost, after that we wont make any more. You can get the project for $9.5.

Read about the design below.




This is a simple USB backpack for SparkFun's cheap color LCDs. Screen contrast and backlight brightness are adjustable from software. A small booster supplies 7volts for the backlight. A PIC 18F24J50 controls the LCD from a USB connection.

Our example uses a simple USB->serial interface, but HID and other device types are possible.

Production was stalled for months because we couldn't find a suitable LCD supplier. Even with Spark Fun shearing their source with us(Thanks SparkFun!), we were ultimately unable to procure them. So the project is sold as untested, AS-IS, without the displays.



Click for a full size schematic image. Schematic and PCB were designed with the freeware version of Cadsoft Eagle, download the latest project files from our Google Code project page.



The backpack uses a PIC18F24J50 MCU (IC1), it is powered by low drop-out regulator (VR1) that drops the 5v USB supply to the 3.3v required by the chip. The power supply (VDD) and USB supply (VUSB) pins are decoupled using a 0.1uF cap(C6,C8). The pic internal regulator pin (VDDCORE) requires a 10uF cap (C14). A 16Mhz quartz oscillator with two 27pF caps (C1 and C2) provides a stable external clock. The ICSP connector is brought to a header for programing.The MCLR pin gets a 2k resistor (R1) to hold the pic in reset until the power supply is adequate.

Nokia 6100 LCD


Nokia 6100 LCD is a 128x128 pixel color display that is controlled via a serial interface. The interface consists of a data, clock, chip select, and reset pins which are driven by the MCU. The driver power supply is decoupled using a 0.1uF cap (C5). The bias voltage is sensitive to noise and since we are using a boost circuit we added a ferrite bead (L1) and a 0.1uF cap(C4) for extra filtering.


The back light requires a 7v supply that is provided by the DC/DC boost circuit, it is dimmed using transistor (T1) and a 1K base resistor (R6).

DC/DC boost circuit


The DC/DC boost circuit uses a MC34063A switching regulator in a standard boost topology.It takes the 5v USB supply and boosts it to 7v to power the LCD 43mA. You can use this online calculator to calculate component values for the MC34063 boost circuits.



We used the freeware version of Cadsoft Eagle to make the schematic and PCB. Download the latest designs and firmware from the project Google Code page.

  • PCB and placement notes
  • soldering advise



Click for a full size placement image.

C11110uF electrolytic /14v+SMD_A5
C12,C13,C14310uF tantalum/10voltsSMC_A
L11Ferrite bead, 100mA+L0805
T11NPN 30+hfe, 800mA+SOT23-BEC
VR113.3volt regulator, 150mA+SOT23-5


The firmware is written in C and compiled with the free Microchip C18 compiler. You can download the latest files from our Google Code project page.

  • Operating modes
  • extra software required

We used the Microchip USB stack to run the 18F2550 as a virtual serial port. Microchip's code is open but not redistributable. If you want to compile the source, download the stack from Microchip, then drag the source code into the install directory. See the detailed instructions in the PIC compiler how-to.

.inf installation

The virtual serial port (CDC) is an open standard, it should work on any modern operating system.

You don't need a driver, but you will need a .inf file to tell Windows how to use the device. A suitable .inf is included in the project archive.


The LCD backpack uses simple serial commands to control the features of the LCD and the board. Such as backlight fading, turning the backlight on and off, setting the contrast of the LCD and more.

The interface is started by sending a 1 byte command code, followed by 0-4 bytes of data depending on the command used.



The Nokia LCD backpack can be upgraded over the USB connection. It uses a modified version of the Diolan USB PIC bootloader. This bootloader, written in ASM and released under the GPL, enumerates as an HID device. The bootloader app is included in the project archive.


We provide a simple image loader and demonstration utility that can interface with the LCD backpack and run a self test. The utility is windows only and wont be officially ported to any other OS. The utility provides an easy was to interface with the LCD backpack trough console.

Taking it further

We are hoping somebody picks this up because we couldn't buy the LCDs to use with this project. We are only going to sell the PCBs as scrap and then we don't plan to produce any more. So we wont take this project any further.

Get one!

You can get one for $9.50, including worldwide shipping. Does not include the LCD, it is untested because we can't find the LCDs.

Your purchases at Seeed Studio keep the open source project coming, we sincerely appreciate your support!