SSD1325 OLED Hack

Hacking SSD1325 OLED Display for use in custom projects.

Similar projects worth following
I got my hands on few OLED displays (1.1") junked from (may be a slot gaming machine!). This is my first time with OLEDs and I will document the progress of my attempt to hack the display in the next upcoming days and weeks.

The goal is to get this thing working and make a simple interface to connect this display to any project. All heavy lifting, graphics library and fonts will be handled by onboard pic18f67j10 controller.

5/15/14: These OLED displays seems to be part of the button deck and they will look great on any project. Also, the OLED Screen is surrounded by 8 RGB LEDs.

I love displays and OLEDs are such a beauty because they have very wide viewing angle and superb contrast and resolution. I don't even know if they work or will work! but I got excited when I saw microchip PIC18F67J10 on the PCB driving these puppies. I can't wait to test them, but before that I have to reverse engineer the PCB traces, connections and find datasheets.


Solomon Systech SSD1325T2

        I took apart the OLED display and the PCB, it was easy. Display is connected to PCB with a 30 pin flat flex cable, and the PCB's underside has 4 groups of connectors for programming and data to the PIC. A closer look at the display and the manufacturer is "Solomon Systech" and OLED controller is "SSD1325T2". A quick visit to the Solomon Systech website did not reveal much and to get a datasheet you have to place a request, which I did (hoping they will respond). After googling for few minutes, I found SSD1325 is a 128 x 80, 16 Gray Scale Dot Matrix LED/PLED Segment/Common Driver with Controller.... which means every single pixel will light up in 16 shades ... great for displaying bitmaps and graphics  Yaaay :D !!!  (will try to find datasheet later)

      Overall the PCB does not look overly complex and I truly hope it to be double sided. It will be a nightmare if this turns out to be a multi-layered PCB! The traces and vias are very thin and small, so I am looking at hours of effort under a lens and a probe. 

Components on the PCB:

On the bottom side of PCB, I do not see many components. 64 pin TQFP PIC18F67J10 is running the show, a 10MHz crystal, bunch of resistors and caps. Few 3 legged SOT23s, IR LEDs and IR detector. IR stuff is placed around a slot on PCB, so I am guessing this module is also used as a button and whenever depressed, something moves in or out of that slot interrupting the IR beam. There are also four groups of PCB connectors on the bottom side, One of them could be ICSP and data in/out for OLED and power supply.     

On top surface of the PCB there are eight RGB Leds (two on each side). I do not see any other chips which could be used to multiplex these LEDs, so I am assuming these LEDs are directly driven by individual uC pins. There is also a 1MB (8Mbits) Serial Flash Memory 45PE80VG. Not sure what that is used for, but the PIC18F67J10 is a fairly loaded chip with 128K of Program memory and 4KB of RAM. A quick look at serial flash 45PE80VG datasheet reveals it is a SPI bus Flash. There is a 30 Pin FFC connector for display. Other than these, I do not see anything of interest on the top layer.

Next steps:

Figure out the traces on PCB  and hunt for SSD1325 datasheet and pinout of FFC. I will start probing PCB in a day or two and will keep posting my progress.

  • 5/18: Schematics decoded

    sidsingh05/18/2014 at 18:18 0 comments

    For the past two days I have poured over ssd1325 datasheet and also figured out most of the schematics. I used the multimeter contuinity tester,a pair of custom made probes for tracing back the connections, a 5x magnification lens and a lot of patience. The probes are nothing fancy, I just put them together using couple of sewing needles and thin wires connected to  multimeter's original probes.

    Datasheet for ssd1325:

    and, the schematics of the OLED PCB:

    As I had suspected earlier, All RGB LEDs are driven individually using microcontroller pins (8 x 3 = 24 I/O ports for LEDs alone...what a waste!). The OLED display is driven serially using SPI bus. PIC18F67J10 has dual SPI bus, the OLED display is sharing the SPI-2 bus with the serial Flash memory. SPI-1 bus is used to send commands from external system to PIC and is terminated on external header J4.

    Initially, I had thought the OLED was driven using 8 bit parallel bus, but it turned out serial. One major disadvantage of using serial communication is that you cannot read back the display RAM (GDRAM) of ssd1325. Serial communication is Write Only, which presents the following unique problem...

    Each pixel on the display is mapped to 4 bits (upper and lower nibble). Each pixel can have 16 grayscale shades 00h-0Fh, hence 4 bits. 1 byte represents two adjacent pixels (columns). So, if you light up a pixel by sending a serial byte, you inadvertently erase or overwrite the adjacent pixel.  

    One solution I can think of is to have a frame buffer in PIC RAM and dump the entire frame during display refresh, this will eliminate the need to read back display RAM. 

    Now, since I have figured out most of the connections, next steps are connecting wires to the external headers, supply the right voltages and try to reprogram the onboard PIC. This has to wait till tomorrow, its almost midnight and I have to start for work early. Good night! 

View project log

Enjoy this project?



prins76 wrote 12/01/2017 at 03:43 point

what happened with the oled button project

  Are you sure? yes | no

Yagnesh wrote 06/07/2015 at 05:10 point

Hey Sid, Can you tell me from where and for how much you found this display units?. I want to try them out but the usual standard sources like digikey seems are very expensive( 35 USD ) .

  Are you sure? yes | no

Joe wrote 03/20/2015 at 15:00 point

Great project,

  I was able to hack in to the Micro-controller. Never the less some OLED screens loose brightness. Do you know where can I buy them?  

  Are you sure? yes | no

Marcos wrote 09/22/2014 at 19:44 point
Cool, im waiting exited!

  Are you sure? yes | no

Marcos wrote 08/25/2014 at 00:41 point
Hi, awsome proyect, I aslo got acces to some of these buttons, and im trying to use it on my proyect but im not very cleaver on debuggin. Did u make it work? at least draw some letter on the display?

  Are you sure? yes | no

sidsingh wrote 09/10/2014 at 14:05 point
I was able to program the onboard PIC and display graphics and fonts. I am travelling on work and away from my home for quite sometime, I will be back soon and post the code and images. Thanks for your patience.

  Are you sure? yes | no

sidsingh wrote 05/15/2014 at 16:58 point
Thanks! Incidentally I also downloaded the datasheet from the same URL sometime back. Reading through it now . Cheers!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates