Using OLED displays on phi-panel

I got a request from Kenny G. that he wants to run OLED displays on phi-panels and got interested in modifying the software and hardware to work. Thanks to Kenny, who loaned me an OLED display from adafruit (wintech 1602AB), I was able to tinker with it last night and today. I eventually made it to work:

Here is some photos:

One of the photos is a diagram on how to modify the backpack PCB. Please check out the google code page regarding the firmware.

Long story short, the adafruit OLED library is only half-baked. Here is my post on their forum:

Pretty bad, basically clear() blink() cursor() display() and their counterparts are not working. I confirmed most of these with the simplest setup. On the other hand, home() works so I can limp on with home() and writing a lot of blanks to clear but can’t show cursor or blink anymore.

So I commented out these functions and modified clear() to write 80 spaces and do a home(). It works as it should. With other software this would have flicker on the screen but with phi-panel’s display buffer, it does not flicker.

In the future, if there is enough interest, I will make some special backpack PCBs that don’t need modification to work with OLEDs.

Meanwhile Kenny is testing other OLEDs he has regarding adafruit library usability. I felt that adafruit didn’t go all the way to provide a reliable library for us this time but without spec sheet, what more than this can they do? Maybe being a bit more upfront with their limitations?!

6 Responses to Using OLED displays on phi-panel

  1. Kenny says:

    It should be noted that Dr. Liu didn’t remove the protective film from the display so they look even better than the video and pics show.

    I have the Blue, Yellow, and Green displays and Blue is my favorite with Green a close 2nd.

    Newhaven also makes larger versions of the 2×16 displays (4.1 inches instead of 2.8 inches). And of course, the 4×20’s are nice as well.


  2. Don says:

    I want a character OLED that I can easily use with a standard serial protocol (preferably I2C). I have not been able to find a character OLED that communicates I2C standard protocol or does not have timing issues in parallel. Due to the timing issue, OLED’s are not a direct application for the phi-panel. I view the PCB changes to the phi-panel as easy and not a problem, but getting the rest of the panel to work with the OLED is a bit much for me.

    Newhaven character displays are cheap and easy to buy thru Digikey.

    Is there baked code for the phi-panel with a Newhaven character OLED?

    If so, which of the Newhaven displays does this work with?

    If not, is anyone working on this?

    I imagine LCD’s will become a thing of the past if there is an easy application for OLED character displays.

    Any help is appreciated.

    • liudr says:

      Don, thanks for the comment. The only difficulty I found, trying to use the phi-panel with OLED display, is that the library provided by Adafruit is NOT good. Functions such as clear screen etc. are done with no OLED spec sheet available to the library developer. I tested multiple times that if you clear screen (or do some other actions) and immediately write to the display, it freezes over, using direct connection to arduino or via phi-panel. If you read the library, the develop is admitting things may not work since the developer has no OLED spec sheet. So I eventually gave up on these OLEDs until a decent library is developed with a spec sheet (all commands and timing have to be right out of the spec sheet, instead of guess work). There are still plenty of LCDs due to their low cost (factory already have invested machines to make them).

  3. Malcolm Faed says:

    I am struggling with this at the moment as well. suggests there is a problem with 4 bit mode.

    I am using Raystar RS0010 OLEDs which are supposed to be compatible with Winstar WS0010.

    Here is a link to the Raystar Datasheet which is teh most comprehensive I have been able to locate

Leave a Reply