Driving a Controllerless graphic LCD With a PIC32

Demo picture

A while ago I bought a lot of surplus LCDs that had no data sheet attached. It was also obvious that they had no on-board controller but I figured I might be able to do something with them. I don’t know what they are called so I have termed this display “The Palm display” because it looks like the display that used to be in Palm Pilots. The LCD has a resistive touch screen and has a variety of part numbers listed on it. IDW 9000-0087-1001, 4828-0017-01, 2045034-01, or ELTECH 36-0608-31. I can see that the LCD has Samsung KS0796 (S6B0794/S6B0796) driver ICs on it. The problem however is that no pin-out is available. I have determined the pin-out manually, and it is available along with a PIC32 driver here.

Decoding the Pinout

There was no way I was willing to sit around and figure out the pin-out via trial and error. Unfortunately that meant that one unit needed to be sacrificed. If you look at the driver S6B0794 or S6B0796 datasheet, you will see a table of coordinates, listed in microns, along with the pin function at that location. On this display, there are visible traces leading from solder joints to the driver ICS. By pulling apart the display and taking high resolution pics (7MP), I was able to determine  what the solder joints connected to. After that, I simply established continuity between the solder joints and the pads at the end of the FPC cable.

Pinout Analysis Screenshot

Pinout Analysis in Photoshop

So here is the pin-out:

Pin # Pin Name Description
1 V43C V43 bias level for the column driver .
2 V12C V12 bias level for the column driver.
3 V0 Most of the time this is called VEE. It is the positive bias for the LCD. The level depends on how you wire up the circuit but nominally 20V.
4 VDD Logic voltage, 3.3ish.
5 EIO2 EIO2 is what the pin was called but it is the frame sync, often labeled FLM. Pulse on each new frame.
6 V5 This is the low voltage for LCD bias. Often this is tied to VSS.
7 LP Latch pulse/Horizontal sync. This latches a row onto the display. Data latched on falling edge.
8 GND
9 F/R Frame inversion. Controls the polarity of the bias voltages. Often this is tied to FLM with an inverted D-latch but no such luck here. This must be changed on every frame or else you will ruin your display with DC voltage.
10 DISPOFF This is an active low that puts the display to sleep.
11 XCK This is the clock pulse (often labeled CP).  This latches the data from DI0-DI3 on the falling edge. One byte at a time with the high nibble first.
12 V43 V43 bias level for the pixel driver .
13 V12 V12 bias level for the pixel driver .
14 DI3 Data in 3
15 DI2 Data in 2
16 DI1 Data in 1
17 DI0 Data in 0
18 NC No Connect
19 EL Enable The LCD module has a handy EL driver circuit that saves you from having to generate your own EL voltage. It draws power from VDD , but it is enabled by an active-high on this pin.
20 NC No Connect



Pages: 1 2

    • walt
    • August 31st, 2010

    Terrific work! the guy trying to sell these on eBay owes you big-time!

    One question. I could flay and solder the wires on that tiny flat cable, but i sure like the adapter to 0.1 inch pin-out. Did you build or buy it? know where I can obtain one?

    Thanks.

      • cafeadmin
      • September 1st, 2010

      I etched it but you can buy them, I mentioned a few places in the article. Here are a few links:

      Newhaven Display
      Protovantage
      Seed Studio

      • Pavel Veretennikov
      • December 15th, 2010

      You can get a cheaper one at TPLabs

        • norm
        • April 21st, 2011

        great tplabs was 6 pounds(sorry i dont seem to have the correct char on my kbd) ea with free shipping.
        very reasonable and nice and small also.
        2 of them cost me 17$ and change, i ordered them with the 20pin connector mounted.
        thank you for the tip.

    • Vladimir
    • January 26th, 2011

    Hello
    For +20 Volt external power?

  1. I’m struggling to repeat your setup, but get only a random flickering lines on the LCD. I suppose you had PROTEUS schematic too. Could you share that?

    P.S. And, BTW, what did you use for +20 power supply?

      • cafeadmin
      • April 5th, 2011

      Sorry, I don’t have a Proteus schematic. Are you talking about simulation? This is not the type of application that spice is typically used for. For the 20 volts I used the variable power supply on my breadboard but you could set up a simple booster with an MC34063. The example in the datasheet should work fine.

    • Lucky
    • April 1st, 2011

    Hello there. You are such a helper. Thanks a lot for sharing this.

    • pproc
    • April 21st, 2011

    Hi,
    Thanks for the info ! Have purchased this lcd and hoping to pair it with s1d13700 controller.
    Could you tell me the pinout (x+,y+,x-,y-) of the touchscreen connector. Assuming the connection pads are on the bottom in the following diagram

    lcd ———1 end of cable
    ———2
    ———3
    ———4

    Thanks !

    • Julio Hector Peralta
    • April 25th, 2011

    Hi, please i need a 20 pins connector and touch connector too , do you have to send me, and a price with shipping include.

    Thanks

    • Simon Ampleman
    • May 29th, 2011

    Thank you for this very nice work!

    I ordered the 20 pins 0.5mm pitch FPC cable.

    Can you tell us the pitch for the 4 pins touch cable?

    Thank you!

    Simon

    • OKEB
    • October 23rd, 2011

    Hi Guys,

    Can anybody tell me, how readable this LCD if the backlight is not turned on?
    Is it well readable outside?

    Thanks

  2. Really appreciate you sharing this blog article.Really looking forward to read more. Keep writing.

  3. Thank you ,now we need basic info on how to connect to arduino mega please help

  1. No trackbacks yet.